mirror of
https://github.com/RoboSats/robosats.git
synced 2024-12-13 02:46:28 +00:00
Merge branch 'main' into desktopApp
This commit is contained in:
commit
25081aacf0
2
.github/workflows/coordinator-image.yml
vendored
2
.github/workflows/coordinator-image.yml
vendored
@ -75,7 +75,7 @@ jobs:
|
||||
echo ${{ steps.commit.outputs.long }}>"commit_sha"
|
||||
|
||||
- name: 'Build and push Docker image'
|
||||
uses: docker/build-push-action@v5
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
push: true
|
||||
|
@ -85,7 +85,7 @@ jobs:
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: 'Build and push Docker image'
|
||||
uses: docker/build-push-action@v5
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: ./nodeapp
|
||||
platforms: linux/amd64,linux/arm64
|
||||
|
2
.github/workflows/web-client-image.yml
vendored
2
.github/workflows/web-client-image.yml
vendored
@ -85,7 +85,7 @@ jobs:
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: 'Build and push Docker image'
|
||||
uses: docker/build-push-action@v5
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: ./web
|
||||
platforms: linux/amd64,linux/arm64
|
||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -650,3 +650,6 @@ node
|
||||
mobile/html/Web.bundle/js*
|
||||
mobile/html/Web.bundle/css*
|
||||
mobile/html/Web.bundle/assets*
|
||||
|
||||
# Protocol Buffers
|
||||
api/lightning/*.proto
|
||||
|
@ -210,6 +210,7 @@ class OrderAdmin(AdminChangeLinksMixin, admin.ModelAdmin):
|
||||
f"Dispute of order {order.id} solved successfully on favor of the maker",
|
||||
messages.SUCCESS,
|
||||
)
|
||||
send_notification.delay(order_id=order.id, message="dispute_closed")
|
||||
|
||||
else:
|
||||
self.message_user(
|
||||
@ -248,6 +249,7 @@ class OrderAdmin(AdminChangeLinksMixin, admin.ModelAdmin):
|
||||
f"Dispute of order {order.id} solved successfully on favor of the taker",
|
||||
messages.SUCCESS,
|
||||
)
|
||||
send_notification.delay(order_id=order.id, message="dispute_closed")
|
||||
|
||||
else:
|
||||
self.message_user(
|
||||
|
@ -6,7 +6,7 @@ from django.core.management.base import BaseCommand
|
||||
from django.db import transaction
|
||||
|
||||
from api.models import Robot
|
||||
from api.notifications import Telegram
|
||||
from api.notifications import Notifications
|
||||
from api.utils import get_session
|
||||
|
||||
|
||||
@ -17,7 +17,7 @@ class Command(BaseCommand):
|
||||
bot_token = config("TELEGRAM_TOKEN")
|
||||
updates_url = f"https://api.telegram.org/bot{bot_token}/getUpdates"
|
||||
session = get_session()
|
||||
telegram = Telegram()
|
||||
notifications = Notifications()
|
||||
|
||||
def handle(self, *args, **options):
|
||||
offset = 0
|
||||
@ -49,17 +49,17 @@ class Command(BaseCommand):
|
||||
continue
|
||||
parts = message.split(" ")
|
||||
if len(parts) < 2:
|
||||
self.telegram.send_message(
|
||||
chat_id=result["message"]["from"]["id"],
|
||||
text='You must enable the notifications bot using the RoboSats client. Click on your "Robot robot" -> "Enable Telegram" and follow the link or scan the QR code.',
|
||||
self.notifications.send_telegram_message(
|
||||
result["message"]["from"]["id"],
|
||||
'You must enable the notifications bot using the RoboSats client. Click on your "Robot robot" -> "Enable Telegram" and follow the link or scan the QR code.',
|
||||
)
|
||||
continue
|
||||
token = parts[-1]
|
||||
robot = Robot.objects.filter(telegram_token=token).first()
|
||||
if not robot:
|
||||
self.telegram.send_message(
|
||||
chat_id=result["message"]["from"]["id"],
|
||||
text=f'Wops, invalid token! There is no Robot with telegram chat token "{token}"',
|
||||
self.notifications.send_telegram_message(
|
||||
result["message"]["from"]["id"],
|
||||
f'Wops, invalid token! There is no Robot with telegram chat token "{token}"',
|
||||
)
|
||||
continue
|
||||
|
||||
@ -71,7 +71,7 @@ class Command(BaseCommand):
|
||||
robot.telegram_lang_code = result["message"]["from"][
|
||||
"language_code"
|
||||
]
|
||||
self.telegram.welcome(robot.user)
|
||||
self.notifications.welcome(robot.user)
|
||||
robot.telegram_enabled = True
|
||||
robot.save(
|
||||
update_fields=[
|
||||
|
26
api/migrations/0047_notification.py
Normal file
26
api/migrations/0047_notification.py
Normal file
@ -0,0 +1,26 @@
|
||||
# Generated by Django 5.0.6 on 2024-06-14 18:31
|
||||
|
||||
import django.db.models.deletion
|
||||
import django.utils.timezone
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('api', '0046_alter_currency_currency'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Notification',
|
||||
fields=[
|
||||
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('created_at', models.DateTimeField(default=django.utils.timezone.now)),
|
||||
('title', models.CharField(default=None, max_length=240)),
|
||||
('description', models.CharField(blank=True, default=None, max_length=240)),
|
||||
('order', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='api.order')),
|
||||
('robot', models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, to='api.robot')),
|
||||
],
|
||||
),
|
||||
]
|
19
api/migrations/0048_alter_order_reference.py
Normal file
19
api/migrations/0048_alter_order_reference.py
Normal file
@ -0,0 +1,19 @@
|
||||
# Generated by Django 5.0.6 on 2024-06-29 14:07
|
||||
|
||||
import api.models.order
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('api', '0047_notification'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='order',
|
||||
name='reference',
|
||||
field=models.UUIDField(default=api.models.order.custom_uuid, editable=False),
|
||||
),
|
||||
]
|
18
api/migrations/0049_alter_currency_currency.py
Normal file
18
api/migrations/0049_alter_currency_currency.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 5.0.8 on 2024-08-15 18:06
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('api', '0048_alter_order_reference'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='currency',
|
||||
name='currency',
|
||||
field=models.PositiveSmallIntegerField(choices=[(1, 'USD'), (2, 'EUR'), (3, 'JPY'), (4, 'GBP'), (5, 'AUD'), (6, 'CAD'), (7, 'CHF'), (8, 'CNY'), (9, 'HKD'), (10, 'NZD'), (11, 'SEK'), (12, 'KRW'), (13, 'SGD'), (14, 'NOK'), (15, 'MXN'), (16, 'BYN'), (17, 'RUB'), (18, 'ZAR'), (19, 'TRY'), (20, 'BRL'), (21, 'CLP'), (22, 'CZK'), (23, 'DKK'), (24, 'HRK'), (25, 'HUF'), (26, 'INR'), (27, 'ISK'), (28, 'PLN'), (29, 'RON'), (30, 'ARS'), (31, 'VES'), (32, 'COP'), (33, 'PEN'), (34, 'UYU'), (35, 'PYG'), (36, 'BOB'), (37, 'IDR'), (38, 'ANG'), (39, 'CRC'), (40, 'CUP'), (41, 'DOP'), (42, 'GHS'), (43, 'GTQ'), (44, 'ILS'), (45, 'JMD'), (46, 'KES'), (47, 'KZT'), (48, 'MYR'), (49, 'NAD'), (50, 'NGN'), (51, 'AZN'), (52, 'PAB'), (53, 'PHP'), (54, 'PKR'), (55, 'QAR'), (56, 'SAR'), (57, 'THB'), (58, 'TTD'), (59, 'VND'), (60, 'XOF'), (61, 'TWD'), (62, 'TZS'), (63, 'XAF'), (64, 'UAH'), (65, 'EGP'), (66, 'LKR'), (67, 'MAD'), (68, 'AED'), (69, 'TND'), (70, 'ETB'), (71, 'GEL'), (72, 'UGX'), (73, 'RSD'), (74, 'IRT'), (75, 'BDT'), (76, 'ALL'), (77, 'DZD'), (300, 'XAU'), (1000, 'BTC')], unique=True),
|
||||
),
|
||||
]
|
18
api/migrations/0050_alter_order_status.py
Normal file
18
api/migrations/0050_alter_order_status.py
Normal file
@ -0,0 +1,18 @@
|
||||
# Generated by Django 5.0.8 on 2024-08-22 08:30
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('api', '0049_alter_currency_currency'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AlterField(
|
||||
model_name='order',
|
||||
name='status',
|
||||
field=models.PositiveSmallIntegerField(choices=[(0, 'Waiting for maker bond'), (1, 'Public'), (2, 'Paused'), (3, 'Waiting for taker bond'), (4, 'Cancelled'), (5, 'Expired'), (6, 'Waiting for trade collateral and buyer invoice'), (7, 'Waiting only for seller trade collateral'), (8, 'Waiting only for buyer invoice'), (9, 'Sending fiat - In chatroom'), (10, 'Fiat sent - In chatroom'), (11, 'In dispute'), (12, 'Collaboratively cancelled'), (13, 'Sending satoshis to buyer'), (14, 'Successful trade'), (15, 'Failed lightning network routing'), (16, 'Wait for dispute resolution'), (17, 'Maker lost dispute'), (18, 'Taker lost dispute')], default=0),
|
||||
),
|
||||
]
|
@ -4,5 +4,14 @@ from .market_tick import MarketTick
|
||||
from .onchain_payment import OnchainPayment
|
||||
from .order import Order
|
||||
from .robot import Robot
|
||||
from .notification import Notification
|
||||
|
||||
__all__ = ["Currency", "LNPayment", "MarketTick", "OnchainPayment", "Order", "Robot"]
|
||||
__all__ = [
|
||||
"Currency",
|
||||
"LNPayment",
|
||||
"MarketTick",
|
||||
"OnchainPayment",
|
||||
"Order",
|
||||
"Robot",
|
||||
"Notification",
|
||||
]
|
||||
|
35
api/models/notification.py
Normal file
35
api/models/notification.py
Normal file
@ -0,0 +1,35 @@
|
||||
# We use custom seeded UUID generation during testing
|
||||
import uuid
|
||||
|
||||
from decouple import config
|
||||
from api.models import Order, Robot
|
||||
from django.db import models
|
||||
from django.utils import timezone
|
||||
|
||||
if config("TESTING", cast=bool, default=False):
|
||||
import random
|
||||
import string
|
||||
|
||||
random.seed(1)
|
||||
chars = string.ascii_lowercase + string.digits
|
||||
|
||||
def custom_uuid():
|
||||
return uuid.uuid5(uuid.NAMESPACE_DNS, "".join(random.choices(chars, k=20)))
|
||||
|
||||
else:
|
||||
custom_uuid = uuid.uuid4
|
||||
|
||||
|
||||
class Notification(models.Model):
|
||||
# notification info
|
||||
created_at = models.DateTimeField(default=timezone.now)
|
||||
|
||||
robot = models.ForeignKey(Robot, on_delete=models.CASCADE, default=None)
|
||||
order = models.ForeignKey(Order, on_delete=models.CASCADE, default=None)
|
||||
|
||||
# notification details
|
||||
title = models.CharField(max_length=240, null=False, default=None)
|
||||
description = models.CharField(max_length=240, default=None, blank=True)
|
||||
|
||||
def __str__(self):
|
||||
return f"{self.title} {self.description}"
|
@ -10,6 +10,7 @@ from django.db import models
|
||||
from django.db.models.signals import pre_delete
|
||||
from django.dispatch import receiver
|
||||
from django.utils import timezone
|
||||
from api.tasks import send_notification
|
||||
|
||||
if config("TESTING", cast=bool, default=False):
|
||||
import random
|
||||
@ -45,7 +46,7 @@ class Order(models.Model):
|
||||
DIS = 11, "In dispute"
|
||||
CCA = 12, "Collaboratively cancelled"
|
||||
PAY = 13, "Sending satoshis to buyer"
|
||||
SUC = 14, "Sucessful trade"
|
||||
SUC = 14, "Successful trade"
|
||||
FAI = 15, "Failed lightning network routing"
|
||||
WFR = 16, "Wait for dispute resolution"
|
||||
MLD = 17, "Maker lost dispute"
|
||||
@ -91,10 +92,7 @@ class Order(models.Model):
|
||||
decimal_places=2,
|
||||
default=0,
|
||||
null=True,
|
||||
validators=[
|
||||
MinValueValidator(Decimal(-100)),
|
||||
MaxValueValidator(Decimal(999))
|
||||
],
|
||||
validators=[MinValueValidator(Decimal(-100)), MaxValueValidator(Decimal(999))],
|
||||
blank=True,
|
||||
)
|
||||
# explicit
|
||||
@ -352,6 +350,8 @@ class Order(models.Model):
|
||||
self.log(
|
||||
f"Order state went from {old_status}: <i>{Order.Status(old_status).label}</i> to {new_status}: <i>{Order.Status(new_status).label}</i>"
|
||||
)
|
||||
if new_status == Order.Status.FAI:
|
||||
send_notification.delay(order_id=self.id, message="lightning_failed")
|
||||
|
||||
|
||||
@receiver(pre_delete, sender=Order)
|
||||
|
@ -1,12 +1,8 @@
|
||||
from pathlib import Path
|
||||
|
||||
from django.conf import settings
|
||||
from django.contrib.auth.models import User
|
||||
from django.core.validators import validate_comma_separated_integer_list
|
||||
from django.db import models
|
||||
from django.db.models.signals import post_save, pre_delete
|
||||
from django.db.models.signals import post_save
|
||||
from django.dispatch import receiver
|
||||
from django.utils.html import mark_safe
|
||||
|
||||
|
||||
class Robot(models.Model):
|
||||
@ -88,25 +84,5 @@ class Robot(models.Model):
|
||||
def save_user_robot(sender, instance, **kwargs):
|
||||
instance.robot.save()
|
||||
|
||||
@receiver(pre_delete, sender=User)
|
||||
def del_avatar_from_disk(sender, instance, **kwargs):
|
||||
try:
|
||||
avatar_file = Path(
|
||||
settings.AVATAR_ROOT + instance.robot.avatar.url.split("/")[-1]
|
||||
)
|
||||
avatar_file.unlink()
|
||||
except Exception:
|
||||
pass
|
||||
|
||||
def __str__(self):
|
||||
return self.user.username
|
||||
|
||||
# to display avatars in admin panel
|
||||
def get_avatar(self):
|
||||
if not self.avatar:
|
||||
return settings.STATIC_ROOT + "unknown_avatar.png"
|
||||
return self.avatar.url
|
||||
|
||||
# method to create a fake table field in read only mode
|
||||
def avatar_tag(self):
|
||||
return mark_safe('<img src="%s" width="50" height="50" />' % self.get_avatar())
|
||||
|
@ -1,12 +1,14 @@
|
||||
from secrets import token_urlsafe
|
||||
|
||||
from decouple import config
|
||||
|
||||
from api.models import Order
|
||||
from api.models import (
|
||||
Order,
|
||||
Notification,
|
||||
)
|
||||
from api.utils import get_session
|
||||
|
||||
|
||||
class Telegram:
|
||||
class Notifications:
|
||||
"""Simple telegram messages using TG's API"""
|
||||
|
||||
session = get_session()
|
||||
@ -29,13 +31,24 @@ class Telegram:
|
||||
|
||||
return context
|
||||
|
||||
def send_message(self, chat_id, text):
|
||||
def send_message(self, order, robot, title, description=""):
|
||||
"""Save a message for a user and sends it to Telegram"""
|
||||
self.save_message(order, robot, title, description)
|
||||
if robot.telegram_enabled:
|
||||
self.send_telegram_message(robot.telegram_chat_id, title, description)
|
||||
|
||||
def save_message(self, order, robot, title, description=""):
|
||||
"""Save a message for a user"""
|
||||
Notification.objects.create(
|
||||
title=title, description=description, robot=robot, order=order
|
||||
)
|
||||
|
||||
def send_telegram_message(self, chat_id, title, description=""):
|
||||
"""sends a message to a user with telegram notifications enabled"""
|
||||
|
||||
bot_token = config("TELEGRAM_TOKEN")
|
||||
|
||||
text = f"{title} {description}"
|
||||
message_url = f"https://api.telegram.org/bot{bot_token}/sendMessage?chat_id={chat_id}&text={text}"
|
||||
|
||||
# if it fails, it should keep trying
|
||||
while True:
|
||||
try:
|
||||
@ -49,119 +62,127 @@ class Telegram:
|
||||
lang = user.robot.telegram_lang_code
|
||||
|
||||
if lang == "es":
|
||||
text = f"🔔 Hola {user.username}, te enviaré notificaciones sobre tus órdenes en RoboSats."
|
||||
title = f"🔔 Hola {user.username}, te enviaré notificaciones sobre tus órdenes en RoboSats."
|
||||
else:
|
||||
text = f"🔔 Hey {user.username}, I will send you notifications about your RoboSats orders."
|
||||
self.send_message(user.robot.telegram_chat_id, text)
|
||||
title = f"🔔 Hey {user.username}, I will send you notifications about your RoboSats orders."
|
||||
self.send_telegram_message(user.robot.telegram_chat_id, title)
|
||||
user.robot.telegram_welcomed = True
|
||||
user.robot.save(update_fields=["telegram_welcomed"])
|
||||
return
|
||||
|
||||
def order_taken_confirmed(self, order):
|
||||
if order.maker.robot.telegram_enabled:
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"✅ Hey {order.maker.username} ¡Tu orden con ID {order.id} ha sido tomada por {order.taker.username}!🥳 Visita http://{self.site}/order/{order.id} para continuar."
|
||||
else:
|
||||
text = f"✅ Hey {order.maker.username}, your order was taken by {order.taker.username}!🥳 Visit http://{self.site}/order/{order.id} to proceed with the trade."
|
||||
self.send_message(order.maker.robot.telegram_chat_id, text)
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"✅ Hey {order.maker.username} ¡Tu orden con ID {order.id} ha sido tomada por {order.taker.username}!🥳"
|
||||
description = f"Visita http://{self.site}/order/{order.id} para continuar."
|
||||
else:
|
||||
title = f"✅ Hey {order.maker.username}, your order was taken by {order.taker.username}!🥳"
|
||||
description = (
|
||||
f"Visit http://{self.site}/order/{order.id} to proceed with the trade."
|
||||
)
|
||||
self.send_message(order, order.maker.robot, title, description)
|
||||
|
||||
if order.taker.robot.telegram_enabled:
|
||||
lang = order.taker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"✅ Hey {order.taker.username}, acabas de tomar la orden con ID {order.id}."
|
||||
else:
|
||||
text = f"✅ Hey {order.taker.username}, you just took the order with ID {order.id}."
|
||||
self.send_message(order.taker.robot.telegram_chat_id, text)
|
||||
lang = order.taker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"✅ Hey {order.taker.username}, acabas de tomar la orden con ID {order.id}."
|
||||
else:
|
||||
title = f"✅ Hey {order.taker.username}, you just took the order with ID {order.id}."
|
||||
self.send_message(order, order.taker.robot, title)
|
||||
|
||||
return
|
||||
|
||||
def fiat_exchange_starts(self, order):
|
||||
for user in [order.maker, order.taker]:
|
||||
if user.robot.telegram_enabled:
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"✅ Hey {user.username}, el depósito de garantía y el recibo del comprador han sido recibidos. Es hora de enviar el dinero fiat. Visita http://{self.site}/order/{order.id} para hablar con tu contraparte."
|
||||
else:
|
||||
text = f"✅ Hey {user.username}, the escrow and invoice have been submitted. The fiat exchange starts now via the platform chat. Visit http://{self.site}/order/{order.id} to talk with your counterpart."
|
||||
self.send_message(user.robot.telegram_chat_id, text)
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"✅ Hey {user.username}, el depósito de garantía y el recibo del comprador han sido recibidos. Es hora de enviar el dinero fiat."
|
||||
description = f"Visita http://{self.site}/order/{order.id} para hablar con tu contraparte."
|
||||
else:
|
||||
title = f"✅ Hey {user.username}, the escrow and invoice have been submitted. The fiat exchange starts now via the platform chat."
|
||||
description = f"Visit http://{self.site}/order/{order.id} to talk with your counterpart."
|
||||
self.send_message(order, user.robot, title, description)
|
||||
return
|
||||
|
||||
def order_expired_untaken(self, order):
|
||||
if order.maker.robot.telegram_enabled:
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"😪 Hey {order.maker.username}, tu orden con ID {order.id} ha expirado sin ser tomada por ningún robot. Visita http://{self.site}/order/{order.id} para renovarla."
|
||||
else:
|
||||
text = f"😪 Hey {order.maker.username}, your order with ID {order.id} has expired without a taker. Visit http://{self.site}/order/{order.id} to renew it."
|
||||
self.send_message(order.maker.robot.telegram_chat_id, text)
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"😪 Hey {order.maker.username}, tu orden con ID {order.id} ha expirado sin ser tomada por ningún robot."
|
||||
description = f"Visita http://{self.site}/order/{order.id} para renovarla."
|
||||
else:
|
||||
title = f"😪 Hey {order.maker.username}, your order with ID {order.id} has expired without a taker."
|
||||
description = f"Visit http://{self.site}/order/{order.id} to renew it."
|
||||
self.send_message(order, order.maker.robot, title, description)
|
||||
return
|
||||
|
||||
def trade_successful(self, order):
|
||||
for user in [order.maker, order.taker]:
|
||||
if user.robot.telegram_enabled:
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"🥳 ¡Tu orden con ID {order.id} ha finalizado exitosamente!⚡ Únete a nosotros en @robosats_es y ayúdanos a mejorar."
|
||||
else:
|
||||
text = f"🥳 Your order with ID {order.id} has finished successfully!⚡ Join us @robosats and help us improve."
|
||||
self.send_message(user.robot.telegram_chat_id, text)
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"🥳 ¡Tu orden con ID {order.id} ha finalizado exitosamente!"
|
||||
description = (
|
||||
"⚡ Únete a nosotros en @robosats_es y ayúdanos a mejorar."
|
||||
)
|
||||
else:
|
||||
title = f"🥳 Your order with ID {order.id} has finished successfully!"
|
||||
description = "⚡ Join us @robosats and help us improve."
|
||||
self.send_message(order, user.robot, title, description)
|
||||
return
|
||||
|
||||
def public_order_cancelled(self, order):
|
||||
if order.maker.robot.telegram_enabled:
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"❌ Hey {order.maker.username}, has cancelado tu orden pública con ID {order.id}."
|
||||
else:
|
||||
text = f"❌ Hey {order.maker.username}, you have cancelled your public order with ID {order.id}."
|
||||
self.send_message(order.maker.robot.telegram_chat_id, text)
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"❌ Hey {order.maker.username}, has cancelado tu orden pública con ID {order.id}."
|
||||
else:
|
||||
title = f"❌ Hey {order.maker.username}, you have cancelled your public order with ID {order.id}."
|
||||
self.send_message(order, order.maker.robot, title)
|
||||
return
|
||||
|
||||
def collaborative_cancelled(self, order):
|
||||
for user in [order.maker, order.taker]:
|
||||
if user.robot.telegram_enabled:
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"❌ Hey {user.username}, tu orden con ID {str(order.id)} fue cancelada colaborativamente."
|
||||
else:
|
||||
text = f"❌ Hey {user.username}, your order with ID {str(order.id)} has been collaboratively cancelled."
|
||||
self.send_message(user.robot.telegram_chat_id, text)
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"❌ Hey {user.username}, tu orden con ID {str(order.id)} fue cancelada colaborativamente."
|
||||
else:
|
||||
title = f"❌ Hey {user.username}, your order with ID {str(order.id)} has been collaboratively cancelled."
|
||||
self.send_message(order, user.robot, title)
|
||||
return
|
||||
|
||||
def dispute_opened(self, order):
|
||||
for user in [order.maker, order.taker]:
|
||||
if user.robot.telegram_enabled:
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
text = f"⚖️ Hey {user.username}, la orden con ID {str(order.id)} ha entrado en disputa."
|
||||
else:
|
||||
text = f"⚖️ Hey {user.username}, a dispute has been opened on your order with ID {str(order.id)}."
|
||||
self.send_message(user.robot.telegram_chat_id, text)
|
||||
lang = user.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"⚖️ Hey {user.username}, la orden con ID {str(order.id)} ha entrado en disputa."
|
||||
else:
|
||||
title = f"⚖️ Hey {user.username}, a dispute has been opened on your order with ID {str(order.id)}."
|
||||
self.send_message(order, user.robot, title)
|
||||
|
||||
admin_chat_id = config("TELEGRAM_COORDINATOR_CHAT_ID")
|
||||
|
||||
if len(admin_chat_id) == 0:
|
||||
return
|
||||
|
||||
coordinator_text = f"There is a new dispute opened for the order with ID {str(order.id)}. Visit http://{self.site}/coordinator/api/order/{str(order.id)}/change to proceed."
|
||||
self.send_message(admin_chat_id, coordinator_text)
|
||||
coordinator_text = (
|
||||
f"There is a new dispute opened for the order with ID {str(order.id)}."
|
||||
)
|
||||
coordinator_description = f"Visit http://{self.site}/coordinator/api/order/{str(order.id)}/change to proceed."
|
||||
self.send_telegram_message(
|
||||
admin_chat_id, coordinator_text, coordinator_description
|
||||
)
|
||||
|
||||
return
|
||||
|
||||
def order_published(self, order):
|
||||
if order.maker.robot.telegram_enabled:
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
# In weird cases the order cannot be found (e.g. it is cancelled)
|
||||
queryset = Order.objects.filter(maker=order.maker)
|
||||
if len(queryset) == 0:
|
||||
return
|
||||
order = queryset.last()
|
||||
if lang == "es":
|
||||
text = f"✅ Hey {order.maker.username}, tu orden con ID {str(order.id)} es pública en el libro de ordenes."
|
||||
else:
|
||||
text = f"✅ Hey {order.maker.username}, your order with ID {str(order.id)} is public in the order book."
|
||||
self.send_message(order.maker.robot.telegram_chat_id, text)
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
# In weird cases the order cannot be found (e.g. it is cancelled)
|
||||
queryset = Order.objects.filter(maker=order.maker)
|
||||
if len(queryset) == 0:
|
||||
return
|
||||
order = queryset.last()
|
||||
if lang == "es":
|
||||
title = f"✅ Hey {order.maker.username}, tu orden con ID {str(order.id)} es pública en el libro de ordenes."
|
||||
else:
|
||||
title = f"✅ Hey {order.maker.username}, your order with ID {str(order.id)} is public in the order book."
|
||||
self.send_message(order, order.maker.robot, title)
|
||||
return
|
||||
|
||||
def new_chat_message(self, order, chat_message):
|
||||
@ -189,14 +210,56 @@ class Telegram:
|
||||
notification_reason = f"(You receive this notification because this was the first in-chat message. You will only be notified again if there is a gap bigger than {TIMEGAP} minutes between messages)"
|
||||
|
||||
user = chat_message.receiver
|
||||
if user.robot.telegram_enabled:
|
||||
text = f"💬 Hey {user.username}, a new chat message in-app was sent to you by {chat_message.sender.username} for order ID {str(order.id)}. {notification_reason}"
|
||||
self.send_message(user.robot.telegram_chat_id, text)
|
||||
title = f"💬 Hey {user.username}, a new chat message in-app was sent to you by {chat_message.sender.username} for order ID {str(order.id)}."
|
||||
self.send_message(order, user.robot, title, notification_reason)
|
||||
|
||||
return
|
||||
|
||||
def coordinator_cancelled(self, order):
|
||||
if order.maker.robot.telegram_enabled:
|
||||
text = f"🛠️ Your order with ID {order.id} has been cancelled by the coordinator {config('COORDINATOR_ALIAS', cast=str, default='NoAlias')} for the upcoming maintenance stop."
|
||||
self.send_message(order.maker.robot.telegram_chat_id, text)
|
||||
title = f"🛠️ Your order with ID {order.id} has been cancelled by the coordinator {config('COORDINATOR_ALIAS', cast=str, default='NoAlias')} for the upcoming maintenance stop."
|
||||
self.send_message(order, order.maker.robot, title)
|
||||
return
|
||||
|
||||
def dispute_closed(self, order):
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if order.status == Order.Status.MLD:
|
||||
# Maker lost dispute
|
||||
looser = order.maker
|
||||
winner = order.taker
|
||||
elif order.status == Order.Status.TLD:
|
||||
# Taker lost dispute
|
||||
looser = order.taker
|
||||
winner = order.maker
|
||||
|
||||
lang = looser.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"⚖️ Hey {looser.username}, has perdido la disputa en la orden con ID {str(order.id)}."
|
||||
else:
|
||||
title = f"⚖️ Hey {looser.username}, you lost the dispute on your order with ID {str(order.id)}."
|
||||
self.send_message(order, looser.robot, title)
|
||||
|
||||
lang = winner.robot.telegram_lang_code
|
||||
if lang == "es":
|
||||
title = f"⚖️ Hey {winner.username}, has ganado la disputa en la orden con ID {str(order.id)}."
|
||||
else:
|
||||
title = f"⚖️ Hey {winner.username}, you won the dispute on your order with ID {str(order.id)}."
|
||||
self.send_message(order, winner.robot, title)
|
||||
|
||||
return
|
||||
|
||||
def lightning_failed(self, order):
|
||||
lang = order.maker.robot.telegram_lang_code
|
||||
if order.type == Order.Types.BUY:
|
||||
buyer = order.maker
|
||||
else:
|
||||
buyer = order.taker
|
||||
|
||||
if lang == "es":
|
||||
title = f"⚡❌ Hey {buyer.username}, el pago lightning en la order con ID {str(order.id)} ha fallado."
|
||||
description = "Intentalo de nuevo con una nueva factura o con otra wallet."
|
||||
else:
|
||||
title = f"⚡❌ Hey {buyer.username}, the lightning payment on your order with ID {str(order.id)} failed."
|
||||
description = "Try again with a new invoice or from another wallet."
|
||||
|
||||
self.send_message(order, buyer.robot, title, description)
|
||||
return
|
||||
|
@ -112,7 +112,7 @@ class OrderViewSchema:
|
||||
- `11` "In dispute"
|
||||
- `12` "Collaboratively cancelled"
|
||||
- `13` "Sending satoshis to buyer"
|
||||
- `14` "Sucessful trade"
|
||||
- `14` "Successful trade"
|
||||
- `15` "Failed lightning network routing"
|
||||
- `16` "Wait for dispute resolution"
|
||||
- `17` "Maker lost dispute"
|
||||
@ -378,6 +378,21 @@ class BookViewSchema:
|
||||
}
|
||||
|
||||
|
||||
class NotificationSchema:
|
||||
get = {
|
||||
"summary": "Get robot notifications",
|
||||
"description": "Get a list of notifications sent to the robot.",
|
||||
"parameters": [
|
||||
OpenApiParameter(
|
||||
name="created_at",
|
||||
location=OpenApiParameter.QUERY,
|
||||
description=("Shows notifications created AFTER this date."),
|
||||
type=str,
|
||||
),
|
||||
],
|
||||
}
|
||||
|
||||
|
||||
class RobotViewSchema:
|
||||
get = {
|
||||
"summary": "Get robot info",
|
||||
|
@ -2,7 +2,7 @@ from decouple import config
|
||||
from decimal import Decimal
|
||||
from rest_framework import serializers
|
||||
|
||||
from .models import MarketTick, Order
|
||||
from .models import MarketTick, Order, Notification
|
||||
|
||||
RETRY_TIME = int(config("RETRY_TIME"))
|
||||
|
||||
@ -490,6 +490,19 @@ class OrderDetailSerializer(serializers.ModelSerializer):
|
||||
)
|
||||
|
||||
|
||||
class ListNotificationSerializer(serializers.ModelSerializer):
|
||||
status = serializers.SerializerMethodField(
|
||||
help_text="The `status` of the order when the notification was trigered",
|
||||
)
|
||||
|
||||
class Meta:
|
||||
model = Notification
|
||||
fields = ("title", "description", "order_id", "status", "created_at")
|
||||
|
||||
def get_status(self, notification) -> int:
|
||||
return notification.order.status
|
||||
|
||||
|
||||
class OrderPublicSerializer(serializers.ModelSerializer):
|
||||
maker_nick = serializers.CharField(required=False)
|
||||
maker_hash_id = serializers.CharField(required=False)
|
||||
|
38
api/tasks.py
38
api/tasks.py
@ -263,48 +263,50 @@ def send_notification(order_id=None, chat_message_id=None, message=None):
|
||||
chat_message = Message.objects.get(id=chat_message_id)
|
||||
order = chat_message.order
|
||||
|
||||
taker_enabled = False if order.taker is None else order.taker.robot.telegram_enabled
|
||||
if not (order.maker.robot.telegram_enabled or taker_enabled):
|
||||
return
|
||||
from api.notifications import Notifications
|
||||
|
||||
from api.notifications import Telegram
|
||||
|
||||
telegram = Telegram()
|
||||
notifications = Notifications()
|
||||
|
||||
if message == "welcome":
|
||||
telegram.welcome(order)
|
||||
notifications.welcome(order)
|
||||
|
||||
elif message == "order_expired_untaken":
|
||||
telegram.order_expired_untaken(order)
|
||||
notifications.order_expired_untaken(order)
|
||||
|
||||
elif message == "trade_successful":
|
||||
telegram.trade_successful(order)
|
||||
notifications.trade_successful(order)
|
||||
|
||||
elif message == "public_order_cancelled":
|
||||
telegram.public_order_cancelled(order)
|
||||
notifications.public_order_cancelled(order)
|
||||
|
||||
elif message == "taker_expired_b4bond":
|
||||
telegram.taker_expired_b4bond(order)
|
||||
notifications.taker_expired_b4bond(order)
|
||||
|
||||
elif message == "order_published":
|
||||
telegram.order_published(order)
|
||||
notifications.order_published(order)
|
||||
|
||||
elif message == "order_taken_confirmed":
|
||||
telegram.order_taken_confirmed(order)
|
||||
notifications.order_taken_confirmed(order)
|
||||
|
||||
elif message == "fiat_exchange_starts":
|
||||
telegram.fiat_exchange_starts(order)
|
||||
notifications.fiat_exchange_starts(order)
|
||||
|
||||
elif message == "dispute_opened":
|
||||
telegram.dispute_opened(order)
|
||||
notifications.dispute_opened(order)
|
||||
|
||||
elif message == "collaborative_cancelled":
|
||||
telegram.collaborative_cancelled(order)
|
||||
notifications.collaborative_cancelled(order)
|
||||
|
||||
elif message == "new_chat_message":
|
||||
telegram.new_chat_message(order, chat_message)
|
||||
notifications.new_chat_message(order, chat_message)
|
||||
|
||||
elif message == "coordinator_cancelled":
|
||||
telegram.coordinator_cancelled(order)
|
||||
notifications.coordinator_cancelled(order)
|
||||
|
||||
elif message == "dispute_closed":
|
||||
notifications.dispute_closed(order)
|
||||
|
||||
elif message == "lightning_failed":
|
||||
notifications.lightning_failed(order)
|
||||
|
||||
return
|
||||
|
@ -15,6 +15,7 @@ from .views import (
|
||||
RobotView,
|
||||
StealthView,
|
||||
TickView,
|
||||
NotificationsView,
|
||||
)
|
||||
|
||||
urlpatterns = [
|
||||
@ -36,4 +37,5 @@ urlpatterns = [
|
||||
path("ticks/", TickView.as_view(), name="ticks"),
|
||||
path("stealth/", StealthView.as_view(), name="stealth"),
|
||||
path("chat/", ChatView.as_view({"get": "get", "post": "post"}), name="chat"),
|
||||
path("notifications/", NotificationsView.as_view(), name="notifications"),
|
||||
]
|
||||
|
@ -141,7 +141,7 @@ def get_devfund_pubkey(network: str) -> str:
|
||||
"""
|
||||
|
||||
session = get_session()
|
||||
url = "https://raw.githubusercontent.com/RoboSats/robosats/main/devfund_pubey.json"
|
||||
url = "https://raw.githubusercontent.com/RoboSats/robosats/main/devfund_pubkey.json"
|
||||
|
||||
try:
|
||||
response = session.get(url)
|
||||
@ -188,8 +188,7 @@ def get_exchange_rates(currencies):
|
||||
blockchain_rates.append(
|
||||
float(blockchain_prices[currency]["last"])
|
||||
)
|
||||
except Exception as e:
|
||||
print(e)
|
||||
except Exception:
|
||||
blockchain_rates.append(np.nan)
|
||||
api_rates.append(blockchain_rates)
|
||||
|
||||
|
43
api/views.py
43
api/views.py
@ -5,6 +5,8 @@ from django.conf import settings
|
||||
from django.contrib.auth.models import User
|
||||
from django.db.models import Q, Sum
|
||||
from django.utils import timezone
|
||||
from django.utils.dateparse import parse_datetime
|
||||
from django.http import HttpResponseBadRequest
|
||||
from drf_spectacular.utils import extend_schema
|
||||
from rest_framework import status, viewsets
|
||||
from rest_framework.authentication import TokenAuthentication
|
||||
@ -14,8 +16,15 @@ from rest_framework.response import Response
|
||||
from rest_framework.views import APIView
|
||||
|
||||
from api.logics import Logics
|
||||
from api.models import Currency, LNPayment, MarketTick, OnchainPayment, Order
|
||||
from api.notifications import Telegram
|
||||
from api.models import (
|
||||
Currency,
|
||||
LNPayment,
|
||||
MarketTick,
|
||||
OnchainPayment,
|
||||
Order,
|
||||
Notification,
|
||||
)
|
||||
from api.notifications import Notifications
|
||||
from api.oas_schemas import (
|
||||
BookViewSchema,
|
||||
HistoricalViewSchema,
|
||||
@ -28,6 +37,7 @@ from api.oas_schemas import (
|
||||
RobotViewSchema,
|
||||
StealthViewSchema,
|
||||
TickViewSchema,
|
||||
NotificationSchema,
|
||||
)
|
||||
from api.serializers import (
|
||||
ClaimRewardSerializer,
|
||||
@ -39,6 +49,7 @@ from api.serializers import (
|
||||
StealthSerializer,
|
||||
TickSerializer,
|
||||
UpdateOrderSerializer,
|
||||
ListNotificationSerializer,
|
||||
)
|
||||
from api.utils import (
|
||||
compute_avg_premium,
|
||||
@ -659,7 +670,7 @@ class RobotView(APIView):
|
||||
context["last_login"] = user.last_login
|
||||
|
||||
# Adds/generate telegram token and whether it is enabled
|
||||
context = {**context, **Telegram.get_context(user)}
|
||||
context = {**context, **Notifications.get_context(user)}
|
||||
|
||||
# return active order or last made order if any
|
||||
has_no_active_order, _, order = Logics.validate_already_maker_or_taker(
|
||||
@ -730,6 +741,32 @@ class BookView(ListAPIView):
|
||||
return Response(book_data, status=status.HTTP_200_OK)
|
||||
|
||||
|
||||
class NotificationsView(ListAPIView):
|
||||
authentication_classes = [TokenAuthentication]
|
||||
permission_classes = [IsAuthenticated]
|
||||
serializer_class = ListNotificationSerializer
|
||||
|
||||
@extend_schema(**NotificationSchema.get)
|
||||
def get(self, request, format=None):
|
||||
robot = request.user.robot
|
||||
queryset = Notification.objects.filter(robot=robot).order_by("-created_at")
|
||||
created_at = request.GET.get("created_at")
|
||||
|
||||
if created_at:
|
||||
created_at = parse_datetime(created_at)
|
||||
if not created_at:
|
||||
return HttpResponseBadRequest("Invalid date format")
|
||||
queryset = queryset.filter(created_at__gte=created_at)
|
||||
|
||||
notification_data = []
|
||||
for notification in queryset:
|
||||
data = self.serializer_class(notification).data
|
||||
data["order_id"] = notification.order.id
|
||||
notification_data.append(data)
|
||||
|
||||
return Response(notification_data, status=status.HTTP_200_OK)
|
||||
|
||||
|
||||
class InfoView(viewsets.ViewSet):
|
||||
serializer_class = InfoSerializer
|
||||
|
||||
|
@ -15,7 +15,7 @@ version: '3.9'
|
||||
services:
|
||||
bitcoind:
|
||||
image: ruimarinho/bitcoin-core:${BITCOIND_VERSION:-24.0.1}-alpine
|
||||
container_name: btc
|
||||
container_name: test-btc
|
||||
restart: always
|
||||
ports:
|
||||
- "8000:8000"
|
||||
@ -50,7 +50,7 @@ services:
|
||||
|
||||
coordinator-LND:
|
||||
image: lightninglabs/lnd:${LND_VERSION:-v0.17.0-beta}
|
||||
container_name: coordinator-LND
|
||||
container_name: test-coordinator-LND
|
||||
restart: always
|
||||
volumes:
|
||||
- bitcoin:/root/.bitcoin/
|
||||
@ -83,7 +83,7 @@ services:
|
||||
coordinator-CLN:
|
||||
image: elementsproject/lightningd:${CLN_VERSION:-v24.05}
|
||||
restart: always
|
||||
container_name: coordinator-CLN
|
||||
container_name: test-coordinator-CLN
|
||||
environment:
|
||||
LIGHTNINGD_NETWORK: 'regtest'
|
||||
volumes:
|
||||
@ -97,7 +97,7 @@ services:
|
||||
|
||||
robot-LND:
|
||||
image: lightninglabs/lnd:${LND_VERSION:-v0.17.0-beta}
|
||||
container_name: robot-LND
|
||||
container_name: test-robot-LND
|
||||
restart: always
|
||||
volumes:
|
||||
- bitcoin:/root/.bitcoin/
|
||||
@ -129,7 +129,7 @@ services:
|
||||
|
||||
redis:
|
||||
image: redis:${REDIS_VERSION:-7.2.1}-alpine
|
||||
container_name: redis
|
||||
container_name: test-redis
|
||||
restart: always
|
||||
volumes:
|
||||
- redisdata:/data
|
||||
@ -141,7 +141,7 @@ services:
|
||||
args:
|
||||
DEVELOPMENT: True
|
||||
image: backend-image
|
||||
container_name: coordinator
|
||||
container_name: test-coordinator
|
||||
restart: always
|
||||
environment:
|
||||
DEVELOPMENT: True
|
||||
@ -171,7 +171,7 @@ services:
|
||||
|
||||
postgres:
|
||||
image: postgres:${POSTGRES_VERSION:-14.2}-alpine
|
||||
container_name: sql
|
||||
container_name: test-sql
|
||||
restart: always
|
||||
environment:
|
||||
POSTGRES_PASSWORD: 'example'
|
||||
|
@ -1,7 +1,7 @@
|
||||
openapi: 3.0.3
|
||||
info:
|
||||
title: RoboSats REST API
|
||||
version: 0.6.2
|
||||
version: 0.6.3
|
||||
x-logo:
|
||||
url: https://raw.githubusercontent.com/Reckless-Satoshi/robosats/main/frontend/static/assets/images/robosats-0.1.1-banner.png
|
||||
backgroundColor: '#FFFFFF'
|
||||
@ -284,6 +284,30 @@ paths:
|
||||
type: string
|
||||
description: Reason for the failure
|
||||
description: ''
|
||||
/api/notifications/:
|
||||
get:
|
||||
operationId: notifications_list
|
||||
description: Get a list of notifications sent to the robot.
|
||||
summary: Get robot notifications
|
||||
parameters:
|
||||
- in: query
|
||||
name: created_at
|
||||
schema:
|
||||
type: string
|
||||
description: Shows notifications created AFTER this date.
|
||||
tags:
|
||||
- notifications
|
||||
security:
|
||||
- tokenAuth: []
|
||||
responses:
|
||||
'200':
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ListNotification'
|
||||
description: ''
|
||||
/api/order/:
|
||||
get:
|
||||
operationId: order_retrieve
|
||||
@ -341,7 +365,7 @@ paths:
|
||||
- `11` "In dispute"
|
||||
- `12` "Collaboratively cancelled"
|
||||
- `13` "Sending satoshis to buyer"
|
||||
- `14` "Sucessful trade"
|
||||
- `14` "Successful trade"
|
||||
- `15` "Failed lightning network routing"
|
||||
- `16` "Wait for dispute resolution"
|
||||
- `17` "Maker lost dispute"
|
||||
@ -1070,6 +1094,28 @@ components:
|
||||
- swap_enabled
|
||||
- taker_fee
|
||||
- version
|
||||
ListNotification:
|
||||
type: object
|
||||
properties:
|
||||
title:
|
||||
type: string
|
||||
maxLength: 240
|
||||
description:
|
||||
type: string
|
||||
maxLength: 240
|
||||
order_id:
|
||||
type: integer
|
||||
readOnly: true
|
||||
status:
|
||||
type: integer
|
||||
readOnly: true
|
||||
description: The `status` of the order when the notification was trigered
|
||||
created_at:
|
||||
type: string
|
||||
format: date-time
|
||||
required:
|
||||
- order_id
|
||||
- status
|
||||
ListOrder:
|
||||
type: object
|
||||
properties:
|
||||
@ -1787,7 +1833,7 @@ components:
|
||||
* `11` - In dispute
|
||||
* `12` - Collaboratively cancelled
|
||||
* `13` - Sending satoshis to buyer
|
||||
* `14` - Sucessful trade
|
||||
* `14` - Successful trade
|
||||
* `15` - Failed lightning network routing
|
||||
* `16` - Wait for dispute resolution
|
||||
* `17` - Maker lost dispute
|
||||
|
765
frontend/package-lock.json
generated
765
frontend/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "frontend",
|
||||
"version": "0.6.2",
|
||||
"version": "0.6.3",
|
||||
"description": "",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
@ -43,7 +43,7 @@
|
||||
"jest": "^29.6.1",
|
||||
"prettier": "^3.3.2",
|
||||
"ts-node": "^10.9.2",
|
||||
"typescript": "^5.4.2",
|
||||
"typescript": "^5.5.4",
|
||||
"webpack": "^5.89.0",
|
||||
"webpack-cli": "^5.1.4"
|
||||
},
|
||||
@ -62,23 +62,23 @@
|
||||
"@nivo/core": "^0.86.0",
|
||||
"@nivo/line": "^0.86.0",
|
||||
"base-ex": "^0.8.1",
|
||||
"country-flag-icons": "^1.5.11",
|
||||
"country-flag-icons": "^1.5.13",
|
||||
"date-fns": "^2.30.0",
|
||||
"file-replace-loader": "^1.4.0",
|
||||
"i18next": "^23.2.11",
|
||||
"i18next-browser-languagedetector": "^7.2.1",
|
||||
"i18next-browser-languagedetector": "^8.0.0",
|
||||
"i18next-http-backend": "^2.5.0",
|
||||
"install": "^0.13.0",
|
||||
"js-sha256": "^0.11.0",
|
||||
"leaflet": "^1.9.4",
|
||||
"light-bolt11-decoder": "^3.1.1",
|
||||
"npm": "^10.5.0",
|
||||
"npm": "^10.8.1",
|
||||
"openpgp": "^5.11.0",
|
||||
"react": "^18.2.0",
|
||||
"react-countdown": "^2.3.5",
|
||||
"react-dom": "^18.2.0",
|
||||
"react-grid-layout": "^1.4.4",
|
||||
"react-i18next": "^14.1.0",
|
||||
"react-i18next": "^14.1.2",
|
||||
"react-image": "^4.1.0",
|
||||
"react-leaflet": "^4.2.1",
|
||||
"react-qr-code": "^2.0.11",
|
||||
|
@ -39,24 +39,26 @@ const OrderPage = (): JSX.Element => {
|
||||
useEffect(() => {
|
||||
const shortAlias = params.shortAlias;
|
||||
const coordinator = federation.getCoordinator(shortAlias ?? '');
|
||||
const { url, basePath } = coordinator.getEndpoint(
|
||||
settings.network,
|
||||
origin,
|
||||
settings.selfhostedClient,
|
||||
hostUrl,
|
||||
);
|
||||
if (coordinator) {
|
||||
const endpoint = coordinator?.getEndpoint(
|
||||
settings.network,
|
||||
origin,
|
||||
settings.selfhostedClient,
|
||||
hostUrl,
|
||||
);
|
||||
|
||||
setBaseUrl(`${url}${basePath}`);
|
||||
if (endpoint) setBaseUrl(`${endpoint?.url}${endpoint?.basePath}`);
|
||||
|
||||
const orderId = Number(params.orderId);
|
||||
if (
|
||||
orderId &&
|
||||
currentOrderId.id !== orderId &&
|
||||
currentOrderId.shortAlias !== shortAlias &&
|
||||
shortAlias
|
||||
)
|
||||
setCurrentOrderId({ id: orderId, shortAlias });
|
||||
if (!acknowledgedWarning) setOpen({ ...closeAll, warning: true });
|
||||
const orderId = Number(params.orderId);
|
||||
if (
|
||||
orderId &&
|
||||
currentOrderId.id !== orderId &&
|
||||
currentOrderId.shortAlias !== shortAlias &&
|
||||
shortAlias
|
||||
)
|
||||
setCurrentOrderId({ id: orderId, shortAlias });
|
||||
if (!acknowledgedWarning) setOpen({ ...closeAll, warning: true });
|
||||
}
|
||||
}, [params, currentOrderId]);
|
||||
|
||||
const onClickCoordinator = function (): void {
|
||||
@ -98,7 +100,7 @@ const OrderPage = (): JSX.Element => {
|
||||
setOpen(closeAll);
|
||||
setAcknowledgedWarning(true);
|
||||
}}
|
||||
longAlias={federation.getCoordinator(params.shortAlias ?? '').longAlias}
|
||||
longAlias={federation.getCoordinator(params.shortAlias ?? '')?.longAlias}
|
||||
/>
|
||||
{currentOrder === null && badOrder === undefined && <CircularProgress />}
|
||||
{badOrder !== undefined ? (
|
||||
|
@ -1,12 +1,38 @@
|
||||
import React, { useContext } from 'react';
|
||||
import { Grid, Paper } from '@mui/material';
|
||||
import React, { useContext, useState } from 'react';
|
||||
import { Button, Grid, List, ListItem, Paper, TextField, Typography } from '@mui/material';
|
||||
import SettingsForm from '../../components/SettingsForm';
|
||||
import { AppContext, type UseAppStoreType } from '../../contexts/AppContext';
|
||||
import FederationTable from '../../components/FederationTable';
|
||||
import { t } from 'i18next';
|
||||
import { FederationContext, type UseFederationStoreType } from '../../contexts/FederationContext';
|
||||
|
||||
const SettingsPage = (): JSX.Element => {
|
||||
const { windowSize, navbarHeight } = useContext<UseAppStoreType>(AppContext);
|
||||
const { federation, addNewCoordinator } = useContext<UseFederationStoreType>(FederationContext);
|
||||
const maxHeight = (windowSize.height - navbarHeight) * 0.85 - 3;
|
||||
const [newAlias, setNewAlias] = useState<string>('');
|
||||
const [newUrl, setNewUrl] = useState<string>('');
|
||||
const [error, setError] = useState<string>();
|
||||
// Regular expression to match a valid .onion URL
|
||||
const onionUrlPattern = /^((http|https):\/\/)?[a-zA-Z2-7]{16,56}\.onion$/;
|
||||
|
||||
const addCoordinator: () => void = () => {
|
||||
if (federation.coordinators[newAlias]) {
|
||||
setError(t('Alias already exists'));
|
||||
} else {
|
||||
if (onionUrlPattern.test(newUrl)) {
|
||||
let fullNewUrl = newUrl;
|
||||
if (!/^((http|https):\/\/)/.test(fullNewUrl)) {
|
||||
fullNewUrl = `http://${newUrl}`;
|
||||
}
|
||||
addNewCoordinator(newAlias, fullNewUrl);
|
||||
setNewAlias('');
|
||||
setNewUrl('');
|
||||
} else {
|
||||
setError(t('Invalid Onion URL'));
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
return (
|
||||
<Paper
|
||||
@ -26,6 +52,46 @@ const SettingsPage = (): JSX.Element => {
|
||||
<Grid item>
|
||||
<FederationTable maxHeight={18} />
|
||||
</Grid>
|
||||
<Grid item>
|
||||
<Typography align='center' component='h2' variant='subtitle2' color='secondary'>
|
||||
{error}
|
||||
</Typography>
|
||||
</Grid>
|
||||
<List>
|
||||
<ListItem>
|
||||
<TextField
|
||||
id='outlined-basic'
|
||||
label={t('Alias')}
|
||||
variant='outlined'
|
||||
size='small'
|
||||
value={newAlias}
|
||||
onChange={(e) => {
|
||||
setNewAlias(e.target.value);
|
||||
}}
|
||||
/>
|
||||
<TextField
|
||||
id='outlined-basic'
|
||||
label={t('URL')}
|
||||
variant='outlined'
|
||||
size='small'
|
||||
value={newUrl}
|
||||
onChange={(e) => {
|
||||
setNewUrl(e.target.value);
|
||||
}}
|
||||
/>
|
||||
<Button
|
||||
sx={{ maxHeight: 38 }}
|
||||
disabled={false}
|
||||
onClick={addCoordinator}
|
||||
variant='contained'
|
||||
color='primary'
|
||||
size='small'
|
||||
type='submit'
|
||||
>
|
||||
{t('Add')}
|
||||
</Button>
|
||||
</ListItem>
|
||||
</List>
|
||||
</Grid>
|
||||
</Paper>
|
||||
);
|
||||
|
@ -359,7 +359,8 @@ const BookControl = ({
|
||||
>
|
||||
<div style={{ display: 'flex', alignItems: 'center', flexWrap: 'wrap' }}>
|
||||
<RobotAvatar
|
||||
shortAlias={coordinator.shortAlias}
|
||||
shortAlias={coordinator.federated ? coordinator.shortAlias : undefined}
|
||||
hashId={coordinator.federated ? undefined : coordinator.mainnet.onion}
|
||||
style={{ width: '1.55em', height: '1.55em' }}
|
||||
smooth={true}
|
||||
small={true}
|
||||
|
@ -14,7 +14,6 @@ import {
|
||||
LinearProgress,
|
||||
IconButton,
|
||||
Tooltip,
|
||||
type LinearProgressProps,
|
||||
styled,
|
||||
} from '@mui/material';
|
||||
import {
|
||||
@ -253,6 +252,7 @@ const BookTable = ({
|
||||
headerName: t('Host'),
|
||||
width: width * fontSize,
|
||||
renderCell: (params: any) => {
|
||||
const coordinator = federation.coordinators[params.row.coordinatorShortAlias];
|
||||
return (
|
||||
<ListItemButton
|
||||
style={{ cursor: 'pointer' }}
|
||||
@ -262,7 +262,8 @@ const BookTable = ({
|
||||
>
|
||||
<ListItemAvatar sx={{ position: 'relative', left: '-1.54em', bottom: '0.4em' }}>
|
||||
<RobotAvatar
|
||||
shortAlias={params.row.coordinatorShortAlias}
|
||||
shortAlias={coordinator.federated ? params.row.coordinatorShortAlias : undefined}
|
||||
hashId={coordinator.federated ? undefined : coordinator.mainnet.onion}
|
||||
style={{ width: '3.215em', height: '3.215em' }}
|
||||
smooth={true}
|
||||
small={true}
|
||||
@ -829,14 +830,6 @@ const BookTable = ({
|
||||
);
|
||||
};
|
||||
|
||||
interface GridComponentProps {
|
||||
LoadingOverlay: (props: LinearProgressProps) => JSX.Element;
|
||||
NoResultsOverlay?: (props: any) => JSX.Element;
|
||||
NoRowsOverlay?: (props: any) => JSX.Element;
|
||||
Footer?: (props: any) => JSX.Element;
|
||||
Toolbar?: (props: any) => JSX.Element;
|
||||
}
|
||||
|
||||
const NoResultsOverlay = function (): JSX.Element {
|
||||
return (
|
||||
<Grid
|
||||
@ -900,7 +893,6 @@ const BookTable = ({
|
||||
((federation.exchange.enabledCoordinators - federation.exchange.loadingCoordinators) /
|
||||
federation.exchange.enabledCoordinators) *
|
||||
100;
|
||||
|
||||
if (!fullscreen) {
|
||||
return (
|
||||
<Paper
|
||||
|
@ -127,7 +127,7 @@ const ContactButtons = ({
|
||||
</Grid>
|
||||
)}
|
||||
|
||||
{pgp !== undefined && (
|
||||
{pgp && fingerprint && (
|
||||
<Grid item>
|
||||
<Tooltip
|
||||
enterTouchDelay={0}
|
||||
@ -344,7 +344,7 @@ const BadgesHall = ({ badges, size_limit }: BadgesProps): JSX.Element => {
|
||||
);
|
||||
};
|
||||
|
||||
const CoordinatorDialog = ({ open = false, onClose, network, shortAlias }: Props): JSX.Element => {
|
||||
const CoordinatorDialog = ({ open = false, onClose, shortAlias }: Props): JSX.Element => {
|
||||
const { t } = useTranslation();
|
||||
const { clientVersion, page, settings, origin } = useContext(AppContext);
|
||||
const { federation } = useContext<UseFederationStoreType>(FederationContext);
|
||||
@ -368,7 +368,8 @@ const CoordinatorDialog = ({ open = false, onClose, network, shortAlias }: Props
|
||||
<Grid container direction='column' alignItems='center' padding={0}>
|
||||
<Grid item>
|
||||
<RobotAvatar
|
||||
shortAlias={coordinator?.shortAlias}
|
||||
shortAlias={coordinator?.federated ? coordinator?.shortAlias : undefined}
|
||||
hashId={coordinator?.federated ? undefined : coordinator?.mainnet.onion}
|
||||
style={{ width: '7.5em', height: '7.5em' }}
|
||||
smooth={true}
|
||||
/>
|
||||
|
@ -1,4 +1,4 @@
|
||||
import React, { useContext, useEffect, useMemo, useState } from 'react';
|
||||
import React, { useContext, useEffect, useState } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
|
||||
import {
|
||||
|
@ -1,4 +1,4 @@
|
||||
import React, { useCallback, useEffect, useState, useContext } from 'react';
|
||||
import React, { useCallback, useEffect, useState, useContext, useMemo } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
import { Box, useTheme, Checkbox, CircularProgress, Typography, Grid } from '@mui/material';
|
||||
import { DataGrid, type GridColDef, type GridValidRowModel } from '@mui/x-data-grid';
|
||||
@ -21,9 +21,9 @@ const FederationTable = ({
|
||||
fillContainer = false,
|
||||
}: FederationTableProps): JSX.Element => {
|
||||
const { t } = useTranslation();
|
||||
const { federation, sortedCoordinators, coordinatorUpdatedAt } =
|
||||
const { federation, sortedCoordinators, coordinatorUpdatedAt, federationUpdatedAt } =
|
||||
useContext<UseFederationStoreType>(FederationContext);
|
||||
const { setOpen } = useContext<UseAppStoreType>(AppContext);
|
||||
const { setOpen, settings } = useContext<UseAppStoreType>(AppContext);
|
||||
const theme = useTheme();
|
||||
const [pageSize, setPageSize] = useState<number>(0);
|
||||
|
||||
@ -43,7 +43,7 @@ const FederationTable = ({
|
||||
if (useDefaultPageSize) {
|
||||
setPageSize(defaultPageSize);
|
||||
}
|
||||
}, [coordinatorUpdatedAt]);
|
||||
}, [coordinatorUpdatedAt, federationUpdatedAt]);
|
||||
|
||||
const localeText = {
|
||||
MuiTablePagination: { labelRowsPerPage: t('Coordinators per page:') },
|
||||
@ -62,6 +62,7 @@ const FederationTable = ({
|
||||
headerName: t('Coordinator'),
|
||||
width: width * fontSize,
|
||||
renderCell: (params: any) => {
|
||||
const coordinator = federation.coordinators[params.row.shortAlias];
|
||||
return (
|
||||
<Grid
|
||||
container
|
||||
@ -76,7 +77,8 @@ const FederationTable = ({
|
||||
>
|
||||
<Grid item>
|
||||
<RobotAvatar
|
||||
shortAlias={params.row.shortAlias}
|
||||
shortAlias={coordinator.federated ? params.row.shortAlias : undefined}
|
||||
hashId={coordinator.federated ? undefined : coordinator.mainnet.onion}
|
||||
style={{ width: '3.215em', height: '3.215em' }}
|
||||
smooth={true}
|
||||
small={true}
|
||||
@ -212,10 +214,13 @@ const FederationTable = ({
|
||||
}
|
||||
};
|
||||
|
||||
const reorderedCoordinators = sortedCoordinators.reduce((coordinators, key) => {
|
||||
coordinators[key] = federation.coordinators[key];
|
||||
return coordinators;
|
||||
}, {});
|
||||
const reorderedCoordinators = useMemo(() => {
|
||||
return sortedCoordinators.reduce((coordinators, key) => {
|
||||
coordinators[key] = federation.coordinators[key];
|
||||
|
||||
return coordinators;
|
||||
}, {});
|
||||
}, [settings.network, federationUpdatedAt]);
|
||||
|
||||
return (
|
||||
<Box
|
||||
|
@ -90,6 +90,7 @@ const FlagWithProps = ({ code, width = '1.428em', height = '1.428em' }: Props):
|
||||
if (code === 'IRT') flag = <Flags.IR {...defaultProps} />;
|
||||
if (code === 'BDT') flag = <Flags.BD {...defaultProps} />;
|
||||
if (code === 'ALL') flag = <Flags.AL {...defaultProps} />;
|
||||
if (code === 'DZD') flag = <Flags.DZ {...defaultProps} />;
|
||||
if (code === 'ANY') flag = <EarthIcon {...defaultProps} />;
|
||||
if (code === 'XAU') flag = <GoldIcon {...defaultProps} />;
|
||||
if (code === 'BTC') flag = <SwapCallsIcon color='primary' />;
|
||||
|
@ -1,6 +1,6 @@
|
||||
import React, { useState } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
import { useAutocomplete } from '@mui/base/useAutocomplete';
|
||||
import useAutocomplete from '@mui/base/useAutocomplete';
|
||||
import { styled } from '@mui/material/styles';
|
||||
import {
|
||||
Button,
|
||||
@ -409,9 +409,8 @@ const AutocompletePayments: React.FC<AutocompletePaymentsProps> = (props) => {
|
||||
))}
|
||||
{qttHiddenTags > 0 ? (
|
||||
<StyledChip
|
||||
sx={{ borderRadius: 1 }}
|
||||
label={`+${qttHiddenTags}`}
|
||||
sx={{ height: '1.6rem' }}
|
||||
sx={{ borderRadius: 1, height: '1.6rem' }}
|
||||
/>
|
||||
) : null}
|
||||
</>
|
||||
|
@ -1,4 +1,4 @@
|
||||
import React, { useContext, useMemo } from 'react';
|
||||
import React, { useContext } from 'react';
|
||||
import {
|
||||
Grid,
|
||||
Select,
|
||||
@ -26,8 +26,7 @@ const SelectCoordinator: React.FC<SelectCoordinatorProps> = ({
|
||||
setCoordinator,
|
||||
}) => {
|
||||
const { setOpen } = useContext<UseAppStoreType>(AppContext);
|
||||
const { federation, sortedCoordinators, coordinatorUpdatedAt } =
|
||||
useContext<UseFederationStoreType>(FederationContext);
|
||||
const { federation, sortedCoordinators } = useContext<UseFederationStoreType>(FederationContext);
|
||||
const theme = useTheme();
|
||||
const { t } = useTranslation();
|
||||
|
||||
@ -41,10 +40,7 @@ const SelectCoordinator: React.FC<SelectCoordinatorProps> = ({
|
||||
setCoordinator(e.target.value);
|
||||
};
|
||||
|
||||
const coordinator = useMemo(
|
||||
() => federation.getCoordinator(coordinatorAlias),
|
||||
[coordinatorUpdatedAt],
|
||||
);
|
||||
const coordinator = federation.getCoordinator(coordinatorAlias);
|
||||
|
||||
return (
|
||||
<Grid item>
|
||||
@ -83,7 +79,8 @@ const SelectCoordinator: React.FC<SelectCoordinatorProps> = ({
|
||||
>
|
||||
<Grid item>
|
||||
<RobotAvatar
|
||||
shortAlias={coordinatorAlias}
|
||||
shortAlias={coordinator?.federated ? coordinator.shortAlias : undefined}
|
||||
hashId={coordinator?.federated ? undefined : coordinator.mainnet.onion}
|
||||
style={{ width: '3em', height: '3em' }}
|
||||
smooth={true}
|
||||
flipHorizontally={false}
|
||||
|
@ -248,7 +248,7 @@ const Notifications = ({
|
||||
// 11: 'In dispute'
|
||||
// 12: 'Collaboratively cancelled'
|
||||
// 13: 'Sending satoshis to buyer'
|
||||
// 14: 'Sucessful trade'
|
||||
// 14: 'Successful trade'
|
||||
// 15: 'Failed lightning network routing'
|
||||
// 16: 'Wait for dispute resolution'
|
||||
// 17: 'Maker lost dispute'
|
||||
|
@ -174,8 +174,8 @@ const OrderDetails = ({
|
||||
|
||||
const isBuyer = (order.type === 0 && order.is_maker) || (order.type === 1 && !order.is_maker);
|
||||
const tradeFee = order.is_maker
|
||||
? coordinator.info?.maker_fee ?? 0
|
||||
: coordinator.info?.taker_fee ?? 0;
|
||||
? (coordinator.info?.maker_fee ?? 0)
|
||||
: (coordinator.info?.taker_fee ?? 0);
|
||||
const defaultRoutingBudget = 0.001;
|
||||
const btc_now = order.satoshis_now / 100000000;
|
||||
const rate = Number(order.max_amount ?? order.amount) / btc_now;
|
||||
@ -265,7 +265,12 @@ const OrderDetails = ({
|
||||
{' '}
|
||||
<Grid container direction='row' justifyContent='center' alignItems='center'>
|
||||
<Grid item xs={2}>
|
||||
<RobotAvatar shortAlias={coordinator.shortAlias} small={true} smooth={true} />
|
||||
<RobotAvatar
|
||||
shortAlias={coordinator.federated ? coordinator.shortAlias : undefined}
|
||||
hashId={coordinator.federated ? undefined : coordinator.mainnet.onion}
|
||||
small={true}
|
||||
smooth={true}
|
||||
/>
|
||||
</Grid>
|
||||
<Grid item xs={4}>
|
||||
<ListItemText primary={coordinator.longAlias} secondary={t('Order host')} />
|
||||
|
@ -70,8 +70,8 @@ const RobotAvatar: React.FC<Props> = ({
|
||||
}, [hashId]);
|
||||
|
||||
useEffect(() => {
|
||||
if (shortAlias !== undefined) {
|
||||
if (window.NativeRobosats === undefined) {
|
||||
if (shortAlias && shortAlias !== '') {
|
||||
if (!window.NativeRobosats) {
|
||||
setAvatarSrc(
|
||||
`${hostUrl}/static/federation/avatars/${shortAlias}${small ? '.small' : ''}.webp`,
|
||||
);
|
||||
|
@ -1,4 +1,4 @@
|
||||
import React, { useContext, useEffect } from 'react';
|
||||
import React, { useContext } from 'react';
|
||||
import { useTranslation } from 'react-i18next';
|
||||
import { type UseAppStoreType, AppContext } from '../../contexts/AppContext';
|
||||
import {
|
||||
@ -30,8 +30,7 @@ import {
|
||||
import { systemClient } from '../../services/System';
|
||||
import { TorIcon } from '../Icons';
|
||||
import SwapCalls from '@mui/icons-material/SwapCalls';
|
||||
import { FederationContext, type UseFederationStoreType } from '../../contexts/FederationContext';
|
||||
import { GarageContext, UseGarageStoreType } from '../../contexts/GarageContext';
|
||||
import { apiClient } from '../../services/api';
|
||||
|
||||
interface SettingsFormProps {
|
||||
dense?: boolean;
|
||||
@ -39,8 +38,6 @@ interface SettingsFormProps {
|
||||
|
||||
const SettingsForm = ({ dense = false }: SettingsFormProps): JSX.Element => {
|
||||
const { fav, setFav, settings, setSettings } = useContext<UseAppStoreType>(AppContext);
|
||||
const { federation } = useContext<UseFederationStoreType>(FederationContext);
|
||||
const { garage } = useContext<UseGarageStoreType>(GarageContext);
|
||||
const theme = useTheme();
|
||||
const { t } = useTranslation();
|
||||
const fontSizes = [
|
||||
@ -251,6 +248,7 @@ const SettingsForm = ({ dense = false }: SettingsFormProps): JSX.Element => {
|
||||
onChange={(_e, useProxy) => {
|
||||
setSettings({ ...settings, useProxy });
|
||||
systemClient.setItem('settings_use_proxy', String(useProxy));
|
||||
apiClient.useProxy = useProxy;
|
||||
}}
|
||||
>
|
||||
<ToggleButton value={true} color='primary'>
|
||||
|
@ -639,7 +639,7 @@ const TradeBox = ({ baseUrl, onStartAgain }: TradeBoxProps): JSX.Element => {
|
||||
}
|
||||
break;
|
||||
|
||||
// 14: 'Sucessful trade'
|
||||
// 14: 'Successful trade'
|
||||
case 14:
|
||||
baseContract.title = 'Trade finished!';
|
||||
baseContract.titleColor = 'success';
|
||||
|
@ -4,7 +4,6 @@ import React, {
|
||||
useEffect,
|
||||
useState,
|
||||
type SetStateAction,
|
||||
useMemo,
|
||||
useContext,
|
||||
type ReactNode,
|
||||
} from 'react';
|
||||
@ -15,7 +14,7 @@ import { federationLottery } from '../utils';
|
||||
|
||||
import { AppContext, type UseAppStoreType } from './AppContext';
|
||||
import { GarageContext, type UseGarageStoreType } from './GarageContext';
|
||||
import NativeRobosats from '../services/Native';
|
||||
import { type Origin, type Origins } from '../models/Coordinator.model';
|
||||
|
||||
// Refresh delays (ms) according to Order status
|
||||
const defaultDelay = 5000;
|
||||
@ -34,7 +33,7 @@ const statusToDelay = [
|
||||
100000, // 'In dispute'
|
||||
999999, // 'Collaboratively cancelled'
|
||||
10000, // 'Sending satoshis to buyer'
|
||||
60000, // 'Sucessful trade'
|
||||
60000, // 'Successful trade'
|
||||
30000, // 'Failed lightning network routing'
|
||||
300000, // 'Wait for dispute resolution'
|
||||
300000, // 'Maker lost dispute'
|
||||
@ -59,6 +58,7 @@ export interface UseFederationStoreType {
|
||||
currentOrder: Order | null;
|
||||
coordinatorUpdatedAt: string;
|
||||
federationUpdatedAt: string;
|
||||
addNewCoordinator: (alias: string, url: string) => void;
|
||||
}
|
||||
|
||||
export const initialFederationContext: UseFederationStoreType = {
|
||||
@ -70,6 +70,7 @@ export const initialFederationContext: UseFederationStoreType = {
|
||||
currentOrder: null,
|
||||
coordinatorUpdatedAt: '',
|
||||
federationUpdatedAt: '',
|
||||
addNewCoordinator: () => {},
|
||||
};
|
||||
|
||||
export const FederationContext = createContext<UseFederationStoreType>(initialFederationContext);
|
||||
@ -81,7 +82,7 @@ export const FederationContextProvider = ({
|
||||
useContext<UseAppStoreType>(AppContext);
|
||||
const { setMaker, garage, setBadOrder } = useContext<UseGarageStoreType>(GarageContext);
|
||||
const [federation] = useState(new Federation(origin, settings, hostUrl));
|
||||
const sortedCoordinators = useMemo(() => federationLottery(federation), []);
|
||||
const [sortedCoordinators, setSortedCoordinators] = useState(federationLottery(federation));
|
||||
const [coordinatorUpdatedAt, setCoordinatorUpdatedAt] = useState<string>(
|
||||
new Date().toISOString(),
|
||||
);
|
||||
@ -164,6 +165,35 @@ export const FederationContextProvider = ({
|
||||
}
|
||||
};
|
||||
|
||||
const addNewCoordinator: (alias: string, url: string) => void = (alias, url) => {
|
||||
if (!federation.coordinators[alias]) {
|
||||
const attributes: Record<any, any> = {
|
||||
longAlias: alias,
|
||||
shortAlias: alias,
|
||||
federated: false,
|
||||
enabled: true,
|
||||
};
|
||||
const origins: Origins = {
|
||||
clearnet: undefined,
|
||||
onion: url as Origin,
|
||||
i2p: undefined,
|
||||
};
|
||||
if (settings.network === 'mainnet') {
|
||||
attributes.mainnet = origins;
|
||||
} else {
|
||||
attributes.testnet = origins;
|
||||
}
|
||||
federation.addCoordinator(origin, settings, hostUrl, attributes);
|
||||
const newCoordinator = federation.coordinators[alias];
|
||||
newCoordinator.update(() => {
|
||||
setCoordinatorUpdatedAt(new Date().toISOString());
|
||||
});
|
||||
garage.syncCoordinator(newCoordinator);
|
||||
setSortedCoordinators(federationLottery(federation));
|
||||
setFederationUpdatedAt(new Date().toISOString());
|
||||
}
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
if (currentOrderId.id && currentOrderId.shortAlias) {
|
||||
setCurrentOrder(null);
|
||||
@ -200,6 +230,7 @@ export const FederationContextProvider = ({
|
||||
setDelay,
|
||||
coordinatorUpdatedAt,
|
||||
federationUpdatedAt,
|
||||
addNewCoordinator,
|
||||
}}
|
||||
>
|
||||
{children}
|
||||
|
@ -72,6 +72,39 @@ export interface Info {
|
||||
|
||||
export type Origin = 'onion' | 'i2p' | 'clearnet';
|
||||
|
||||
export const coordinatorDefaultValues = {
|
||||
longAlias: '',
|
||||
shortAlias: '',
|
||||
description: '',
|
||||
motto: '',
|
||||
color: '#000',
|
||||
size_limit: 21 * 100000000,
|
||||
established: new Date(),
|
||||
policies: {},
|
||||
contact: {
|
||||
email: '',
|
||||
telegram: '',
|
||||
simplex: '',
|
||||
matrix: '',
|
||||
website: '',
|
||||
nostr: '',
|
||||
pgp: '',
|
||||
fingerprint: '',
|
||||
},
|
||||
badges: {
|
||||
isFounder: false,
|
||||
donatesToDevFund: 0,
|
||||
hasGoodOpSec: false,
|
||||
robotsLove: false,
|
||||
hasLargeLimits: false,
|
||||
},
|
||||
mainnet: undefined,
|
||||
testnet: undefined,
|
||||
mainnetNodesPubkeys: '',
|
||||
testnetNodesPubkeys: '',
|
||||
federated: true,
|
||||
};
|
||||
|
||||
export interface Origins {
|
||||
clearnet: Origin | undefined;
|
||||
onion: Origin | undefined;
|
||||
@ -102,6 +135,7 @@ export class Coordinator {
|
||||
this.longAlias = value.longAlias;
|
||||
this.shortAlias = value.shortAlias;
|
||||
this.description = value.description;
|
||||
this.federated = value.federated;
|
||||
this.motto = value.motto;
|
||||
this.color = value.color;
|
||||
this.size_limit = value.badges.isFounder ? 21 * 100000000 : calculateSizeLimit(established);
|
||||
@ -122,6 +156,7 @@ export class Coordinator {
|
||||
// These properties are loaded from federation.json
|
||||
public longAlias: string;
|
||||
public shortAlias: string;
|
||||
public federated: boolean;
|
||||
public enabled?: boolean = true;
|
||||
public description: string;
|
||||
public motto: string;
|
||||
@ -175,7 +210,7 @@ export class Coordinator {
|
||||
|
||||
generateAllMakerAvatars = async (data: [PublicOrder]): Promise<void> => {
|
||||
for (const order of data) {
|
||||
roboidentitiesClient.generateRobohash(order.maker_hash_id, 'small');
|
||||
void roboidentitiesClient.generateRobohash(order.maker_hash_id, 'small');
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -9,6 +9,7 @@ import {
|
||||
} from '.';
|
||||
import defaultFederation from '../../static/federation.json';
|
||||
import { getHost } from '../utils';
|
||||
import { coordinatorDefaultValues } from './Coordinator.model';
|
||||
import { updateExchangeInfo } from './Exchange.model';
|
||||
|
||||
type FederationHooks = 'onCoordinatorUpdate' | 'onFederationUpdate';
|
||||
@ -38,11 +39,19 @@ export class Federation {
|
||||
onFederationUpdate: [],
|
||||
};
|
||||
|
||||
this.loading = true;
|
||||
Object.keys(defaultFederation).forEach((key) => {
|
||||
if (key !== 'local' || getHost() === '127.0.0.1:8000') {
|
||||
// Do not add `Local Dev` unless it is running on localhost
|
||||
this.addCoordinator(origin, settings, hostUrl, defaultFederation[key]);
|
||||
}
|
||||
});
|
||||
|
||||
this.exchange.loadingCoordinators = Object.keys(this.coordinators).length;
|
||||
this.loading = true;
|
||||
|
||||
const host = getHost();
|
||||
const url = `${window.location.protocol}//${host}`;
|
||||
|
||||
const tesnetHost = Object.values(this.coordinators).find((coor) => {
|
||||
return Object.values(coor.testnet).includes(url);
|
||||
});
|
||||
@ -56,6 +65,22 @@ export class Federation {
|
||||
|
||||
public hooks: Record<FederationHooks, Array<() => void>>;
|
||||
|
||||
addCoordinator = (
|
||||
origin: Origin,
|
||||
settings: Settings,
|
||||
hostUrl: string,
|
||||
attributes: Record<any, any>,
|
||||
): void => {
|
||||
const value = {
|
||||
...coordinatorDefaultValues,
|
||||
...attributes,
|
||||
};
|
||||
this.coordinators[value.shortAlias] = new Coordinator(value, origin, settings, hostUrl);
|
||||
this.exchange.totalCoordinators = Object.keys(this.coordinators).length;
|
||||
this.updateEnabledCoordinators();
|
||||
this.triggerHook('onFederationUpdate');
|
||||
};
|
||||
|
||||
// Hooks
|
||||
registerHook = (hookName: FederationHooks, fn: () => void): void => {
|
||||
this.hooks[hookName].push(fn);
|
||||
@ -101,7 +126,7 @@ export class Federation {
|
||||
this.exchange.loadingCoordinators = Object.keys(this.coordinators).length;
|
||||
this.updateEnabledCoordinators();
|
||||
for (const coor of Object.values(this.coordinators)) {
|
||||
coor.update(() => {
|
||||
void coor.update(() => {
|
||||
this.exchange.onlineCoordinators = this.exchange.onlineCoordinators + 1;
|
||||
this.onCoordinatorSaved();
|
||||
});
|
||||
@ -114,7 +139,7 @@ export class Federation {
|
||||
this.triggerHook('onCoordinatorUpdate');
|
||||
this.exchange.loadingCoordinators = Object.keys(this.coordinators).length;
|
||||
for (const coor of Object.values(this.coordinators)) {
|
||||
coor.updateBook(() => {
|
||||
void coor.updateBook(() => {
|
||||
this.onCoordinatorSaved();
|
||||
});
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
import { type Order } from '.';
|
||||
import { type Coordinator, type Order } from '.';
|
||||
import { systemClient } from '../services/System';
|
||||
import { saveAsJson } from '../utils';
|
||||
import Slot from './Slot.model';
|
||||
@ -59,15 +59,18 @@ class Garage {
|
||||
const rawSlots = JSON.parse(slotsDump);
|
||||
Object.values(rawSlots).forEach((rawSlot: Record<any, any>) => {
|
||||
if (rawSlot?.token) {
|
||||
this.slots[rawSlot.token] = new Slot(rawSlot.token, Object.keys(rawSlot.robots), {}, () =>
|
||||
{ this.triggerHook('onRobotUpdate'); },
|
||||
this.slots[rawSlot.token] = new Slot(
|
||||
rawSlot.token,
|
||||
Object.keys(rawSlot.robots),
|
||||
{},
|
||||
() => {
|
||||
this.triggerHook('onRobotUpdate');
|
||||
},
|
||||
);
|
||||
|
||||
Object.keys(rawSlot.robots).forEach((shortAlias) => {
|
||||
const rawRobot = rawSlot.robots[shortAlias];
|
||||
this.updateRobot(rawSlot.token, shortAlias, rawRobot);
|
||||
});
|
||||
|
||||
this.currentSlot = rawSlot?.token;
|
||||
}
|
||||
});
|
||||
@ -80,7 +83,7 @@ class Garage {
|
||||
// Slots
|
||||
getSlot: (token?: string) => Slot | null = (token) => {
|
||||
const currentToken = token ?? this.currentSlot;
|
||||
return currentToken ? this.slots[currentToken] ?? null : null;
|
||||
return currentToken ? (this.slots[currentToken] ?? null) : null;
|
||||
};
|
||||
|
||||
deleteSlot: (token?: string) => void = (token) => {
|
||||
@ -120,9 +123,9 @@ class Garage {
|
||||
if (!token || !shortAliases) return;
|
||||
|
||||
if (this.getSlot(token) === null) {
|
||||
this.slots[token] = new Slot(token, shortAliases, attributes, () =>
|
||||
{ this.triggerHook('onRobotUpdate'); },
|
||||
);
|
||||
this.slots[token] = new Slot(token, shortAliases, attributes, () => {
|
||||
this.triggerHook('onRobotUpdate');
|
||||
});
|
||||
this.save();
|
||||
}
|
||||
};
|
||||
@ -165,6 +168,13 @@ class Garage {
|
||||
this.triggerHook('onOrderUpdate');
|
||||
}
|
||||
};
|
||||
|
||||
// Coordinators
|
||||
syncCoordinator: (coordinator: Coordinator) => void = (coordinator) => {
|
||||
Object.values(this.slots).forEach((slot) => {
|
||||
slot.syncCoordinator(coordinator, this);
|
||||
});
|
||||
};
|
||||
}
|
||||
|
||||
export default Garage;
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { sha256 } from 'js-sha256';
|
||||
import { Robot, type Order } from '.';
|
||||
import { type Coordinator, type Garage, Robot, type Order } from '.';
|
||||
import { roboidentitiesClient } from '../services/Roboidentities/Web';
|
||||
|
||||
class Slot {
|
||||
@ -13,12 +13,12 @@ class Slot {
|
||||
|
||||
this.hashId = sha256(sha256(this.token));
|
||||
this.nickname = null;
|
||||
roboidentitiesClient.generateRoboname(this.hashId).then((nickname) => {
|
||||
void roboidentitiesClient.generateRoboname(this.hashId).then((nickname) => {
|
||||
this.nickname = nickname;
|
||||
onRobotUpdate();
|
||||
});
|
||||
roboidentitiesClient.generateRobohash(this.hashId, 'small');
|
||||
roboidentitiesClient.generateRobohash(this.hashId, 'large');
|
||||
void roboidentitiesClient.generateRobohash(this.hashId, 'small');
|
||||
void roboidentitiesClient.generateRobohash(this.hashId, 'large');
|
||||
|
||||
this.robots = shortAliases.reduce((acc: Record<string, Robot>, shortAlias: string) => {
|
||||
acc[shortAlias] = new Robot(robotAttributes);
|
||||
@ -73,6 +73,18 @@ class Slot {
|
||||
|
||||
return this.robots[shortAlias];
|
||||
};
|
||||
|
||||
syncCoordinator: (coordinator: Coordinator, garage: Garage) => void = (coordinator, garage) => {
|
||||
const defaultRobot = this.getRobot();
|
||||
if (defaultRobot?.token) {
|
||||
this.robots[coordinator.shortAlias] = new Robot({
|
||||
token: defaultRobot.token,
|
||||
pubKey: defaultRobot.pubKey,
|
||||
encPrivKey: defaultRobot.encPrivKey,
|
||||
});
|
||||
void coordinator.fetchRobot(garage, defaultRobot.token);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export default Slot;
|
||||
|
@ -31,8 +31,8 @@ class RoboidentitiesNativeClient implements RoboidentitiesClient {
|
||||
type: 'robohash',
|
||||
detail: key,
|
||||
});
|
||||
const result = response ? Object.values(response)[0] : '';
|
||||
const image = `data:image/png;base64,${result}`;
|
||||
const result: string = response ? Object.values(response)[0] : '';
|
||||
const image: string = `data:image/png;base64,${result}`;
|
||||
this.robohashes[key] = image;
|
||||
return image;
|
||||
}
|
||||
|
@ -4,7 +4,7 @@ import { robohash } from './RobohashGenerator';
|
||||
|
||||
class RoboidentitiesClientWebClient implements RoboidentitiesClient {
|
||||
public generateRoboname: (initialString: string) => Promise<string> = async (initialString) => {
|
||||
return await new Promise<string>(async (resolve, _reject) => {
|
||||
return await new Promise<string>((resolve, _reject) => {
|
||||
resolve(generate_roboname(initialString));
|
||||
});
|
||||
};
|
||||
|
@ -5,7 +5,7 @@ import ApiWebClient from '../ApiWebClient';
|
||||
class ApiNativeClient implements ApiClient {
|
||||
public useProxy = true;
|
||||
|
||||
private webClient: ApiClient = new ApiWebClient();
|
||||
private readonly webClient: ApiClient = new ApiWebClient();
|
||||
|
||||
private readonly assetsPromises = new Map<string, Promise<string | undefined>>();
|
||||
|
||||
@ -55,7 +55,7 @@ class ApiNativeClient implements ApiClient {
|
||||
|
||||
public delete: (baseUrl: string, path: string, auth?: Auth) => Promise<object | undefined> =
|
||||
async (baseUrl, path, auth) => {
|
||||
if (!this.proxy) this.webClient.delete(baseUrl, path, auth);
|
||||
if (!this.useProxy) return await this.webClient.delete(baseUrl, path, auth);
|
||||
return await window.NativeRobosats?.postMessage({
|
||||
category: 'http',
|
||||
type: 'delete',
|
||||
@ -71,7 +71,7 @@ class ApiNativeClient implements ApiClient {
|
||||
body: object,
|
||||
auth?: Auth,
|
||||
) => Promise<object | undefined> = async (baseUrl, path, body, auth) => {
|
||||
if (!this.proxy) this.webClient.post(baseUrl, path, body, auth);
|
||||
if (!this.useProxy) return await this.webClient.post(baseUrl, path, body, auth);
|
||||
return await window.NativeRobosats?.postMessage({
|
||||
category: 'http',
|
||||
type: 'post',
|
||||
@ -87,7 +87,7 @@ class ApiNativeClient implements ApiClient {
|
||||
path,
|
||||
auth,
|
||||
) => {
|
||||
if (!this.proxy) this.webClient.get(baseUrl, path, auth);
|
||||
if (!this.useProxy) return await this.webClient.get(baseUrl, path, auth);
|
||||
return await window.NativeRobosats?.postMessage({
|
||||
category: 'http',
|
||||
type: 'get',
|
||||
|
@ -16,14 +16,6 @@ export interface AggregatedInfo {
|
||||
version: Version;
|
||||
}
|
||||
|
||||
type toAdd =
|
||||
| 'num_public_buy_orders'
|
||||
| 'num_public_sell_orders'
|
||||
| 'book_liquidity'
|
||||
| 'active_robots_today'
|
||||
| 'last_day_volume'
|
||||
| 'lifetime_volume';
|
||||
|
||||
export const weightedMean = (arrValues: number[], arrWeights: number[]): number => {
|
||||
if (arrValues.length === 0) {
|
||||
return 0;
|
||||
|
@ -75,6 +75,7 @@
|
||||
"74": "IRT",
|
||||
"75": "BDT",
|
||||
"76": "ALL",
|
||||
"77": "DZD",
|
||||
"300": "XAU",
|
||||
"1000": "BTC"
|
||||
}
|
||||
|
@ -72,7 +72,10 @@
|
||||
"No Third-Party Sharing": "Under no circumstances will user information be shared with third parties.",
|
||||
"Short-term storage": "Any log needed to operate the coordinator will be cleared after 7 days, unless strictly needed to process disputes. To ensure utmost privacy, the coordinator will be accessible only through TOR.",
|
||||
"Rule 1:": "Do not share personal information through the chat, unless strictly needed for completing the trade.",
|
||||
"Rule 2:": "Keep stacking Sats and Enjoy your journey in the Temple of Sats!"
|
||||
"Rule 2:": "Keep stacking Sats and Enjoy your journey in the Temple of Sats!",
|
||||
"Rule 3:": "To protect our users, the use of this coordinator for Cash Face-to-Face (F2F) transactions within the United States territory is not allowed.",
|
||||
"Rule 4:": "Users are solely responsible for understanding and complying with their local laws and regulations regarding cryptocurrency transactions. By using this coordinator, you agree to ensure that your activities on the platform are lawful in your jurisdiction.",
|
||||
"Rule 5:": "In accordance with U.S. regulations, residents of the United States are prohibited from using this coordinator. If you are a U.S. resident, you must not engage in any transactions on this platform. This restriction is in place to comply with U.S. regulatory requirements and to protect both the platform and its users from potential issues. As the system is built on the tor network, and the transfer of FIAT happens in a p2p fashion without passing through this coordinator, we are unable to collect or store user information, including but not limited to, the location of users. This means that this coordinator will not and cannot proactively ban any user from trading, but it also mean that users agree to ensure that their activities on the platform are lawful to their jurisdiction."
|
||||
},
|
||||
"mainnet": {
|
||||
"onion": "http://ngdk7ocdzmz5kzsysa3om6du7ycj2evxp2f2olfkyq37htx3gllwp2yd.onion",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Entropia insuficient, fes-ho més complex",
|
||||
"The token is too short": "El token és massa curt",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Això garanteix la màxima privadesa, però és possible que sentis que l'aplicació es comporta lenta. Si es perd la connexió, reinicia l'aplicació.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connectat a la xarxa TOR",
|
||||
"Connecting to TOR network": "Connectant a la xarxa TOR",
|
||||
"Connection error": "Error de connexió",
|
||||
"Initializing TOR daemon": "Inicialitzant TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "TOT",
|
||||
"Buy": "Comprar",
|
||||
"DESTINATION": "DESTÍ",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "i fer servir",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pagar amb",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Afegir filtre",
|
||||
"Amount": "Suma",
|
||||
"An error occurred.": "Hi ha hagut un error.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "comença amb",
|
||||
"true": "veritat",
|
||||
"yes": "si",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Tancar",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Pots trobar una descripció pas a pas dels intercanvis a ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Tornar",
|
||||
"Keys": "Claus",
|
||||
"Learn how to verify": "Aprèn a verificar",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La clau pública PGP de la teva contrapart. La fas servir per encriptar missatges que només ell pot llegir i verificar que és ell qui va signar els missatges que reps.",
|
||||
"Your private key passphrase (keep secure!)": "La contrasenya de la teva clau privada (Mantenir segura!)",
|
||||
"Your public key": "La teva clau pública",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... en algun indret de la Terra!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Fet amb",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "i",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Comunitat",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Proposa funcionalitats o notifica errors",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Volum contractat en 24h",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Activar",
|
||||
"Enable TG Notifications": "Activar Notificacions TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Seràs dut a un xat amb el bot de Telegram de Robosats. Simplement prem Començar. Tingues en compte que si actives les notificaciones de Telegram reduiràs el teu anonimat.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Tornar",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Visitaràs la pàgina Learn RoboSats. Ha estat construïda per la comunitat i conté tutorials i documentació que t'ajudarà a aprendre como s'utilitza RoboSats i a entendre com funciona.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Generar Robot",
|
||||
"Generate a robot avatar first. Then create your own order.": "Primer genera un avatar de robot. A continuació, crea la teva pròpia oferta.",
|
||||
"You do not have a robot avatar": "No tens un avatar robot",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "El teu Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Guarda-ho!",
|
||||
"Done": "Fet",
|
||||
"Store your robot token": "Guarda el teu token",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Pot ser que necessitis recuperar el teu avatar robot al futur: fes còpia de seguretat del token. Pots simplement copiar-ho a una altra aplicació.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Descarrega RoboSats {{coordinatorVersion}} APK de les versions de Github",
|
||||
"Go away!": "Marxar!",
|
||||
"On Android RoboSats app ": "A l'aplicació d'Android RoboSats ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "Al teu propi node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "El coordinador de RoboSats és a la versió {{coordinatorVersion}}, però la app del teu client és {{clientVersion}}. Aquesta discrepància de versió pot provocar una mala experiència d'usuari.",
|
||||
"Update your RoboSats client": "Actualitza el teu client RoboSats",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "El client RoboSats és servit pel teu propi node, gaudeixes de la major seguretat i privacitat.",
|
||||
"You are self-hosting RoboSats": "Estàs hostejant RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "No estàs utilitzant RoboSats de forma privada",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Des de",
|
||||
"to": "fins a",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " amb descompte del {{discount}}%",
|
||||
" at a {{premium}}% premium": " amb una prima del {{premium}}%",
|
||||
" at market price": " a preu de mercat",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "Reps aprox. {{swapSats}} LN Sats (les taxes poden variar)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "Envies aprox. {{swapSats}} LN Sats (les taxes poden variar)",
|
||||
"Your order fixed exchange rate": "La tasa de canvi fixa de la teva ordre",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "L'enrutament Lightning ha fallat",
|
||||
"New chat message": "Nou missatge al xat",
|
||||
"Order chat is open": "S'ha obert el xat",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Caducat!",
|
||||
"🙌 Funished!": "🙌 Finalitzat!",
|
||||
"🥳 Taken!": "🥳 Presa!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Suma {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Prenent aquesta ordre corres el risc de perdre el temps. Si el creador no procedeix a temps, se't compensarà en Sats amb el 50% de la fiança del creador.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Introdueix la suma de fiat a canviar per bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Primer has d'especificar la suma",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "Tu rebràs {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "Tu enviaràs {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Mètodes de pagament acceptats",
|
||||
"Amount of Satoshis": "Quantitat de Sats",
|
||||
"Deposit timer": "Per a dipositar",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "Tu envies via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "Envies via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Prima: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Retirar",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "La teva ordre actual",
|
||||
"Your last order #{{orderID}}": "La teva última ordre #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Fosc",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Intercanvis",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Cancel·lar",
|
||||
"Cancel order and unlock bond instantly": "Cancel·la l'ordre i desbloqueja la fiança a l'instant",
|
||||
"Collaborative Cancel": "Cancel·lació col·laborativa",
|
||||
"Unilateral cancelation (bond at risk!)": "Cancel·lació unilateral (Fiança en risc!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Has sol·licitat cancel·lar col·laborativament",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} sol·licita cancel·lar col·laborativament",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Compra",
|
||||
"Completed in": "Completat en",
|
||||
"Contract exchange rate": "Taxa de canvi del contracte",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Veure bitlleteres compatibles",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Cancel·lar l'ordre?",
|
||||
"Confirm Cancel": "Confirmar cancel·lació",
|
||||
"If the order is cancelled now you will lose your bond.": "Si cancel·les ara l'ordre perdràs la teva fiança.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Acceptar cancel·lació",
|
||||
"Ask for Cancel": "Sol·licitar cancel·lació",
|
||||
"Collaborative cancel the order?": "Cancel·lar l'ordre col·laborativament?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Donat que el col·lateral està bloquejat, l'ordre només pot cancel·lar-se si tant creador com prenendor ho acorden.",
|
||||
"Your peer has asked for cancellation": "El teu company ha demanat la cancel·lació",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Obrir disputa",
|
||||
"Disagree": "Tornar",
|
||||
"Do you want to open a dispute?": "Vols obrir una disputa?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Assegura't d' EXPORTAR el registre del xat. Els administradors poden demanar-te elregistre del xat en cas de discrepàncies. És la teva responsabilitat proveir-ho.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "L'equip de RoboSats examinarà les declaracions i evidències presentades. Com l'equip no pot llegir el xat necessites escriure una declaració completa i exhaustiva. És millor donar un mètode de contacte d'usar i llençar amb la teva declaració. Els Sats del col·lateral seran enviats al guanyador de la disputa, mientres que el perdedor perderà la seva fiança.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Confirmar",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Confirmes que has rebut {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "En confirmar que has rebut {{amount}} {{currencyCode}} finalitzarà la transacció. Els satoshis del dipòsit es lliuraran al comprador. Confirmar només després que {{amount}} {{currencyCode}} hagin arribat al teu compte. Tingues en compte que si has rebut el pagament i no fas clic a confirmar, corres el risc de perdre la teva fiança.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirmes que has enviat {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirmant que has enviat {{amount}} {{currencyCode}} permetràs al teu company finalitzar l'operació. Si encara no ho has enviat i malgrat això procedeixes a confirmar falsament, t'arrisques a perdre la teva fiança.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "LLEGEIX. En cas que el pagament al venedor s'hagi bloquejat i sigui absolutament impossible acabar l'intercanvi, podeu revertir la vostra confirmació de \"Fiat enviat\". Fes-ho només si tu i el venedor ja heu acordat pel xat procedir a una cancel·lació col·laborativa. Després de confirmar, el botó \"Cancel·lar col·laborativament\" tornarà a ser visible. Només feu clic en aquest botó si sabeu el que esteu fent. Es desaconsella als usuaris novells de RoboSats realitzar aquesta acció! Assegureu-vos al 100% que el pagament ha fallat i que l'import és al vostre compte.",
|
||||
"Revert the confirmation of fiat sent?": "Revertir la confirmació del FIAT enviat?",
|
||||
"Wait ({{time}})": "Espera ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Import no bloquejat encara, comprova el teu moneder WebLN.",
|
||||
"Invoice not received, please check your WebLN wallet.": "No s'ha rebut la factura, fes un cop d'ull a la teva wallet WebLN.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "Ara pots tancar el popup de la teva wallet WebLN.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Auditar",
|
||||
"Export": "Exporta",
|
||||
"Save full log as a JSON file (messages and credentials)": "Guardar el log complet com JSON (credencials i missatges)",
|
||||
"Verify your privacy": "Verifica la teva privacitat",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...esperant",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activar mode lent (utilitza'l quan la connexió sigui lenta)",
|
||||
"Peer": "Ell",
|
||||
"You": "Tu",
|
||||
"connected": "connectat",
|
||||
"disconnected": "desconnectat",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Connectant...",
|
||||
"Send": "Enviar",
|
||||
"Type a message": "Escriu un missatge",
|
||||
"Waiting for peer public key...": "Esperant la clau pública...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Adjuntar registres de xat",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Adjuntar registres de xat ajuda el procés de resolució de disputes i afegeix transparència. Tanmateix, pot comprometre la vostra privadesa.",
|
||||
"Submit dispute statement": "Presentar declaració",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Opcions avançades",
|
||||
"Invoice to wrap": "Factura a ofuscar",
|
||||
"Payout Lightning Invoice": "Factura Lightning",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Utilitza Lnproxy",
|
||||
"Wrap": "Ofuscar",
|
||||
"Wrapped invoice": "Factura ofuscada",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Direcció Bitcoin",
|
||||
"Final amount you will receive": "Quantitat final que rebràs",
|
||||
"Invalid": "No vàlid",
|
||||
"Mining Fee": "Comissió Minera",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "El coordinador de RoboSats farà un intercanvi i enviarà els Sats a la vostra adreça onchain.",
|
||||
"Swap fee": "Comissió del swap",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Confirmar {{amount}} {{currencyCode}} rebut",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Confirmar {{amount}} {{currencyCode}} enviat",
|
||||
"Open Dispute": "Obrir Disputa",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Digues hola! Sigues clar i concís. Escriu-li com pot enviarte {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "Per obrir una disputa cal esperar",
|
||||
"Wait for the seller to confirm he has received the payment.": "Espera a que el vendedor confirmi que ha rebut el pagament.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Si us plau, guarda l'informació necessària per identificar la teva ordre i pagaments: ID de l'ordre; claus del pagament de la fiança o el col·lateral (comprova la teva cartera Lightning); quantitat exacta de Sats; i nom del Robot. Tindràs que identificar-te com l'usuari involucrat en aquest intercanvi per email (o altre mètode de contacte).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Pots retirar la quantitat de la resolució de la disputa (fiança i col·lateral) des de les recompenses del teu perfil. Si creus que l'equip pot fer alguna cosa més, no dubtis a contactar amb robosats@protonmail.com (o a través del mètode de contacte d'usar i llençar que vas especificar).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Espera un moment. Si el venedor no diposita, recuperaràs la teva fiança automàticament. A més, rebràs una compensació (comprova les recompenses al teu perfil).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Esperant a que el venedor bloquegi el col·lateral.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Renovar Ordre",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Copiar al portapapers",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Això és una factura retinguda, els Sats es bloquegen a la teva cartera. Només es cobrarà si cancel·les o si perds una disputa.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Això és una factura retinguda, els Sats es bloquegen a la teva cartera. Serà alliberada al comprador al confirmar que has rebut {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Activar Ordre",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "La teva ordre pública va ser pausada. Ara mateix, l'ordre no pot ser vista ni presa per altres robots. Pots tornar a activarla quan desitgis.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Abans de deixar-te enviar {{amountFiat}} {{currencyCode}}, volem assegurar-nos que pots rebre BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Espera un moment. Si el comprador no coopera, se't retornarà el col·lateral i la teva fiança automàticament. A més, rebràs una compensació (comprova les recompenses al teu perfil).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Estem esperant a que el comprador enviï una factura Lightning. Quan ho faci, podràs comunicar-li directament els detalls del pagament.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Entre les ordres públiques de {{currencyCode}} (més alt, més barat)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Si la teva oferta expira sense ser presa, la teva fiança serà desbloquejada a la teva cartera automàticament.",
|
||||
"Pause the public order": "Pausar l'ordre pública",
|
||||
"Premium rank": "Percentil de la prima",
|
||||
"Public orders for {{currencyCode}}": "Ordres públiques per {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Motiu del fracàs:",
|
||||
"Next attempt in": "Proper intent en",
|
||||
"Retrying!": "Reintentant!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats intentarà pagar la teva factura 3 cops cada 1 minut. Si segueix fallant, podràs presentar una nova factura. Comprova si tens suficient liquiditat entrant. Recorda que els nodes de Lightning han d'estar en línia per poder rebre pagaments.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "La teva factura ha caducat o s'han fet més de 3 intents de pagament. Envia una nova factura.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats està intentant pagar la teva factura de Lightning. Recorda que els nodes Lightning han d'estar en línia per rebre pagaments.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renovar",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats millora amb més usuaris i liquiditat. Ensenya-li RoboSats a un amic bitcoiner!",
|
||||
"Sending coins to": "Enviant monedes a",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Gràcies! RoboSats també t'estima",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "El teu TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Si us plau, espera a que el prenedor bloquegi la seva fiança. Si no ho fa a temps, l'ordre serà pública de nou.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "Ha arribat un tècnic de robots!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "Porto els meus propis robots, són aquí. (Arrossegar i deixar anar workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "Per primer cop aquí. Generar un nou robot de garatge i el token de robot estès (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Personalitza l'àrea de visió",
|
||||
"Freeze viewports": "Congela l'àrea de visió",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "En disputa",
|
||||
"Collaboratively cancelled": "Cancel·lat col·laborativament",
|
||||
"Sending satoshis to buyer": "Enviant satoshis al comprador",
|
||||
"Sucessful trade": "Intercanvi exitós",
|
||||
"Successful trade": "Intercanvi exitós",
|
||||
"Failed lightning network routing": "L'enrrutament lightning network ha fallat",
|
||||
"Wait for dispute resolution": "Esperant la resolució de la disputa",
|
||||
"Maker lost dispute": "El creador ha perdut la disputa",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connected to TOR network",
|
||||
"Connecting to TOR network": "Connecting to TOR network",
|
||||
"Connection error": "Connection error",
|
||||
"Initializing TOR daemon": "Initializing TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "VŠE",
|
||||
"Buy": "Nákup",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "použít",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pay with",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Přidat filter",
|
||||
"Amount": "Částka",
|
||||
"An error occurred.": "Došlo k chybě.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "začína s",
|
||||
"true": "správný",
|
||||
"yes": "ano",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Zavřít",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Popis obchodu krok za krokem najdeš na",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Jít zpět",
|
||||
"Keys": "Klíče",
|
||||
"Learn how to verify": "Naučit se, jak ověřovat",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Veřejný PGP klíč protistrany. Používáš jej k šifrování zpráv, které může číst pouze on, a k ověření, zda protistrana podepsala příchozí zprávy.",
|
||||
"Your private key passphrase (keep secure!)": "Tvůj soukromí klíč a passphrase (drž v bezpečí!)",
|
||||
"Your public key": "Tvůj veřejný klíč",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... někde na Zemi!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Vytvořeno s",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "a",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Komunity",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Našel jsi bug nebo novou funkci? Napiš nám ",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Zobchodované množství za 24h",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Povolit",
|
||||
"Enable TG Notifications": "Povolit TG notifikace",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Budeš přesměrován do chatu s RoboSats telegram botem. Jednoduše otevři chat a zmáčkni Start. Měj na paměti, že povolením telegram notifikací máš nížší úroveň anonymity.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Zpět",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Chystáš se navštívit výukovou stránku RoboSats. Stránka obsahuje tutoriály a dokumentaci, které ti pomohou pochopit jak funguje RoboSats.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Generovat Robota",
|
||||
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
|
||||
"You do not have a robot avatar": "Nemáš robota a avatar",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Zálohuj to!",
|
||||
"Done": "Hotovo",
|
||||
"Store your robot token": "Ulož si svůj robot token",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Ulož si bezpečně svůj token jednoduše zkopírováním do jiné aplikace. V budoucnu ho možná budeš potřebovat v případě obnovy robota.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Download RoboSats {{coordinatorVersion}} APK from Github releases",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.",
|
||||
"Update your RoboSats client": "Update your RoboSats client",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats client is served from your own node granting you the strongest security and privacy.",
|
||||
"You are self-hosting RoboSats": "You are self-hosting RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Nepoužíváš Robosats bezpečně.",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Od",
|
||||
"to": "do",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " za {{discount}}% slevu",
|
||||
" at a {{premium}}% premium": " za {{premium}}% přirážku",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "You receive approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "You send approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"Your order fixed exchange rate": "Pevný směnný kurz tvé nabídky",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "New chat message",
|
||||
"Order chat is open": "Order chat is open",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Částka {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Příjmutím této nabídky riskuješ ztrátu času. Pokud protistrana nedorazí včas, získáš kompezaci v podobě 50% tvůrcovi kauce.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Zadej částku fiat, kterou chceš vyměnit za bitcoin. ",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Nejprve je třeba zadat částku",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Akceptované platební metody",
|
||||
"Amount of Satoshis": "Částka Satoshi",
|
||||
"Deposit timer": "Časovač vkladu",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Přirážka: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Vybrat",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Tvá aktuální nabídka",
|
||||
"Your last order #{{orderID}}": "Tvá poslední nabídka #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Zrušit",
|
||||
"Cancel order and unlock bond instantly": "Cancel order and unlock bond instantly",
|
||||
"Collaborative Cancel": "Oboustrané zrušení",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Žádaš o oboustarné zrušení obchodu",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} žáda o oboustrané zrušení obchodu",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Kupující",
|
||||
"Completed in": "Completed in",
|
||||
"Contract exchange rate": "Contract exchange rate",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSatů",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Satů ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Satů ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Robrazit kompatibilní peněženky",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Zrušit objendávku?",
|
||||
"Confirm Cancel": "Potvrdit zrušení",
|
||||
"If the order is cancelled now you will lose your bond.": "Pokud bude objednávka nyní zrušena, tvoje kauce propadne.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "Požádat o zrušení",
|
||||
"Collaborative cancel the order?": "Oboustraně zrušit obchod?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Satoshi jsou v úschově. Objednávku lze zrušit pouze v případě, že se na zrušení dohodnou jak tvůrce, tak přijemce.",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Souhlasit a otevřít spor",
|
||||
"Disagree": "Nesouhlasit",
|
||||
"Do you want to open a dispute?": "Chceš otevřít spor?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Nezapomeň EXPORTOVAT log chatu. Personál si může vyžádat exportovaný log chatu ve formátu JSON, aby mohl vyřešit nesrovnalosti. Je tvou odpovědností jej uložit.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Personál RoboSats prověří předložená vyjádření a důkazy. Musíš vytvořit ucelený důkazní materiál, protože personál nemůže číst chat. Nejlépe spolu s výpovědí uvést jednorázový kontakt. Satoshi v úschově budou zaslány vítězi sporu, zatímco poražený ve sporu přijde o kauci.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Potvrdit",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Potvrdit obdržení {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Invoice not received, please check your WebLN wallet.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Audit PGP",
|
||||
"Export": "Exportovat",
|
||||
"Save full log as a JSON file (messages and credentials)": "Uložit celý log jako soubor JSON (zprávy a údaje))",
|
||||
"Verify your privacy": "Ověř svou ochranu soukromí",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "Protistrana",
|
||||
"You": "Ty",
|
||||
"connected": "připojen",
|
||||
"disconnected": "odpojen",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Připojování...",
|
||||
"Send": "Odeslat",
|
||||
"Type a message": "Napiš zprávu",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "Odeslat vyjádření",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Advanced options",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Vyplatit Lightning invoice",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin adresa",
|
||||
"Final amount you will receive": "Konečná částka, kterou získáš",
|
||||
"Invalid": "Neplatné",
|
||||
"Mining Fee": "Těžební poplatek",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "Swap poplatek",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Potvrdit příjmutí {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Potvrdit odeslání {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "Otevřít spor",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Pozdrav! Buď vstřícný a stručný. Dej mu vědět, jak ti poslat {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "Počkej na potvzení, že prodavající obdržel platbu.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": " Uložte si prosím informace potřebné k identifikaci tvé nabídky a tvých plateb: číslo nabídky; hash platby kauce nebo úschovy (zkontroluj si lightning peněženku); přesná částka satoshi; a robot přezdívku. V komunikaci emailem(nebo jinak) se představíš jako zúčastněna strana.",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Satoshi z vyřešeného sporů (z úschovy a kauce) si můžeš vybrat z odměn ve svém profilu. Pokud ti personál může s něčím pomoci, neváhej a kontaktuj nás na robosats@protonmail.com (nebo jiný způsob komunikace).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Vydrž chvíli. Pokud prodavající neprovede vklad, kauce se ti automaticky vrátí. Kromě toho obdržíš kompenzaci (zkontroluj odměny ve svém profilu).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Čekáme, až prodavající uzamkne satoshi .",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Opakovat nabídku",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Zkopírovat do schránky",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Jedná se o hodl invoice, která ti zamrzne v peněžence. Bude vypořádán pouze v případě zrušení nebo prohry sporu.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Jedná se o hodl invoice, která ti zamrzne v peněžence. Bude vypořadána ke kupujícímu jakmile potvrdíš příjem {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Zrušit pozastavení nabídky",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Tvá veřejná nabídka je pozastavena. V tuto chvíli ji nemohou vidět ani přijmout jiní roboti. Pozastavení můžeš kdykoliv zrušit.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Předtím než tě necháme odeslat {{amountFiat}} {{currencyCode}}, chceme se nechat ujistit, že jsi schopen příjmout BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Vydrž chvíli. Pokud kupující nespolupracuje, automaticky získáš zpět svojí kauci a předmět obchodu satoshi. Kromě toho obdržíš kompenzaci (zkontroluj odměny ve svém profilu).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Čekáme, až kupující vloží lightning invoice. Jakmile tak učiní, budeš moct se s ním moct dohodnout platbě.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Mezi veřejnými {{currencyCode}} nabídkami (vyšší je levnější)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Pokud nabídka vyprší nepříjmuta, tak kauce se ti vrátí (není potřeba žádné akce).",
|
||||
"Pause the public order": "Pozastavit zveřejnění nabídky",
|
||||
"Premium rank": "Úroveň přirážky",
|
||||
"Public orders for {{currencyCode}}": "Veřejné nabídky pro {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Důvod selhání:",
|
||||
"Next attempt in": "Další pokus za",
|
||||
"Retrying!": "Opakování pokusu!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats se pokusí zaplatit invoice třikrát s minutivými pauzami. V případě neúspěchu bude třeba nahrát nový invoice. Zkontroluj, zda máš dostatek inbound likvidity. Nezapomeň, že lightning nody musí být online, aby mohl přijímat platby.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Tvůj invoice vypršel nebo selhali pokusy o 3 platby. Nahraj nový invoice.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats se snaží zaplatit tvůj lightning invoice. Nezapomeň, že lightning nody musí být online, aby mohl přijímat platby.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats bude lepší s větší likviditou a uživateli. Pověz svým přátelům o Robosats!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Thank you! RoboSats loves you too",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Tvé TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Vyčkej, až příjemce uzamkne kauci. Pokud příjemce neuzamkne kauci včas, nabídka se znovu zveřejní.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connected to TOR network",
|
||||
"Connecting to TOR network": "Connecting to TOR network",
|
||||
"Connection error": "Connection error",
|
||||
"Initializing TOR daemon": "Initializing TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "ALLE",
|
||||
"Buy": "Kaufen",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "und verwende",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pay with",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Add filter",
|
||||
"Amount": "Menge",
|
||||
"An error occurred.": "An error occurred.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "starts with",
|
||||
"true": "true",
|
||||
"yes": "yes",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Schließen",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Du findest eine Schritt-für-Schritt-Erklärung des Handelablaufs hier ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Zurück",
|
||||
"Keys": "Schlüssel",
|
||||
"Learn how to verify": "Learn how to verify",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Der öffentliche PGP-Schlüssel deines Chatpartners. Du verwendest ihn um Nachrichten zu verschlüsseln, die nur er lesen kann und um zu überprüfen, ob dein Gegenüber die eingehenden Nachrichten signiert hat.",
|
||||
"Your private key passphrase (keep secure!)": "Deine Passphrase für den privaten Schlüssel (sicher aufbewahren!)",
|
||||
"Your public key": "Dein öffentlicher Schlüssel",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... irgendwo auf der Erde!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Gemacht mit",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "und",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Community",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Erzähle uns von neuen Funktionen oder einem Fehler",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24h Handelsvolumen",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Aktivieren",
|
||||
"Enable TG Notifications": "Aktiviere TG-Benachrichtigungen",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Du wirst zu einem Chat mit dem RoboSats-Telegram-Bot weitergeleitet. Öffne einfach den Chat und drücke auf Start. Beachte, dass du deine Anonymität verringern könntest, wenn du Telegram-Benachrichtigungen aktivierst.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Zurück",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Du bist dabei die Website 'lerne RoboSats kennen' zu besuchen. Hier findest du Tutorials und Dokumentationen, die dir helfen RoboSats zu benutzen und zu verstehen wie es funktioniert.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Roboter generieren",
|
||||
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
|
||||
"You do not have a robot avatar": "Du hast keinen Roboter-Avatar",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Speicher ihn ab!",
|
||||
"Done": "Fertig",
|
||||
"Store your robot token": "Speicher Roboter-Token",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Vielleicht musst du deinen Roboter-Avatar in Zukunft wiederherstellen: Bewahre ihn sicher auf. Du kannst ihn einfach in eine andere Anwendung kopieren.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Download RoboSats {{coordinatorVersion}} APK from Github releases",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.",
|
||||
"Update your RoboSats client": "Update your RoboSats client",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats client is served from your own node granting you the strongest security and privacy.",
|
||||
"You are self-hosting RoboSats": "You are self-hosting RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Du nutzt RoboSats nicht privat",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Von",
|
||||
"to": "bis",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " mit einem {{discount}}% Rabatt",
|
||||
" at a {{premium}}% premium": " mit einem {{premium}}% Aufschlag",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "You receive approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "You send approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"Your order fixed exchange rate": "Dein fixierter Order-Kurs",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "New chat message",
|
||||
"Order chat is open": "Order chat is open",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Betrag {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Wenn du diese Order annimmst, riskierst du, deine Zeit zu verschwenden. Wenn der Maker nicht rechtzeitig handelt, erhältst du eine Entschädigung in Satoshis in Höhe von 50 % der Maker-Kaution.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Fiat-Betrag für den Umtausch in Bitcoin eingeben",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Du musst zuerst einen Betrag angeben",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Akzeptierte Zahlungsweisen",
|
||||
"Amount of Satoshis": "Anzahl Satoshis",
|
||||
"Deposit timer": "Einzahlungstimer",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Aufschlag: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Erhalten",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Deine aktuelle Order",
|
||||
"Your last order #{{orderID}}": "Deine letzte Order #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Abbrechen",
|
||||
"Cancel order and unlock bond instantly": "Cancel order and unlock bond instantly",
|
||||
"Collaborative Cancel": "Gemeinsamer Abbruch",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Du hast um einen gemeinsamen Abbruch gebeten",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} bittet um gemeinsamen Abbruch",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Käufer",
|
||||
"Completed in": "Completed in",
|
||||
"Contract exchange rate": "Contract exchange rate",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Kompatible Wallets ansehen",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Order abbrechen?",
|
||||
"Confirm Cancel": "Abbruch bestätigen",
|
||||
"If the order is cancelled now you will lose your bond.": "Wenn die Order jetzt storniert wird, verlierst du deine Kaution.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "Bitte um Abbruch",
|
||||
"Collaborative cancel the order?": "Order gemeinsam abbrechen?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Der Trade wurde veröffentlicht. Die Order kann nur storniert werden, wenn Maker und Taker der Stornierung gemeinsam zustimmen.",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Akzeptieren und Fall eröffnen",
|
||||
"Disagree": "Ablehnen",
|
||||
"Do you want to open a dispute?": "Möchtest du einen Fall eröffnen?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Das RoboSats-Team wird die Aussagen und Beweise prüfen. Du musst die vollständige Situation erklären, wir können den Chat nicht sehen. Benutze am besten Wegwerf-Kontakt-Infos. Die hinterlegten Satoshis gehen an den Fall-Gewinner, der Verlierer verliert seine Kaution.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Bestätigen",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Bestätige den Erhalt von {{amount}} {{currencyCode}}",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Invoice not received, please check your WebLN wallet.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Audit PGP",
|
||||
"Export": "Exportieren",
|
||||
"Save full log as a JSON file (messages and credentials)": "Vollständiges Protokoll als JSON-Datei speichern ( Nachrichten und Anmeldeinformationen)",
|
||||
"Verify your privacy": "Überprüfe deine Privatsphäre",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "Partner",
|
||||
"You": "Du",
|
||||
"connected": "verbunden",
|
||||
"disconnected": "getrennt",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Verdinden...",
|
||||
"Send": "Senden",
|
||||
"Type a message": "Schreibe eine Nachricht",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "Übermittle Fall-Aussage",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Advanced options",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Lightning-Auszahlungs-Invoice",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin Address",
|
||||
"Final amount you will receive": "Final amount you will receive",
|
||||
"Invalid": "Ungültig",
|
||||
"Mining Fee": "Mining Fee",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "Swap fee",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Bestätige {{amount}} {{currencyCode}} erhalten",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Bestätige {{amount}} {{currencyCode}} gesendet",
|
||||
"Open Dispute": "Streitfall eröffnen",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Sag Hallo! Sei hilfreich und präzise. Lass ihn wissen, wie er dir {{amount}} {{currencyCode}} schicken kann.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "Warte, bis der Verkäufer die Zahlung bestätigt.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Bitte bewahre die Informationen die deine Order und Zahlungsweise identifizieren auf: Order-ID; Zahlungs-Hashes der Kaution oder Sicherheit (siehe dein Lightning-Wallet); exakte Anzahl an Satoshis; und dein Roboter-Avatar. Du musst dich als der involvierte Nutzer identifizieren könenn, über E-Mail (oder andere Kontaktarten).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Du kannst die Satoshis (Sicherheit und Kaution) in deinem Profil finden. Wenn unser Team dir bei etwas helfen kann, zögere nicht, uns zu kontaktieren: robosats@protonmail.com (oder über deine Wegwerf-Kontaktdaten).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Warte einen Moment. Wenn der Verkäufer den Handelsbetrag nicht hinterlegt, bekommst du deine Kaution automatisch zurück. Darüber hinaus erhältst du eine Entschädigung (siehe die Belohnungen in deinem Profil).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Wir warten darauf, dass der Verkäufer den Handelsbetrag sperrt.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Order erneuern",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "In Zwischenablage kopieren",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Diese Invoice wird in deiner Wallet eingefroren. Sie wird nur belastet, wenn du abbrichst oder einen Streitfall verlierst.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Diese Invoice wird in deiner Wallet eingefroren. Sie wird erst durchgeführt sobald du die {{currencyCode}}-Zahlung bestätigst.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Order aktivieren",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Deine öffentliche Order wurde pausiert. Im Moment kann sie von anderen Robotern weder gesehen noch angenommen werden. Du kannst sie jederzeit wieder aktivieren.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Warte einen Moment. Wenn der Käufer nicht kooperiert, bekommst du seine und deine Kaution automatisch zurück. Außerdem erhältst du eine Entschädigung (siehe die Belohnungen in deinem Profil).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Wir warten darauf, dass der Käufer eine Lightning-Invoice einreicht. Sobald er dies tut, kannst du ihm die Details der Zahlung mitteilen.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Anzahl öffentlicher {{currencyCode}} Order (höher ist günstiger)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Wenn die Order nicht angenommen wird und abläuft, erhältst du die Kaution zurück (keine Aktion erforderlich).",
|
||||
"Pause the public order": "Order pausieren",
|
||||
"Premium rank": "Aufschlags-Rang",
|
||||
"Public orders for {{currencyCode}}": "Öffentliche Order für {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Fehlerursache:",
|
||||
"Next attempt in": "Nächster Versuch in",
|
||||
"Retrying!": "Erneut versuchen!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats wird alle eine Minute 3 mal versuchen, deine Invoice auszuzahlen. Wenn es weiter fehlschlägt, kannst du eine neue Invoice einfügen. Prüfe deine Inbound-Liquidität. Denk daran, dass deine Lightning-Node erreichbar sein muss, um die Zahlung zu erhalten.Denk daran, dass deine Lightning-Node erreichbar sein muss, um die Zahlung zu erhalten.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats versucht deine Lightning-Invoice zu bezahlen. Denk daran, dass deine Lightning-Node erreichbar sein muss, um die Zahlung zu erhalten.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats wird noch besser mit mehr Nutzern und Liquidität. Erzähl einem Bitcoin-Freund von uns!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Thank you! RoboSats loves you too",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Your TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Bitte warte auf den Taker, um eine Kaution zu sperren. Wenn der Taker nicht rechtzeitig eine Kaution sperrt, wird die Order erneut veröffentlicht.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connected to TOR network",
|
||||
"Connecting to TOR network": "Connecting to TOR network",
|
||||
"Connection error": "Connection error",
|
||||
"Initializing TOR daemon": "Initializing TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "ANY",
|
||||
"Buy": "Buy",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "and use",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pay with",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Add filter",
|
||||
"Amount": "Amount",
|
||||
"An error occurred.": "An error occurred.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "starts with",
|
||||
"true": "true",
|
||||
"yes": "yes",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Close",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "You can find a step-by-step description of the trade pipeline in ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Go back",
|
||||
"Keys": "Keys",
|
||||
"Learn how to verify": "Learn how to verify",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Your peer PGP public key. You use it to encrypt messages only he can read.and to verify your peer signed the incoming messages.",
|
||||
"Your private key passphrase (keep secure!)": "Your private key passphrase (keep secure!)",
|
||||
"Your public key": "Your public key",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... somewhere on Earth!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Made with",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "and",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Community",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Tell us about a new feature or a bug",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24h contracted volume",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Enable",
|
||||
"Enable TG Notifications": "Enable TG Notifications",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Back",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Generate Robot",
|
||||
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
|
||||
"You do not have a robot avatar": "You do not have a robot avatar",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Back it up!",
|
||||
"Done": "Done",
|
||||
"Store your robot token": "Store your robot token",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Download RoboSats {{coordinatorVersion}} APK from Github releases",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.",
|
||||
"Update your RoboSats client": "Update your RoboSats client",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats client is served from your own node granting you the strongest security and privacy.",
|
||||
"You are self-hosting RoboSats": "You are self-hosting RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "You are not using RoboSats privately",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "From",
|
||||
"to": "to",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " at a {{discount}}% discount",
|
||||
" at a {{premium}}% premium": " at a {{premium}}% premium",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "You receive approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "You send approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"Your order fixed exchange rate": "Your order fixed exchange rate",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "New chat message",
|
||||
"Order chat is open": "Order chat is open",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Amount {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Enter amount of fiat to exchange for bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "You must specify an amount first",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Accepted payment methods",
|
||||
"Amount of Satoshis": "Amount of Satoshis",
|
||||
"Deposit timer": "Deposit timer",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Claim",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Your current order",
|
||||
"Your last order #{{orderID}}": "Your last order #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Cancel",
|
||||
"Cancel order and unlock bond instantly": "Cancel order and unlock bond instantly",
|
||||
"Collaborative Cancel": "Collaborative Cancel",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "You asked for a collaborative cancellation",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} is asking for a collaborative cancel",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Buyer",
|
||||
"Completed in": "Completed in",
|
||||
"Contract exchange rate": "Contract exchange rate",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "See Compatible Wallets",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Cancel the order?",
|
||||
"Confirm Cancel": "Confirm Cancel",
|
||||
"If the order is cancelled now you will lose your bond.": "If the order is cancelled now you will lose your bond.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "Ask for Cancel",
|
||||
"Collaborative cancel the order?": "Collaborative cancel the order?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Agree and open dispute",
|
||||
"Disagree": "Disagree",
|
||||
"Do you want to open a dispute?": "Do you want to open a dispute?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Confirm",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Confirm you received {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Invoice not received, please check your WebLN wallet.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Audit PGP",
|
||||
"Export": "Export",
|
||||
"Save full log as a JSON file (messages and credentials)": "Save full log as a JSON file (messages and credentials)",
|
||||
"Verify your privacy": "Verify your privacy",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "Peer",
|
||||
"You": "You",
|
||||
"connected": "connected",
|
||||
"disconnected": "disconnected",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Connecting...",
|
||||
"Send": "Send",
|
||||
"Type a message": "Type a message",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "Submit dispute statement",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Advanced options",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Payout Lightning Invoice",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin Address",
|
||||
"Final amount you will receive": "Final amount you will receive",
|
||||
"Invalid": "Invalid",
|
||||
"Mining Fee": "Mining Fee",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "Swap fee",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Confirm {{amount}} {{currencyCode}} received",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Confirm {{amount}} {{currencyCode}} sent",
|
||||
"Open Dispute": "Open Dispute",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "Wait for the seller to confirm he has received the payment.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).",
|
||||
"We are waiting for the seller to lock the trade amount.": "We are waiting for the seller to lock the trade amount.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Renew Order",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Copy to clipboard",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Unpause Order",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Among public {{currencyCode}} orders (higher is cheaper)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "If the order expires untaken, your bond will return to you (no action needed).",
|
||||
"Pause the public order": "Pause the public order",
|
||||
"Premium rank": "Premium rank",
|
||||
"Public orders for {{currencyCode}}": "Public orders for {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Failure reason:",
|
||||
"Next attempt in": "Next attempt in",
|
||||
"Retrying!": "Retrying!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Thank you! RoboSats loves you too",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Your TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To fully enable RoboSats and protect your data and privacy, use <1>Tor Browser</1> and visit the federation hosted <3>Onion</3> site or <5>host your own app.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Esto asegura máxima privacidad, aunque quizá observe algo de lentitud. Si se corta la conexión, reinicie la aplicación.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Conectado a la red TOR",
|
||||
"Connecting to TOR network": "Conectando a la red TOR",
|
||||
"Connection error": "Error de conexión",
|
||||
"Initializing TOR daemon": "Inicializando TOR",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "TODO",
|
||||
"Buy": "Comprar",
|
||||
"DESTINATION": "DESTINO",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "y usa",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "paga con",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Añadir filtro",
|
||||
"Amount": "Cantidad",
|
||||
"An error occurred.": "Ha ocurrido un error.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "empieza con",
|
||||
"true": "verdad",
|
||||
"yes": "si",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Cerrar",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Puedes encontrar una descripción paso a paso de los intercambios en",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Volver",
|
||||
"Keys": "Llaves",
|
||||
"Learn how to verify": "Aprende a verificar",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La llave pública PGP de tu contraparte. La usas para encriptar mensajes que solo él puede leer y para verificar que es él quién ha firmado los mensajes que recibes.",
|
||||
"Your private key passphrase (keep secure!)": "La contraseña de tu llave privada ¡Guárdala bien!",
|
||||
"Your public key": "Tu llave pública",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... en algún lugar de La Tierra!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Hecho con",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "y",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Comunidad",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Propón funcionalidades o notifica errores",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Volumen de los contratos en 24h",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Activar",
|
||||
"Enable TG Notifications": "Activar Notificaciones TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Se abrirá un chat con el bot de Telegram de RoboSats. Simplemente pulsa en Empezar. Ten en cuenta que si activas las notificaciones de Telegram reducirás tu nivel de anonimato.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Volver",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Vas a visitar la página Learn RoboSats. Ha sido construida por la comunidad y contiene tutoriales y documentación que te ayudará a aprender cómo se usa RoboSats y a entender cómo funciona.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Generar Robot",
|
||||
"Generate a robot avatar first. Then create your own order.": "Primero genera un robot avatar. Después crea tu propia orden.",
|
||||
"You do not have a robot avatar": "No tienes un avatar robot",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "¡Guárdalo!",
|
||||
"Done": "Hecho",
|
||||
"Store your robot token": "Guarda el token",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Puede que necesites recuperar tu robot avatar en el futuro: haz una copia de seguridad del token. Puedes simplemente copiarlo en otra aplicación.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Descarga el APK de RoboSats {{coordinatorVersion}} desde Github",
|
||||
"Go away!": "¡Adiós!",
|
||||
"On Android RoboSats app ": "En la aplicación Android de RoboSats ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "En tu propio nodo",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "El coordinador RoboSats está en la versión {{coordinatorVersion}}, pero su aplicación cliente es la {{clientVersion}}. Este desajuste podría dar problemas de uso.",
|
||||
"Update your RoboSats client": "Actualiza tu cliente RoboSats",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "El cliente RoboSats es servido por tu propio nodo, gozas de la mayor seguridad y privacidad.",
|
||||
"You are self-hosting RoboSats": "Estás alojando RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "No usas RoboSats de forma privada",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Desde",
|
||||
"to": "a ",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " con descuento del {{discount}}%",
|
||||
" at a {{premium}}% premium": " con una prima del {{premium}}%",
|
||||
" at market price": " a precio de mercado",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "Recibes aproximadamente {{swapSats}} LN Sats (la comisión puede variar)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "Envías aproximadamente {{swapSats}} LN Sats (la comisión puede variar)",
|
||||
"Your order fixed exchange rate": "La tasa de cambio fija de tu orden",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Enrutado Lightning fallido",
|
||||
"New chat message": "Nuevo mensaje en el chat",
|
||||
"Order chat is open": "El chat de la orden está abierto",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 ¡Expirada!",
|
||||
"🙌 Funished!": "🙌 ¡Finalizado!",
|
||||
"🥳 Taken!": "🥳 ¡Tomada!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Monto {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Tomando esta orden corres el riesgo de perder el tiempo. Si el creador no procede en el plazo indicado, se te compensará en Sats con el 50% de la fianza del creador.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Introduce el monto de fiat a cambiar por bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Primero debes especificar el monto",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Métodos de pago aceptados",
|
||||
"Amount of Satoshis": "Cantidad de Sats",
|
||||
"Deposit timer": "Tiempo para depositar",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Prima: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Reclamar",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Tu orden actual",
|
||||
"Your last order #{{orderID}}": "Tu última orden #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Oscuro",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Cancelar",
|
||||
"Cancel order and unlock bond instantly": "Cancelar la orden y desbloquear el depósito al instante",
|
||||
"Collaborative Cancel": "Cancelación colaborativa",
|
||||
"Unilateral cancelation (bond at risk!)": "Cancelación unilateral (¡Perderás el depósito!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Has solicitado la cancelación colaborativa",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} solicita la cancelación colaborativa",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Compra",
|
||||
"Completed in": "Completado en",
|
||||
"Contract exchange rate": "Tasa de cambio del contrato",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Ver carteras compatibles",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "¿Cancelar la orden?",
|
||||
"Confirm Cancel": "Confirmar cancelación",
|
||||
"If the order is cancelled now you will lose your bond.": "Si cancelas la orden ahora perderás tu fianza.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Acceptar la cancelación",
|
||||
"Ask for Cancel": "Solicitar cancelación",
|
||||
"Collaborative cancel the order?": "¿Cancelar la orden colaborativamente?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Dado que el colateral está bloqueado, la orden solo puede cancelarse si tanto el creador como el tomador están de acuerdo.",
|
||||
"Your peer has asked for cancellation": "Tu contraparte ha solicitado la cancelación",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Abrir disputa",
|
||||
"Disagree": "Volver",
|
||||
"Do you want to open a dispute?": "¿Quieres abrir una disputa?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Asegúrate de EXPORTAR el registro del chat. Los administradores pueden pedirte el registro del chat en caso de discrepancias. Es responsabilidad tuya aportarlo.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "El equipo de RoboSats examinará las declaraciones y evidencias presentadas. Como el equipo no puede leer el chat, debes escribir una declaración completa y detallada. Es mejor aportar un método de contacto de usar y tirar en tu declaración. El ganador de la disputa recuperará su fianza, pero el perdedor no.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Confirmar",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "¿Confirmas que has recibido {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "No se ha recibido la factura, echa un vistazo a tu wallet WebLN.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "Ahora puedes cerrar la ventana emergente de tu wallet WebLN.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Auditar PGP",
|
||||
"Export": "Exportar",
|
||||
"Save full log as a JSON file (messages and credentials)": "Guardar el log completo como JSON (credenciales y mensajes)",
|
||||
"Verify your privacy": "Verifica tu privacidad",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activar modo lento (Úsalo cuando tu conexión sea inestable)",
|
||||
"Peer": "Él",
|
||||
"You": "Tú",
|
||||
"connected": "conectado",
|
||||
"disconnected": "desconectado",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Conectando...",
|
||||
"Send": "Enviar",
|
||||
"Type a message": "Escribe un mensaje",
|
||||
"Waiting for peer public key...": "Esperando por la clave pública de tu contraparte...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Adjuntar el registro del chat",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Adjuntar transcripciones del chat ayuda a resolver la disputa y añade transparencia. Sin embargo, puede comprometer tu privacidad.",
|
||||
"Submit dispute statement": "Presentar declaración",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Opciones avanzadas",
|
||||
"Invoice to wrap": "Factura a ocultar",
|
||||
"Payout Lightning Invoice": "Factura Lightning",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Usa Lnproxy",
|
||||
"Wrap": "Ofuscar",
|
||||
"Wrapped invoice": "Factura oculta",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Dirección Bitcoin",
|
||||
"Final amount you will receive": "Cantidad final que vas a recibir",
|
||||
"Invalid": "No válido",
|
||||
"Mining Fee": "Comisión Minera",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "El coordinador de RoboSats hará un swap y enviará los sats a tu dirección onchain.",
|
||||
"Swap fee": "Comisión del swap",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Confirmar {{amount}} {{currencyCode}} recibido",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Confirmar {{amount}} {{currencyCode}} enviado",
|
||||
"Open Dispute": "Abrir Disputa",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "¡Di hola! Sé claro y conciso. Indica cómo debe enviarte {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "Debes esperar para abrir una disputa",
|
||||
"Wait for the seller to confirm he has received the payment.": "Espera a que el vendedor confirme que ha recibido el pago.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Por favor, guarda la información necesaria para identificar tu orden y tus pagos: ID de orden; claves del pago de la fianza o el colateral (comprueba tu cartera Lightning); cantidad exacta de Sats; y nombre del Robot. Tendrás que identificarte como el usuario involucrado en este intercambio por email (u otro método de contacto).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Puedes retirar la cantidad resuelta en la disputa (fianza y colateral) desde las recompensas de tu perfil. Si hay algo que el equipo pueda hacer, no dudes en contactar con robosats@protonmail.com (o a través del método de contacto que hayas especificado).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Espera un momento. Si el vendedor no hace el depósito, recuperarás tu fianza automáticamente. Además, recibirás una compensación (verás las recompensas en tu perfil).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Estamos esperando a que el vendedor bloquee la cantidad a intercambiar.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Renovar Orden",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Copiar al portapapeles",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Esto es una factura retenida, los Sats se bloquean en tu cartera. Solo se cobrará si cancelas o pierdes una disputa.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Esto es una factura retenida, los Sats se bloquean en tu cartera. Será liberada al comprador al confirmar que has recibido {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Reactivar Orden",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Tu orden pública ha sido pausada. Ahora mismo, la orden no puede ser vista ni tomada por otros robots. Puedes volver a activarla cuando desees.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Antes de dejarte enviar {{amountFiat}} {{currencyCode}}, queremos asegurarnos de que puedes recibir los sats.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Espera un momento. Si el comprador no coopera, se te devolverá el colateral y tu fianza automáticamente. Además, recibirás una compensación (verás las recompensas en tu perfil).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Estamos esperando a que el comprador envíe una factura Lightning. Cuando lo haga, podrás comunicarle directamente los detalles del pago.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Entre las órdenes públicas de {{currencyCode}} (más alto, más barato)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Si tu oferta expira sin ser tomada, tu fianza será desbloqueada en tu cartera automáticamente.",
|
||||
"Pause the public order": "Pausar la orden pública",
|
||||
"Premium rank": "Percentil de la prima",
|
||||
"Public orders for {{currencyCode}}": "Órdenes públicas por {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Razón del fallo:",
|
||||
"Next attempt in": "Próximo intento en",
|
||||
"Retrying!": "¡Reintentando!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats intentará pagar tu factura 3 veces con una pausa de un minuto entre cada intento. Si sigue fallando, podrás presentar una nueva factura. Comprueba si tienes suficiente liquidez entrante. Recuerda que los nodos de Lightning tienen que estar en línea para poder recibir pagos.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Tu factura ha expirado o se han hecho más de 3 intentos de pago. Aporta una nueva factura.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats está intentando pagar tu factura de Lightning. Recuerda que los nodos Lightning deben estar en línea para recibir pagos.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renovar",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats mejora con más liquidez y usuarios. ¡Háblale a un amigo bitcoiner sobre RoboSats!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "¡Gracias! RoboSats también te quiere",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Tu TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Por favor, espera a que el tomador bloquee su fianza. Si no lo hace a tiempo, la orden volverá a publicarse.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "¡Ha llegado un técnico robótico!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "Aquí traigo mis propios robosts. (Arrastra y suelta workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "Mi primera vez aquí. Crear un Robot Garage y un token extendido (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Personalizar vistas",
|
||||
"Freeze viewports": "Congelar vistas",
|
||||
"unsafe_alert": "Protege tus datos y privacidad usando <1>Tor Browser</1> y visitando un <3>Onion</3> de la federación. O hostea <5>tu propia app.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "En disputa",
|
||||
"Collaboratively cancelled": "Cancelada colaborativamente",
|
||||
"Sending satoshis to buyer": "Enviando Sats al comprador",
|
||||
"Sucessful trade": "Intercambio exitoso",
|
||||
"Successful trade": "Intercambio exitoso",
|
||||
"Failed lightning network routing": "Enrutamiento fallido en la red Lightning",
|
||||
"Wait for dispute resolution": "Espera a la resolución de la disputa",
|
||||
"Maker lost dispute": "El creador ha perdido la disputa",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connected to TOR network",
|
||||
"Connecting to TOR network": "Connecting to TOR network",
|
||||
"Connection error": "Connection error",
|
||||
"Initializing TOR daemon": "Initializing TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "ANY",
|
||||
"Buy": "Erosi",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "eta erabili",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pay with",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Gehitu iragazkia",
|
||||
"Amount": "Kopurua",
|
||||
"An error occurred.": "Akats bat gertatu da.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "hasten da",
|
||||
"true": "egia",
|
||||
"yes": "bai",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Itxi",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Salerosketaren pausoz-pausoko deskribapen bat aurki dezakezu ondorengo helbidean ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Joan atzera",
|
||||
"Keys": "Giltzak",
|
||||
"Learn how to verify": "Ikasi nola egiaztatu",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Zure parearen PGP giltza publikoa. Berak bakarrik irakur ditzakeen mezuak zifratzeko eta jasotako mezuak berak sinatu dituela egiaztatzeko erabiliko duzu.",
|
||||
"Your private key passphrase (keep secure!)": "Zure giltza pribatuaren pasahitza (seguru mantendu)",
|
||||
"Your public key": "Zure giltza publikoa",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... Lurreko lekuren batean!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Erabili dira",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "eta",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Komunitatea",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Jakinarazi funtzionalitate berri bat edo akats bat",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24 ordutan kontratatutako bolumena",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Baimendu",
|
||||
"Enable TG Notifications": "Baimendu TG Jakinarazpenak",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "RoboSats telegrama botarekin hitz egingo duzu. Zabaldu berriketa eta sakatu Start. Telegrama bidez anonimotasun maila jaitsi zenezake.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Atzera",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Learn Robosats bisitatu behar duzu. Bertan, Robosats erabiltzen ikasteko eta nola dabilen ulertzeko tutorialak eta dokumentazioa aurkituko dituzu.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Robota sortu",
|
||||
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
|
||||
"You do not have a robot avatar": "Ez daukazu robot avatarrik",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Gorde ezazu!",
|
||||
"Done": "Prest",
|
||||
"Store your robot token": "Gorde zure robot tokena",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Zure robot avatarra berreskuratu nahi izango duzu: gorde seguru. Beste aplikazio batean kopia dezakezu",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Deskargatu RoboSats {{coordinatorVersion}} APK Github-en",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "RoboSats koordinatzailea {{coordinatorVersion}} bertsioan dago, baina zure bezero-aplikazioa {{clientVersion}} da. Bertsio desegoki honek erabiltzailearen esperientzia txarra ekar dezake.",
|
||||
"Update your RoboSats client": "Eguneratu zure RoboSats web bezeroa",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats webgunea zure nodotik zerbitzatzen da beraz segurtasun eta pribatutasun sendoena eskaintzen dizu.",
|
||||
"You are self-hosting RoboSats": "You are self-hosting RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Ez duzu Robosats pribatuki erabiltzen",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Min.",
|
||||
"to": "max.",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " %{{discount}}-ko deskontuarekin",
|
||||
" at a {{premium}}% premium": " %{{premium}}-ko primarekin",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "You receive approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "You send approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"Your order fixed exchange rate": "Zure eskaeraren kanbio-tasa finkoa",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "New chat message",
|
||||
"Order chat is open": "Order chat is open",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Kopurua {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Eskaera hau onartuz gero, denbora galtzea arriskatzen duzu. Egileak ez badu garaiz jarraitzen, satoshietan konpentsatua izango zara egilearen fidantzaren %50arekin",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Sartu bitcongatik aldatu nahi duzun fiat kopurua",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Aurrena kopurua zehaztu behar duzu",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Onartutako ordainketa moduak",
|
||||
"Amount of Satoshis": "Satoshi kopurua",
|
||||
"Deposit timer": "Gordailu tenporizadorea",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Prima: %{{premium}}",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Eskatu",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Zure oraingo eskaera",
|
||||
"Your last order #{{orderID}}": "Zure azken eskaera #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Ezeztatu",
|
||||
"Cancel order and unlock bond instantly": "Cancel order and unlock bond instantly",
|
||||
"Collaborative Cancel": "Lankidetza ezeztapena",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Lankidetzaz ezeztatzeko eskaera egin duzu",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} lankidetzaz ezeztatzea eskatu du",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Erosle",
|
||||
"Completed in": "Igarotako denbora",
|
||||
"Contract exchange rate": "Kontratuaren truke-tasa",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Begiratu Kartera Bateragarriak",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Eskaera ezeztatu?",
|
||||
"Confirm Cancel": "Onartu ezeztapena",
|
||||
"If the order is cancelled now you will lose your bond.": "Eskaera ezeztatuz gero fidantza galduko duzu.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "Ezeztatzea eskatu",
|
||||
"Collaborative cancel the order?": "Eskaera lankidetzaz ezeztatu?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Eskaeraren fidantza bidali da. Eskaera ezeztatu daiteke bakarrik egileak eta hartzaileak hala adosten badute.",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Onartu eta eztabaida ireki",
|
||||
"Disagree": "Atzera",
|
||||
"Do you want to open a dispute?": "Eztabaida bat ireki nahi duzu?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Ziurtatu txata ESPORTATU duzula. Baliteke langileek zure txat log JSON esportatua eskatzea desadostasunak konpontzeko. Zure ardura da gordetzea.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "RoboSatseko langileek baieztapenak eta frogak aztertuko dituzte. Kasu oso bat eraiki behar duzu, langileek ezin baitute txateko berriketa irakurri. Hobe da behin erabiltzeko kontaktu metodo bat ematea zure adierazpenarekin. Blokeatutako Satosiak eztabaidako irabazleari bidaliko zaizkio, eta galtzaileak, berriz, fidantza galduko du.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Baieztatu",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Baieztatu {{amount}} {{currencyCode}} jaso duzula?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Faktura ez da jaso, mesedez begiratu zure WebLN kartera.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Ikuskatu PGP",
|
||||
"Export": "Esportatu",
|
||||
"Save full log as a JSON file (messages and credentials)": "Gorde log guztia JSON fitxategi batean (mezuak eta kredentzialak)",
|
||||
"Verify your privacy": "Zure pribatasuna egiaztatu",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "Bera",
|
||||
"You": "Zu",
|
||||
"connected": "konektatuta",
|
||||
"disconnected": "deskonektatuta",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Konektatzen...",
|
||||
"Send": "Bidali",
|
||||
"Type a message": "Idatzi mezu bat",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "Aurkeztu eztabaidaren adierazpena",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Advanced options",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Lightning Faktura ordaindu",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin Helbidea",
|
||||
"Final amount you will receive": "Jasoko duzun azken kopurua",
|
||||
"Invalid": "Baliogabea",
|
||||
"Mining Fee": "Meatzaritza Kuota",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "Swap kuota",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Baieztatu {{amount}} {{currencyCode}} jaso dela",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Baieztatu {{amount}} {{currencyCode}} bidali dela",
|
||||
"Open Dispute": "Eztabaida Ireki",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Agurtu! Lagungarri eta labur izan. Jakin dezatela {{amount}} {{currencyCode}}ak nola bidali.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "Itxaron saltzaileak ordainketa jaso duela baieztatu arte.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Mesedez, gorde zure agindua eta zure ordainketak identifikatzeko behar duzun informazioa: eskaera IDa; fidantzaren edo gordailuaren ordainagiriak (begira ezazu zure lightning karteran); satosi kopuru zehatza; eta robot ezizena. Zure burua identifikatu beharko duzu salerosketa honetako partehartzaile moduan posta elektroniko bidez (edo beste kontaktu metodo baten bitartez).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Eztabaidaren ebazpen-kopurua jaso dezakezu (fidantza eta kolaterala) zure profileko sarien atalean. Langileek egin dezaketen beste zerbait badago, ez izan zalantzarik harremanetan jartzeko robosat@protonmail.com bidez (edo zure behin erabiltzeko metodoarekin).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Itxaron pixka bat. Saltzaileak ez badu gordailatzen, automatikoki berreskuratuko duzu zure fidantza. Gainera, konpentsazio bat jasoko duzu (begiratu sariak zure profilean).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Saltzaileak adostutako kopurua blokeatu zain gaude.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Eskaera Berritu",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Kopiatu",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Atxikitako faktura bat da hau, zure karteran blokeatuko da. Eztabaida bat bertan behera utzi edo galtzen baduzu bakarrik kobratuko da.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Atxikitako faktura bat da hau, zure karteran blokeatuko da. Erosleari emango zaio, behin {{currencyCode}}ak jaso dituzula baieztatuta.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Eskaera berriz ezarri",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Zure ordena publikoa eten egin da. Oraingoz beste robot batzuek ezin dute ez ikusi ez hartu. Noiznahi aktibatu dezakezu.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "{{amountFiat}} {{currencyCode}} bidaltzea baimendu aurretik, ziurtatu nahi dugu BTC jaso dezakezula.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Itxaron pixka bat. Erosleak ez badu kooperatzen, kolaterala eta zure fidantza automatikoki jasoko dituzu. Gainera, konpentsazio bat jasoko duzu (begiratu sariak zure profilean).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Erosleak lightning faktura bat partekatu zain gaude. Behin hori eginda, zuzenean ordainketaren xehetasunak komunikatu ahalko dizkiozu.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "{{currencyCode}} eskaera publikoen artean (altuagoa merkeagoa da)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Eskaera hartu gabe amaitzen bada, fidantza automatikoki itzuliko zaizu.",
|
||||
"Pause the public order": "Eskaera publikoa eten",
|
||||
"Premium rank": "Prima maila",
|
||||
"Public orders for {{currencyCode}}": "Eskaera publikoak {{currencyCode}}entzat",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Akatsaren arrazoia:",
|
||||
"Next attempt in": "Hurrengo saiakera",
|
||||
"Retrying!": "Berriz saiatzen!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats 3 aldiz saiatuko da zure faktura ordaintzen, tartean minutu bateko etenaldiarekin. Akatsa ematen jarraitzen badu, faktura berri bat aurkeztu ahal izango duzu. Begiratu ea nahikoa sarrerako likidezia daukazun. Gogoratu lightning nodoak online egon behar direla ordainketak jaso ahal izateko.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Zure faktura iraungi da edo 3 ordainketa saiakera baino gehiago egin dira. Aurkeztu faktura berri bat.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats zure Lightning faktura ordaintzen saiatzen ari da. Gogoratu lightning nodoak online egon behar direla ordainketak jaso ahal izateko.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats hobetu egiten da likidezia eta erabiltzaile gehiagorekin. Aipatu Robosats lagun bitcoiner bati!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Thank you! RoboSats loves you too",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Zure TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Mesedez itxaron hartzaileak fidantza blokeatu harte. Hartzaileak fidantza garaiz blokeatzen ez badu, eskaera berriz publikatuko da.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "L'entropie n'est pas suffisante, il faut la rendre plus complexe",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Cela garantit une confidentialité maximale, mais l'application peut sembler lente. Si la connexion est perdue, redémarrez l'application.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connecté au réseau TOR",
|
||||
"Connecting to TOR network": "Connexion au réseau TOR",
|
||||
"Connection error": "Erreur de connexion",
|
||||
"Initializing TOR daemon": "Initialisation du daemon TOR",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "Tous",
|
||||
"Buy": "Acheter",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "et utiliser",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "payer avec",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Ajouter filtre",
|
||||
"Amount": "Montant",
|
||||
"An error occurred.": "Une erreur s'est produite.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "commence par",
|
||||
"true": "vrai",
|
||||
"yes": "oui",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Fermer",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Vous pouvez trouver une description pas à pas des échanges en ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Retourner",
|
||||
"Keys": "Keys",
|
||||
"Learn how to verify": "Apprendre à vérifier",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La clé publique PGP de votre correspondant. Vous l'utilisez pour chiffrer les messages que lui seul peut lire et pour vérifier que votre correspondant a signé les messages entrants.",
|
||||
"Your private key passphrase (keep secure!)": "Phrase de passe de votre clé privée (à conserver précieusement !)",
|
||||
"Your public key": "Votre clé publique",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... quelque part sur Terre!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Construit avec",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "et",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Communauté",
|
||||
"Follow RoboSats in Nostr": "Suivez RoboSats sur Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Parlez-nous d'une nouvelle fonctionnalité ou d'un bug",
|
||||
"We are abandoning Telegram! Our old TG groups": "Nous abandonnons Telegram ! Nos anciens groupes TG",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Volume contracté en 24h",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Navigateur",
|
||||
"Enable": "Activer",
|
||||
"Enable TG Notifications": "Activer notifications TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Vous serez redirigé vers une conversation avec le robot telegram RoboSats. Il suffit d'ouvrir le chat et d'appuyer sur Start. Notez qu'en activant les notifications Telegram, vous risquez de réduire votre niveau d'anonymat.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Retour",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Vous êtes sur le point de visiter Learn RoboSats. Il héberge des tutoriels et de la documentation pour vous aider à apprendre à utiliser RoboSats et à comprendre son fonctionnement.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Générer un robot",
|
||||
"Generate a robot avatar first. Then create your own order.": "Créez d'abord un avatar de robot. Créez ensuite votre propre commande.",
|
||||
"You do not have a robot avatar": "Vous n'avez pas d'avatar robot",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Votre Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Sauvegardez!",
|
||||
"Done": "Fait",
|
||||
"Store your robot token": "Enregistrez votre jeton du robot",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Vous pourriez avoir besoin de récupérer votre avatar robot à l'avenir : conservez-le en toute sécurité. Vous pouvez simplement le copier dans une autre application.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Télécharger RoboSats {{coordinatorVersion}} APK depuis les publications Github",
|
||||
"Go away!": "Partez !",
|
||||
"On Android RoboSats app ": "Sur l'application Android RoboSats ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "Sur votre propre nœud souverain",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "Le coordinateur RoboSats est sur la version {{versioncoordinateur}}, mais votre application client est {{versionclient}}. Ce décalage de version peut entraîner une mauvaise expérience pour l'utilisateur.",
|
||||
"Update your RoboSats client": "Mettez à jour votre client RoboSats",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "Le client RoboSats est servi à partir de votre propre nœud, ce qui vous garantit une sécurité et une confidentialité optimales.",
|
||||
"You are self-hosting RoboSats": "Vous auto-hébergez RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Vous n'utilisez pas RoboSats en privé",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "De",
|
||||
"to": "à",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " à une remise de {{discount}}%",
|
||||
" at a {{premium}}% premium": " à une prime de {{premium}}%",
|
||||
" at market price": " au prix du marché",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "Vous recevez environ {{swapSats}} LN Sats (les frais peuvent varier).",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "Vous envoyez environ {{swapSats}} LN Sats (les frais peuvent varier)",
|
||||
"Your order fixed exchange rate": "Taux de change fixe de votre commande",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Échec routage Lightning",
|
||||
"New chat message": "Nouveau message chat",
|
||||
"Order chat is open": "Ordre chat ouvert",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expiré!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Pris!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Montant {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "En prenant cette ordre, vous risquez de perdre votre temps. Si l'auteur ne procède pas dans les temps, vous serez compensé en satoshis à hauteur de 50% de la caution de l'auteur.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Saisissez le montant de fiat à échanger contre des bitcoins",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Vous devez d'abord spécifier un montant",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Modes de paiement acceptés",
|
||||
"Amount of Satoshis": "Montant de Satoshis",
|
||||
"Deposit timer": "Deposit timer",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "Vous envoyez via Lightning {{amount}} Sats (environ)",
|
||||
"You send via {{method}} {{amount}}": "Vous envoyez via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Prime: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Réclamer",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Votre ordre en cours",
|
||||
"Your last order #{{orderID}}": "Votre dernière commande #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Sombre",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Échanges",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Annuler",
|
||||
"Cancel order and unlock bond instantly": "Annuler l'ordre et débloquer l'obligation instantanément",
|
||||
"Collaborative Cancel": "Annulation collaborative",
|
||||
"Unilateral cancelation (bond at risk!)": "Annulation unilatérale (caution à risque !)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Vous avez demandé une annulation collaborative",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} demande une annulation collaborative",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Acheteur",
|
||||
"Completed in": "Terminé en",
|
||||
"Contract exchange rate": "Taux de change du contrat",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Voir Portefeuilles compatibles",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Annuler l'ordre?",
|
||||
"Confirm Cancel": "Confirmer l'annulation",
|
||||
"If the order is cancelled now you will lose your bond.": "Si l'ordre est annulé maintenant, vous perdrez votre caution",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accepter l'annulation",
|
||||
"Ask for Cancel": "Demande d'annulation",
|
||||
"Collaborative cancel the order?": "Annuler l'ordre en collaboration?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Le dépôt de transaction a été enregistré. L'ordre ne peut être annulé que si les deux parties, le createur et le preneur, sont d'accord pour l'annuler.",
|
||||
"Your peer has asked for cancellation": "Votre correspondant a demandé l'annulation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Accepter et ouvrir un litige",
|
||||
"Disagree": "En désaccord",
|
||||
"Do you want to open a dispute?": "Voulez-vous ouvrir un litige?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Veillez à EXPORTER le journal de discussion. Le personnel peut demander le JSON de votre journal de chat exporté afin de résoudre des litiges. Il est de votre responsabilité de le stocker.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Le personnel de RoboSats examinera les déclarations et les preuves fournies. Vous devez constituer un dossier complet, car le personnel ne peut pas lire le chat. Il est préférable de fournir une méthode de contact jetable avec votre déclaration. Les satoshis dans le dépôt seront envoyés au gagnant du litige, tandis que le perdant du litige perdra la caution.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Confirmer",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Confirmez que vous avez reçu les {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirmer que vous avez reçu {{montant}} {{currencyCode}} finalisera la transaction. Les satoshis en caution seront remis à l'acheteur. Ne confirmez qu'une fois que {{montant}} {{currencyCode}} sont arrivés sur votre compte. Notez que si vous avez reçu le paiement et que vous ne cliquez pas sur confirmer, vous risquez de perdre votre caution.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirmez votre envoi {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirmer que vous avez envoyé {{montant}} {{currencyCode}} permettra à votre correspondant de finaliser la transaction. Si vous ne l'avez pas encore envoyé et que vous procédez à une fausse confirmation, vous risquez de perdre votre caution.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "LIRE. Si votre paiement au vendeur a été bloqué et qu'il est absolument impossible de terminer la transaction, vous pouvez annuler votre confirmation de vente de \"Fiat envoyé\". Ne le faites que si vous et le vendeur avez DÉJÀ ACCORDÉ dans le chat de procéder à une annulation collaborative. Après avoir confirmé, le bouton \"Annulation collaborative\" sera à nouveau visible. Ne cliquez sur ce bouton que si vous savez ce que vous faites. Il est fortement déconseillé aux nouveaux utilisateurs de RoboSats d'effectuer cette action ! Assurez-vous à 100 % que votre paiement a échoué et que le montant est sur votre compte.",
|
||||
"Revert the confirmation of fiat sent?": "Revenir sur la confirmation de l'envoi fiat ?",
|
||||
"Wait ({{time}})": "Attendez ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Le montant n'est pas encore bloqué, veuillez vérifier votre portefeuille WebLN.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Facture non reçue, veuillez vérifier votre portefeuille WebLN.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "Vous pouvez maintenant fermer la fenêtre popup de votre portefeuille WebLN.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Audit PGP",
|
||||
"Export": "Export",
|
||||
"Save full log as a JSON file (messages and credentials)": "Sauvegarder le journal complet dans un fichier JSON (messages et informations d'identification)",
|
||||
"Verify your privacy": "Vérifier votre confidentialité",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...attente",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activer le mode lent (à utiliser lorsque la connexion est lente)",
|
||||
"Peer": "Correspondant",
|
||||
"You": "Vous",
|
||||
"connected": "connecté",
|
||||
"disconnected": "déconnecté",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Connexion...",
|
||||
"Send": "Envoyer",
|
||||
"Type a message": "Ecrivez un message",
|
||||
"Waiting for peer public key...": "En attente de la clé publique du correspondant...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Joindre les journaux de discussion",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Le fait de joindre les journaux de discussion facilite le processus de résolution du litige et ajoute de la transparence. Cependant, cela peut compromettre votre vie privée.",
|
||||
"Submit dispute statement": "Soumettre une déclaration de litige",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Options avancées",
|
||||
"Invoice to wrap": "Facture à emballer",
|
||||
"Payout Lightning Invoice": "Facture de paiement Lightning",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Utiliser Lnproxy",
|
||||
"Wrap": "Envelopper",
|
||||
"Wrapped invoice": "Facture enveloppée",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin Address",
|
||||
"Final amount you will receive": "Montant final que vous recevrez",
|
||||
"Invalid": "Invalide",
|
||||
"Mining Fee": "Frais Minage",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "Le coordinateur RoboSats effectuera un échange et enverra les Sats à votre adresse onchain.",
|
||||
"Swap fee": "Frais d'échange",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Confirmer la réception de {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Confirmer l'envoi de {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "Ouvrir litige",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Dites bonjour! Soyez serviable et concis. Faites-leur savoir comment vous envoyer les {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "Pour ouvrir un litige, vous devez attendre",
|
||||
"Wait for the seller to confirm he has received the payment.": "Attendez que le vendeur confirme qu'il a reçu le paiement.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Veuillez enregistrer les informations nécessaires à l'identification de votre ordre et de vos paiements : ID de l'ordre; hachages de paiement des cautions ou des dépòts (vérifiez sur votre portefeuille lightning); montant exact des satoshis; et surnom du robot. Vous devrez vous identifier en tant qu'utilisateur impliqué dans cette transaction par e-mail (ou autres méthodes de contact).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Vous pouvez réclamer le montant de la résolution du litige (dépôt et garantie de fidélité) à partir des récompenses de votre profil. Si le personnel peut vous aider en quoi que ce soit, n'hésitez pas à nous contacter à l'adresse robosats@protonmail.com (ou via la méthode de contact jetable que vous avez fourni).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Patientez un instant. Si le vendeur n'effectue pas de dépôt, vous récupérez automatiquement votre caution. En outre, vous recevrez une compensation (vérifiez les récompenses dans votre profil).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Nous attendons que le vendeur verrouille le montant de la transaction.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Renouveler la commande",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Copier dans le presse-papiers",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Cette facture est en attente, elle sera gelée dans votre portefeuille. Elle ne sera débitée que si vous annulez ou perdez un litige.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Cette facture est en attente, elle sera gelée dans votre portefeuille. Elle sera remise à l'acheteur une fois que vous aurez confirmé avoir reçu les {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Annuler la commande",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Votre ordre public a été mis en pause. Pour l'instant, il ne peut pas être vu ou pris par d'autres robots. Vous pouvez décider de le remettre en pause à tout moment.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Avant de vous laisser envoyer {{amountFiat}} {{currencyCode}}, nous voulons nous assurer que vous êtes en mesure de recevoir les BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Patientez un instant. Si l'acheteur ne coopère pas, vous récupérez automatiquement le dépôt de garantie et votre caution. En outre, vous recevrez une compensation (vérifiez les récompenses dans votre profil).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Nous attendons que l'acheteur dépose une facture lightning. Dès qu'il l'aura fait, vous pourrez communiquer directement les détails du paiement.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Parmi les ordres publics en {{currencyCode}} (la plus élevée est la moins chère)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Si l'ordre expire sans être prise, votre caution vous sera rendue (aucune action n'est nécessaire).",
|
||||
"Pause the public order": "Suspendre la commande public",
|
||||
"Premium rank": "Rang de prime",
|
||||
"Public orders for {{currencyCode}}": "Ordres publics pour {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Motif de l'échec:",
|
||||
"Next attempt in": "Prochaine tentative en",
|
||||
"Retrying!": "Nouvelle tentative !",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats essaiera de payer votre facture 3 fois toutes les 1 minute. S'il continue à échouer, vous pourrez soumettre une nouvelle facture. Vérifiez si vous avez suffisamment de liquidité entrante. N'oubliez pas que les nœuds lightning doivent être en ligne pour pouvoir recevoir des paiements.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Votre facture a expiré ou plus de 3 tentatives de paiement ont été effectuées. Soumettez une nouvelle facture.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats tente de payer votre facture lightning. Rappelez-vous que les nœuds lightning doivent être en ligne pour recevoir des paiements.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renouveler",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats s'améliore avec plus de liquidité et d'utilisateurs. Parlez de Robosats à un ami bitcoiner!",
|
||||
"Sending coins to": "Envoi coins à",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Merci ! RoboSats vous aime aussi",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Votre TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Veuillez attendre que le preneur verrouille une caution. Si le preneur ne verrouille pas la caution à temps, l'ordre sera rendue publique à nouveau",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "Un robot technicien est arrivé !",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "J'apporte mes propres robots, les voici. (Glisser-déposer workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "C'est la première fois que je viens ici. Générer un nouveau Robot Garage et un jeton robot étendu (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Personnaliser fenêtres d'affichage",
|
||||
"Freeze viewports": "Geler fenêtres d'affichage",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "En litige",
|
||||
"Collaboratively cancelled": "Annulation commune",
|
||||
"Sending satoshis to buyer": "Envoi des satoshis à l'acheteur",
|
||||
"Sucessful trade": "Transaction réussie",
|
||||
"Successful trade": "Transaction réussie",
|
||||
"Failed lightning network routing": "Échec du routage du réseau lightning",
|
||||
"Wait for dispute resolution": "Attendre la résolution du litige",
|
||||
"Maker lost dispute": "Litige perdu par l'auteur",
|
||||
|
@ -32,7 +32,7 @@ phrases = OrderedDict(
|
||||
("In dispute", "In dispute"),
|
||||
("Collaboratively cancelled", "Collaboratively cancelled"),
|
||||
("Sending satoshis to buyer", "Sending satoshis to buyer"),
|
||||
("Sucessful trade", "Successful trade"),
|
||||
("Successful trade", "Successful trade"),
|
||||
("Failed lightning network routing", "Failed lightning network routing"),
|
||||
("Wait for dispute resolution", "Wait for dispute resolution"),
|
||||
("Maker lost dispute", "Maker lost dispute"),
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Non c'è abbastanza entropia, rendilo più complesso",
|
||||
"The token is too short": "Il token è troppo corto",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Questo garantisce la massima privacy, ma l'app potrebbe risultare lenta. Se si perde la connessione, riavviare l'app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connesso alla rete TOR",
|
||||
"Connecting to TOR network": "Connessione alla rete TOR",
|
||||
"Connection error": "Errore di connessione",
|
||||
"Initializing TOR daemon": "Inizializzazione del processo TOR",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "QUALUNQUE",
|
||||
"Buy": "Compra",
|
||||
"DESTINATION": "DESTINAZIONE",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "ed usa",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "paga con",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Aggiungi filtro",
|
||||
"Amount": "Quantità",
|
||||
"An error occurred.": "Si è verificato un errore.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "inizia con",
|
||||
"true": "vero",
|
||||
"yes": "si",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "In questo modo, recupererai i riquadri della mappa da un fornitore di terze parti. A seconda della tua configurazione, le informazioni private potrebbero essere divulgate a server esterni a RoboSats.",
|
||||
"Close": "Chiudi",
|
||||
"Download high resolution map?": "Scarica la mappa in alta risoluzione?",
|
||||
"Show tiles": "Mostra riquadri",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Una descrizione passo passo della sequenza di scambio è disponibile in ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Indietro",
|
||||
"Keys": "Chiavi",
|
||||
"Learn how to verify": "Impara come verificare",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La chiave PGP pubblica del tuo pari. La utilizzi per cifrare i messaggi che solo il tuo pari può leggere e per verificare che la firma del tuo pari nei messaggi che ricevi.",
|
||||
"Your private key passphrase (keep secure!)": "La frase d'accesso alla tua chiave privata (Proteggila!)",
|
||||
"Your public key": "La tua chiave pubblica",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... da qualche parte sulla Terra!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Fatto con",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "e",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Comunità",
|
||||
"Follow RoboSats in Nostr": "Segui Robosats su Nostr",
|
||||
"Follow RoboSats in X": "Segui RoboSats su Twitter",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Comunicaci nuove funzionalità o bug",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Volume scambiato in 24h",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Attiva",
|
||||
"Enable TG Notifications": "Attiva notifiche TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Sarai introdotto in una conversazione con il bot RoboSats su Telegram. Apri semplicemente la chat e premi Start. Considera che attivando le notifiche Telegram potresti ridurre il tuo livello di anonimato.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Scegli un luogo",
|
||||
"Save": "Salva",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Indietro",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Stai per visitare la pagina Learn RoboSats. Troverai tutorial e documentazione per aiutarti ad imparare a usare RoboSats e capire come funziona.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Genera un Robot",
|
||||
"Generate a robot avatar first. Then create your own order.": "Genera prima un avatar per il tuo robot. Poi crea il tuo ordine.",
|
||||
"You do not have a robot avatar": "Non hai un avatar per il tuo robot",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Il tuo Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Salvalo!",
|
||||
"Done": "Fatto",
|
||||
"Store your robot token": "Salva il tuo token",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Potresti aver bisogno di recuperare il tuo avatar robot in futuro: custodiscilo con cura. Puoi semplicemente copiarlo in un'altra applicazione.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Scarica il file APK di RoboSats {{coordinatorVersion}} dalle releases Github",
|
||||
"Go away!": "Vattene!",
|
||||
"On Android RoboSats app ": "Sull'app Android di RoboSats ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "Sul proprio nodo sovrano",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "Il coordinatore RoboSats è alla versione {{coordinatorVersion}}, ma l'applicazione client è {{clientVersion}}. Questo disallineamento di versione potrebbe causare una cattiva esperienza utente.",
|
||||
"Update your RoboSats client": "Aggiorna il tuo client RoboSats",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "Il client RoboSats è servito dal proprio nodo, garantendo la massima sicurezza e privacy.",
|
||||
"You are self-hosting RoboSats": "Stai ospitando RoboSats in autonomia",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Non stai usando RoboSats privatemente",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Da",
|
||||
"to": "a",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " con uno sconto del {{discount}}%",
|
||||
" at a {{premium}}% premium": " con un premio del {{premium}}%",
|
||||
" at market price": " al prezzo di mercato",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "Riceverai circa {{swapSats}} Sats su LN (le commissioni possono variare)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "Invierai circa {{swapSats}} LN Sats (le commissioni possono variare)",
|
||||
"Your order fixed exchange rate": "Il tasso di cambio fisso del tuo ordine",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Routing Lightning fallito",
|
||||
"New chat message": "Nuovo messaggio in chat",
|
||||
"Order chat is open": "La chat per l'ordine è aperta",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Scaduto!",
|
||||
"🙌 Funished!": "🙌 Completato!",
|
||||
"🥳 Taken!": "🥳 Preso!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Quantità {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Accettando questo ordine rischi di perdere tempo. Se l'offerente non procede in tempo, sarai ricompensato in sats per il 50% della cauzione dell'offerente.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Inserisci la quantità di fiat da scambiare per bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Devi prima specificare una quantità",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "Riceverai {{satoshis}} Sats (approssimativo)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "Invierai {{satoshis}} Sats (approssimativo)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Metodi di pagamento accettati",
|
||||
"Amount of Satoshis": "Quantità di sats",
|
||||
"Deposit timer": "Per depositare",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "Invii {{amount}} Sats via Lightning (approssimativo)",
|
||||
"You send via {{method}} {{amount}}": "Invii {{amount}} via {{method}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Premio: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Riscatta",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Il tuo ordine attuale",
|
||||
"Your last order #{{orderID}}": "Il tuo ultimo ordine #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Scuro",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Annulla",
|
||||
"Cancel order and unlock bond instantly": "Annulla ordine e sblocca immediatamente la cauzione",
|
||||
"Collaborative Cancel": "Annullamento collaborativo",
|
||||
"Unilateral cancelation (bond at risk!)": "Annullamento unilaterale (cauzione a rischio!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Hai richiesto per un annullamento collaborativo",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} vorrebbe annullare collaborativamente",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Acquirente",
|
||||
"Completed in": "Completato in",
|
||||
"Contract exchange rate": "Tasso di cambio contrattuale",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Vedi wallet compatibili",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Annullare l'ordine?",
|
||||
"Confirm Cancel": "Conferma l'annullamento",
|
||||
"If the order is cancelled now you will lose your bond.": "Se l'ordine viene annullato adesso perderai la cauzione.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accetta annullamento",
|
||||
"Ask for Cancel": "Richiesta di annullamento",
|
||||
"Collaborative cancel the order?": "Annullare collaborativamente l'ordine?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Il deposito di transazione è stato registrato. L'ordine può solo essere cancellato se entrambe le parti sono d'accordo all'annullamento.",
|
||||
"Your peer has asked for cancellation": "Il tuo pari ha richiesto l'annullanmento",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Sono d'accordo e apri una disputa",
|
||||
"Disagree": "Non sono d'accordo",
|
||||
"Do you want to open a dispute?": "Vuoi aprire una disputa?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Assicurati di esportare il log della chat. Lo staff potrebbe richiedere il file JSON di log della chat esportato per risolvere eventuali dispute. È tua responsabilità conservarlo.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Lo staff di RoboSats esaminerà le dichiarazioni e le prove fornite. È necessario essere più precisi possibile, poiché lo staff non può leggere la chat. È meglio fornire un metodo di contatto temporaneo insieme alla propria dichiarazione. I satoshi presenti nel deposito saranno inviati al vincitore della disputa, mentre il perdente perderà il deposito",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Conferma",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Confermi la ricezione di {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confermando di aver ricevuto {{importo}} {{currencyCode}} concluderai lo scambio. I satoshi in deposito saranno rilasciati all'acquirente. Conferma solo dopo che {{amount}} {{valutaCodice}} sono arrivati sul tuo conto. Si noti che se si riceve il pagamento e non si clicca su conferma, si rischia di perdere la propria cauzione.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confermi di aver inviato {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confermando di aver inviato {{importo}} {{currencyCode}} consentirai al tuo pari di finalizzare la transazione. Se non lo si è ancora inviato e si procede comunque a una falsa conferma, si rischia di perdere la propria cauzione.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "LEGGERE. Nel caso in cui il pagamento al venditore sia stato bloccato e sia assolutamente impossibile concludere la compravendita, puoi annullare la tua conferma di \"Fiat inviate\". Questo solo se tu e il venditore avete già concordato in chat di procedere a un annullamento collaborativo. Dopo la conferma, il pulsante \"Annullamento collaborativo\" sarà nuovamente visibile. Fare clic su questo pulsante solo se si sa cosa si sta facendo. Agli utenti che utilizzano RoboSats per la prima volta è caldamente sconsigliato eseguire questa azione! Assicurarsi al 100% che il pagamento non sia andato a buon fine e che l'importo sia presente nel conto.",
|
||||
"Revert the confirmation of fiat sent?": "Annullare la conferma dell'invio di fiat?",
|
||||
"Wait ({{time}})": "Attendi ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Importo non ancora bloccato, controllare il portafoglio WebLN.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Fattura non ricevuta, controllare il portafoglio WebLN.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "Ora è possibile chiudere il popup del portafoglio WebLN.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Controlla PGP",
|
||||
"Export": "Esporta",
|
||||
"Save full log as a JSON file (messages and credentials)": "Salva l'elenco completo come file JSON (messaggi e credenziali)",
|
||||
"Verify your privacy": "Verifica la tua privacy",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...in attesa",
|
||||
"Activate slow mode (use it when the connection is slow)": "Attiva slow mode (da utilizzare quando la connessione è lenta)",
|
||||
"Peer": "Pari",
|
||||
"You": "Tu",
|
||||
"connected": "connesso",
|
||||
"disconnected": "disconnesso",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Connessione...",
|
||||
"Send": "Invia",
|
||||
"Type a message": "Digita un messaggio",
|
||||
"Waiting for peer public key...": "In attesa della chiave pubblica del tuo pari...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Allega i logs della chat",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Allegare i logs della chat semplifica il processo di risoluzione della contestazione e aggiunge trasparenza. Tuttavia, potrebbe compromettere la tua privacy.",
|
||||
"Submit dispute statement": "Dichiarazione inviata",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Opzioni avanzate",
|
||||
"Invoice to wrap": "Fattura da confezionare",
|
||||
"Payout Lightning Invoice": "Fattura di pagamento Lightning",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Usa Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Indirizzo Bitcoin",
|
||||
"Final amount you will receive": "Importo finale che riceverai",
|
||||
"Invalid": "Invalido",
|
||||
"Mining Fee": "Commissione di mining",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "Il coordinatore RoboSats effettuerà uno swap e invierà i Sats al tuo indirizzo onchain.",
|
||||
"Swap fee": "Commissione di swap",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Conferma la ricezione di {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Conferma l'invio di {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "Apri una disputa",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Saluta! Sii utile e conciso. Fai sapere come inviarti {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "Per aprire una contestazione devi attendere",
|
||||
"Wait for the seller to confirm he has received the payment.": "Aspetta che l'offerente confermi la ricezione del pagamento.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Per favore, salva le informazioni necessarie per identificare il tuo ordine e i tuoi pagamenti: ID dell'ordine; hash dei pagamenti delle garanzie o del deposito (controlla sul tuo wallet lightning); importo esatto in Sats; e nickname del robot. Dovrai identificarti come l'utente coinvolto in questa operazione tramite email (o altri metodi di contatto).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Puoi richiedere l'importo per la risoluzione delle controversie (deposito e cauzione) dalla sezione ricompense del tuo profilo. Se c'è qualcosa per cui lo staff può essere d'aiuto, non esitare a contattare robosats@protonmail.com (o tramite il metodo di contatto temporaneo fornito).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Aspetta un attimo. Se l'offerente non effettua il deposito, riceverai indietro la cauzione automaticamente. In più, riceverai un compenso (controlla le ricompense sul tuo profilo).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Stiamo aspettando che l'offerente blocchi l'ammontare della transazione.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Rinnova l'ordine",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Copia negli appunti",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Questa è una ricevuta di deposito, verrà congelata nel tuo wallet. Sarà riscossa solamente in caso di annullamento o perdita di una disputa.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Questa è una ricevuta di deposito, verrà congelata nel tuo wallet. Sarà accreditata all'acquirente una volta tu abbia confermato di aver ricevuto {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Rimuovi la pausa all'ordine",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Il tuo ordine pubblico è in sospeso. Al momento non può essere visto o accettato da altri robot. È possibile scegliere di toglierlo dalla pausa in qualsiasi momento",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Prima di lasciarti inviare {{amountFiat}} {{currencyCode}}, vogliamo assicurarci che tu sia in grado di ricevere i BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Aspetta un attimo. Se l'acquirente non collabora, ti verranno restituite automaticamente la garanzia di transazione e la cauzione. In più, riceverai un compenso (controlla le ricompense sul tuo profilo).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Stiamo aspettando che l'acquirente invii una fattura lightning. Appena fatto, sarai in grado di comunicare direttamente i dettagli di pagamento.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Tra gli ordini pubblici in {{currencyCode}} (costo crescente)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Se l'ordine scade senza venire accettato, la cauzione ti sarà restituita (nessun'azione richiesta).",
|
||||
"Pause the public order": "Sospendi l'ordine pubblico",
|
||||
"Premium rank": "Classifica del premio",
|
||||
"Public orders for {{currencyCode}}": "Ordini pubblici per {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Ragione del fallimento:",
|
||||
"Next attempt in": "Prossimo tentativo",
|
||||
"Retrying!": "Nuovo tentativo!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats proverà a pagare la tua fattura 3 volte con una pausa di un minuto tra ogni tentativo. Se continua a fallire, potrai inviare una nuova fattura. Controlla se hai abbastanza liquidità in entrata. Ricorda che i nodi Lightning devono essere online per poter ricevere i pagamenti.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "La tua fattura è scaduta o sono stati fatti più di 3 tentativi di pagamento. Invia una nuova fattura.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats sta provando a pagare la tua fattura lightning. Ricorda che i nodi lightning devono essere online per ricevere pagamenti.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Rinnova",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats migliora se ha più liquidità ed utenti. Parla di Robosats ai tuoi amici bitcoiner!",
|
||||
"Sending coins to": "Invio monete a",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Grazie! Anche RoboSats ti ama",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Il tuo TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Per favore, attendi che l'acquirente blocchi una cauzione. Se l'acquirente non blocca una cauzione in tempo, l'ordine verrà reso nuovamente pubblico.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "Un tecnico robot è arrivato!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "Porto i miei robots personali, eccoli. (Trascina e rilascia workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "Questa è la mia prima volta qui. Genera un nuovo Robot Garage e un token robot esteso (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Personalizza le finestre di visualizzazione",
|
||||
"Freeze viewports": "Fissa le finestre di visualizzazione",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In contestazione",
|
||||
"Collaboratively cancelled": "Annullato collaborativamente",
|
||||
"Sending satoshis to buyer": "Invio satoshi all'acquirente",
|
||||
"Sucessful trade": "Scambio completato con successo",
|
||||
"Successful trade": "Scambio completato con successo",
|
||||
"Failed lightning network routing": "Routing Lightning Network fallito",
|
||||
"Wait for dispute resolution": "In attesa della risoluzione della contestazione",
|
||||
"Maker lost dispute": "Il maker ha perso la contestazione",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "これにより最大限のプライバシーが確保されますが、アプリの動作が遅いと感じることがあります。接続が切断された場合は、アプリを再起動してください。",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "TORネットワークに接続しました",
|
||||
"Connecting to TOR network": "TORネットワークに接続中",
|
||||
"Connection error": "接続エラー",
|
||||
"Initializing TOR daemon": "TORデーモンを初期化中",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "すべて",
|
||||
"Buy": "購入",
|
||||
"DESTINATION": "方向",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "そして使用するのは",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "支払い方法は:",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "フィルタを追加",
|
||||
"Amount": "量",
|
||||
"An error occurred.": "エラーが発生しました。",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "〜で始まる",
|
||||
"true": "True",
|
||||
"yes": "はい",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "閉じる",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub)。 ",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "取引プロセスのステップバイステップの説明は、以下のリンク先でご確認いただけます。",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "戻る",
|
||||
"Keys": "鍵",
|
||||
"Learn how to verify": "確認方法を学ぶ",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "これはあなたの取引相手のPGP公開鍵です。あなたは相手専用の暗号化メッセージを送信するために使用し、また受信したメッセージが相手によって署名されたものであることを確認するためにも使用します。",
|
||||
"Your private key passphrase (keep secure!)": "あなたの秘密鍵のパスフレーズ(安全に保ってください!)",
|
||||
"Your public key": "あなたの公開鍵",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "......地球上のどっかから!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "と",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "を込めて",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "コミュニティー",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "新しい機能やバグについて教えてください",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24時間の契約量",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "ブラウザー",
|
||||
"Enable": "有効化",
|
||||
"Enable TG Notifications": "テレグラム通知を有効にする",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "RoboSatsのテレグラムボットとのチャットに移動します。チャットを開いて「Start」を押してください。テレグラム通知を有効にすることで匿名レベルが低下する可能性があることに注意してください。",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "戻る",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "「Learn RoboSats」学習ページにアクセスしようとしています。RoboSatsの使い方を学び、動作原理を理解するためのチュートリアルとドキュメントが提供されています。",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "ロボットを生成する",
|
||||
"Generate a robot avatar first. Then create your own order.": "最初にロボットアバターを生成してください。次に自分のオーダーを作成してください。",
|
||||
"You do not have a robot avatar": "ロボットのアバターがありません",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "バックアップを取ってください!",
|
||||
"Done": "完了",
|
||||
"Store your robot token": "ロボットトークンを保存する",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "将来、ロボットアバターを回復する必要があるかもしれません。安全に保存してください。別のアプリケーションに簡単にコピーすることができます。",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "GithubリリースからRoboSats {{coordinatorVersion}} APKをダウンロードしてください。",
|
||||
"Go away!": "行ってしまえ!",
|
||||
"On Android RoboSats app ": "AndroidのRoboSatsアプリ ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "あなた自身の主権ノードで",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "RoboSatsコーディネーターはバージョン{{coordinatorVersion}}で、クライアントアプリは{{clientVersion}}です。このバージョンの不一致は、悪いユーザーエクスペリエンスを引き起こす可能性があります。",
|
||||
"Update your RoboSats client": "RoboSatsクライアントを更新してください",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSatsクライアントは、あなた自身のノードから提供され、最高のセキュリティとプライバシーが保証されます。",
|
||||
"You are self-hosting RoboSats": "RoboSatsを自己ホスティングしています",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "RoboSatsをプライベートで使用していません",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "から",
|
||||
"to": "まで",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": "{{discount}}%のディスカウントで",
|
||||
" at a {{premium}}% premium": "{{premium}}%のプレミアムで",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "約{{swapSats}} ライトニングSatsを受け取ります(手数料は異なる場合があります)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "約{{swapSats}} ライトニングSatsを送信します(手数料は異なる場合があります)",
|
||||
"Your order fixed exchange rate": "注文の固定為替レート",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "ライトニングのルーティングに失敗しました",
|
||||
"New chat message": "チャットに新しいメッセージがあります",
|
||||
"Order chat is open": "注文のチャットが開かれています",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 期限切れ!",
|
||||
"🙌 Funished!": "🙌 完了!",
|
||||
"🥳 Taken!": "🥳 受け取られました!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "金額 {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "このオーダーを引き受けることで、時間を無駄にする可能性があります。メーカーが指定された時間内に進まない場合、メーカーの担保金の50%に相当するSatsで補償されます。",
|
||||
"Enter amount of fiat to exchange for bitcoin": "ビットコインと交換するフィアット通貨の金額を入力してください",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "まず金額を指定する必要があります",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "{{satoshis}} Satsを受け取ります(おおよその金額)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "{{satoshis}} Satsを送信します(おおよその金額)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "受け付ける支払い方法",
|
||||
"Amount of Satoshis": "サトシの金額",
|
||||
"Deposit timer": "デポジットタイマー",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "ライトニングで{{amount}} Sats(約)を送信します",
|
||||
"You send via {{method}} {{amount}}": "{{method}}で{{amount}}を送信します",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - プレミアム: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "請求する",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "現在のオーダー",
|
||||
"Your last order #{{orderID}}": "前回のオーダー #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "ダーク",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "メインネット",
|
||||
"Swaps": "スワップ",
|
||||
"Testnet": "テストネット",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "キャンセル",
|
||||
"Cancel order and unlock bond instantly": "注文をキャンセルして、担保金を解除する",
|
||||
"Collaborative Cancel": "共同キャンセル",
|
||||
"Unilateral cancelation (bond at risk!)": "一方的なキャンセル(担保金が危険に!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "あなたが共同的なキャンセルを求めています",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}}が共同的なキャンセルを求めています",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "買い手",
|
||||
"Completed in": "完了",
|
||||
"Contract exchange rate": "契約為替レート",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "互換性のあるウォレットを見る",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "注文をキャンセルしますか?",
|
||||
"Confirm Cancel": "キャンセルを確認",
|
||||
"If the order is cancelled now you will lose your bond.": "注文を今キャンセルすると担保金を失います。",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "キャンセルを受け入れる",
|
||||
"Ask for Cancel": "キャンセルを要求する",
|
||||
"Collaborative cancel the order?": "注文を共同キャンセルしますか?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "取引用エスクローが投稿されました。メーカーとテイカーが両方共同でキャンセルすることで注文をキャンセルできます。",
|
||||
"Your peer has asked for cancellation": "あなたの相手がキャンセルを要求しました",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "同意して紛争を開始する",
|
||||
"Disagree": "戻る",
|
||||
"Do you want to open a dispute?": "紛争を開始しますか?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "チャットログをエクスポートすることを確認してください。スタッフは、不一致を解決するためにエクスポートされたチャットログJSONを要求する場合があります。保存する責任があなたにあります。",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "RoboSatsスタッフは、提供された声明と証拠を調査します。スタッフはチャットを読めないため、完全な証拠を提供する必要があります。声明とともに使い捨ての連絡方法を提供するのが最善です。トレードのエスクローにあるSatsは、紛争の勝者に送られ、紛争の敗者は担保金を失います。",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "確認する",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "{{amount}} {{currencyCode}}を受け取ったことを確認しますか?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "{{amount}} {{currencyCode}}を受け取ったことを確認すると、取引が完了します。 エスクローにあるSatsが買い手に解放されます。 {{amount}} {{currencyCode}}があなたのアカウントに到着した後にのみ確認してください。 支払いを受け取った場合に確認しない場合、担保金を失うリスクがあることに注意してください。",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "{{amount}} {{currencyCode}} を送信したことを確認しますか?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "{{amount}} {{currencyCode}}を送信したことを確認することで、取引を最終的に完了することができます。まだ送信していない場合、偽の確認を続けると、担保金を失う可能性があります。",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Satsがまだロックされていません。WebLNウォレットを確認してください。",
|
||||
"Invoice not received, please check your WebLN wallet.": "インボイスが受信されていません。WebLNウォレットを確認してください。",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "WebLNウォレットのポップアップを閉じても良いです。",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "PGPを監査する",
|
||||
"Export": "エクスポート",
|
||||
"Save full log as a JSON file (messages and credentials)": "全ログをJSONファイルとして保存する(メッセージと資格情報)",
|
||||
"Verify your privacy": "プライバシーを確認する",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...待機中",
|
||||
"Activate slow mode (use it when the connection is slow)": "スローモードを有効にする(接続が遅い場合に使用)",
|
||||
"Peer": "相手",
|
||||
"You": "あなた",
|
||||
"connected": "接続されました",
|
||||
"disconnected": "切断されました",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "接続中...",
|
||||
"Send": "送信する",
|
||||
"Type a message": "メッセージを入力してください",
|
||||
"Waiting for peer public key...": "相手の公開鍵を待っています...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "チャットログを添付する",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "チャットログを添付することで紛争解決プロセスが促進され、透明性が高まります。ただし、プライバシーが危険にさらされる可能性があります。",
|
||||
"Submit dispute statement": "紛争申し立てを送信する",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "高度な設定",
|
||||
"Invoice to wrap": "ラップするインボイス",
|
||||
"Payout Lightning Invoice": "支払いのライトニングインボイス",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Lnproxyを使用する",
|
||||
"Wrap": "ラップする",
|
||||
"Wrapped invoice": "ラップされたインボイス",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "ビットコインアドレス",
|
||||
"Final amount you will receive": "あなたが受け取る最終金額",
|
||||
"Invalid": "無効",
|
||||
"Mining Fee": "マイニング手数料",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSatsコーディネーターがスワップを実行し、Satsをあなたのオンチェーンアドレスに送信します。",
|
||||
"Swap fee": "スワップ手数料",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "{{amount}} {{currencyCode}}が受信されたことを確認する",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "{{amount}} {{currencyCode}}が送信されたことを確認する",
|
||||
"Open Dispute": "紛争を開始する",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "こんにちはと言ってください!役に立つように簡潔にしてください。どのようにして{{amount}} {{currencyCode}}を送信するかを知らせてください。",
|
||||
"To open a dispute you need to wait": "紛争を開くには待つ必要があります",
|
||||
"Wait for the seller to confirm he has received the payment.": "売り手が支払いを受け取ったことを確認するまで待ちます。",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "注文と支払いを識別するために必要な情報を保存してください:注文ID、担保金またはエスクローの支払いハッシュ(ライトニングウォレットで確認してください)、正確なSatsの量、およびロボットのニックネーム。この取引に関与したユーザーとして自分自身をメール(または他の連絡方法)で識別する必要があります。",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "あなたはプロフィールの報酬から紛争解決金額(エスクローと担保金)を請求することができます。もしあなたに何かスタッフが助けられることがあれば、robosats@protonmail.com(または提供された使い捨て連絡先方法を通じて)までお気軽にお問い合わせください。",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "もうしばらくお待ちください。もし売り手がデポジットしない場合は、担保金が自動的に返金されます。さらに、報酬を受け取ることができます(プロフィールで報酬を確認してください)。",
|
||||
"We are waiting for the seller to lock the trade amount.": "売り手が取引金額をロックするまでお待ちください。",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "注文を更新する",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "クリップボードにコピーする",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "これは保留中のインボイスです。あなたのウォレットの中で凍結されます。キャンセルまたは紛争に敗訴した場合にのみ請求されます。",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "これは保留中のインボイスです。あなたのウォレットの中で凍結されます。{{currencyCode}}を受け取ったことを確認すると、買い手にリリースされます。",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "注文の再開",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "あなたの公開注文は一時停止されました。現時点では、他のロボットに見ることも取ることもできません。いつでも再開することができます。",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "{{amountFiat}} {{currencyCode}}を送信する前に、あなたがBTCを受け取ることができるかどうかを確認したいと思います。",
|
||||
"Lightning": "ライトニング",
|
||||
"Onchain": "オンチェーン",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "もうしばらくお待ちください。もし買い手が協力しない場合、取引担保と担保金が自動的に返金されます。さらに、報酬を受け取ることができます(プロフィールで報酬を確認してください)。",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "買い手がライトニングインボイスを投稿するのを待っています。投稿されたら、直接フィアット通貨決済の詳細を通知できます。",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "{{currencyCode}}の公開注文の中で(高い方が安い)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "オーダーが期限切れになっても取られない場合、あなたの担保金はあなたに戻ります(何も行動する必要はありません)。",
|
||||
"Pause the public order": "公開注文を一時停止する",
|
||||
"Premium rank": "プレミアムランク",
|
||||
"Public orders for {{currencyCode}}": "{{currencyCode}}の公開注文",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "失敗の原因:",
|
||||
"Next attempt in": "次の試行まで",
|
||||
"Retrying!": "再試行中!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSatsは1分の休憩を挟んでインボイスを3回支払おうとします。引き続き失敗する場合は、新しいインボイスを提出できます。十分な流動性があるかどうかを確認してください。ライトニングノードは、支払いを受け取るためにオンラインにする必要があることを忘れないでください。",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "インボイスの有効期限が切れているか、3回以上の支払い試行が行われました。新しいインボイスを提出してください。",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSatsはあなたのライトニングインボイスを支払おうとしています。支払いを受け取るには、ライトニングノードがオンラインである必要があることを忘れないでください。",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "更新する",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSatsはより多くの流動性とユーザーでより良くなります。ビットコイナーのお友達にRoboSatsについて話してください!",
|
||||
"Sending coins to": "コインを送信する先",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "ありがとうございます! RoboSatsもあなたを愛しています",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "あなたのTXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "テイカーが担保金をロックするまでお待ちください。タイムリミット内に担保金がロックされない場合、オーダーは再度公開されます。",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "ロボット技術者が到着しました!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "私は自分のロボットを持っています、ここにあります。(workspace.jsonをドラッグアンドドロップしてください)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "初めてここに来ました。新しいロボットガレージと拡張ロボットトークン(xToken)を生成します。",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "表示のカスタマイズ",
|
||||
"Freeze viewports": "表示を凍結",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "紛争中",
|
||||
"Collaboratively cancelled": "共同でキャンセルされました",
|
||||
"Sending satoshis to buyer": "買い手にSatsを送信しています",
|
||||
"Sucessful trade": "成功した取引",
|
||||
"Successful trade": "成功した取引",
|
||||
"Failed lightning network routing": "ライトニングネットワークのルーティングに失敗しました",
|
||||
"Wait for dispute resolution": "紛争の解決を待ってください",
|
||||
"Maker lost dispute": "オーダーメイカーが紛争に負けました",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connected to TOR network",
|
||||
"Connecting to TOR network": "Connecting to TOR network",
|
||||
"Connection error": "Connection error",
|
||||
"Initializing TOR daemon": "Initializing TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "KAŻDY",
|
||||
"Buy": "Kupić",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "i użyć",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pay with",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Add filter",
|
||||
"Amount": "Ilość",
|
||||
"An error occurred.": "An error occurred.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "starts with",
|
||||
"true": "true",
|
||||
"yes": "yes",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Blisko",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Szczegółowy opis rurociągu handlowego znajdziesz w ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Wróć",
|
||||
"Keys": "Keys",
|
||||
"Learn how to verify": "Learn how to verify",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.",
|
||||
"Your private key passphrase (keep secure!)": "Your private key passphrase (keep secure!)",
|
||||
"Your public key": "Your public key",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... gdzieś na Ziemi!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Wykonana z",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "i",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Społeczność",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Poinformuj nas o nowej funkcji lub błędzie",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Zakontraktowana objętość 24h",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Włączyć",
|
||||
"Enable TG Notifications": "Włącz powiadomienia TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Zostaniesz przeniesiony do rozmowy z botem telegramowym RoboSats. Po prostu otwórz czat i naciśnij Start. Pamiętaj, że włączenie powiadomień telegramów może obniżyć poziom anonimowości.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Z powrotem",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Generuj robota",
|
||||
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
|
||||
"You do not have a robot avatar": "You do not have a robot avatar",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Utwórz kopię zapasową!",
|
||||
"Done": "Done",
|
||||
"Store your robot token": "Store your robot token",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Download RoboSats {{coordinatorVersion}} APK from Github releases",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.",
|
||||
"Update your RoboSats client": "Update your RoboSats client",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats client is served from your own node granting you the strongest security and privacy.",
|
||||
"You are self-hosting RoboSats": "You are self-hosting RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Nie używasz Robosats prywatnie",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Od",
|
||||
"to": "do",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " o godz {{discount}}% zniżka",
|
||||
" at a {{premium}}% premium": " o godz {{premium}}% premia",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "You receive approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "You send approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"Your order fixed exchange rate": "Your order fixed exchange rate",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "New chat message",
|
||||
"Order chat is open": "Order chat is open",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Ilość {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Przyjmując to zamówienie, ryzykujesz zmarnowanie czasu. Jeśli twórca nie wywiąże się na czas, otrzymasz rekompensatę w satoshi za 50% kaucji producenta.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Wprowadź kwotę fiat do wymiany na bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Musisz najpierw określić kwotę",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Akceptowane metody płatności",
|
||||
"Amount of Satoshis": "Ilość Satoshis",
|
||||
"Deposit timer": "Deposit timer",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Premia: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Prawo",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Twoje obecne zamówienie",
|
||||
"Your last order #{{orderID}}": "Your last order #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Anulować",
|
||||
"Cancel order and unlock bond instantly": "Cancel order and unlock bond instantly",
|
||||
"Collaborative Cancel": "Wspólna Anuluj",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Poprosiłeś o wspólne anulowanie",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} prosi o anulowanie współpracy",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Kupujący",
|
||||
"Completed in": "Completed in",
|
||||
"Contract exchange rate": "Contract exchange rate",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "See Compatible Wallets",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Anulować zamówienie?",
|
||||
"Confirm Cancel": "Potwierdź Anuluj",
|
||||
"If the order is cancelled now you will lose your bond.": "Jeśli zamówienie zostanie teraz anulowane, stracisz kaucję.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "Poproś o anulowanie",
|
||||
"Collaborative cancel the order?": "Wspólnie anulować zamówienie?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Depozyt transakcji został wysłany. Zamówienie można anulować tylko wtedy, gdy zarówno producent, jak i przyjmujący wyrażą zgodę na anulowanie.",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Zgadzam się i otwieram spór",
|
||||
"Disagree": "Nie zgadzać się",
|
||||
"Do you want to open a dispute?": "Chcesz otworzyć spór?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Pracownicy RoboSats przeanalizują przedstawione oświadczenia i dowody. Musisz zbudować kompletną sprawę, ponieważ personel nie może czytać czatu. W oświadczeniu najlepiej podać metodę kontaktu z palnikiem. Satoshi w depozycie handlowym zostaną wysłane do zwycięzcy sporu, podczas gdy przegrany sporu straci obligację.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Potwierdzać",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Potwierdź otrzymanie {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Invoice not received, please check your WebLN wallet.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Audit PGP",
|
||||
"Export": "Export",
|
||||
"Save full log as a JSON file (messages and credentials)": "Save full log as a JSON file (messages and credentials)",
|
||||
"Verify your privacy": "Verify your privacy",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "Par",
|
||||
"You": "Ty",
|
||||
"connected": "połączony",
|
||||
"disconnected": "niepowiązany",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Złączony...",
|
||||
"Send": "Wysłać",
|
||||
"Type a message": "Wpisz wiadomość",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "Prześlij oświadczenie o sporze",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Advanced options",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Wypłata faktura Lightning",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin Address",
|
||||
"Final amount you will receive": "Final amount you will receive",
|
||||
"Invalid": "Nieważny",
|
||||
"Mining Fee": "Mining Fee",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "Swap fee",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Potwierdź otrzymanie {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Potwierdź wysłanie {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "Otwarta dyskusja",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Powiedz cześć! Bądź pomocny i zwięzły. Poinformuj ich, jak wysłać Ci {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "Poczekaj, aż sprzedawca potwierdzi, że otrzymał płatność.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Prosimy o zapisanie informacji potrzebnych do identyfikacji zamówienia i płatności: identyfikator zamówienia; skróty płatności obligacji lub escrow (sprawdź w swoim portfelu błyskawicy); dokładna ilość satoshi; i pseudonim robota. Będziesz musiał zidentyfikować się jako użytkownik zaangażowany w ten handel za pośrednictwem poczty elektronicznej (lub innych metod kontaktu).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Możesz ubiegać się o kwotę rozstrzygnięcia sporu (depozyt i wierność) z nagród w swoim profilu. Jeśli jest coś, w czym personel może pomóc, nie wahaj się skontaktować się z robosats@protonmail.com (lub za pomocą dostarczonej metody kontaktu z palnikiem).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Poczekaj chwilę. Jeśli sprzedający nie dokona depozytu, automatycznie otrzymasz zwrot kaucji. Dodatkowo otrzymasz rekompensatę (sprawdź nagrody w swoim profilu).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Czekamy, aż sprzedający zablokuje kwotę transakcji.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Renew Order",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Skopiuj do schowka",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "To jest faktura wstrzymana, zatrzyma się w Twoim portfelu. Opłata zostanie naliczona tylko wtedy, gdy anulujesz lub przegrasz spór.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "To jest faktura wstrzymana, zatrzyma się w Twoim portfelu. Zostanie on przekazany kupującemu po potwierdzeniu otrzymania {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Unpause Order",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Czekamy, aż kupujący wyśle fakturę za błyskawicę. Gdy to zrobi, będziesz mógł bezpośrednio przekazać szczegóły płatności.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Wśród publicznych zamówień {{currencyCode}} (wyższy jest tańszy)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Jeśli zamówienie wygaśnie i nie zostanie zrealizowane, Twoja kaucja zostanie Ci zwrócona (nie musisz nic robić).",
|
||||
"Pause the public order": "Pause the public order",
|
||||
"Premium rank": "Ranga premium",
|
||||
"Public orders for {{currencyCode}}": "Zamówienia publiczne dla {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Failure reason:",
|
||||
"Next attempt in": "Następna próba za",
|
||||
"Retrying!": "Ponawianie!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats będzie próbował zapłacić fakturę 3 razy co 1 minut. Jeśli to się nie powiedzie, będziesz mógł wystawić nową fakturę. Sprawdź, czy masz wystarczającą płynność przychodzącą. Pamiętaj, że węzły pioruna muszą być online, aby otrzymywać płatności.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats próbuje zapłacić fakturę za błyskawicę. Pamiętaj, że węzły pioruna muszą być online, aby otrzymywać płatności.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats staje się lepszy dzięki większej płynności i użytkownikom. Powiedz znajomemu bitcoinerowi o Robosats!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Thank you! RoboSats loves you too",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Your TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Poczekaj, aż przyjmujący zablokuje obligację. Jeśli przyjmujący nie zablokuje obligacji na czas, zlecenie zostanie ponownie upublicznione.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Entropia insuficiente, torne-a mais complexa",
|
||||
"The token is too short": "O token é muito curto",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Isso garante privacidade máxima, entretanto, você pode sentir que o aplicativo fique lento. Se a conexão for perdida, reinicie-o.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Conectado à rede TOR",
|
||||
"Connecting to TOR network": "Conectando à rede TOR",
|
||||
"Connection error": "Erro de conexão",
|
||||
"Initializing TOR daemon": "Inicializando o daemon TOR",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "QUALQUER",
|
||||
"Buy": "Comprar",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "e utilizar",
|
||||
"hosted by": "hospedado por",
|
||||
"pay with": "pagar com",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Adicionar filtro",
|
||||
"Amount": "Quantidade",
|
||||
"An error occurred.": "Ocorreu um erro.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "starts with",
|
||||
"true": "true",
|
||||
"yes": "yes",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Fechar",
|
||||
"Download high resolution map?": "Baixar mapa em alta resolução?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". os desenvolvedores do RoboSats nunca entrarão em contato com você. Os desenvolvedores ou os coordenadores definitivamente nunca pedirão seu token de robô.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Você pode encontrar uma descrição passo a passo do pipeline comercial em ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Voltar",
|
||||
"Keys": "Chaves",
|
||||
"Learn how to verify": "Saiba como verificar",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Sua chave pública PGP de mesmo nível. Você o usa para criptografar mensagens que só ele pode ler e para verificar se seu par assinou as mensagens recebidas.",
|
||||
"Your private key passphrase (keep secure!)": "Sua senha de chave privada (mantenha a segurança!)",
|
||||
"Your public key": "Sua chave pública",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... alguém na terra!",
|
||||
"Client info": "Informações do cliente",
|
||||
"Made with": "Feito com",
|
||||
"RoboSats client version": "Versão do cliente RoboSats",
|
||||
"and": "e",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Comunidade",
|
||||
"Follow RoboSats in Nostr": "Siga RoboSats no Nostr",
|
||||
"Follow RoboSats in X": "Sigam RoboSats no X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Conte-nos sobre um novo recurso ou um bug",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Volume contratado em 24h",
|
||||
"24h non-KYC bitcoin premium": "Prêmio de bitcoin sem KYC em 24h",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Ativar",
|
||||
"Enable TG Notifications": "Habilitar notificações do TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Você será levado a uma conversa com o bot do Telegram RoboSats. Basta abrir o bate-papo e pressionar Iniciar. Observe que, ao ativar as notificações de Telegram, você pode diminuir seu nível de anonimato.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Voltar",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Você está prestes a visitar o \"Learn RoboSats\"(Aprender sobre o RoboSats). Ele hospeda tutoriais e documentação para ajudá-lo a aprender como usar o RoboSats e entender como funciona.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Gerar robô",
|
||||
"Generate a robot avatar first. Then create your own order.": "Gerar um avatar de robô primeiro. Em seguida, crie sua própria ordem.",
|
||||
"You do not have a robot avatar": "Você não tem um avatar de robô",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Procurando pelo seu robô!",
|
||||
"Your Robot": "Seu Robô",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Apóia-la!",
|
||||
"Done": "Feito",
|
||||
"Store your robot token": "Armazene seu token de robô",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Você pode precisar recuperar seu avatar de robô no futuro: armazene-o com segurança. Você pode simplesmente copiá-lo em outra aplicação.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Download RoboSats {{coordinatorVersion}} APK from Github releases",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.",
|
||||
"Update your RoboSats client": "Update your RoboSats client",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats client is served from your own node granting you the strongest security and privacy.",
|
||||
"You are self-hosting RoboSats": "You are self-hosting RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Você não está utilizando o RoboSats de forma privada",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "De",
|
||||
"to": "Para",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " com um desconto de {{discount}}%",
|
||||
" at a {{premium}}% premium": " com um prêmio de {{premium}}%",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "Você recebe aprox {{swapSats}} LN Sats (as taxas podem variar)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "Você envia aprox {{swapSats}} LN Sats (as taxas podem variar)",
|
||||
"Your order fixed exchange rate": "Taxa de câmbio fixa do seu pedido",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "Nova mensagem de chat",
|
||||
"Order chat is open": "Ordem de chat está aberta",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Quantidade {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Ao aceitar esta ordem, você corre o risco de perder seu tempo. Se o criador não proceder a tempo, você será compensado em satoshis por 50% do título do criador.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Insira o valor da moeda fiduciária para trocar por bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Você deve especificar um valor primeiro",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Métodos de pagamento aceitos",
|
||||
"Amount of Satoshis": "Quantidade de Satoshis",
|
||||
"Deposit timer": "Temporizador de depósito",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Prêmio: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Reinvindicar",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Sua ordem atual",
|
||||
"Your last order #{{orderID}}": "Sua última ordem #{{orderID}}",
|
||||
"finished order": "ordem finalizada",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Cancelar",
|
||||
"Cancel order and unlock bond instantly": "Cancelar ordem e desbloquear vínculo instantaneamente",
|
||||
"Collaborative Cancel": "Cancelamento colaborativo",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Você solicitou um cancelamento colaborativo",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} está pedindo um cancelamento colaborativo",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Comprador",
|
||||
"Completed in": "Concluído em",
|
||||
"Contract exchange rate": "Contract exchange rate",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Ver Carteiras Compatíveis",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Cancelar a ordem?",
|
||||
"Confirm Cancel": "Confirmar cancelamento",
|
||||
"If the order is cancelled now you will lose your bond.": "Se a ordem for cancelada agora, você perderá seu vínculo.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "Pedir para cancelar",
|
||||
"Collaborative cancel the order?": "Cancelar o pedido colaborativamente?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "O caução comercial foi postado. O pedido só pode ser cancelado se ambos, criador e tomador, concordarem em cancelar.",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Concordar e abrir disputa",
|
||||
"Disagree": "Discordar",
|
||||
"Do you want to open a dispute?": "Quer abrir uma disputa?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Certifique-se de EXPORTAR o log de bate-papo. A equipe pode solicitar seu JSON de log de bate-papo exportado para resolver discrepâncias. É sua responsabilidade armazená-lo.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "A equipe do RoboSats examinará as declarações e evidências fornecidas. Você precisa construir um caso completo, pois a equipe não pode ler o chat. É melhor fornecer um método de contato do queimador com sua declaração. Os satoshis no depósito de garantia serão enviados ao vencedor da disputa, enquanto o perdedor da disputa perderá o vínculo.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "confirmar",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Confirme que você recebeu {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Invoice not received, please check your WebLN wallet.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Auditar PGP",
|
||||
"Export": "Exportar",
|
||||
"Save full log as a JSON file (messages and credentials)": "Salvar log completo como um arquivo JSON (mensagens e credenciais)",
|
||||
"Verify your privacy": "Verifique sua privacidade",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "Par",
|
||||
"You": "Você",
|
||||
"connected": "conectado",
|
||||
"disconnected": "desconectado",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Conectando...",
|
||||
"Send": "Enviar",
|
||||
"Type a message": "Escreva a mensagem",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "Enviar declaração de disputa",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Opções avançadas",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Pagamento Lightning Invoice",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Endereço Bitcoin",
|
||||
"Final amount you will receive": "Valor final que você receberá",
|
||||
"Invalid": "Inválido",
|
||||
"Mining Fee": "Taxa de mineração",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "Taxa de negociação",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Confirmar que recebeu {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Confirmar o envio de {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "Abrir disputa",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Diga oi! Seja útil e conciso. Deixe-os saber como enviar {{amount}} {{currencyCode}} para você.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "Aguarde o vendedor confirmar que recebeu o pagamento.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Por favor, salve as informações necessárias para identificar seu pedido e seus pagamentos: ID do pedido; hashes de pagamento dos títulos ou caução (verifique sua carteira relâmpago); quantidade exata de satoshis; e apelido de robô. Você terá que se identificar como o usuário envolvido nesta negociação por e-mail (ou outros métodos de contato).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Você pode reivindicar o valor da resolução de disputas (caução e fiança) das recompensas do seu perfil. Se houver algo que a equipe possa ajudar, não hesite em entrar em contato com robosats@protonmail.com (ou através do método de contato fornecido pelo gravador).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Apenas espere um momento. Se o vendedor não depositar, você receberá seu título de volta automaticamente. Além disso, você receberá uma compensação (verifique as recompensas em seu perfil).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Estamos aguardando o vendedor bloquear o valor da negociação.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Renovar pedido",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Copiar para área de transferência",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Esta é uma invoice de espera, ela será congelada em sua carteira. Será cobrado apenas se você cancelar ou perder uma disputa.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Esta é uma invoice de espera, ela será congelada em sua carteira. Ele será liberado para o comprador assim que você confirmar o recebimento do {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Retomar pedido",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Seu pedido público foi pausado. No momento não pode ser visto ou tomado por outros robôs. Você pode optar por retomá-lo a qualquer momento.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Antes de permitir que você envie {{amountFiat}} {{currencyCode}}, queremos ter certeza de que você pode receber o BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Apenas espere um momento. Se o comprador não cooperar, você receberá de volta a garantia comercial e seu título automaticamente. Além disso, você receberá uma compensação (verifique as recompensas em seu perfil).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Estamos aguardando o comprador postar uma lightning invoice. Uma vez que ele o faça, você poderá comunicar diretamente os detalhes do pagamento.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Entre ordens públicas {{currencyCode}} (mais alto é mais barato)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Se o pedido expirar sem ser realizado, seu título retornará a você (sem necessidade de ação).",
|
||||
"Pause the public order": "Pausar a ordem pública",
|
||||
"Premium rank": "Rank de prêmio",
|
||||
"Public orders for {{currencyCode}}": "Ordens públicas para {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Motivo da falha:",
|
||||
"Next attempt in": "Próxima tentativa em",
|
||||
"Retrying!": "Tentando novamente!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "O RoboSats tentará pagar sua invoice 3 vezes com uma pausa de um minuto entre elas. Se continuar falhando, você poderá enviar uma nova fatura. Verifique se você tem liquidez de entrada suficiente. Lembre-se de que os nós lightning devem estar online para receber pagamentos.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Sua invoice expirou ou foram feitas mais de 3 tentativas de pagamento. Envie uma nova invoice.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats está tentando pagar sua lightning invoice. Lembre-se de que os nós lightning devem estar online para receber pagamentos.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats fica melhor com mais liquidez e usuários. Conte a um amigo bitcoiner sobre Robosats!",
|
||||
"Sending coins to": "Enviando moedas para",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Obriagdo! RoboSats também te ama",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Sua TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Por favor, espere que o tomador bloqueie uma fiança. Se o tomador não fechar um vínculo a tempo, a ordem será tornada pública novamente.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Недостаточно энтропии, усложните",
|
||||
"The token is too short": "Токен слишком короткий",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Это обеспечивает максимальную конфиденциальность, однако вы можете почувствовать, что приложение работает медленно. Если соединение потеряно, перезапустите приложение.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Подключено к сети TOR",
|
||||
"Connecting to TOR network": "Подключение к сети TOR",
|
||||
"Connection error": "Ошибка подключения",
|
||||
"Initializing TOR daemon": "Инициализация TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "Любой",
|
||||
"Buy": "Купить",
|
||||
"DESTINATION": "МЕСТО НАЗНАЧЕНИЯ",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "и использовать",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "оплатить",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Добавить фильтр",
|
||||
"Amount": "Сумма",
|
||||
"An error occurred.": "Произошла ошибка.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "начинается с",
|
||||
"true": "верный",
|
||||
"yes": "да",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Принять",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "Поступая таким образом вы будете получать фрагменты карты от стороннего поставщика. В зависимости от ваших настроек личная информация может попасть на серверы за пределами федерации RoboSats.",
|
||||
"Close": "Закрыть",
|
||||
"Download high resolution map?": "Загрузить карту в высоком разрешении?",
|
||||
"Show tiles": "Показать карту",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Вы можете найти пошаговое описание этапов сделки в ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Вернуться",
|
||||
"Keys": "Ключи",
|
||||
"Learn how to verify": "Узнайте, как проверить",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Публичный ключ PGP Вашего партнёра. Вы используете его для шифрования сообщений, которые может читать только он, и для проверки того, что Ваш партнёр подписал входящие сообщения.",
|
||||
"Your private key passphrase (keep secure!)": "Парольная фраза Вашего приватного ключа (храните в безопасности!)",
|
||||
"Your public key": "Ваш публичный ключ",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... где-то на земле!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Сделано с",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "и",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Сообщество",
|
||||
"Follow RoboSats in Nostr": "Подпиcаться на RoboSats в Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Расскажите нам о новой функции или ошибке",
|
||||
"We are abandoning Telegram! Our old TG groups": "Мы отказываемся от Telegram! Наши старые группы ТГ",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Объём контрактов за 24 часа",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Браузер",
|
||||
"Enable": "Включить",
|
||||
"Enable TG Notifications": "Включить уведомления TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Вы перейдёте к разговору с Telegram ботом RoboSats. Просто откройте чат и нажмите Старт. Обратите внимание, что включив уведомления Telegram, Вы можете снизить уровень анонимности.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Выберите местоположение",
|
||||
"Save": "Сохранить",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Назад",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Вы собираетесь посетить Learn RoboSats. На нём размещены учебные пособия и документация, которые помогут Вам научиться использовать RoboSats и понять, как он работает.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Создать Робота",
|
||||
"Generate a robot avatar first. Then create your own order.": "Сначала создайте аватар робота. Затем создайте свой ордер.",
|
||||
"You do not have a robot avatar": "У Вас нет аватара робота",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Ваш Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Сохраните его!",
|
||||
"Done": "Готово",
|
||||
"Store your robot token": "Сохранить токен робота",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "В будущем Вам может понадобиться восстановить аватар робота: сохраните его в безопасном месте. Вы можете просто скопировать его в другое приложение.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Скачать RoboSats {{coordinatorVersion}} APK из Github releases",
|
||||
"Go away!": "Уходите!",
|
||||
"On Android RoboSats app ": "На Android RoboSats апликации ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "На вашем собственном суверенном ноде",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "Версия координатора RoboSats {{coordinatorVersion}}, но ваше клиентское приложение — {{clientVersion}}. Это несоответствие версий может привести к ухудшению пользовательского опыта.",
|
||||
"Update your RoboSats client": "Обновите свой клиент RoboSats",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "Клиент RoboSats обслуживается с вашего собственного нода, что обеспечивает максимальную безопасность и конфиденциальность.",
|
||||
"You are self-hosting RoboSats": "Вы самостоятельно размещаете RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Вы не используете RoboSats приватно",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "От",
|
||||
"to": "до",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " со скидкой {{discount}}%",
|
||||
" at a {{premium}}% premium": " с наценкой {{premium}}%",
|
||||
" at market price": " по рыночной цене",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "Вы получаете примерно {{swapSats}} LN Sats (комиссия может различаться)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "Вы отправляете примерно {{swapSats}} спутников LN (комиссия может различаться)",
|
||||
"Your order fixed exchange rate": "Фиксированный курс обмена Вашего ордера",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Маршрутизация Lightning не удалась",
|
||||
"New chat message": "Новое сообщение в чате",
|
||||
"Order chat is open": "Чат ордера открыт",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Истёк!",
|
||||
"🙌 Funished!": "🙌 Запершён!",
|
||||
"🥳 Taken!": "🥳 Взят!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Сумма {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Взяв этот ордер, Вы рискуете потратить своё время впустую. Если мейкер не появится вовремя, Вы получите компенсацию в Сатоши в размере 50% от залога мейкера",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Введите количество фиата для обмена на Биткойн",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Сначала необходимо указать сумму",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "Вы получите {{satoshis}} Сатоши (приблизительно)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "Вы отправите {{satoshis}} Сатоши (приблизительно)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Способ(ы) оплаты",
|
||||
"Amount of Satoshis": "Количество Сатоши",
|
||||
"Deposit timer": "Таймер депозита",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "Вы отправляете через Lightning {{amount}} Сатоши (приблизительно)",
|
||||
"You send via {{method}} {{amount}}": "Вы отправляете через {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Наценка: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Запросить",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Ваш текущий ордер",
|
||||
"Your last order #{{orderID}}": "Ваш последний ордер #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Темный",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Основная сеть",
|
||||
"Swaps": "Обмен",
|
||||
"Testnet": "Тестовая сеть",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Отменить",
|
||||
"Cancel order and unlock bond instantly": "Отменить ордер и мгновенно разблокировать залог",
|
||||
"Collaborative Cancel": "Совместная отмена",
|
||||
"Unilateral cancelation (bond at risk!)": "Одностороннее аннулирование (залог под угрозой!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Вы запросили совместную отмену",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} запрашивает совместную отмену",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Покупатель",
|
||||
"Completed in": "Завершено за",
|
||||
"Contract exchange rate": "Курс обмена контракта",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} МилиСатоши",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Сатоши ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Сатоши ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Смотреть Совместимые Кошельки",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Отменить ордер?",
|
||||
"Confirm Cancel": "Подтвердить отмену",
|
||||
"If the order is cancelled now you will lose your bond.": "Если ордер будет отменён сейчас, Вы потеряете залог.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Принять отмену",
|
||||
"Ask for Cancel": "Запросить отмену",
|
||||
"Collaborative cancel the order?": "Совместно отменить ордер?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Эскроу сделки был опубликован. Ордер может быть отменен только в том случае, если оба, мейкер и тейкер, согласны на отмену.",
|
||||
"Your peer has asked for cancellation": "Ваш партнёр запросил отмену",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Согласиться и открыть диспут",
|
||||
"Disagree": "Не согласиться",
|
||||
"Do you want to open a dispute?": "Хотите ли Вы открыть диспут?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Обязательно ЭКСПОРТИРУЙТЕ журнал чата. Персонал может запросить Ваш экспортированный журнал чата в формате JSON для устранения несоответствий. Вы несёте ответственность за его сохранение.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Персонал RoboSats рассмотрит предоставленные заявления и доказательства. Вам необходимо построить полное дело, так как сотрудники не могут читать чат. Лучше всего указать одноразовый метод контакта вместе с Вашим заявлением. Сатоши в эскроу сделки будут отправлены победителю диспута, а проигравший в диспуте потеряет залог.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Подтвердить",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Подтвердить получение {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Подтвердив, что вы получили {{amount}} {{currencyCode}}, сделка будет завершена. Сатоши на эскроу будут переданы покупателю. Подтверждайте только после того, как {{amount}} {{currencyCode}} поступит на ваш счёт. Обратите внимание: если вы получили платеж и не нажали «Подтвердить», вы рискуете потерять залог.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Подтвердите, что отправили {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Подтверждение того, что вы отправили {{amount}} {{currencyCode}}, позволит вашему партнеру завершить сделку. Если вы ещё не отправили его и все равно продолжите ложное подтверждение, вы рискуете потерять залог.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "ЧИТАЙТЕ. В случае, если ваш платёж продавцу заблокирован и завершить сделку абсолютно невозможно, вы можете отменить подтверждение \"Fiat sent\". Делайте это только в том случае, если вы и продавец УЖЕ ДОГОВОРИЛИСЬ в чате о совместной отмене. После подтверждения кнопка \"Collaborative cancel\" снова станет видна. Нажимайте эту кнопку только в том случае, если вы знаете, что делаете. Пользователям впервые использующим RoboSats, крайне не рекомендуется выполнять это действие! Убедитесь на 100 %, что ваш платёж не прошел и сумма поступила на ваш счет.",
|
||||
"Revert the confirmation of fiat sent?": "Отменить подтверждение отправленного распоряжения?",
|
||||
"Wait ({{time}})": "Ждать ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Сумма еще не заблокирована, проверьте свой кошелёк WebLN.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Платёж не получен. Пожалуйста, проверьте Ваш WebLN кошелёк.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "Вы можете закрыть всплывающее окно WebLN Кошелька",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Аудит PGP",
|
||||
"Export": "Экспортировать",
|
||||
"Save full log as a JSON file (messages and credentials)": "Сохранить все логи в виде JSON файла (сообщения и учётные данные)",
|
||||
"Verify your privacy": "Проверьте свою конфиденциальность",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...ожидание",
|
||||
"Activate slow mode (use it when the connection is slow)": "Активировать медленный режим (используйте его, когда соединение медленное)",
|
||||
"Peer": "Партнёр",
|
||||
"You": "Вы",
|
||||
"connected": "подключен",
|
||||
"disconnected": "отключен",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Подключаем...",
|
||||
"Send": "Отправить",
|
||||
"Type a message": "Введите сообщение",
|
||||
"Waiting for peer public key...": "Ожидание публичного ключа партнёра...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Прикрепите журналы чата",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Прикрепление журналов чата помогает процессу разрешения споров и повышает прозрачность. Однако это может поставить под угрозу вашу конфиденциальность.",
|
||||
"Submit dispute statement": "Отправить заявление о диспуте",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Расширенные настройки",
|
||||
"Invoice to wrap": "Обернуть инвойс",
|
||||
"Payout Lightning Invoice": "Счет на выплату Лайтнинг",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Использовать Lnproxy",
|
||||
"Wrap": "Обернуть",
|
||||
"Wrapped invoice": "Обернутый инвойс",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Биткойн Адрес",
|
||||
"Final amount you will receive": "Окончательная сумма, которую Вы получите",
|
||||
"Invalid": "Неверно",
|
||||
"Mining Fee": "Комиссия Майнерам",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "Координатор RoboSats выполнит своп и отправит Сатоши на ваш ончейн адрес.",
|
||||
"Swap fee": "Комиссия за обмен",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Подтвердить получение {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Подтвердить отправку {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "Открыть диспут",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Скажите привет! Будьте доброжелательны и кратки. Сообщите, как отправить Вам {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "Чтобы открыть диспут нужно подождать",
|
||||
"Wait for the seller to confirm he has received the payment.": "Подождите, пока продавец подтвердит, что он получил платёж.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Пожалуйста, сохраните информацию, необходимую для идентификации Вашего ордера и Ваших платежей: ID ордера, хэши платежей залога или эскроу (проверьте свой кошелек Lightning), точную сумму Сатоши и псевдоним робота. Вам нужно будет идентифицировать себя как пользователя участвующего в этой сделке по электронной почте (или другим способом связи).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Вы можете запросить сумму разрешения диспута (эскроу и залог) из вознаграждений Вашего профиля. Если есть что-то, с чем персонал может Вам помочь, не стесняйтесь обращаться по адресу robosats@protonmail.com (или через предоставленный Вами одноразовый способ связи).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Просто немного подождите. Если продавец не внесёт депозит, залог вернётся к Вам автоматически. Кроме того, Вы получите компенсацию (проверьте вознаграждения в своем профиле)",
|
||||
"We are waiting for the seller to lock the trade amount.": " Мы ждём, пока продавец заблокирует сумму сделки.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Обновить ордер",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Скопировать",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Этот инвойс заблокируется в Вашем кошельке. Он будет списан только в том случае, если Вы отмените сделку или проиграете диспут.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Этот инвойс заблокируется в Вашем кошельке. Он будет передан покупателю, как только Вы подтвердите получение {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Запустить ордер",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Ваш публичный ордер приостановлен. В данный момент его не могут увидеть или принять другие роботы. Вы можете запустить его в любое время.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Прежде чем позволить Вам отправить {{amountFiat}} {{currencyCode}}, мы хотим убедиться, что Вы можете получить BTC.",
|
||||
"Lightning": "Лайтнинг",
|
||||
"Onchain": "Ончейн",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Просто немного подождите. Если покупатель не будет сотрудничать, Вы автоматически вернёте свой депозит и залог. Кроме того, Вы получите компенсацию (проверьте вознаграждение в своем профиле).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Мы ждём, пока покупатель разместит Lightning инвойс. Как только он это сделает, Вы сможете напрямую сообщить реквизиты фиатного платежа.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Среди публичных {{currencyCode}} ордеров (чем выше, тем дешевле)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Если Ваш ордер не будет принят и срок его действия истечёт, Ваша залог вернётся к Вам (никаких действий не требуется).",
|
||||
"Pause the public order": "Приостановить публичный ордер",
|
||||
"Premium rank": "Ранг наценки",
|
||||
"Public orders for {{currencyCode}}": "Публичные ордера {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Причина неудачи:",
|
||||
"Next attempt in": "Следующая попытка через",
|
||||
"Retrying!": "Повторная попытка!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats будет пытаться оплатить Ваш инвойс 3и раза каждые 1ть минут. Если это не удастся, Вы сможете отправить новый инвойс. Проверьте, достаточно ли у Вас входящей ликвидности. Помните, что ноды Lightning должны быть подключены к сети, чтобы получать платежи.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Срок действия Вашего инвойса истёк или было сделано более трёх попыток оплаты. Отправьте новый инвойс.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats пытается оплатить Ваш Lightning инвойс. Помните, что ноды Lightning должны быть подключены к сети, чтобы получать платежи.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats становится лучше с большей ликвидностью и пользователями. Расскажите другу-биткойнеру о Robosat!",
|
||||
"Sending coins to": "Отправка монет на",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Спасибо! RoboSats тоже Вас любит",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Ваш TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Пожалуйста, подождите, пока тейкер заблокирует залог. Если тейкер не заблокирует залог вовремя, ордер будет снова опубликован",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "Прибыл робот-техник!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "Я привожу своих роботов, вот они. (Перетащите workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "Я здесь впервые. Создайте новый гараж роботов и расширенный токен робота (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Настройка видовых экранов",
|
||||
"Freeze viewports": "Заморозить видовые экраны",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "В диспуте",
|
||||
"Collaboratively cancelled": "Совместно отменено",
|
||||
"Sending satoshis to buyer": "Отправка Сатоши покупателю",
|
||||
"Sucessful trade": "Успешная торговля",
|
||||
"Successful trade": "Успешная торговля",
|
||||
"Failed lightning network routing": "Неудачная маршрутизация сети Lightning",
|
||||
"Wait for dispute resolution": "Дождитесь разрешения диспута",
|
||||
"Maker lost dispute": "Мейкер проиграл диспут",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connected to TOR network",
|
||||
"Connecting to TOR network": "Connecting to TOR network",
|
||||
"Connection error": "Connection error",
|
||||
"Initializing TOR daemon": "Initializing TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "ALLA",
|
||||
"Buy": "Köpa",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "och använda",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pay with",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Add filter",
|
||||
"Amount": "Summa",
|
||||
"An error occurred.": "An error occurred.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "starts with",
|
||||
"true": "true",
|
||||
"yes": "yes",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Stäng",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Du kan hitta en steg-för-steg-beskrivning på hela transaktionsförfarandet här: ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Gå tillbaka",
|
||||
"Keys": "Nycklar",
|
||||
"Learn how to verify": "Lär dig hur man verifierar",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Din peers publika PGP-nyckel. Du använder den för att kryptera meddelanden som endast hen kan läsa, och för att verifiera inkommande meddelanden.",
|
||||
"Your private key passphrase (keep secure!)": "Lösenordet till din privata nyckel (förvara säkert!)",
|
||||
"Your public key": "Din publika nyckel",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... någonstans på jorden!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Skapad med",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "och",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Community",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Tipsa om en bugg eller ny funktion",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24h kontrakterad volym",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "Aktivera",
|
||||
"Enable TG Notifications": "Aktivera TG-notifikationer",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Du kommer att skickas till en konversation med RoboSats Telegram-bot. Öppna chatten och tryck Start. Notera att genom att aktivera Telegram-notiser så försämrar du möjligen din anonymitet.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Tillbaka",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Du är på på väg att besöka Learn RoboSats. Där finns guider och dokumentation som hjälper dig att använda RoboSats och förstå hur det fungerar.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Generera Robot",
|
||||
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
|
||||
"You do not have a robot avatar": "Du har ingen robotavatar",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Spara den!",
|
||||
"Done": "Klar",
|
||||
"Store your robot token": "Spara din robottoken",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Du kan behöva återställa din robotavatar i framtiden; förvara den säkert. Du kan kopiera den till en annan applikation.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Download RoboSats {{coordinatorVersion}} APK from Github releases",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.",
|
||||
"Update your RoboSats client": "Update your RoboSats client",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats client is served from your own node granting you the strongest security and privacy.",
|
||||
"You are self-hosting RoboSats": "You are self-hosting RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Du använder inte RoboSats anonymt",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Från",
|
||||
"to": "till",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " med en rabatt på {{discount}}%",
|
||||
" at a {{premium}}% premium": " med en premium på {{premium}}%",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "You receive approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "You send approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"Your order fixed exchange rate": "Din orders fasta växelkurs",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "New chat message",
|
||||
"Order chat is open": "Order chat is open",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Summa {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Genom att ta denna order riskerar du att slösa din tid. Om makern inte går vidare i tid kommer du att kompenseras i sats med 50% av makerobligationen",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Ange summa fiat att handla bitcoin för",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Du måste ange en summa först",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Accepterade betalningsmetoder",
|
||||
"Amount of Satoshis": "Summa sats",
|
||||
"Deposit timer": "Insättningstimer",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Claim",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Din aktuella order",
|
||||
"Your last order #{{orderID}}": "Din senaste order #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Makulera",
|
||||
"Cancel order and unlock bond instantly": "Cancel order and unlock bond instantly",
|
||||
"Collaborative Cancel": "Makulera kollaborativt",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Du bad om att kollaborativt avsluta ordern",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} ber om att kollaborativt avsluta ordern",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Köpare",
|
||||
"Completed in": "Completed in",
|
||||
"Contract exchange rate": "Contract exchange rate",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Se kompatibla wallets",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Makulera ordern?",
|
||||
"Confirm Cancel": "Bekräfta makulering",
|
||||
"If the order is cancelled now you will lose your bond.": "Om du avbryter ordern nu kommer du att förlora din obligation",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "Be om makulering",
|
||||
"Collaborative cancel the order?": "Makulera ordern kollaborativt?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Depositionen har satts in. Ordern kan endast avbrytas om båda parterna går med på det.",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Acceptera och öppna dispyt",
|
||||
"Disagree": "Acceptera ej",
|
||||
"Do you want to open a dispute?": "Vill du öppna en dispyt?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Kom ihåg att exportera chattloggen. Personalen kan komma att begära din exporterade chatttlogg i JSON-format för att kunna lösa diskrepanser. Det är ditt ansvar att lagra den.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Personalen på RoboSats kommer att utvärdera de redogörelser och bevis som läggs fram. Du behöver bygga ett komplett fall eftersom personalen inte kan läsa chatten. Det är bäst att dela en tillfällig kontaktmetod tillsammans med din redogörelse. Depositionen av sats kommer att skickas till vinnaren av dispyten, medan förloraren förlorar obligationen.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Bekräfta",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Bekräfta att du mottagit {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Invoice not received, please check your WebLN wallet.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Granska PGP",
|
||||
"Export": "Exportera",
|
||||
"Save full log as a JSON file (messages and credentials)": "Spara hela loggen som en JSON-fil (meddelanden och uppgifter)",
|
||||
"Verify your privacy": "Verifiera din integritet",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "Peer",
|
||||
"You": "Du",
|
||||
"connected": "ansluten",
|
||||
"disconnected": "ej ansluten",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Ansluter...",
|
||||
"Send": "Skicka",
|
||||
"Type a message": "Skriv ett meddelande",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "Skicka dispytredogörelse",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Advanced options",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Lightning-faktura för utbetalning",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin-adress",
|
||||
"Final amount you will receive": "Slutgiltig belopp som du kommer att mottaga",
|
||||
"Invalid": "Ogiltig",
|
||||
"Mining Fee": "Miningavgift",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "Swap-avgift",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Bekräfta {{amount}} {{currencyCode}} mottaget",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Bekräfta {{amount}} {{currencyCode}} skickat",
|
||||
"Open Dispute": "Öppna dispyt",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Säg hej! Var hjälpsam och koncis. Förklara hur hen kan skicka {{amount}} {{currencyCode}} till dig.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "Vänta på att säljaren ska bekräfta att den mottagit betalningen.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Spara informationen som krävs för att identifiera din order och dina betalningar: order-ID; betalningshashar för depositionen och obligationen (hittas från din lightning-wallet); exakt summa sats; och robotnamn. Du kommer att behöva identifiera dig själv som den användare som var involverad i denna transaktionen via epost (eller andra kontaktmetoder).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Du kan göra anspråk på summan från dispytens uppgörelse (deposition och obligation) från din profil under belöningar. Om det finns något som personalen kan hjälpa dig med, tveka inte att kontakta robosats@protonmail.com (eller via din tillfälliga kontaktmetod).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Häng kvar en sekund. Om säljaren inte gör sin insättning kommer du att få tillbaka din obligation automatiskt. Dessutom kommer du att få en kompensation (kolla belöningar i din profil).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Vi väntar på att säljaren ska låsa trade-beloppet.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Förnya order",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Kopiera till urklipp",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Detta är en s.k. 'hold invoice'. Den kommer att frysas i din wallet, och debiteras endast om du avbryter ordern eller förlorar en dispyt.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Detta är en s.k. 'hold invoice'. Den kommer att frysas i din wallet, och släpps till köparen när du har bekräftat att du mottagit '{{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Återuppta order",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Din publika order har blivit pausad. För tillfället kan den inte ses eller tas av andra robotar. Du kan välja att återuppta den när som helst.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Innan du tillåts skicka {{amountFiat}} {{currencyCode}}, vill vi vara säkra på att du kan ta emot BTC.",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Häng kvar en sekund. Om köparen inte samarbetar kommer du att få tillbaka din deposition och obligation automatiskt. Dessutom kommer du att få en kompensation (kolla belöningar i din profil).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Vi väntar på att köparen ska dela en lightning-faktura. När den gjort det kommer du att kunna dela betalningsinformation för direkt över chatt.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Bland publika {{currencyCode}} ordrar (högre är billigare)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Om ordern förfaller utan att någon tar den kommer din obligation att retuneras till dig (utan handling från din sida)",
|
||||
"Pause the public order": "Pausa den publika ordern",
|
||||
"Premium rank": "Premiumrank",
|
||||
"Public orders for {{currencyCode}}": "Publika ordrar för {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Failure reason:",
|
||||
"Next attempt in": "Nästa försök om",
|
||||
"Retrying!": "Testar igen!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats kommer att försöka betala din faktura tre gånger med en minuts paus emellan. Om det forsätter att misslyckas kommer du att kunna dela en ny faktura. Kolla så att du har tillräckligt med ingående likviditet. Kom ihåg att lightning-noder måste vara online för att kunna mottaga betalningar.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Din faktura har förfallit eller så har fler än tre betalningsförsök gjorts. Dela en ny faktura.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats försöker betala din lightning-faktura. Kom ihåg att lightning-noder måste vara online för att kunna mottaga betalningar.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats blir bättre med mer likviditet och fler användare. Berätta om RoboSats för en Bitcoiner-vän!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Thank you! RoboSats loves you too",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Ditt TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Var god vänta på att takern låser sin obligation. Om den inte gör det i tid kommer ordern att göras publik igen.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Entropi haifai, ifanye kuwa ngumu zaidi",
|
||||
"The token is too short": "Alama ni fupi sana",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Hii inahakikisha faragha ya juu kabisa, hata hivyo unaweza kuhisi programu inafanya kazi polepole. Ikiwa mawasiliano yamepotea, anza tena programu.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Kuunganishwa kwa mtandao wa TOR",
|
||||
"Connecting to TOR network": "Kuunganisha kwa mtandao wa TOR",
|
||||
"Connection error": "Hitilafu ya mawasiliano",
|
||||
"Initializing TOR daemon": "Kuandaa TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "Yoyote",
|
||||
"Buy": "Nunua",
|
||||
"DESTINATION": "MAELEKEZO",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "na tumia",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "lipa kwa",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "Ongeza kichujio",
|
||||
"Amount": "Kiasi",
|
||||
"An error occurred.": "Kuna hitilafu iliyotokea.",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "inaanza na",
|
||||
"true": "kweli",
|
||||
"yes": "ndio",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "Funga",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "Unaweza kupata maelezo ya hatua kwa hatua ya mchakato wa biashara kwenye ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "Rudi nyuma",
|
||||
"Keys": "Funguo",
|
||||
"Learn how to verify": "Jifunze jinsi ya kuthibitisha",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Funguo la umma la PGP la mwenzako. Unaitumia kufuta ujumbe ambao yeye tu anaweza kusoma na kuthibitisha kuwa mwenza wako alisaini ujumbe wa kuingia.",
|
||||
"Your private key passphrase (keep secure!)": "Nenosiri la funguo binafsi lako (lihifadhiwe salama!)",
|
||||
"Your public key": "Funguo lako la umma",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... mahali popote duniani!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "Imetengenezwa kwa",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "na",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "Jumuiya",
|
||||
"Follow RoboSats in Nostr": "Fuata RoboSats katika Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "Tuambie kuhusu huduma mpya au mdudu",
|
||||
"We are abandoning Telegram! Our old TG groups": "Tunaiacha Telegram! Vikundi vyetu vya zamani vya TG",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "Kiasi kilichoidhinishwa kwa masaa 24",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Kivinjari",
|
||||
"Enable": "Washa",
|
||||
"Enable TG Notifications": "Washa Arifa za TG",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Utachukuliwa kwenye mazungumzo na boti ya Telegram ya RoboSats. Fungua mazungumzo tu na bonyeza Anza. Tambua kwamba kwa kuwezesha arifa za Telegram unaweza kupunguza kiwango chako cha kutotambulika.",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "Nyuma",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Unaenda kutembelea Jifunze RoboSats. Ina mafunzo na nyaraka za kukusaidia kujifunza jinsi ya kutumia RoboSats na kuelewa jinsi inavyofanya kazi.",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "Zalisha Roboti",
|
||||
"Generate a robot avatar first. Then create your own order.": "Zalisha picha ya mwakilishi wa roboti kwanza. Kisha tengeneza amri yako mwenyewe.",
|
||||
"You do not have a robot avatar": "Huna picha ya mwakilishi wa roboti",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Roboti yako",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "Fanya nakala rudufu!",
|
||||
"Done": "Imekamilika",
|
||||
"Store your robot token": "Hifadhi kitambulisho chako cha roboti",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "Huenda ukahitaji kurejesha avatar yako ya roboti baadaye: iweke salama. Unaweza tu kuinakili kwenye programu nyingine.",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Pakua RoboSats {{coordinatorVersion}} APK kutoka kwa matoleo ya Github",
|
||||
"Go away!": "Ondoka!",
|
||||
"On Android RoboSats app ": "Kwenye programu ya Android ya RoboSats ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "Kwenye node yako ya kifalme",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "Msimamizi wa RoboSats yuko kwenye toleo la {{coordinatorVersion}}, lakini programu yako ya mteja iko kwenye toleo la {{clientVersion}}. Tofauti hii ya toleo inaweza kusababisha uzoefu mbaya wa mtumiaji.",
|
||||
"Update your RoboSats client": "Sasisha programu yako ya RoboSats",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "Mteja wa RoboSats unatolewa kutoka kwenye node yako mwenyewe ikikupa usalama na faragha imara kabisa.",
|
||||
"You are self-hosting RoboSats": "Unaendesha RoboSats yako mwenyewe",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "Hutumii RoboSats kibinafsi",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "Kutoka",
|
||||
"to": "haditohadi",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " kwa punguzo la {{discount}}%",
|
||||
" at a {{premium}}% premium": " kwa faida ya {{premium}}%",
|
||||
" at market price": " kwa bei ya soko",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "Unapokea takribani {{swapSats}} LN Sats (ada inaweza kutofautiana)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "Unatuma takribani {{swapSats}} LN Sats (ada inaweza kutofautiana)",
|
||||
"Your order fixed exchange rate": "Kiwango chako cha kubadilisha cha amri",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Uhamishaji wa Lightning umeshindwa",
|
||||
"New chat message": "Ujumbe mpya wa mazungumzo",
|
||||
"Order chat is open": "Mazungumzo ya amri yamefunguliwa",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Imekwisha muda!",
|
||||
"🙌 Funished!": "🙌 Imekamilika!",
|
||||
"🥳 Taken!": "🥳 Imechukuliwa!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "Kiasi {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "Kwa kuchukua agizo hili, unachukua hatari ya kupoteza muda wako. Ikiwa mtengenezaji hataendelea kwa wakati, utalipwa satoshis kwa 50% ya dhamana ya mtengenezaji.",
|
||||
"Enter amount of fiat to exchange for bitcoin": "Ingiza kiasi cha fedha za fiat kubadilishana na bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "Lazima uweke kiasi kwanza",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "Utapokea {{satoshis}} Sats (Takriban)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "Utatuma {{satoshis}} Sats (Takriban)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "Njia za malipo zilizokubaliwa",
|
||||
"Amount of Satoshis": "Kiasi cha Satoshis",
|
||||
"Deposit timer": "Muda wa Amana",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "Utatuma kupitia Lightning {{amount}} Sats (Takriban)",
|
||||
"You send via {{method}} {{amount}}": "Utatuma kupitia {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "Dai",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "Amri yako ya sasa",
|
||||
"Your last order #{{orderID}}": "Amri yako ya mwisho #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Giza",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "Futa",
|
||||
"Cancel order and unlock bond instantly": "Futa agizo na fungua dhamana mara moja",
|
||||
"Collaborative Cancel": "Kufuta kwa Ushirikiano",
|
||||
"Unilateral cancelation (bond at risk!)": "Kufuta kwa upande mmoja (dhamana iko hatarini!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "Uliomba kughairi kwa ushirikiano",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} anaomba kughairi kwa ushirikiano",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "Mnunuzi",
|
||||
"Completed in": "Imekamilika ndani ya",
|
||||
"Contract exchange rate": "Kiwango cha ubadilishaji wa mkataba",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "Tazama Wallets Zinazoendana",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "Ghairi agizo?",
|
||||
"Confirm Cancel": "Thibitisha Kughairi",
|
||||
"If the order is cancelled now you will lose your bond.": "Ikiwa agizo litaghairiwa sasa utapoteza dhamana yako.",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Kubali Kughairisha",
|
||||
"Ask for Cancel": "Omba Kughairisha",
|
||||
"Collaborative cancel the order?": "Ghairi agizo kwa ushirikiano?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "Escrow ya biashara imewekwa. Agizo linaweza kughairiwa tu ikiwa pande zote mbili, mfanyakazi na mpokeaji, watakubaliana kughairi.",
|
||||
"Your peer has asked for cancellation": "Mwenzako ameomba kughairi",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "Kubali na kufungua mzozo",
|
||||
"Disagree": "Kupinga",
|
||||
"Do you want to open a dispute?": "Je, unataka kufungua mzozo?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "Hakikisha HAUSHIRIA logi ya gumzo. Wafanyikazi wanaweza kuomba logi yako ya gumzo iliyosafirishwa JSON ili kutatua tofauti. Ni jukumu lako kuihifadhi.",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "Wafanyikazi wa RoboSats watachunguza taarifa na ushahidi uliotolewa. Unahitaji kujenga kesi kamili, kwani wafanyikazi hawawezi kusoma gumzo. Ni bora kutoa njia ya mawasiliano ya burner na taarifa yako. Satoshis katika escrow ya biashara zitatumwa kwa mshindi wa mzozo, wakati mpotezaji wa mzozo atapoteza dhamana.",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "Thibitisha",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Thibitisha ulipokea {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Kuthibitisha kuwa umepokea {{amount}} {{currencyCode}} kutahitimisha biashara. Satoshis katika escrow itatolewa kwa mnunuzi. Thibitisha tu baada ya {{amount}} {{currencyCode}} kuwasili kwenye akaunti yako. Kumbuka kuwa ikiwa umepokea malipo na haukubonyeza uthibitisho, una hatari ya kupoteza dhamana yako.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Thibitisha uliyotuma {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Kuthibitisha kuwa umetuma {{amount}} {{currencyCode}} itaruhusu mwenzako kukamilisha biashara. Ikiwa haujatuma bado na bado unaendelea kuthibitisha uongo, una hatari ya kupoteza dhamana yako.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "SOMA. Ikiwa malipo yako kwa muuzaji yamezuiwa na haiwezekani kabisa kukamilisha biashara, unaweza kurejesha uthibitisho wako wa \"Fiat imetumwa\". Fanya hivyo tu ikiwa wewe na muuzaji TUMESHAAKUBALIANA kwenye gumzo kuendelea na kughairiwa kwa ushirikiano. Baada ya kuthibitisha, kitufe cha \"Kughairi kwa Ushirikiano\" kitaonekana tena. Bonyeza tu kitufe hiki ikiwa unajua unachofanya. Watumiaji wapya wa RoboSats hawashauriwi kabisa kufanya kitendo hiki! Hakikisha kuwa malipo yako yameshindwa na kiasi hicho kiko kwenye akaunti yako.",
|
||||
"Revert the confirmation of fiat sent?": "Rudisha uthibitisho wa fiat uliotumwa?",
|
||||
"Wait ({{time}})": "Subiri ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Kiasi bado hakijafungwa, tafadhali angalia mkoba wako wa WebLN.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Ankara haijapokelewa, tafadhali angalia mkoba wako wa WebLN.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "Unaweza sasa kufunga pop-up ya mkoba wako wa WebLN.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "Ukaguzi wa PGP",
|
||||
"Export": "Hamisha",
|
||||
"Save full log as a JSON file (messages and credentials)": "Hifadhi logi kamili kama faili la JSON (ujumbe na sifa)",
|
||||
"Verify your privacy": "Thibitisha faragha yako",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...inayosubiri",
|
||||
"Activate slow mode (use it when the connection is slow)": "Washa hali ya polepole (itumie wakati muunganisho ni polepole)",
|
||||
"Peer": "Mwenza",
|
||||
"You": "Wewe",
|
||||
"connected": "imeunganishwa",
|
||||
"disconnected": "imekatia",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "Inaunganisha...",
|
||||
"Send": "Tuma",
|
||||
"Type a message": "Andika ujumbe",
|
||||
"Waiting for peer public key...": "Inasubiri ufunguo wa umma wa mwenzi...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Tia kumbukumbu za gumzo",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Kuambatanisha kumbukumbu za gumzo husaidia mchakato wa kusuluhisha mzozo na kuongeza uwazi. Walakini, inaweza kudhoofisha faragha yako.",
|
||||
"Submit dispute statement": "Wasilisha taarifa ya mzozo",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Chaguzi za hali ya juu",
|
||||
"Invoice to wrap": "Ankara ya kufunga",
|
||||
"Payout Lightning Invoice": "Ankara ya Malipo ya Lightning",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Tumia Lnproxy",
|
||||
"Wrap": "Funika",
|
||||
"Wrapped invoice": "Ankara iliyofungwa",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Anwani ya Bitcoin",
|
||||
"Final amount you will receive": "Kiasi cha mwisho utakachopokea",
|
||||
"Invalid": "Batili",
|
||||
"Mining Fee": "Ada ya Madini",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "Mratibu wa RoboSats atafanya kubadilisha na kutuma Sats kwa anwani yako ya onchain.",
|
||||
"Swap fee": "Ada ya kubadilisha",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Thibitisha {{amount}} {{currencyCode}} imepokelewa",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Thibitisha {{amount}} {{currencyCode}} imetolewa",
|
||||
"Open Dispute": "Fungua Mgogoro",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Sema hi! Kuwa msaada na mafupi. Waambie jinsi ya kukutumia {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "Ili kufungua mgogoro unahitaji kusubiri",
|
||||
"Wait for the seller to confirm he has received the payment.": "Subiri muuzaji kuthibitisha kuwa amepokea malipo.",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "Tafadhali, weka taarifa zinazohitajika kutambua agizo lako na malipo yako: kitambulisho cha agizo; hash ya malipo ya dhamana au malipo kwa njia ya escrow (angalia kwenye mkoba wako wa lightning); kiasi sahihi cha satoshis; na jina la roboti. Utalazimika kujitambulisha kama mtumiaji anayehusika katika biashara hii kupitia barua pepe (au njia nyingine za mawasiliano).",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "Unaweza kudai kiasi cha suluhisho la mzozo (dhamana ya escrow na dhamana ya uaminifu) kutoka kwa tuzo zako za wasifu. Ikiwa kuna jambo lolote ambalo wafanyakazi wanaweza kusaidia, usisite kuwasiliana na robosats@protonmail.com (au kupitia njia yako ya mawasiliano ya muda mfupi uliyotoa).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Endelea kusubiri kwa muda. Ikiwa muuzaji haweki dhamana, utapata dhamana yako nyuma kiotomatiki. Aidha, utapokea fidia (angalia tuzo kwenye wasifu wako).",
|
||||
"We are waiting for the seller to lock the trade amount.": "Tunasubiri muuzaji aweke kiasi cha biashara.",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "Renew Order",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "Nakili kwenye ubao wa kunakili",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "Hii ni ankara ya kushikilia, itafungia kwenye mkoba wako. Itakatwa tu ikiwa utaghairi au kupoteza mzozo.",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "Hii ni ankara ya kushikilia, itafungia kwenye mkoba wako. Itaachiliwa kwa mnunuzi mara tu utakapothibitisha kuwa umepokea {{currencyCode}}.",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "Fungua Toleo",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "Agizo lako la umma limezuiliwa. Kwa sasa halionekani wala kuchukuliwa na roboti wengine. Unaweza kuchagua kulifungua tena wakati wowote.",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "Kabla ya kukuruhusu kutuma {{amountFiat}} {{currencyCode}}, tunataka kuhakikisha unaweza kupokea BTC.",
|
||||
"Lightning": "Miali",
|
||||
"Onchain": "Mtandao",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "Endelea kusubiri kwa muda. Ikiwa mnunuzi hafanyi kazi kwa ushirikiano, utapata dhamana ya biashara na dhamana yako kiotomatiki. Aidha, utapokea fidia (angalia tuzo kwenye wasifu wako).",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "Tunasubiri mnunuzi aweke ankara ya miali. Mara atakapofanya hivyo, utaweza kuwasiliana moja kwa moja na maelezo ya malipo.",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "Miongoni mwa maagizo ya {{currencyCode}} ya umma (kiwango kikubwa ni cha bei nafuu)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "Ikiwa agizo litakwisha muda bila kuchukuliwa, dhamana yako itarudi kwako (hakuna hatua inayohitajika).",
|
||||
"Pause the public order": "Zuia agizo la umma",
|
||||
"Premium rank": "Cheo cha Premium",
|
||||
"Public orders for {{currencyCode}}": "Maagizo ya umma ya {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "Sababu ya kushindwa:",
|
||||
"Next attempt in": "Jaribio lifuatalo baada ya",
|
||||
"Retrying!": "Inajaribu tena!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats itajaribu kulipa ankara yako mara 3 kwa kuchelewa kwa dakika moja kati yake. Ikiwa itaendelea kushindwa, utaweza kuwasilisha ankara mpya. Angalia ikiwa una utoshelevu wa fedha unazoingia. Kumbuka kuwa nodi za umeme lazima ziwe mtandaoni ili kupokea malipo.",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Ankara yako imeisha muda au majaribio zaidi ya 3 ya malipo yamefanywa. Wasilisha ankara mpya.",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats inajaribu kulipa ankara yako ya umeme. Kumbuka kuwa nodi za umeme lazima ziwe mtandaoni ili kupokea malipo.",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats inaboreshwa na utoshelevu zaidi na watumiaji. Mwambie rafiki yako wa Bitcoin kuhusu RoboSats!",
|
||||
"Sending coins to": "Inatuma sarafu kwa",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Asante! RoboSats pia inakupenda",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "Kitambulisho chako cha TX",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "Tafadhali subiri mpokeaji aweke dhamana. Ikiwa mpokeaji hataweka dhamana kwa wakati, agizo litatangazwa tena kwa umma.",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "Mfundi wa roboti amewasili!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "Ninakuja na roboti zangu wenyewe, hapa zipo. (Buruta na weka workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "Kwa mara yangu ya kwanza hapa. Unda Gari jipya la Roboti na alama ya roboti iliyosanifiwa (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Sanidi maoni",
|
||||
"Freeze viewports": "Gandamiza maoni",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "Katika mzozo",
|
||||
"Collaboratively cancelled": "Kufutwa kwa ushirikiano",
|
||||
"Sending satoshis to buyer": "Inatumwa satoshis kwa mnunuzi",
|
||||
"Sucessful trade": "Biashara imefanikiwa",
|
||||
"Successful trade": "Biashara imefanikiwa",
|
||||
"Failed lightning network routing": "Utaratibu wa mtandao wa umeme umeshindwa",
|
||||
"Wait for dispute resolution": "Kusubiri suluhisho la mzozo",
|
||||
"Maker lost dispute": "Mtengenezaji amepoteza mzozo",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "Connected to TOR network",
|
||||
"Connecting to TOR network": "Connecting to TOR network",
|
||||
"Connection error": "Connection error",
|
||||
"Initializing TOR daemon": "Initializing TOR daemon",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "ANY",
|
||||
"Buy": "ซื้อ",
|
||||
"DESTINATION": "DESTINATION",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "และใช้",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "pay with",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "เพิ่มตัวกรอง",
|
||||
"Amount": "จำนวน",
|
||||
"An error occurred.": "เกิดความผิดพลาด",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "เริ่มต้นด้วย",
|
||||
"true": "จริง",
|
||||
"yes": "ใช่",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "ปิด",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub)",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "คุณสามารถอ่านขั้นตอนการซื้อขายทีละขั้นได้ที่",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "กลับ",
|
||||
"Keys": "Keys",
|
||||
"Learn how to verify": "เรียนรู้วิธีการตรวจสอบ",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "PGP public key ของคู่ค้า ใช้ในการเข้ารหัสกับข้อความซึ่งทำให้มีแต่เขาเท่านั้นที่สามารภถอ่านได้และใช้ตรวจสอบข้อความที่คู่ค้าเข้ารหัสและส่งมาให้คุณ",
|
||||
"Your private key passphrase (keep secure!)": "passphrase ของ private key ของคุณ เก็บรักษาไว้ให้ดี!",
|
||||
"Your public key": "Public key ของคุณ",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "... ซักที่ บนโลกใบนี้!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "สร้างด้วย",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "และ",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "ชุมชน",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "บอกเราเกี่ยวกับฟีเจอร์ใหม่หรือบัค",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24h ปริมาณการซื้อขาย 24 ชั่วโมงที่แล้ว",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "Browser",
|
||||
"Enable": "เปิดใช้งาน",
|
||||
"Enable TG Notifications": "ใช้การแจ้งเตือน Telegram",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "คุณจะเข้าไปยังแชทกับ telegram bot ของ RoboSats ให้คุณกด Start อย่างไรก็ตาม การใช้การแจ้งเตือน telegram จะลดระดับการปกปิดตัวตนของคุณ",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "กลับ",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "คุณกำลังเข้าสู่หน้าการเรียนรู้การใช้งาน RoboSats คุณสามารถศึกษาวิธีการใช้งานแพล้ตฟอร์มและทำความเข้าใจการทำงานของแพล้ตฟอร์มได้ที่นี่",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "สร้างโรบอทใหม่",
|
||||
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
|
||||
"You do not have a robot avatar": "คุณไม่มีโรบอท",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "Your Robot",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "อย่าลืมบันทึก!",
|
||||
"Done": "เสร็จสิ้น",
|
||||
"Store your robot token": "เก็บรักษา token โรบอทของคุณ",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "คุณอาจต้องใช้โรบอทอีกในอนาคตจึงควรเก็บรักษามันไว้ให้ดี คุณสามารถคัดลอกมันไปเก็บไว้ในแอพพลิเคชั่นอื่นๆได้อย่างง่ายดาย",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "Download RoboSats {{coordinatorVersion}} APK from Github releases",
|
||||
"Go away!": "Go away!",
|
||||
"On Android RoboSats app ": "On Android RoboSats app ",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "On your own soverign node",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.",
|
||||
"Update your RoboSats client": "Update your RoboSats client",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats client is served from your own node granting you the strongest security and privacy.",
|
||||
"You are self-hosting RoboSats": "คูณกำลัง host RoboSats เอง",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "ระวัง! ข้อมูลส่วนตัวอาจรั่วไหล",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "ตั้งแต่",
|
||||
"to": "ถึง",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " ในราคาถูกกว่าตลาด {{discount}}% ",
|
||||
" at a {{premium}}% premium": " ในราคาแพงกว่าตลาด {{premium}}% ",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "You receive approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "You send approx {{swapSats}} LN Sats (fees might vary)",
|
||||
"Your order fixed exchange rate": "คุณกำหนดอัตราแลกเปลี่ยนคงที่",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "Lightning routing failed",
|
||||
"New chat message": "New chat message",
|
||||
"Order chat is open": "Order chat is open",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 Expired!",
|
||||
"🙌 Funished!": "🙌 Funished!",
|
||||
"🥳 Taken!": "🥳 Taken!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "จำนวน {{currencyCode}}",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "หากคุณดำเนินการต่ออาจเป็นการเสียเวลาปล่าวหากผู้ค้าไม่มาดำเนินรายการต่อภายในเวลาที่กำหนด ในกรณีนี้คุณจะได้รับค่าเสียเวลาเป็น satoshi คิดเป็น 50% ของ maker bond",
|
||||
"Enter amount of fiat to exchange for bitcoin": "ระบุจำนวนเงินเฟียตที่จะแลกเปลี่ยนกับ bitcoin",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "คุณต้องระบุจำนวนก่อน",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "วิธีชำระเงินเฟียตที่รองรับ",
|
||||
"Amount of Satoshis": "ปริมาณ Satoshis",
|
||||
"Deposit timer": "ผู้ขายต้องวางเหรียญที่จะขายภายใน",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "You send via {{method}} {{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - ค่าพรีเมี่ยม: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "รับรางวัล",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "รายการปัจจุบันของคุณ",
|
||||
"Your last order #{{orderID}}": "รายการล่าสุดของคุณ #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "Dark",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "Mainnet",
|
||||
"Swaps": "Swaps",
|
||||
"Testnet": "Testnet",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "ยกเลิก",
|
||||
"Cancel order and unlock bond instantly": "Cancel order and unlock bond instantly",
|
||||
"Collaborative Cancel": "ร่วมกันยกเลิกการซื้อขาย",
|
||||
"Unilateral cancelation (bond at risk!)": "Unilateral cancelation (bond at risk!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "คุณขอให้อีกฝ่ายร่วมกันยกเลิกการซื้อขาย",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} ขอให้คุณร่วมกันยกเลิกการซื้อขาย",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "ผู้ซื้อ",
|
||||
"Completed in": "เสร็จสิ้นใน",
|
||||
"Contract exchange rate": "อัตราแลกเปลี่ยน",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} MiliSats",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} Sats ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "ดูกระเป๋าบิทคอยน์ (Wallets) ที่สามารถใช้งานได้",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "จะยกเลิกรายการหรือไม่?",
|
||||
"Confirm Cancel": "ยืนยันยกเลิก",
|
||||
"If the order is cancelled now you will lose your bond.": "ถ้ารายการถูกยกเลิกในขั้นตอนนี้ คุณจะสูญเสีย bond",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "Accept Cancelation",
|
||||
"Ask for Cancel": "ขอให้ยกเลิก",
|
||||
"Collaborative cancel the order?": "ร่วมกันยกเลิกรายการหรือไม่",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "ผู้ขายวางเหรียญแล้ว หากต้องการยกเลิกการซื้อขายจะต้องได้รับการยินยอมจากอีกฝั่งร่วมกับคุณ",
|
||||
"Your peer has asked for cancellation": "Your peer has asked for cancellation",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "ตกลงและดำเนินการร้องเรียน",
|
||||
"Disagree": "ไม่ตกลง",
|
||||
"Do you want to open a dispute?": "ต้องการร้องเรียนหรือไม่?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "คุณต้องทำการส่งออกบันทึกข้อความแชทไว้ด้วย เนื่องจากทีมงานอาจร้องขอบทสนาที่ถูกนำออกเพื่อใช้ในการแก้ไข้ปัญหา และคุณจะต้องรับผิดชอบการเก็บรักษามันไว้ด้วย",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "ทีมงาน RoboSats จะตรวจสอบคำแถลงและหลักฐานที่ได้รับ คุณจะต้องให้ข้อมูลเหตุการณ์ทั้งหมดอย่างละเอียดเนื่องจากทีมงานไม่สามารถอ่านข้อความในแชทซื้อขายได้ และคุณจะต้องระบุช่องทางสำหรับติดต่อคุณกลับมาในคำแถลงด้วย เหรียญที่ถูกกักกันไว้เพื่อซื้อขายจะถูกส่งให้ผู้ชนะการร้องเรียน และผู้แพ้จะสูญเสียเหรียญที่กักกันใน bond",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "ยืนยัน",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "Confirm you received {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "Confirm you sent {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "Amount not yet locked, please check your WebLN wallet.",
|
||||
"Invoice not received, please check your WebLN wallet.": "Invoice not received, please check your WebLN wallet.",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "You can close now your WebLN wallet popup.",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "ตรวจสอบ PGP",
|
||||
"Export": "ส่งออก",
|
||||
"Save full log as a JSON file (messages and credentials)": "บันทึกข้อความและการยืนยันตัวตนในรูป JSON",
|
||||
"Verify your privacy": "ตรวจสอบความเป็นส่วนตัวของคุณ",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...waiting",
|
||||
"Activate slow mode (use it when the connection is slow)": "Activate slow mode (use it when the connection is slow)",
|
||||
"Peer": "คู่ค้า",
|
||||
"You": "คุณ",
|
||||
"connected": "เชื่อมต่อแล้ว",
|
||||
"disconnected": "ตัดการเชื่อมต่อแล้ว",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "กำลังเชื่อมต่อ...",
|
||||
"Send": "ส่ง",
|
||||
"Type a message": "พิมพ์ข้อความ",
|
||||
"Waiting for peer public key...": "Waiting for peer public key...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "Attach chat logs",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.",
|
||||
"Submit dispute statement": "ส่งคำแถลงสำหรับข้อร้องเรียน",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "Advanced options",
|
||||
"Invoice to wrap": "Invoice to wrap",
|
||||
"Payout Lightning Invoice": "Lightning Invoice สำหรับรับเหรียญ",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "Use Lnproxy",
|
||||
"Wrap": "Wrap",
|
||||
"Wrapped invoice": "Wrapped invoice",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "Bitcoin Address",
|
||||
"Final amount you will receive": "จำนวนเหรียญที่คุณจะได้รับจริงๆ",
|
||||
"Invalid": "ไม่ถูกต้อง",
|
||||
"Mining Fee": "ค่าธรรมเนียมการขุด",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats coordinator will do a swap and send the Sats to your onchain address.",
|
||||
"Swap fee": "ค่าธรรมเนียมการสลับเปลี่ยน",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "Confirm {{amount}} {{currencyCode}} received",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "Confirm {{amount}} {{currencyCode}} sent",
|
||||
"Open Dispute": "ร้องเรียน",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.",
|
||||
"To open a dispute you need to wait": "To open a dispute you need to wait",
|
||||
"Wait for the seller to confirm he has received the payment.": "รอผู้ขายยืนยันว่าได้รับเงินเฟียตแล้ว",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "กรุณาจดบันทึกข้อมูลต่อไปนี้เพื่อใช้ในการระบุรายการซื้อขายที่มีการร้องเรียน: รหัสรายการซื้อขาย, รหัสธุรกรรม (payment hashes) ของการกักกันเหรียญใน bond (ตรวจสอบได้ใน lightning wallet ของคุณ), จำนวน satoshis ใน bond รวมทั้งชื่อเล่นของโรบอทของคุณเพื่อให้คุณสามารถระบุตัวตนของคุณได้เมื่อทำการติดต่อกับทีมงาน",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "คุณสามารถรับเหรียญที่ได้จากการแก้ไขข้อร้องเรียนได้ที่รางวัลในโปรไฟล์ของคุณ (เหรียญที่ถูกกักกันไว้ในกระบวนการซื้อขาย) และถ้าหากต้องการความช่วยเหลือเพิ่มเติม สามารถติดต่อผ่านทาง robosats@protonmail.com (หรือผ่านช่องทางติดต่อที่คุณได้ให้เราไว้ก่อนหน้านี้).",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "กรุณารอซักครู่ ถ้าผู้ขายไม่ยอมวางเหรียญ คุณจะได้รับเหรียญใน bond คืนพร้อมค่าชดเชย (สามารถตรวจสอบได้ในส่วนของรางวัลในโปรไฟล์ของคุณ)",
|
||||
"We are waiting for the seller to lock the trade amount.": "เรากำลังรอผู้ขายวางเหรียญที่นำมาขาย",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "เริ่มรายการใหม่",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "คัดลอกไปยังคลิปบอร์ด",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "นี่คือ hold invoice มันจะกักกันเหรียญของคุณเอาไว้ใน wallet ของคุณและจะดำเนินการตัดจ่ายเหรียญเมื่อคุณยกเลิกรายการหรือแพ้ในกระบวนการร้องเรียน",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "นี่คือ hold invoice มันจะกักกันเหรียญของคุณเอาไว้ใน wallet ของคุณ เหรียญจะถูกส่งให้ผู้ซื้อเมื่อคุณยืนยันว่าคุณได้รับเงินเฟียต {{currencyCode}} ครบถ้วนแล้ว",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "เลิกระงับการประกาศรายการ",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "รายการของคุณไม่ได้มีการประกาศอยู่ โรบอทอื่นจะไม่สามารถมองเห็นหรือรับรายการซื้อขายดังกล่าวได้คุณสามารถเลิกระงับการประกาศรายการตอนไหนก็ได้",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "ก่อนที่คุณจะส่งเงิน {{amountFiat}} {{currencyCode}} เราต้องการทำให้แน่ใจได้ว่าคุณสามารถรับเหรียญ BTC ได้",
|
||||
"Lightning": "Lightning",
|
||||
"Onchain": "Onchain",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "กรุณารออีกซักครู่ ถ้าผู้ซื้อไม่ให้ความร่วมมือ คุณจะได้รับเหรียญที่นำมาวางและ bond คืนโดยอัตโนมัติ และคุณจะได้รับเงินชดเชยด้วย (สามารถตรวจสอบได้ในส่วนของรางวัลในโปรไฟล์ของท่าน)",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "เรากำลังรอผู้ซื้อส่ง invoice รับเหรียญให้เรา หลังจากนั้นคุณจะได้แชทคุยกับผู้ซื้อเพื่อชี้แจงรายละเอียดสำหรับการชำระเงินเฟียต",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "สำหรับรายการที่เป็น {{currencyCode}} (ยิ่งสูงยิ่งถูก)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "ถ้ารายการซื้อขายของคุณไม่มีใครรับ คุณจะได้รับการปลดล็อกเหรียญที่กักกันใน bond ของคุณคืนโดยอัตโนมัติ",
|
||||
"Pause the public order": "ระงับการประกาศรายการ",
|
||||
"Premium rank": "ลำดับค่าพรีเมี่ยม",
|
||||
"Public orders for {{currencyCode}}": "รายการสำหรับ {{currencyCode}}",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "เหตุผลที่ล้มเหลว",
|
||||
"Next attempt in": "ลองใหม่ภายใน",
|
||||
"Retrying!": "กำลังลองใหม่!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats จะลองจ่ายเหรียญให้ invoice ของท่าน 3 ครั้ง ห่างกันครั้งละ 1 นาที หากครบ 3 ครั้งแล้วยังล้มเหลวคุณจะสามารถส่ง invoice มาใหม่ได้ ตรวจสอบว่าคุณมี inbound liquidity เพียงพอ และ lightning nodes จะต้องออนไลน์จึงจะรับเหรียญได้",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "Invoice หมดอายุ หรือเราได้ลองจ่ายเหรียญครบ 3 ครั้งแล้ว กรุณาส่ง invoice ใหม่ให้เรา",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats กำลังจ่ายเหรียญให้ lightning invoice ของท่าน lightning nodes จะต้องออนไลน์เพื่อรับเหรียญ",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "Renew",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats จะดีขึ้นเมื่อมีสภาพคล่องและผู้ใช้งานมากขึ้น ช่วยกันชวนเพื่อนของคุณมาใช้ Robosats!",
|
||||
"Sending coins to": "Sending coins to",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "Thank you! RoboSats loves you too",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "TXID ของคุณ",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "โปรดรอคู่ค้าทำการกักกันเหรียญใน bond ถ้าเขากักกันเหรียญไม่ทันในเวลาที่กำหนด รายการจะถูกประำกาศใหม่",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "A robot technician has arrived!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "I bring my own robots, here they are. (Drag and drop workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "My first time here. Generate a new Robot Garage and extended robot token (xToken).",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "Customize viewports",
|
||||
"Freeze viewports": "Freeze viewports",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "In dispute",
|
||||
"Collaboratively cancelled": "Collaboratively cancelled",
|
||||
"Sending satoshis to buyer": "Sending satoshis to buyer",
|
||||
"Sucessful trade": "Successful trade",
|
||||
"Successful trade": "Successful trade",
|
||||
"Failed lightning network routing": "Failed lightning network routing",
|
||||
"Wait for dispute resolution": "Wait for dispute resolution",
|
||||
"Maker lost dispute": "Maker lost dispute",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "这确保最高的隐秘程度,但你可能会觉得应用程序运作缓慢。如果丢失连接,请重启应用。",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "已连线 TOR 网络",
|
||||
"Connecting to TOR network": "正在连线 TOR 网络",
|
||||
"Connection error": "连线错误",
|
||||
"Initializing TOR daemon": "正在初始化 TOR 守护进程",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "任何",
|
||||
"Buy": "购买",
|
||||
"DESTINATION": "目的地",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "并使用",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "支付",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "加筛选",
|
||||
"Amount": "金额",
|
||||
"An error occurred.": "发生错误。",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "以...开始",
|
||||
"true": "实",
|
||||
"yes": "是",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "关闭",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "你可以在此找到交易流程的分步说明:",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "返回",
|
||||
"Keys": "钥匙",
|
||||
"Learn how to verify": "学习如何验证",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "你的对等方的公钥。你使用它来加密只有你的对等方才能阅读的消息,并验证你的对等方签署的传入消息。",
|
||||
"Your private key passphrase (keep secure!)": "你的私钥密码(请安全存放!)",
|
||||
"Your public key": "你的公钥",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "...在世界上某处建造!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "用",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "和",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "社群",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "向我们报告错误或要求新功能",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24小时合约量",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "浏览器",
|
||||
"Enable": "开启",
|
||||
"Enable TG Notifications": "开启 TG 通知",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "你将被带到 RoboSats Telegram Bot 的对话中。只需打开聊天并按开始。请注意,通过开启 Telegram 通知,你可能会降低匿名程度。",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "返回",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "你即将访问学习 RoboSats 页面。此页面提供教程和说明书,以帮助你学习如何使用 RoboSats 并了解它的功能。",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "生成机器人",
|
||||
"Generate a robot avatar first. Then create your own order.": "请先生成一个机器人头像,然后创建你自己的订单。",
|
||||
"You do not have a robot avatar": "你没有机器人头像",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "你的机器人",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "请备份!",
|
||||
"Done": "完成",
|
||||
"Store your robot token": "存储你的机器人令牌",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "你将来可能需要恢复你的机器人头像:安全地存放它。你可以轻松地将其复制到另一个应用程序中。",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "从 Github releases 下载 RoboSats {{coordinatorVersion}} APK",
|
||||
"Go away!": "让开!",
|
||||
"On Android RoboSats app ": "在安卓 RoboSats app 上",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "在你自己主权的节点上",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "RoboSats 协调器的版本是 {{coordinatorVersion}},但是你的客户端 app 是 {{clientVersion}}。版本不匹配可能会导致糟糕的用户体验。",
|
||||
"Update your RoboSats client": "更新你的 RoboSats 客户端",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats 客户端已由你自己的节点提供服务,为你提供最强的安全性和隐私性。",
|
||||
"You are self-hosting RoboSats": "你在自托管 RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "你在不隐秘地使用 RoboSats",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "从",
|
||||
"to": "到",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " 于 {{discount}}% 折扣",
|
||||
" at a {{premium}}% premium": " 于 {{premium}}% 溢价",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "你将接收大约{{swapSats}}闪电聪(费用会造成有所差异)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "你将发送大约{{swapSats}}闪电聪(费用会造成有所差异)",
|
||||
"Your order fixed exchange rate": "你的订单的固定汇率",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "闪电路由失败",
|
||||
"New chat message": "新消息",
|
||||
"Order chat is open": "订单聊天已开通",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 已过期!",
|
||||
"🙌 Funished!": "🙌 已完成!",
|
||||
"🥳 Taken!": "🥳 已吃单!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "{{currencyCode}}金额",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "接受此订单可能会浪费你的时间。如果挂单方未及时响应,你将获得挂单方保证金的50%的补偿。",
|
||||
"Enter amount of fiat to exchange for bitcoin": "输入以兑换比特币的法币金额",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "你必须先指定金额",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "接受的付款方法",
|
||||
"Amount of Satoshis": "聪金额",
|
||||
"Deposit timer": "存款倒计时",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "你通过{{method}}发送{{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - 溢价: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "领取",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "你当前的订单",
|
||||
"Your last order #{{orderID}}": "你的上一笔交易 #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "深色",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "主网",
|
||||
"Swaps": "交换",
|
||||
"Testnet": "测试网",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "取消",
|
||||
"Cancel order and unlock bond instantly": "取消订单并即刻解锁保证金",
|
||||
"Collaborative Cancel": "合作取消",
|
||||
"Unilateral cancelation (bond at risk!)": "单方面取消 (保证金风险!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "你要求了合作取消",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} 要求合作取消",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "买方",
|
||||
"Completed in": "内完成",
|
||||
"Contract exchange rate": "合约交易率",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} 毫聪",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} 聪 ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} 聪 ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "查看兼容钱包列表",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "取消订单?",
|
||||
"Confirm Cancel": "确认取消",
|
||||
"If the order is cancelled now you will lose your bond.": "如果现在取消订单,你将失去保证金。",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "接受取消",
|
||||
"Ask for Cancel": "要求取消",
|
||||
"Collaborative cancel the order?": "合作取消订单?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "交易托管已发布。只有当挂单方和吃单方都同意取消时,才能取消订单。",
|
||||
"Your peer has asked for cancellation": "你的对等方请求取消",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "同意并开始争议",
|
||||
"Disagree": "不同意",
|
||||
"Do you want to open a dispute?": "你想开始争议吗?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "确保导出聊天记录。工作人员可能会要求你提供所导出的聊天记录 JSON 以解决差异。存储记录是你的责任。",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "RoboSats 工作人员将检查所提供的声明和证据。你需要建立一个完整的案例,因为工作人员无法阅读聊天内容。最好在你的声明中提供抛弃式的联系方式。交易托管中的聪将被发送给争议获胜者,而争议失败者将失去保证金。",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "确认",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "确认你已收到 {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "确认你已收到{{amount}} {{currencyCode}}时交易会被结算。在托管中的聪会被释放给买方。仅当{{amount}} {{currencyCode}}已到达你的帐户后才应确认。请注意,如果你已收到付款但是不点击确认,则可能失去你的保证金。",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "确认你已发送{{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "确认你已发送{{amount}} {{currencyCode}}将允许你的对等方结算交易。如果你还没有付款但仍然虚假确认,则有可能失去你的保证金。",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "金额还未锁定,请查看你的 WebLN 钱包。",
|
||||
"Invoice not received, please check your WebLN wallet.": "没有收到发票,请查看你的 WebLN 钱包。",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "现在可以关闭你的 WebLN 钱包弹出窗口。",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "审计 PGP",
|
||||
"Export": "导出",
|
||||
"Save full log as a JSON file (messages and credentials)": "将全记录档保存为 JSON 文件 (消息和凭据)",
|
||||
"Verify your privacy": "验证你的隐私",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...正在等待",
|
||||
"Activate slow mode (use it when the connection is slow)": "开启慢速模式(在连接缓慢时使用)",
|
||||
"Peer": "对等方",
|
||||
"You": "你",
|
||||
"connected": "在线",
|
||||
"disconnected": "离线",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "正在连线...",
|
||||
"Send": "传送",
|
||||
"Type a message": "键入消息",
|
||||
"Waiting for peer public key...": "正在等待对等方的公钥...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "附加聊天记录",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "附加聊天记录有助于争议解决过程并增加透明度。但可能会损害你的隐私。",
|
||||
"Submit dispute statement": "提交争议声明",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "高级选项",
|
||||
"Invoice to wrap": "要包裹的发票",
|
||||
"Payout Lightning Invoice": "闪电支付发票",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "使用 Lnproxy (闪电代理)",
|
||||
"Wrap": "包裹",
|
||||
"Wrapped invoice": "已包裹的发票",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "比特币地址",
|
||||
"Final amount you will receive": "你将收到的最终金额",
|
||||
"Invalid": "无效",
|
||||
"Mining Fee": "挖矿费",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats 协调器会执行交换并将聪发到你的链上地址。",
|
||||
"Swap fee": "交换费",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "确认已收到 {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "确认已发送 {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "开始争议",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "打个招呼!请保持你的回答有用且简洁。让他们知道如何向你发送 {{amount}} {{currencyCode}}。",
|
||||
"To open a dispute you need to wait": "要打开争议的话你需要等",
|
||||
"Wait for the seller to confirm he has received the payment.": "等待卖方确认他已收到付款。",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "请保存识别你的订单和付款所需的信息:订单 ID;保证金或托管的支付散列值(查看你的闪电钱包);聪的确切金额;和机器人昵称。你必须通过电子邮件(或其他联系方式)表明自己是参与此交易的用户。",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "你可以从你的个人资料下的奖励中索取解决争议的金额(托管和保证金)。如果工作人员可以提供任何帮助,请随时联系 robosats@protonmail.com (或通过你提供的抛弃式联系方式)。",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "请稍等片刻。如果卖方不存款,你将自动取回保证金。此外,你将获得补偿(查看你个人资料中的奖励)。",
|
||||
"We are waiting for the seller to lock the trade amount.": "我们正在等待卖方锁定交易金额。",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "延续订单",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "复制到剪贴板",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "这是一张 hold 发票,它会在你的钱包内冻结。只有当你取消或争议失败的时候才会被收取。",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "这是一张 hold 发票,它会在你的钱包内冻结。当你确认收到 {{currencyCode}} 后它会被释放给买方。",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "取消暂停订单",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "你的公开订单已暂停。目前其他机器人无法看到或接受你的订单。你随时可以选择取消暂停。",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "在让你发送 {{amountFiat}} {{currencyCode}} 之前,我们想确认你能感受到比特币。",
|
||||
"Lightning": "闪电",
|
||||
"Onchain": "链上",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "请稍等片刻。如果买方不配合,你将自动取回抵押和保证金。此外,你将获得补偿(查看你个人资料中的奖励)。",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "我们正在等待买方发布闪电发票。一旦发布,你将能够直接沟通法币付款详情。",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "在公开的 {{currencyCode}} 订单中(越高排位越便宜)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "如果订单到期前未执行,你的保证金将退还给你(无需采取任何行动)。",
|
||||
"Pause the public order": "暂停公开订单",
|
||||
"Premium rank": "溢价排行",
|
||||
"Public orders for {{currencyCode}}": "{{currencyCode}} 的公开订单",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "失败原因:",
|
||||
"Next attempt in": "下一次尝试",
|
||||
"Retrying!": "重试中!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats 将尝试支付你的发票3次,每次尝试间隔1分钟。如果它一再失败,你将能够提交新的发票。检查你是否有足够的入站流动性。请注意,闪电节点必须在线才能接收付款。",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "你的发票已到期或已进行超过3次付款尝试。提交一张新的发票。",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats 正在尝试支付你的闪电发票。请注意,闪电节点必须在线才能接收付款。",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "延续",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats 会随着更多的流动性和更高的用户数量而变得更好。把 RoboSats 推荐给你的比特币朋友吧!",
|
||||
"Sending coins to": "将比特币发送到",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "谢谢!RoboSats 也爱你",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "你的 TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "请等待吃单方锁定保证金。如果吃单方没有及时锁定保证金,订单将再次公开。",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "机器人技术人员来了!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "我自带机器人,它们在这里。(拖放 workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "这是我的第一次。生成机器人仓库和扩展机器人令牌(xToken)。",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "自定义视口",
|
||||
"Freeze viewports": "冻结视口",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "正在争议中",
|
||||
"Collaboratively cancelled": "已合作取消",
|
||||
"Sending satoshis to buyer": "正在向买方发送聪",
|
||||
"Sucessful trade": "成功交易",
|
||||
"Successful trade": "成功交易",
|
||||
"Failed lightning network routing": "闪电路由失败",
|
||||
"Wait for dispute resolution": "等待争议解决",
|
||||
"Maker lost dispute": "挂单方失去了争议",
|
||||
|
@ -74,12 +74,18 @@
|
||||
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
|
||||
"The token is too short": "The token is too short",
|
||||
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "這確保最高的隱密程度,但你可能會覺得應用程序運作緩慢。如果丟失連接,請重啟應用。",
|
||||
"#13": "Phrases in components/TorConnection.tsx",
|
||||
"#13": "Phrases in basic/SettingsPage/index.tsx",
|
||||
"Add": "Add",
|
||||
"Alias": "Alias",
|
||||
"Alias already exists": "Alias already exists",
|
||||
"Invalid Onion URL": "Invalid Onion URL",
|
||||
"URL": "URL",
|
||||
"#14": "Phrases in components/TorConnection.tsx",
|
||||
"Connected to TOR network": "已連線 TOR 網絡",
|
||||
"Connecting to TOR network": "正在連線 TOR 網絡",
|
||||
"Connection error": "連線錯誤",
|
||||
"Initializing TOR daemon": "正在初始化 TOR 常駐程式",
|
||||
"#14": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"#15": "Phrases in components/BookTable/BookControl.tsx",
|
||||
"ANY": "任何",
|
||||
"Buy": "購買",
|
||||
"DESTINATION": "目的地",
|
||||
@ -95,7 +101,7 @@
|
||||
"and use": "並使用",
|
||||
"hosted by": "hosted by",
|
||||
"pay with": "支付",
|
||||
"#15": "Phrases in components/BookTable/index.tsx",
|
||||
"#16": "Phrases in components/BookTable/index.tsx",
|
||||
"Add filter": "加篩選",
|
||||
"Amount": "金額",
|
||||
"An error occurred.": "發生錯誤。",
|
||||
@ -159,15 +165,15 @@
|
||||
"starts with": "以...開始",
|
||||
"true": "實",
|
||||
"yes": "是",
|
||||
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"#17": "Phrases in components/Charts/DepthChart/index.tsx",
|
||||
"#18": "Phrases in components/Charts/MapChart/index.tsx",
|
||||
"Accept": "Accept",
|
||||
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
|
||||
"Close": "關閉",
|
||||
"Download high resolution map?": "Download high resolution map?",
|
||||
"Show tiles": "Show tiles",
|
||||
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#19": "Phrases in components/Dialogs/About.tsx",
|
||||
"#19": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
|
||||
"#20": "Phrases in components/Dialogs/About.tsx",
|
||||
"(GitHub).": "(GitHub).",
|
||||
"(Telegram)": "(Telegram)",
|
||||
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
|
||||
@ -207,7 +213,7 @@
|
||||
"You can find a step-by-step description of the trade pipeline in ": "你可以在此找到交易流程的分步說明: ",
|
||||
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
|
||||
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
|
||||
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"#21": "Phrases in components/Dialogs/AuditPGP.tsx",
|
||||
"Go back": "返回",
|
||||
"Keys": "鑰匙",
|
||||
"Learn how to verify": "學習如何驗證",
|
||||
@ -223,13 +229,13 @@
|
||||
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "你的對等方的 PGP 公鑰。你使用它來加密只有你的對等方才能閱讀的消息,並驗證你的對等方簽署的傳入消息。",
|
||||
"Your private key passphrase (keep secure!)": "你的私鑰密碼 (請安全存放!)",
|
||||
"Your public key": "你的公鑰",
|
||||
"#21": "Phrases in components/Dialogs/Client.tsx",
|
||||
"#22": "Phrases in components/Dialogs/Client.tsx",
|
||||
"... somewhere on Earth!": "...在世界上某處製造!",
|
||||
"Client info": "Client info",
|
||||
"Made with": "用",
|
||||
"RoboSats client version": "RoboSats client version",
|
||||
"and": "和",
|
||||
"#22": "Phrases in components/Dialogs/Community.tsx",
|
||||
"#23": "Phrases in components/Dialogs/Community.tsx",
|
||||
"Community": "社群",
|
||||
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
|
||||
"Follow RoboSats in X": "Follow RoboSats in X",
|
||||
@ -244,7 +250,7 @@
|
||||
"Tell us about a new feature or a bug": "向我們報告錯誤或要求新功能",
|
||||
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
|
||||
"X Official Account": "X Official Account",
|
||||
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"#24": "Phrases in components/Dialogs/Coordinator.tsx",
|
||||
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
|
||||
"24h contracted volume": "24小時合約量",
|
||||
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
|
||||
@ -293,35 +299,35 @@
|
||||
"Website": "Website",
|
||||
"X": "X",
|
||||
"Zaps voluntarily for development": "Zaps voluntarily for development",
|
||||
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"#25": "Phrases in components/Dialogs/EnableTelegram.tsx",
|
||||
"Browser": "瀏覽器",
|
||||
"Enable": "開啟",
|
||||
"Enable TG Notifications": "開啟 TG 通知",
|
||||
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "你將被帶到與 RoboSats Telegram Bot 的對話中。只需打開聊天並按開始。請注意,通過啟用 Telegram 通知,你可能會降低匿名程度。",
|
||||
"#25": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"#26": "Phrases in components/Dialogs/Exchange.tsx",
|
||||
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
|
||||
"Exchange Summary": "Exchange Summary",
|
||||
"Online RoboSats coordinators": "Online RoboSats coordinators",
|
||||
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"#27": "Phrases in components/Dialogs/F2fMap.tsx",
|
||||
"Choose a location": "Choose a location",
|
||||
"Save": "Save",
|
||||
"#27": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"#28": "Phrases in components/Dialogs/Learn.tsx",
|
||||
"Back": "返回",
|
||||
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "你即將訪問學習 RoboSats 頁面。此頁面提供教程和說明書,以幫助你學習如何使用 RoboSats 並了解它的功能。",
|
||||
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"#29": "Phrases in components/Dialogs/NoRobot.tsx",
|
||||
"Generate Robot": "生成機器人",
|
||||
"Generate a robot avatar first. Then create your own order.": "請先生成一個機器人頭像,然後創建你自己的訂單。",
|
||||
"You do not have a robot avatar": "你沒有機器人頭像",
|
||||
"#29": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"#30": "Phrases in components/Dialogs/Profile.tsx",
|
||||
"Coordinators that know your robot:": "Coordinators that know your robot:",
|
||||
"Looking for your robot!": "Looking for your robot!",
|
||||
"Your Robot": "你的機器人",
|
||||
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"#31": "Phrases in components/Dialogs/StoreToken.tsx",
|
||||
"Back it up!": "請備份!",
|
||||
"Done": "完成",
|
||||
"Store your robot token": "存儲你的機器人令牌",
|
||||
"You might need to recover your robot avatar in the future: store it safely. You can simply copy it into another application.": "你將來可能需要恢復你的機器人頭像:安全地存放它。你可以輕鬆地將其複製到另一個應用程序中。",
|
||||
"#31": "Phrases in components/Dialogs/Update.tsx",
|
||||
"#32": "Phrases in components/Dialogs/Update.tsx",
|
||||
"Download RoboSats {{coordinatorVersion}} APK from Github releases": "從 Github releases 下載 RoboSats {{coordinatorVersion}} APK",
|
||||
"Go away!": "讓開!",
|
||||
"On Android RoboSats app ": "在安卓 RoboSats app 上",
|
||||
@ -330,24 +336,24 @@
|
||||
"On your own soverign node": "在你自己主權的節點上",
|
||||
"The RoboSats coordinator is on version {{coordinatorVersion}}, but your client app is {{clientVersion}}. This version mismatch might lead to a bad user experience.": "RoboSats 協調器的版本是 {{coordinatorVersion}},但你的客戶端 app 是 {{clientVersion}}。版本不匹配可能會導致糟糕的用戶體驗。",
|
||||
"Update your RoboSats client": "更新你的 RoboSats 客戶端",
|
||||
"#32": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"#33": "Phrases in components/Dialogs/Warning.tsx",
|
||||
"Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.": "Coordinators of p2p trades are the source of trust, provide the infrastructure, pricing and will mediate in case of dispute. Make sure you research and trust \"{{coordinator_name}}\" before locking your bond. A malicious p2p coordinator can find ways to steal from you.",
|
||||
"I understand": "I understand",
|
||||
"Warning": "Warning",
|
||||
"#33": "Phrases in components/FederationTable/index.tsx",
|
||||
"#34": "Phrases in components/FederationTable/index.tsx",
|
||||
"Coordinators per page:": "Coordinators per page:",
|
||||
"Enabled": "Enabled",
|
||||
"No coordinators found.": "No coordinators found.",
|
||||
"Up": "Up",
|
||||
"#34": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"#35": "Phrases in components/HostAlert/SelfhostedAlert.tsx",
|
||||
"RoboSats client is served from your own node granting you the strongest security and privacy.": "RoboSats客戶端已由你自己的節點提供服務,為你提供最強的安全性和隱私性。",
|
||||
"You are self-hosting RoboSats": "你在自託管 RoboSats",
|
||||
"#35": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"#36": "Phrases in components/HostAlert/UnsafeAlert.tsx",
|
||||
"You are not using RoboSats privately": "你在不隱密地使用 RoboSats",
|
||||
"#36": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"#37": "Phrases in components/MakerForm/AmountRange.tsx",
|
||||
"From": "從",
|
||||
"to": "到",
|
||||
"#37": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
"#38": "Phrases in components/MakerForm/MakerForm.tsx",
|
||||
" at a {{discount}}% discount": " 於 {{discount}}% 折扣",
|
||||
" at a {{premium}}% premium": " 於 {{premium}}% 溢價",
|
||||
" at market price": " at market price",
|
||||
@ -405,10 +411,10 @@
|
||||
"You receive approx {{swapSats}} LN Sats (fees might vary)": "你將接收大約{{swapSats}}閃電聰(費用會造成有所差異)",
|
||||
"You send approx {{swapSats}} LN Sats (fees might vary)": "你將發送大約{{swapSats}}閃電聰(費用會造成有所差異)",
|
||||
"Your order fixed exchange rate": "你的訂單的固定匯率",
|
||||
"#38": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"#39": "Phrases in components/MakerForm/SelectCoordinator.tsx",
|
||||
"Order Host": "Order Host",
|
||||
"The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!": "The provider the lightning and communication infrastructure. The host will be in charge of providing support and solving disputes. The trade fees are set by the host. Make sure to only select order hosts that you trust!",
|
||||
"#39": "Phrases in components/Notifications/index.tsx",
|
||||
"#40": "Phrases in components/Notifications/index.tsx",
|
||||
"Lightning routing failed": "閃電路由失敗",
|
||||
"New chat message": "新消息",
|
||||
"Order chat is open": "訂單聊天已開通",
|
||||
@ -432,7 +438,7 @@
|
||||
"😪 Expired!": "😪 已過期!",
|
||||
"🙌 Funished!": "🙌 已完成!",
|
||||
"🥳 Taken!": "🥳 已吃單!",
|
||||
"#40": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"#41": "Phrases in components/OrderDetails/TakeButton.tsx",
|
||||
"Amount {{currencyCode}}": "{{currencyCode}} 金額",
|
||||
"By taking this order you risk wasting your time. If the maker does not proceed in time, you will be compensated in satoshis for 50% of the maker bond.": "接受此訂單可能會浪費你的時間。如果掛單方未及時響應,你將獲得掛單方保證金的50%的補償。",
|
||||
"Enter amount of fiat to exchange for bitcoin": "輸入以兌換比特幣的法幣金額",
|
||||
@ -445,7 +451,7 @@
|
||||
"You must specify an amount first": "你必須先指定金額",
|
||||
"You will receive {{satoshis}} Sats (Approx)": "You will receive {{satoshis}} Sats (Approx)",
|
||||
"You will send {{satoshis}} Sats (Approx)": "You will send {{satoshis}} Sats (Approx)",
|
||||
"#41": "Phrases in components/OrderDetails/index.tsx",
|
||||
"#42": "Phrases in components/OrderDetails/index.tsx",
|
||||
"Accepted payment methods": "接受的付款方法",
|
||||
"Amount of Satoshis": "聰金額",
|
||||
"Deposit timer": "存款計時器",
|
||||
@ -469,7 +475,7 @@
|
||||
"You send via Lightning {{amount}} Sats (Approx)": "You send via Lightning {{amount}} Sats (Approx)",
|
||||
"You send via {{method}} {{amount}}": "你通過{{method}}發送{{amount}}",
|
||||
"{{price}} {{currencyCode}}/BTC - Premium: {{premium}}%": "{{price}} {{currencyCode}}/BTC - 溢價: {{premium}}%",
|
||||
"#42": "Phrases in components/RobotInfo/index.tsx",
|
||||
"#43": "Phrases in components/RobotInfo/index.tsx",
|
||||
"Active order!": "Active order!",
|
||||
"Claim": "領取",
|
||||
"Claim Sats!": "Claim Sats!",
|
||||
@ -488,7 +494,7 @@
|
||||
"Your current order": "你當前的訂單",
|
||||
"Your last order #{{orderID}}": "你的上一筆交易 #{{orderID}}",
|
||||
"finished order": "finished order",
|
||||
"#43": "Phrases in components/SettingsForm/index.tsx",
|
||||
"#44": "Phrases in components/SettingsForm/index.tsx",
|
||||
"Build-in": "Build-in",
|
||||
"Dark": "深色",
|
||||
"Disabled": "Disabled",
|
||||
@ -497,16 +503,16 @@
|
||||
"Mainnet": "主網",
|
||||
"Swaps": "交換",
|
||||
"Testnet": "測試網",
|
||||
"#44": "Phrases in components/TorConnection/index.tsx",
|
||||
"#45": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"#45": "Phrases in components/TorConnection/index.tsx",
|
||||
"#46": "Phrases in components/TradeBox/CancelButton.tsx",
|
||||
"Cancel": "取消",
|
||||
"Cancel order and unlock bond instantly": "取消訂單並即刻解鎖保證金",
|
||||
"Collaborative Cancel": "合作取消",
|
||||
"Unilateral cancelation (bond at risk!)": "單方面取消(保證金風險!)",
|
||||
"#46": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"#47": "Phrases in components/TradeBox/CollabCancelAlert.tsx",
|
||||
"You asked for a collaborative cancellation": "你要求了合作取消",
|
||||
"{{nickname}} is asking for a collaborative cancel": "{{nickname}} 要求合作取消",
|
||||
"#47": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"#48": "Phrases in components/TradeBox/TradeSummary.tsx",
|
||||
"Buyer": "買方",
|
||||
"Completed in": "內完成",
|
||||
"Contract exchange rate": "合約交易率",
|
||||
@ -532,64 +538,64 @@
|
||||
"{{routingFeeSats}} MiliSats": "{{routingFeeSats}} 毫聰",
|
||||
"{{swapFeeSats}} Sats ({{swapFeePercent}}%)": "{{swapFeeSats}} 聰 ({{swapFeePercent}}%)",
|
||||
"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)": "{{tradeFeeSats}} 聰 ({{tradeFeePercent}}%)",
|
||||
"#48": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"#49": "Phrases in components/TradeBox/WalletsButton.tsx",
|
||||
"See Compatible Wallets": "查看兼容錢包列表",
|
||||
"#49": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCancel.tsx",
|
||||
"Cancel the order?": "取消訂單?",
|
||||
"Confirm Cancel": "確認取消",
|
||||
"If the order is cancelled now you will lose your bond.": "如果現在取消訂單,你將失去保證金。",
|
||||
"#50": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmCollabCancel.tsx",
|
||||
"Accept Cancelation": "接受取消",
|
||||
"Ask for Cancel": "要求取消",
|
||||
"Collaborative cancel the order?": "合作取消訂單?",
|
||||
"The trade escrow has been posted. The order can be cancelled only if both, maker and taker, agree to cancel.": "交易託管已發布。只有當掛單方和吃單方都同意取消時,才能取消訂單。",
|
||||
"Your peer has asked for cancellation": "你的對等方請求取消",
|
||||
"#51": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmDispute.tsx",
|
||||
"Agree and open dispute": "同意並開始爭議",
|
||||
"Disagree": "不同意",
|
||||
"Do you want to open a dispute?": "你想開始爭議嗎?",
|
||||
"Make sure to EXPORT the chat log. The staff might request your exported chat log JSON in order to solve discrepancies. It is your responsibility to store it.": "確保導出聊天記錄。工作人員可能會請求你提供所導出的聊天紀錄 JSON 以解決差異。存儲紀錄是你的責任。",
|
||||
"The RoboSats staff will examine the statements and evidence provided. You need to build a complete case, as the staff cannot read the chat. It is best to provide a burner contact method with your statement. The satoshis in the trade escrow will be sent to the dispute winner, while the dispute loser will lose the bond.": "RoboSats 工作人員將檢查所提供的聲明和證據。你需要建立一個完整的案例,因為工作人員無法閱讀聊天內容。最好在你的聲明中提供拋棄式的聯繫方式。交易託管中的聰將被發送給爭議獲勝者,而爭議失敗者將失去保證金。",
|
||||
"#52": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatReceived.tsx",
|
||||
"Confirm": "確認",
|
||||
"Confirm you received {{amount}} {{currencyCode}}?": "確認你已收到 {{amount}} {{currencyCode}}?",
|
||||
"Confirming that you received {{amount}} {{currencyCode}} will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after {{amount}} {{currencyCode}} have arrived to your account. Note that if you have received the payment and do not click confirm, you risk losing your bond.": "確認你已收到{{amount}} {{currencyCode}}時交易會被結算。在託管中的聰會被釋放給買方。僅當{{amount}} {{currencyCode}}已到達你的帳戶時才應確認。請注意,如果你已收到付款但是不點擊確認,則可能失去你的保證金。",
|
||||
"#53": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmFiatSent.tsx",
|
||||
"Confirm you sent {{amount}} {{currencyCode}}?": "確認你已發送{{amount}} {{currencyCode}}?",
|
||||
"Confirming that you sent {{amount}} {{currencyCode}} will allow your peer to finalize the trade. If you have not yet sent it and you still proceed to falsely confirm, you risk losing your bond.": "確認你已發送{{amount}} {{currencyCode}}將允許你的對等方結算交易。如果你還沒有付款但仍然虛假確認,則可能失去你的保證金。",
|
||||
"#54": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/ConfirmUndoFiatSent.tsx",
|
||||
"READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.": "READ. In case your payment to the seller has been blocked and it is absolutely impossible to finish the trade, you can revert your confirmation of \"Fiat sent\". Do so only if you and the seller have ALREADY AGREED in the chat to proceed to a collaborative cancellation. After confirming, the \"Collaborative cancel\" button will be visible again. Only click this button if you know what you are doing. First time users of RoboSats are highly discouraged from performing this action! Make 100% sure your payment has failed and the amount is in your account.",
|
||||
"Revert the confirmation of fiat sent?": "Revert the confirmation of fiat sent?",
|
||||
"Wait ({{time}})": "Wait ({{time}})",
|
||||
"#55": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"#56": "Phrases in components/TradeBox/Dialogs/WebLN.tsx",
|
||||
"Amount not yet locked, please check your WebLN wallet.": "金額還未鎖定,請查看你的 WebLN 錢包。",
|
||||
"Invoice not received, please check your WebLN wallet.": "沒有收到發票,請查看你的 WebLN 錢包。",
|
||||
"WebLN": "WebLN",
|
||||
"You can close now your WebLN wallet popup.": "現在可以關閉你的 WebLN 錢包彈出窗口。",
|
||||
"#56": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatBottom/index.tsx",
|
||||
"Audit PGP": "審計 PGP",
|
||||
"Export": "導出",
|
||||
"Save full log as a JSON file (messages and credentials)": "將全記錄檔保存為 JSON 文件(消息和憑據)",
|
||||
"Verify your privacy": "驗證你的隱私",
|
||||
"#57": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/ChatHeader/index.tsx",
|
||||
"...waiting": "...正在等待",
|
||||
"Activate slow mode (use it when the connection is slow)": "開啟慢速模式(在連接緩慢時使用)",
|
||||
"Peer": "對等方",
|
||||
"You": "你",
|
||||
"connected": "在線",
|
||||
"disconnected": "離線",
|
||||
"#58": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedSocketChat/index.tsx",
|
||||
"Connecting...": "正在連線...",
|
||||
"Send": "傳送",
|
||||
"Type a message": "鍵入消息",
|
||||
"Waiting for peer public key...": "正在等待對等方的公鑰...",
|
||||
"#59": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"#60": "Phrases in components/TradeBox/EncryptedChat/EncryptedTurtleChat/index.tsx",
|
||||
"#61": "Phrases in components/TradeBox/EncryptedChat/MessageCard/index.tsx",
|
||||
"#62": "Phrases in components/TradeBox/Forms/Dispute.tsx",
|
||||
"Attach chat logs": "附加聊天記錄",
|
||||
"Attaching chat logs helps the dispute resolution process and adds transparency. However, it might compromise your privacy.": "附加聊天記錄有助於爭議解決過程並增加透明度。但可能會損害你的隱私。",
|
||||
"Submit dispute statement": "提交爭議聲明",
|
||||
"#62": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"#63": "Phrases in components/TradeBox/Forms/LightningPayout.tsx",
|
||||
"Advanced options": "高級選項",
|
||||
"Invoice to wrap": "要包裹的發票",
|
||||
"Payout Lightning Invoice": "閃電支付發票",
|
||||
@ -600,14 +606,14 @@
|
||||
"Use Lnproxy": "使用 Lnproxy (閃電代理)",
|
||||
"Wrap": "包裹",
|
||||
"Wrapped invoice": "已包裹的發票",
|
||||
"#63": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"#64": "Phrases in components/TradeBox/Forms/OnchainPayout.tsx",
|
||||
"Bitcoin Address": "比特幣地址",
|
||||
"Final amount you will receive": "你將收到的最終金額",
|
||||
"Invalid": "無效",
|
||||
"Mining Fee": "挖礦費",
|
||||
"RoboSats coordinator will do a swap and send the Sats to your onchain address.": "RoboSats 協調器會執行交換並將聰發送到你的鏈上地址。",
|
||||
"Swap fee": "交換費",
|
||||
"#64": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Chat.tsx",
|
||||
"Confirm {{amount}} {{currencyCode}} received": "確認已收到 {{amount}} {{currencyCode}}",
|
||||
"Confirm {{amount}} {{currencyCode}} sent": "確認已發送 {{amount}} {{currencyCode}}",
|
||||
"Open Dispute": "開始爭議",
|
||||
@ -615,52 +621,52 @@
|
||||
"Say hi! Be helpful and concise. Let them know how to send you {{amount}} {{currencyCode}}.": "打個招呼!請保持你的回答有用且簡潔。讓他們知道如何向你發送 {{amount}} {{currencyCode}}。",
|
||||
"To open a dispute you need to wait": "要打開爭議的話你需要等",
|
||||
"Wait for the seller to confirm he has received the payment.": "等待賣方確認他已收到付款。",
|
||||
"#65": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/Dispute.tsx",
|
||||
"Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.": "Please, submit your statement. Be clear and specific about what happened and provide the necessary evidence. You MUST provide a contact method: burner email, SimpleX incognito link or telegram (make sure to create a searchable username) to follow up with the dispute solver (your trade host/coordinator). Disputes are solved at the discretion of real robots (aka humans), so be as helpful as possible to ensure a fair outcome.",
|
||||
"#66": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeLoser.tsx",
|
||||
"Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com": "Unfortunately you have lost the dispute. If you think this is a mistake you can ask to re-open the case by contacting your coordinator. If you think your coordinator was unfair, please fill a claim via email to robosats@protonmail.com",
|
||||
"#67": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitPeer.tsx",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.": "Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself using that information if you contact your trade coordinator.",
|
||||
"We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.": "We are waiting for your trade counterpart statement. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods.",
|
||||
"#68": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWaitResolution.tsx",
|
||||
"Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.": "Both statements have been received, wait for the staff to resolve the dispute. If you are hesitant about the state of the dispute or want to add more information, contact your order trade coordinator (the host) via one of their contact methods. If you did not provide a contact method, or are unsure whether you wrote it right, write your coordinator immediately.",
|
||||
"Please, save the information needed to identify your order and your payments: order ID; payment hashes of the bonds or escrow (check on your lightning wallet); exact amount of satoshis; and robot nickname. You will have to identify yourself as the user involved in this trade via email (or other contact methods).": "請保存識別你的訂單和付款所需的信息:訂單 ID; 保證金或託管的支付散列值(查看你的閃電錢包);聰的確切金額;和機器人暱稱。 你必須通過電子郵件(或其他聯繫方式)表明自己是參與此交易的用戶。",
|
||||
"#69": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/DisputeWinner.tsx",
|
||||
"You can claim the dispute resolution amount (escrow and fidelity bond) from your profile rewards. If there is anything the staff can help with, do not hesitate to contact to robosats@protonmail.com (or via your provided burner contact method).": "你可以從你的個人資料下的獎勵中索取解決爭議的金額(託管和保證金)。如果工作人員可以提供任何幫助,請隨時聯繫 robosats@protonmail.com(或通過你提供的拋棄式聯繫方式)。",
|
||||
"#70": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/EscrowWait.tsx",
|
||||
"Just hang on for a moment. If the seller does not deposit, you will get your bond back automatically. In addition, you will receive a compensation (check the rewards in your profile).": "請稍等片刻。如果賣方不存款,你將自動取回保證金。此外,你將獲得補償(查看你個人資料中的獎勵)。",
|
||||
"We are waiting for the seller to lock the trade amount.": "我們正在等待賣方鎖定交易金額。",
|
||||
"#71": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/Expired.tsx",
|
||||
"Renew Order": "延續訂單",
|
||||
"#72": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/LockInvoice.tsx",
|
||||
"Copy to clipboard": "複製到剪貼板",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be charged only if you cancel or lose a dispute.": "這是一張 hold 發票,它會在你的錢包內凍結。只有當你取消或爭議失败的時候才會被收取。",
|
||||
"This is a hold invoice, it will freeze in your wallet. It will be released to the buyer once you confirm to have received the {{currencyCode}}.": "這是一張 hold 發票,它會在你的錢包內凍結。當你確認收到 {{currencyCode}} 後它會被釋放給買方。",
|
||||
"#73": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Paused.tsx",
|
||||
"Unpause Order": "取消暫停訂單",
|
||||
"Your public order has been paused. At the moment it cannot be seen or taken by other robots. You can choose to unpause it at any time.": "你的公開訂單已暫停。目前其他機器人無法看到或接受你的訂單。你隨時可以選擇取消暫停。",
|
||||
"#74": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/Payout.tsx",
|
||||
"Before letting you send {{amountFiat}} {{currencyCode}}, we want to make sure you are able to receive the BTC.": "在讓你發送 {{amountFiat}} {{currencyCode}} 之前,我們想確認你能夠收到比特幣。",
|
||||
"Lightning": "閃電",
|
||||
"Onchain": "鏈上",
|
||||
"#75": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PayoutWait.tsx",
|
||||
"Just hang on for a moment. If the buyer does not cooperate, you will get back the trade collateral and your bond automatically. In addition, you will receive a compensation (check the rewards in your profile).": "請稍等片刻。如果買方不配合,你將自動取回交易抵押和保證金。此外,你將獲得補償(查看你個人資料中的獎勵)。",
|
||||
"We are waiting for the buyer to post a lightning invoice. Once he does, you will be able to directly communicate the payment details.": "我們正在等待買方發布閃電發票。 一旦發布,你將能夠直接溝通法幣付款詳情。",
|
||||
"#76": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/PublicWait.tsx",
|
||||
"Among public {{currencyCode}} orders (higher is cheaper)": "在公開的 {{currencyCode}} 訂單中(越高排位越便宜)",
|
||||
"If the order expires untaken, your bond will return to you (no action needed).": "如果訂單到期前未執行,你的保證金將退還給你(無需採取任何行動)。",
|
||||
"Pause the public order": "暫停公開訂單",
|
||||
"Premium rank": "溢價排行",
|
||||
"Public orders for {{currencyCode}}": "{{currencyCode}} 的公開訂單",
|
||||
"#77": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/RoutingFailed.tsx",
|
||||
"Failure reason:": "失敗原因:",
|
||||
"Next attempt in": "下一次嘗試",
|
||||
"Retrying!": "重試中!",
|
||||
"RoboSats will try to pay your invoice 3 times with a one minute pause in between. If it keeps failing, you will be able to submit a new invoice. Check whether you have enough inbound liquidity. Remember that lightning nodes must be online in order to receive payments.": "RoboSats 將嘗試支付你的發票3次,每次嘗試間隔1分鐘。如果它一再失敗,你將能夠提交新的發票。檢查你是否有足夠的入站流動性。請注意,閃電節點必須在線才能接收付款。",
|
||||
"Your invoice has expired or more than 3 payment attempts have been made. Submit a new invoice.": "你的發票已到期或已進行超過3次付款嘗試。提交一張新的發票。",
|
||||
"#78": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/SendingSats.tsx",
|
||||
"RoboSats is trying to pay your lightning invoice. Remember that lightning nodes must be online in order to receive payments.": "RoboSats 正在嘗試支付你的閃電發票。請注意,閃電節點必須在線才能接收付款。",
|
||||
"#79": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/Successful.tsx",
|
||||
"Renew": "延續",
|
||||
"RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats 會隨著更多的流動性和更高的用戶数量而變得更好。把 RoboSats 推薦給你的比特幣朋友吧!",
|
||||
"Sending coins to": "將比特幣發送到",
|
||||
@ -669,13 +675,13 @@
|
||||
"Thank you! RoboSats loves you too": "謝謝!RoboSats 也愛你",
|
||||
"What do you think your order host \"{{coordinator}}\"?": "What do you think your order host \"{{coordinator}}\"?",
|
||||
"Your TXID": "你的 TXID",
|
||||
"#80": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"#81": "Phrases in components/TradeBox/Prompts/TakerFound.tsx",
|
||||
"Please wait for the taker to lock a bond. If the taker does not lock a bond in time, the order will be made public again.": "請等待吃單方鎖定保證金。如果吃單方沒有及時鎖定保證金,訂單將再次公開。",
|
||||
"#81": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"#82": "Phrases in pro/LandingDialog/index.tsx",
|
||||
"A robot technician has arrived!": "機器人技術人員來了!",
|
||||
"I bring my own robots, here they are. (Drag and drop workspace.json)": "我自帶機器人,它們在這裡。(拖放 workspace.json)",
|
||||
"My first time here. Generate a new Robot Garage and extended robot token (xToken).": "這是我的第一次。生成機器人倉庫和擴展機器人領牌 (xToken)。",
|
||||
"#82": "Phrases in pro/ToolBar/index.tsx",
|
||||
"#83": "Phrases in pro/ToolBar/index.tsx",
|
||||
"Customize viewports": "自定義視口",
|
||||
"Freeze viewports": "凍結視口",
|
||||
"unsafe_alert": "To protect your data and privacy use<1>Tor Browser</1> and visit a federation hosted <3>Onion</3> site. Or host your own <5>Client.</5>",
|
||||
@ -694,7 +700,7 @@
|
||||
"In dispute": "正在爭議中",
|
||||
"Collaboratively cancelled": "已合作取消",
|
||||
"Sending satoshis to buyer": "正在向買方發送聰",
|
||||
"Sucessful trade": "成功交易",
|
||||
"Successful trade": "成功交易",
|
||||
"Failed lightning network routing": "閃電路由失敗",
|
||||
"Wait for dispute resolution": "等待爭議解決",
|
||||
"Maker lost dispute": "掛單方失去了爭議",
|
||||
|
@ -151,8 +151,8 @@ android {
|
||||
applicationId "com.robosats"
|
||||
minSdkVersion rootProject.ext.minSdkVersion
|
||||
targetSdkVersion rootProject.ext.targetSdkVersion
|
||||
versionCode 2
|
||||
versionName "0.6.2-alpha"
|
||||
versionCode 3
|
||||
versionName "0.6.3-alpha"
|
||||
buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString()
|
||||
|
||||
if (isNewArchitectureEnabled()) {
|
||||
|
2233
mobile/package-lock.json
generated
2233
mobile/package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "robosats",
|
||||
"version": "0.6.2",
|
||||
"version": "0.6.3",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"android": "react-native run-android",
|
||||
@ -26,7 +26,7 @@
|
||||
"@types/jest": "^29.5.12",
|
||||
"@types/react-native": "^0.71.3",
|
||||
"@types/react-test-renderer": "^18.0.0",
|
||||
"@typescript-eslint/eslint-plugin": "^5.59.2",
|
||||
"@typescript-eslint/eslint-plugin": "^8.0.1",
|
||||
"@typescript-eslint/parser": "^5.59.6",
|
||||
"babel-jest": "^29.7.0",
|
||||
"eslint": "^8.39.0",
|
||||
@ -35,13 +35,13 @@
|
||||
"eslint-import-resolver-typescript": "^3.6.0",
|
||||
"eslint-plugin-import": "^2.27.5",
|
||||
"eslint-plugin-n": "^15.7.0",
|
||||
"eslint-plugin-prettier": "^5.1.3",
|
||||
"eslint-plugin-promise": "^6.1.1",
|
||||
"eslint-plugin-react": "^7.32.2",
|
||||
"eslint-plugin-prettier": "^5.2.1",
|
||||
"eslint-plugin-promise": "^6.6.0",
|
||||
"eslint-plugin-react": "^7.35.0",
|
||||
"eslint-plugin-react-hooks": "^4.6.2",
|
||||
"jest": "^29.7.0",
|
||||
"metro-react-native-babel-preset": "^0.75.1",
|
||||
"prettier": "^3.3.2",
|
||||
"prettier": "^3.3.3",
|
||||
"react-test-renderer": "18.2.0",
|
||||
"typescript": "^5.4.5"
|
||||
},
|
||||
|
@ -1,20 +1,26 @@
|
||||
RoboSats v0.6.2 is now out! :rocket:
|
||||
RoboSats v0.6.3 is now out! :rocket:
|
||||
|
||||
# Changes
|
||||
## What's new
|
||||
In v0.6.2 we only fix a regression introduced in v0.6.2 that makes the depth chart crash.
|
||||
- Manually add new coordinators @KoalaSats
|
||||
- Polished for CLN coordinators by @jerryfletcher21 and @daywalker90
|
||||
- New feature rich notificaitons endpoint at `/api/notifications` by @koalasats
|
||||
- Turn on/off the built in Tor node on Android (allows use with Orbot) @KoalaSats
|
||||
- Remove robot avatars from coordinator (better coordinator performance)
|
||||
- Several small bugs and UI issues mostly by @KoalaSats and @jerryfletcher21
|
||||
- Improved API docs by @jerryfletcher21
|
||||
|
||||
# Android
|
||||
|
||||
**[Click to download universal RoboSats APK for Android](https://github.com/RoboSats/robosats/releases/download/v0.6.2-alpha/robosats-v0.6.2.alpha-universal.apk)**
|
||||
**[Click to download universal RoboSats APK for Android](https://github.com/RoboSats/robosats/releases/download/v0.6.3-alpha/robosats-v0.6.3.alpha-universal.apk)**
|
||||
Smaller bundles for each CPU architecture available in the attachments.
|
||||
|
||||
### Verify the app using GPG:
|
||||
|
||||
1. [Download the ascii armored signature](https://github.com/Reckless-Satoshi/robosats/releases/download/v0.6.2-alpha/robosats-v0.6.2.alpha-universal.apk.asc)
|
||||
1. [Download the ascii armored signature](https://github.com/Reckless-Satoshi/robosats/releases/download/v0.6.3-alpha/robosats-v0.6.3.alpha-universal.apk.asc)
|
||||
|
||||
2. Run this command on a directory that contains the apk file and and the ascii armored signature.
|
||||
`gpg --verify robosats-v0.6.2.alpha-universal.apk.asc`
|
||||
`gpg --verify robosats-v0.6.3.alpha-universal.apk.asc`
|
||||
|
||||
3. Verify the signer is actually Reckless-Satoshi (fingerprints match): [B4AB5F19113D4125DDF217739C4585B561315571](https://keys.openpgp.org/vks/v1/by-fingerprint/B4AB5F19113D4125DDF217739C4585B561315571)
|
||||
|
||||
@ -22,17 +28,17 @@ Alternatively you can also verify with the release with the SHA256 checksum.
|
||||
|
||||
# Docker Images
|
||||
|
||||
[Coordinator Backend Image v0.6.2-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats/tags?page=1&name=v0.6.2-alpha)
|
||||
[Coordinator Backend Image v0.6.3-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats/tags?page=1&name=v0.6.3-alpha)
|
||||
|
||||
|
||||
```bash
|
||||
docker pull recksato/robosats:v0.6.2-alpha
|
||||
docker pull recksato/robosats:v0.6.3-alpha
|
||||
```
|
||||
|
||||
[Client App Image v0.6.2-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats-client/tags?page=1&name=v0.6.2-alpha)
|
||||
[Client App Image v0.6.3-alpha (Docker Hub)](https://hub.docker.com/r/recksato/robosats-client/tags?page=1&name=v0.6.3-alpha)
|
||||
|
||||
```bash
|
||||
docker pull recksato/robosats-client:v0.6.2-alpha
|
||||
docker pull recksato/robosats-client:v0.6.3-alpha
|
||||
```
|
||||
|
||||
See [nodeapp/docker-compose.yml](https://github.com/Reckless-Satoshi/robosats/blob/2cd9d748706a8dcc0f03006b483acc6000e0572a/nodeapp/docker-compose.yml) for an example docker-compose usage of the `robosats-client` image.
|
||||
|
@ -1,4 +1,4 @@
|
||||
django==5.0.6
|
||||
django==5.0.8
|
||||
django-admin-relation-links==0.2.5
|
||||
django-celery-beat==2.6.0
|
||||
django-celery-results==2.5.1
|
||||
@ -11,7 +11,7 @@ celery==5.4.0
|
||||
grpcio==1.62.0
|
||||
googleapis-common-protos==1.63.0
|
||||
grpcio-tools==1.62.0
|
||||
numpy==1.26.0
|
||||
numpy==1.26.4
|
||||
Pillow==10.1.0
|
||||
python-decouple==3.8
|
||||
requests==2.31.0
|
||||
@ -19,12 +19,12 @@ ring==0.10.1
|
||||
gunicorn==22.0.0
|
||||
psycopg2==2.9.9
|
||||
SQLAlchemy==2.0.16
|
||||
django-import-export==4.0.7
|
||||
django-import-export==4.1.1
|
||||
requests[socks]
|
||||
shapely==2.0.4
|
||||
shapely==2.0.5
|
||||
python-gnupg==0.5.2
|
||||
daphne==4.1.2
|
||||
drf-spectacular==0.27.2
|
||||
drf-spectacular-sidecar==2024.4.1
|
||||
django-cors-headers==4.3.1
|
||||
drf-spectacular-sidecar==2024.7.1
|
||||
django-cors-headers==4.4.0
|
||||
base91==1.0.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
coverage==7.5.0
|
||||
ruff==0.4.2
|
||||
coverage==7.6.0
|
||||
ruff==0.5.7
|
||||
git+https://github.com/Reckless-Satoshi/drf-openapi-tester.git@soften-django-requirements
|
||||
pre-commit==3.7.0
|
||||
pre-commit==3.8.0
|
@ -239,6 +239,16 @@ class TradeTest(BaseAPITestCase):
|
||||
self.assertIsNone(data["taker"], "New order's taker is not null")
|
||||
self.assert_order_logs(data["id"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(
|
||||
len(notifications_data),
|
||||
0,
|
||||
"User has no notification",
|
||||
)
|
||||
|
||||
def test_make_order_on_blocked_country(self):
|
||||
"""
|
||||
Test the creation of an F2F order on a geoblocked location
|
||||
@ -342,6 +352,16 @@ class TradeTest(BaseAPITestCase):
|
||||
self.assertIsInstance(public_data["price_now"], float)
|
||||
self.assertIsInstance(data["satoshis_now"], int)
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"✅ Hey {data['maker_nick']}, your order with ID {trade.order_id} is public in the order book.",
|
||||
)
|
||||
|
||||
# Cancel order to avoid leaving pending HTLCs after a successful test
|
||||
trade.cancel_order()
|
||||
|
||||
@ -506,6 +526,25 @@ class TradeTest(BaseAPITestCase):
|
||||
self.assertEqual(data["status_message"], Order.Status(Order.Status.CHA).label)
|
||||
self.assertFalse(data["is_fiat_sent"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"✅ Hey {data['maker_nick']}, the escrow and invoice have been submitted. The fiat exchange starts now via the platform chat.",
|
||||
)
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"✅ Hey {data['taker_nick']}, the escrow and invoice have been submitted. The fiat exchange starts now via the platform chat.",
|
||||
)
|
||||
|
||||
# Cancel order to avoid leaving pending HTLCs after a successful test
|
||||
trade.cancel_order(trade.maker_index)
|
||||
trade.cancel_order(trade.taker_index)
|
||||
@ -532,6 +571,27 @@ class TradeTest(BaseAPITestCase):
|
||||
self.assertEqual(data["status_message"], Order.Status(Order.Status.CHA).label)
|
||||
self.assertFalse(data["is_fiat_sent"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
maker_nick = read_file(f"tests/robots/{trade.maker_index}/nickname")
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"✅ Hey {maker_nick}, the escrow and invoice have been submitted. The fiat exchange starts now via the platform chat.",
|
||||
)
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
taker_nick = read_file(f"tests/robots/{trade.taker_index}/nickname")
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"✅ Hey {taker_nick}, the escrow and invoice have been submitted. The fiat exchange starts now via the platform chat.",
|
||||
)
|
||||
|
||||
# Cancel order to avoid leaving pending HTLCs after a successful test
|
||||
trade.cancel_order(trade.maker_index)
|
||||
trade.cancel_order(trade.taker_index)
|
||||
@ -595,6 +655,25 @@ class TradeTest(BaseAPITestCase):
|
||||
|
||||
self.assert_order_logs(data["id"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"🥳 Your order with ID {str(trade.order_id)} has finished successfully!",
|
||||
)
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"🥳 Your order with ID {str(trade.order_id)} has finished successfully!",
|
||||
)
|
||||
|
||||
def test_successful_LN(self):
|
||||
"""
|
||||
Tests a trade from order creation until Sats sent to buyer
|
||||
@ -670,6 +749,17 @@ class TradeTest(BaseAPITestCase):
|
||||
data["bad_request"], "This order has been cancelled by the maker"
|
||||
)
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
maker_nick = read_file(f"tests/robots/{trade.maker_index}/nickname")
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"❌ Hey {maker_nick}, you have cancelled your public order with ID {trade.order_id}.",
|
||||
)
|
||||
|
||||
def test_collaborative_cancel_order_in_chat(self):
|
||||
"""
|
||||
Tests the collaborative cancellation of an order in the chat state
|
||||
@ -702,6 +792,27 @@ class TradeTest(BaseAPITestCase):
|
||||
"This order has been cancelled collaborativelly",
|
||||
)
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
maker_nick = read_file(f"tests/robots/{trade.maker_index}/nickname")
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"❌ Hey {maker_nick}, your order with ID {trade.order_id} has been collaboratively cancelled.",
|
||||
)
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
taker_nick = read_file(f"tests/robots/{trade.taker_index}/nickname")
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"❌ Hey {taker_nick}, your order with ID {trade.order_id} has been collaboratively cancelled.",
|
||||
)
|
||||
|
||||
def test_created_order_expires(self):
|
||||
"""
|
||||
Tests the expiration of a public order
|
||||
@ -740,11 +851,7 @@ class TradeTest(BaseAPITestCase):
|
||||
"""
|
||||
trade = Trade(self.client)
|
||||
trade.publish_order()
|
||||
|
||||
# Change order expiry to now
|
||||
order = Order.objects.get(id=trade.response.json()["id"])
|
||||
order.expires_at = datetime.now()
|
||||
order.save()
|
||||
trade.expire_order()
|
||||
|
||||
# Make orders expire
|
||||
trade.clean_orders()
|
||||
@ -767,6 +874,16 @@ class TradeTest(BaseAPITestCase):
|
||||
|
||||
self.assert_order_logs(data["id"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"😪 Hey {data['maker_nick']}, your order with ID {str(trade.order_id)} has expired without a taker.",
|
||||
)
|
||||
|
||||
def test_taken_order_expires(self):
|
||||
"""
|
||||
Tests the expiration of a public order
|
||||
@ -777,9 +894,7 @@ class TradeTest(BaseAPITestCase):
|
||||
trade.lock_taker_bond()
|
||||
|
||||
# Change order expiry to now
|
||||
order = Order.objects.get(id=trade.response.json()["id"])
|
||||
order.expires_at = datetime.now()
|
||||
order.save()
|
||||
trade.expire_order()
|
||||
|
||||
# Make orders expire
|
||||
trade.clean_orders()
|
||||
@ -876,19 +991,41 @@ class TradeTest(BaseAPITestCase):
|
||||
self.assertTrue(response.json()["peer_connected"])
|
||||
|
||||
# Post new message as maker
|
||||
body = {"PGP_message": message, "order_id": trade.order_id, "offset": 0}
|
||||
response = self.client.post(path, data=body, **maker_headers)
|
||||
trade.send_chat_message(message, trade.maker_index)
|
||||
self.assertResponse(trade.response)
|
||||
self.assertEqual(trade.response.status_code, 200)
|
||||
self.assertEqual(trade.response.json()["messages"][0]["message"], message)
|
||||
self.assertTrue(trade.response.json()["peer_connected"])
|
||||
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertEqual(response.json()["messages"][0]["message"], message)
|
||||
self.assertTrue(response.json()["peer_connected"])
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"💬 Hey {taker_nick}, a new chat message in-app was sent to you by {maker_nick} for order ID {trade.order_id}.",
|
||||
)
|
||||
|
||||
# Post new message as taker without offset, so response should not have messages.
|
||||
body = {"PGP_message": message + " 2", "order_id": trade.order_id}
|
||||
response = self.client.post(path, data=body, **taker_headers)
|
||||
trade.send_chat_message(message + " 2", trade.taker_index)
|
||||
self.assertResponse(trade.response)
|
||||
self.assertEqual(trade.response.status_code, 200)
|
||||
self.assertEqual(trade.response.json()["messages"][0]["message"], message)
|
||||
self.assertEqual(
|
||||
trade.response.json()["messages"][1]["message"], message + " 2"
|
||||
)
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertEqual(response.json(), {}) # Nothing in the response
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
# Does not receive notification because user is online
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"✅ Hey {maker_nick}, the escrow and invoice have been submitted. The fiat exchange starts now via the platform chat.",
|
||||
)
|
||||
|
||||
# Get the two chatroom messages as maker
|
||||
response = self.client.get(path + params, **maker_headers)
|
||||
@ -946,6 +1083,25 @@ class TradeTest(BaseAPITestCase):
|
||||
|
||||
self.assert_order_logs(data["id"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"⚖️ Hey {data['maker_nick']}, a dispute has been opened on your order with ID {str(trade.order_id)}.",
|
||||
)
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"⚖️ Hey {data['taker_nick']}, a dispute has been opened on your order with ID {str(trade.order_id)}.",
|
||||
)
|
||||
|
||||
def test_order_expires_after_only_maker_messaged(self):
|
||||
"""
|
||||
Tests the expiration of an order in chat where taker never messaged
|
||||
@ -988,6 +1144,79 @@ class TradeTest(BaseAPITestCase):
|
||||
|
||||
self.assert_order_logs(data["id"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"⚖️ Hey {data['maker_nick']}, a dispute has been opened on your order with ID {str(trade.order_id)}.",
|
||||
)
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"⚖️ Hey {data['taker_nick']}, a dispute has been opened on your order with ID {str(trade.order_id)}.",
|
||||
)
|
||||
|
||||
# def test_dispute_closed_maker_wins(self):
|
||||
# trade = Trade(self.client)
|
||||
# trade.publish_order()
|
||||
# trade.take_order()
|
||||
# trade.lock_taker_bond()
|
||||
# trade.lock_escrow(trade.taker_index)
|
||||
# trade.submit_payout_invoice(trade.maker_index)
|
||||
|
||||
# # Admin resolves dispute
|
||||
|
||||
# trade.clean_orders()
|
||||
|
||||
# maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
# response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
# self.assertResponse(response)
|
||||
# notifications_data = list(response.json())
|
||||
# self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
# self.assertEqual(
|
||||
# notifications_data[0]["title"],
|
||||
# f"⚖️ Hey {data['maker_nick']}, you won the dispute on your order with ID {str(trade.order_id)}."
|
||||
# )
|
||||
# taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
# response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
# self.assertResponse(response)
|
||||
# notifications_data = list(response.json())
|
||||
# self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
# self.assertEqual(
|
||||
# notifications_data[0]["title"],
|
||||
# f"⚖️ Hey {data['taker_nick']}, you lost the dispute on your order with ID {str(trade.order_id)}."
|
||||
# )
|
||||
|
||||
def test_lightning_payment_failed(self):
|
||||
trade = Trade(self.client)
|
||||
trade.publish_order()
|
||||
trade.take_order()
|
||||
trade.lock_taker_bond()
|
||||
trade.lock_escrow(trade.taker_index)
|
||||
trade.submit_payout_invoice(trade.maker_index)
|
||||
|
||||
trade.change_order_status(Order.Status.FAI)
|
||||
|
||||
trade.clean_orders()
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
maker_nick = read_file(f"tests/robots/{trade.maker_index}/nickname")
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"⚡❌ Hey {maker_nick}, the lightning payment on your order with ID {str(trade.order_id)} failed.",
|
||||
)
|
||||
|
||||
def test_withdraw_reward_after_unilateral_cancel(self):
|
||||
"""
|
||||
Tests withdraw rewards as taker after maker cancels order unilaterally
|
||||
@ -1058,6 +1287,25 @@ class TradeTest(BaseAPITestCase):
|
||||
|
||||
self.assert_order_logs(data["id"])
|
||||
|
||||
maker_headers = trade.get_robot_auth(trade.maker_index)
|
||||
response = self.client.get(reverse("notifications"), **maker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"⚖️ Hey {data['maker_nick']}, a dispute has been opened on your order with ID {str(trade.order_id)}.",
|
||||
)
|
||||
taker_headers = trade.get_robot_auth(trade.taker_index)
|
||||
response = self.client.get(reverse("notifications"), **taker_headers)
|
||||
self.assertResponse(response)
|
||||
notifications_data = list(response.json())
|
||||
self.assertEqual(notifications_data[0]["order_id"], trade.order_id)
|
||||
self.assertEqual(
|
||||
notifications_data[0]["title"],
|
||||
f"⚖️ Hey {data['taker_nick']}, a dispute has been opened on your order with ID {str(trade.order_id)}.",
|
||||
)
|
||||
|
||||
def test_ticks(self):
|
||||
"""
|
||||
Tests the historical ticks serving endpoint after creating a contract
|
||||
|
@ -1,5 +1,5 @@
|
||||
from unittest.mock import patch
|
||||
|
||||
from datetime import datetime
|
||||
from django.urls import reverse
|
||||
|
||||
from api.management.commands.clean_orders import Command as CleanOrders
|
||||
@ -119,6 +119,14 @@ class Trade:
|
||||
body = {"action": "cancel"}
|
||||
self.response = self.client.post(path + params, body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def send_chat_message(self, message, robot_index=1):
|
||||
path = reverse("chat")
|
||||
headers = self.get_robot_auth(robot_index)
|
||||
body = {"PGP_message": message, "order_id": self.order_id, "offset": 0}
|
||||
self.response = self.client.post(path, data=body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def pause_order(self, robot_index=1):
|
||||
path = reverse("order")
|
||||
params = f"?order_id={self.order_id}"
|
||||
@ -126,11 +134,13 @@ class Trade:
|
||||
body = {"action": "pause"}
|
||||
self.response = self.client.post(path + params, body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def follow_hold_invoices(self):
|
||||
# A background thread checks every 5 second the status of invoices. We invoke directly during test.
|
||||
follower = FollowInvoices()
|
||||
follower.follow_hold_invoices()
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def clean_orders(self):
|
||||
# A background thread checks every 5 second order expirations. We invoke directly during test.
|
||||
cleaner = CleanOrders()
|
||||
@ -160,6 +170,7 @@ class Trade:
|
||||
# Get order
|
||||
self.get_order()
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def take_order(self):
|
||||
path = reverse("order")
|
||||
params = f"?order_id={self.order_id}"
|
||||
@ -167,6 +178,7 @@ class Trade:
|
||||
body = {"action": "take", "amount": self.take_amount}
|
||||
self.response = self.client.post(path + params, body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def lock_taker_bond(self):
|
||||
# Takers's first order fetch. Should trigger maker bond hold invoice generation.
|
||||
self.get_order(self.taker_index)
|
||||
@ -181,6 +193,7 @@ class Trade:
|
||||
# Get order
|
||||
self.get_order(self.taker_index)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def lock_escrow(self, robot_index):
|
||||
# Takers's order fetch. Should trigger trade escrow bond hold invoice generation.
|
||||
self.get_order(robot_index)
|
||||
@ -195,6 +208,7 @@ class Trade:
|
||||
# Get order
|
||||
self.get_order()
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def submit_payout_address(self, robot_index=1):
|
||||
path = reverse("order")
|
||||
params = f"?order_id={self.order_id}"
|
||||
@ -213,6 +227,7 @@ class Trade:
|
||||
}
|
||||
self.response = self.client.post(path + params, body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def submit_payout_invoice(self, robot_index=1, routing_budget=0):
|
||||
path = reverse("order")
|
||||
params = f"?order_id={self.order_id}"
|
||||
@ -234,6 +249,7 @@ class Trade:
|
||||
|
||||
self.response = self.client.post(path + params, body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def confirm_fiat(self, robot_index=1):
|
||||
path = reverse("order")
|
||||
params = f"?order_id={self.order_id}"
|
||||
@ -241,9 +257,23 @@ class Trade:
|
||||
body = {"action": "confirm"}
|
||||
self.response = self.client.post(path + params, body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def undo_confirm_sent(self, robot_index=1):
|
||||
path = reverse("order")
|
||||
params = f"?order_id={self.order_id}"
|
||||
headers = self.get_robot_auth(robot_index)
|
||||
body = {"action": "undo_confirm"}
|
||||
self.response = self.client.post(path + params, body, **headers)
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def expire_order(self):
|
||||
# Change order expiry to now
|
||||
order = Order.objects.get(id=self.order_id)
|
||||
order.expires_at = datetime.now()
|
||||
order.save()
|
||||
|
||||
@patch("api.tasks.send_notification.delay", send_notification)
|
||||
def change_order_status(self, status):
|
||||
# Change order expiry to now
|
||||
order = Order.objects.get(id=self.order_id)
|
||||
order.update_status(status)
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"major": 0,
|
||||
"minor": 6,
|
||||
"patch": 2
|
||||
"patch": 3
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user