From 834733cb616a28e09597d3b386a35ed6a93f2ee8 Mon Sep 17 00:00:00 2001 From: Reckless_Satoshi Date: Sat, 16 Jul 2022 04:15:00 -0700 Subject: [PATCH] Add trade summary at trade finish --- .github/workflows/frontend-build.yml | 7 +- api/logics.py | 48 +++++ api/views.py | 6 +- frontend/src/components/Icons/Bitcoin.tsx | 2 +- .../src/components/Icons/RoboSatsText.tsx | 2 +- frontend/src/components/TradeBox.js | 57 ++--- frontend/src/components/TradeSummary.tsx | 197 ++++++++++++++++++ frontend/src/locales/ca.json | 4 +- frontend/src/locales/de.json | 4 +- frontend/src/locales/en.json | 4 +- frontend/src/locales/es.json | 26 ++- frontend/src/locales/eu.json | 4 +- frontend/src/locales/fr.json | 4 +- frontend/src/locales/it.json | 4 +- frontend/src/locales/pl.json | 4 +- frontend/src/locales/pt.json | 4 +- frontend/src/locales/ru.json | 4 +- frontend/src/locales/zh.json | 4 +- 18 files changed, 333 insertions(+), 52 deletions(-) create mode 100644 frontend/src/components/TradeSummary.tsx diff --git a/.github/workflows/frontend-build.yml b/.github/workflows/frontend-build.yml index fc58a11d..f0ca95a1 100644 --- a/.github/workflows/frontend-build.yml +++ b/.github/workflows/frontend-build.yml @@ -46,4 +46,9 @@ jobs: uses: actions/upload-artifact@v3 with: name: main-js - path: frontend/static/frontend/main.js \ No newline at end of file + path: frontend/static/frontend/main.js + - name: 'Invoke Docker Build CI workflow' + uses: benc-uk/workflow-dispatch@v1 + with: + workflow: 'Docker Image CI' + token: ${{ secrets.PERSONAL_TOKEN }} \ No newline at end of file diff --git a/api/logics.py b/api/logics.py index 146aabbe..a9101dfc 100644 --- a/api/logics.py +++ b/api/logics.py @@ -1568,5 +1568,53 @@ class Logics: context['bad_invoice'] = failure_reason return False, context + @classmethod + def summarize_trade(cls, order, user): + ''' + Summarizes a finished order. Returns a dict with + amounts, fees, costs, etc, for buyer and seller. + ''' + if order.status != Order.Status.SUC: + return False, {'bad_summary':'Order has not finished yet'} + context = {} + users = {'taker': order.taker, 'maker': order.maker} + for order_user in users: + + summary = {} + summary['trade_fee_percent'] = FEE * MAKER_FEE_SPLIT if order_user == 'maker' else FEE * (1 - MAKER_FEE_SPLIT) + summary['bond_size_sats'] = order.maker_bond.num_satoshis if order_user == 'maker' else order.taker_bond.num_satoshis + summary['bond_size_percent'] = order.bond_size + summary['is_buyer'] = cls.is_buyer(order, users[order_user]) + + if summary['is_buyer']: + summary['sent_fiat'] = order.amount + if order.is_swap: + summary['received_sats'] = order.payout_tx.sent_satoshis + else: + summary['received_sats'] = order.payout.num_satoshis + summary['trade_fee_sats'] = round(order.last_satoshis - summary['received_sats']) + # Only add context for swap costs if the user is the swap recipient. Peer should not know whether it was a swap + if users[order_user] == user and order.is_swap: + summary['is_swap'] = order.is_swap + summary['received_onchain_sats'] = order.payout_tx.sent_satoshis + summary['mining_fee_sats'] = order.payout_tx.mining_fee_sats + summary['swap_fee_sats'] = round(order.payout_tx.num_satoshis - order.payout_tx.mining_fee_sats - order.payout_tx.sent_satoshis) + summary['swap_fee_percent'] = order.payout_tx.swap_fee_rate + else: + summary['sent_sats'] = order.trade_escrow.num_satoshis + summary['received_fiat'] = order.amount + summary['trade_fee_sats'] = round(summary['sent_sats'] - order.last_satoshis ) + context[f'{order_user}_summary']=summary + + platform_summary = {} + if not order.is_swap: + platform_summary['routing_fee_sats'] = order.payout.fee + platform_summary['trade_revenue_sats'] = int(order.trade_escrow.num_satoshis - order.payout.num_satoshis - order.payout.fee) + else: + platform_summary['routing_fee_sats'] = 0 + platform_summary['trade_revenue_sats'] = int(order.trade_escrow.num_satoshis - order.payout_tx.num_satoshis) + context['platform_summary'] = platform_summary + + return True, context \ No newline at end of file diff --git a/api/views.py b/api/views.py index fade4027..248cadc9 100644 --- a/api/views.py +++ b/api/views.py @@ -395,6 +395,11 @@ class OrderView(viewsets.ViewSet): data["bond_size"] = order.bond_size data["bondless_taker"] = order.bondless_taker + # Adds trade summary + valid, context = Logics.summarize_trade(order, request.user) + if valid: + data = {**data, **context} + # If status is 'Expired' add expiry reason if order.status == Order.Status.EXP: data["expiry_reason"] = order.expiry_reason @@ -402,7 +407,6 @@ class OrderView(viewsets.ViewSet): # If status is 'Succes' add final stats and txid if it is a swap if order.status == Order.Status.SUC: - # TODO: add summary of order for buyer/sellers: sats in/out, fee paid, total time? etc # If buyer and is a swap, add TXID if Logics.is_buyer(order,request.user): if order.is_swap: diff --git a/frontend/src/components/Icons/Bitcoin.tsx b/frontend/src/components/Icons/Bitcoin.tsx index aeee5741..4e2e5da0 100644 --- a/frontend/src/components/Icons/Bitcoin.tsx +++ b/frontend/src/components/Icons/Bitcoin.tsx @@ -4,7 +4,7 @@ import { SvgIcon } from "@mui/material" export default function BitcoinIcon(props) { return ( - + ); } \ No newline at end of file diff --git a/frontend/src/components/Icons/RoboSatsText.tsx b/frontend/src/components/Icons/RoboSatsText.tsx index a0340bf8..fb5bcf3c 100644 --- a/frontend/src/components/Icons/RoboSatsText.tsx +++ b/frontend/src/components/Icons/RoboSatsText.tsx @@ -3,7 +3,7 @@ import { SvgIcon } from "@mui/material" export default function RoboSatsTextIcon(props) { return ( - + { {this.Sound("successful")} - {t("🎉Trade finished!🥳")} - - - {/* - - What do you think of ⚡{this.props.data.is_maker ? this.props.data.taker_nick : this.props.data.maker_nick}⚡? +
+ {t("Trade finished!")} +
- - - */} - What do you think of 🤖RoboSats⚡? + What do you think of RoboSats? @@ -1242,9 +1238,9 @@ handleRatingRobosatsChange=(e)=>{ {this.state.rating_platform==5 ? - - {t("Thank you! RoboSats loves you too ❤️")} - +
+ {t("Thank you! RoboSats loves you too")} +
{t("RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!")} @@ -1279,21 +1275,32 @@ handleRatingRobosatsChange=(e)=>{
: null} - - + + + + + + {show_renew ? + + {this.state.renewLoading ? + + : + + } + + : null} - {show_renew ? - - {this.state.renewLoading ? - - : - - } - - : null} + - {this.showBondIsReturned()} ) } diff --git a/frontend/src/components/TradeSummary.tsx b/frontend/src/components/TradeSummary.tsx new file mode 100644 index 00000000..91d125a1 --- /dev/null +++ b/frontend/src/components/TradeSummary.tsx @@ -0,0 +1,197 @@ +import React, { useState } from "react"; +import { useTranslation } from "react-i18next"; +import { + Avatar, + Badge, + ToggleButton, + ToggleButtonGroup, + List, + Chip, + ListItem, + ListItemText, + ListItemIcon, + Grid, + Divider, + Typography, +} from "@mui/material" +import { pn } from "../utils/prettyNumbers"; + +// Icons +import FlagWithProps from "./FlagWithProps"; +import PercentIcon from '@mui/icons-material/Percent'; +import AccountBalanceIcon from '@mui/icons-material/AccountBalance'; +import RouteIcon from '@mui/icons-material/Route'; +import AccountBoxIcon from '@mui/icons-material/AccountBox'; +import LockOpenIcon from '@mui/icons-material/LockOpen'; +import LinkIcon from '@mui/icons-material/Link'; +import { RoboSatsNoTextIcon , SendReceiveIcon , BitcoinIcon} from "./Icons"; + +interface Item { + id: string; + name: string; +} + +type Props = { + isMaker: boolean; + makerNick: string; + takerNick: string; + currencyCode: string; + makerSummary: Record; + takerSummary: Record; + platformSummary: Record; + bondPercent: number; +} + +const TradeSummary = ({ + isMaker, + makerNick, + takerNick, + currencyCode, + makerSummary, + takerSummary, + platformSummary, + bondPercent, +}: Props): JSX.Element => { + const { t } = useTranslation(); + const [buttonValue, setButtonValue] = useState(isMaker ? 0 : 2); + var userSummary = buttonValue == 0 ? makerSummary : takerSummary; + + return ( + + + + + + + + setButtonValue(0)}> + +   + {t("Maker")} + + setButtonValue(1)}> + + + setButtonValue(2)}> + {t("Taker")} +   + + + + + {/* Maker/Taker Summary */} +
+ + + + + {userSummary.is_buyer ? + + : + } +
}> + + + + + + +
+ +
+
+ + + + + + + + + + + + + {userSummary.is_swap ? + + + + + + + + : null} + + + + + + + {t("Unlocked")}}/> + + + + {/* Platform Summary */} +
+ + + + + + + + + + + + + + +
+
+ ); +}; + +export default TradeSummary; + \ No newline at end of file diff --git a/frontend/src/locales/ca.json b/frontend/src/locales/ca.json index 0e6ccc7a..c0fc5cee 100644 --- a/frontend/src/locales/ca.json +++ b/frontend/src/locales/ca.json @@ -310,8 +310,8 @@ "Confirm you received {{currencyCode}}?":"Confirmes que has rebut {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Confirmant que has rebut el fiat finalitzarà l'intercanvi. Els Sats del col·lateral s'enviaran al comparador. Confirma només després d'assegurar que t'hagi arribat {{currencyCode}}. A més, si ho has rebut {{currencyCode}} i no confirmes la recepció, t'arriesques a perdre la teva fiança.", "Confirm":"Confirmar", - "🎉Trade finished!🥳":"🎉Intercanvi finalitzat!🥳", - "rate_robosats":"Què opines de 🤖<1>RoboSats⚡?", + "Trade finished!":"Intercanvi finalitzat!", + "rate_robosats":"Què opines de <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Moltes gràcies! RoboSats també t'estima ❤️", "RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!":"RoboSats millora amb més liquiditat i usuaris. Explica-li a un amic bitcoiner sobre RoboSats!", "Thank you for using Robosats!":"Gràcies per fer servir RoboSats!", diff --git a/frontend/src/locales/de.json b/frontend/src/locales/de.json index 8b2eb0c9..dca72ba5 100644 --- a/frontend/src/locales/de.json +++ b/frontend/src/locales/de.json @@ -332,8 +332,8 @@ "Confirm you received {{currencyCode}}?":"Bestätige den Erhalt von {{currencyCode}}", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Nach dem Bestätigen der Zahlung, wird der Trade beendet. Die hinterlegten Satoshi gehen an den Käufer. Bestätige nur, wenn die {{currencyCode}}-Zahlung angekommen ist. Falls du die {{currencyCode}}-Zahlung erhalten hast und dies nicht bestätigst, verlierst du ggf. deine Kaution und die Handelssumme.", "Confirm":"Bestätigen", - "🎉Trade finished!🥳":"🎉Trade abgeschlossen!🥳", - "rate_robosats":"Was hältst du von 🤖<1>RoboSats⚡?", + "Trade finished!":"Trade abgeschlossen!", + "rate_robosats":"Was hältst du von <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Danke! RoboSats liebt dich auch ❤️", "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!", "Thank you for using Robosats!":"Danke, dass du Robosats benutzt hast!", diff --git a/frontend/src/locales/en.json b/frontend/src/locales/en.json index b8df4862..fcd4ebc9 100644 --- a/frontend/src/locales/en.json +++ b/frontend/src/locales/en.json @@ -334,8 +334,8 @@ "Confirm you received {{currencyCode}}?":"Confirm you received {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.", "Confirm":"Confirm", - "🎉Trade finished!🥳":"🎉Trade finished!🥳", - "rate_robosats":"What do you think of 🤖<1>RoboSats⚡?", + "Trade finished!":"Trade finished!", + "rate_robosats":"What do you think of <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Thank you! RoboSats loves you too ❤️", "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!", "Thank you for using Robosats!":"Thank you for using Robosats!", diff --git a/frontend/src/locales/es.json b/frontend/src/locales/es.json index befb16a7..91362e12 100644 --- a/frontend/src/locales/es.json +++ b/frontend/src/locales/es.json @@ -335,8 +335,8 @@ "Confirm you received {{currencyCode}}?": "¿Confirmas que has recibido {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.": "Confirmando que has recibido el fiat finalizará el intercambio. Los Sats del colateral se enviarán al comparador. Confirma sólo después de asegurar que te ha llegado {{currencyCode}}. Además, si lo has recibido {{currencyCode}} y no confirmas la recepción, te arriesgas a perder tu fianza.", "Confirm": "Confirmar", - "🎉Trade finished!🥳": "🎉¡Intercambio finalizado!🥳", - "rate_robosats": "¿Qué opinas de 🤖<1>RoboSats⚡?", + "Trade finished!": "¡Intercambio finalizado!", + "rate_robosats": "¿Qué opinas de <1>RoboSats?", "Thank you! RoboSats loves you too ❤️": "¡Muchas gracias! RoboSats también te ❤️", "RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!": "RoboSats mejora con más liquidez y usuarios. ¡Cuéntale a un amigo bitcoiner sobre RoboSats!", "Thank you for using Robosats!": "¡Gracias por usar RoboSats!", @@ -406,7 +406,27 @@ "Lightning":"Lightning", "Onchain":"Onchain", "open_dispute":"Para abrir una disputa debes esperar <1><1/>", - + "Trade Summary":"Resumen del intercambio", + "Maker":"Creador", + "Taker":"Tomador", + "User role":"Operación", + "Sent":"Enviado", + "Received":"Recibido", + "BTC received":"BTC recibido", + "BTC sent":"BTC enviado", + "{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)":"{{tradeFeeSats}} Sats ({{tradeFeePercent}}%)", + "Trade fee":"Comisión", + "{{swapFeeSats}} Sats ({{swapFeePercent}}%)":"{{swapFeeSats}} Sats ({{swapFeePercent}}%)", + "Onchain swap fee":"Coste swap onchain", + "{{miningFeeSats}} Sats":"{{miningFeeSats}} Sats", + "{{bondSats}} Sats ({{bondPercent}}%)":"{{bondSats}} Sats ({{bondPercent}}%)", + "Maker bond":"Fianza de creador", + "Taker bond":"Fianza de tomador", + "Unlocked":"Desbloqueada", + "{{revenueSats}} Sats":"{{revenueSats}} Sats", + "Platform trade revenue":"Beneficio de la plataforma", + "{{routingFeeSats}} MiliSats":"{{routingFeeSats}} MiliSats", + "Platform covered routing fee":"Coste de enrutado cubierto", "INFO DIALOG - InfoDiagog.js": "App information and clarifications and terms of use", "Close": "Cerrar", diff --git a/frontend/src/locales/eu.json b/frontend/src/locales/eu.json index 85ee1c26..11ff409a 100644 --- a/frontend/src/locales/eu.json +++ b/frontend/src/locales/eu.json @@ -334,8 +334,8 @@ "Confirm you received {{currencyCode}}?":"Baieztatu {{currencyCode}} jaso duzula?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Fiata jaso duzula baieztatzean, salerosketa amaituko da. Blokeatutako Satoshiak erosleari bidaliko zaizkio. Baieztatu bakarrik {{currencyCode}}ak zure kontuan jaso badituzu. Gainera, {{currencyCode}}ak jaso badituzu baina ez baduzu baieztatzen, zure fidantza galtzea arriskatzen duzu.", "Confirm":"Baieztatu", - "🎉Trade finished!🥳":"🎉Salerosketa amaitua!🥳", - "rate_robosats":"Zer iruditu zaizu 🤖<1>RoboSats⚡?", + "Trade finished!":"Salerosketa amaitua!", + "rate_robosats":"Zer iruditu zaizu <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Mila esker! RoboSatsek ere maite zaitu ❤️", "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!", "Thank you for using Robosats!":"Mila esker Robosats erabiltzeagatik!", diff --git a/frontend/src/locales/fr.json b/frontend/src/locales/fr.json index b6644221..43af7452 100644 --- a/frontend/src/locales/fr.json +++ b/frontend/src/locales/fr.json @@ -293,8 +293,8 @@ "Confirm you received {{currencyCode}}?":"Confirmez que vous avez reçu les {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Confirmer que vous avez reçu le fiat finalisera la transaction. Les satoshis dans le dépôt seront libérés à l'acheteur. Ne confirmez qu'après que les {{currencyCode}} soit arrivés sur votre compte. En outre, si vous avez reçu les {{currencyCode}} et que vous ne confirmez pas la réception, vous risquez de perdre votre caution.", "Confirm":"Confirmer", - "🎉Trade finished!🥳":"🎉Transaction terminée!🥳", - "rate_robosats":"Que pensez-vous de 🤖<1>RoboSats⚡?", + "Trade finished!":"Transaction terminée!", + "rate_robosats":"Que pensez-vous de <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Merci! RoboSats vous aime aussi ❤️", "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!", "Thank you for using Robosats!":"Merci d'utiliser Robosats!", diff --git a/frontend/src/locales/it.json b/frontend/src/locales/it.json index 8726ade8..5c9eca85 100644 --- a/frontend/src/locales/it.json +++ b/frontend/src/locales/it.json @@ -336,8 +336,8 @@ "Confirm you received {{currencyCode}}?":"Confermi la ricezione di {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Confermando la ricezione del fiat la transazione sarà finalizzata. I sats depositati saranno rilasciati all'acquirente. Conferma solamente dopo che {{currencyCode}} sono arrivati sul tuo conto. In più, se se hai ricevuto {{currencyCode}} e non procedi a confermare la ricezione, rischi di perdere la cauzione.", "Confirm":"Conferma", - "🎉Trade finished!🥳":"🎉Transazione conclusa!🥳", - "rate_robosats":"Cosa pensi di 🤖<1>RoboSats⚡?", + "Trade finished!":"Transazione conclusa!", + "rate_robosats":"Cosa pensi di <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Grazie! Anche +RoboSats ti ama ❤️", "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!", "Thank you for using Robosats!":"Grazie per aver usato Robosats!", diff --git a/frontend/src/locales/pl.json b/frontend/src/locales/pl.json index e304a7c2..1a6507ff 100644 --- a/frontend/src/locales/pl.json +++ b/frontend/src/locales/pl.json @@ -293,8 +293,8 @@ "Confirm you received {{currencyCode}}?":"Potwierdź otrzymanie {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Potwierdzenie otrzymania fiata sfinalizuje transakcję. Satoshi w depozycie zostaną wydane kupującemu. Potwierdź dopiero po otrzymaniu {{currencyCode}} na Twoje konto. Ponadto, jeśli otrzymałeś {{currencyCode}} i nie potwierdzisz odbioru, ryzykujesz utratę kaucji.", "Confirm":"Potwierdzać", - "🎉Trade finished!🥳":"🎉Handel zakończony!🥳", - "rate_robosats":"Co myślisz o 🤖<1>RoboSats⚡?", + "Trade finished!":"Handel zakończony!", + "rate_robosats":"Co myślisz o <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Dziękuję! RoboSats też cię kocha ❤️", "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!", "Thank you for using Robosats!":"Dziękujemy za korzystanie z Robosatów!", diff --git a/frontend/src/locales/pt.json b/frontend/src/locales/pt.json index 6267eb80..b9150885 100644 --- a/frontend/src/locales/pt.json +++ b/frontend/src/locales/pt.json @@ -319,8 +319,8 @@ "Confirm you received {{currencyCode}}?": "Confirme que você recebeu {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.": "Confirmar que você recebeu o fiat finalizará a negociação. Os satoshis no depósito serão liberados para o comprador. Confirme apenas depois que o {{currencyCode}} chegar à sua conta. Além disso, se você recebeu {{currencyCode}} e não confirmar o recebimento, corre o risco de perder seu título.", "Confirm": "confirmar", - "🎉Trade finished!🥳": "\uD83C\uDF89Negociação finalizada!\uD83E\uDD73", - "rate_robosats": "O que você acha de \uD83E\uDD16<1>RoboSats⚡?", + "Trade finished!": "Negociação finalizada!", + "rate_robosats": "O que você acha de <1>RoboSats?", "Thank you! RoboSats loves you too ❤️": "Obrigada! RoboSats também te ama ❤️", "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!", "Thank you for using Robosats!": "Obrigado por usar Robosats!", diff --git a/frontend/src/locales/ru.json b/frontend/src/locales/ru.json index 186c0aa3..35ef8878 100644 --- a/frontend/src/locales/ru.json +++ b/frontend/src/locales/ru.json @@ -332,8 +332,8 @@ "Confirm you received {{currencyCode}}?":"Подтвердить получение {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Подтверждение того, что Вы получили фиатную валюту, завершит сделку. Сатоши в эскроу будут переданы покупателю. Подтвердите только после того, как {{currencyCode}} поступили на Ваш счёт. Кроме того, если Вы получили {{currencyCode}} и не подтвердите получение, Вы рискуете потерять свой залог.", "Confirm":"Подтвердить", - "🎉Trade finished!🥳":"🎉Торговля завершена!!🥳", - "rate_robosats":"Что Вы думаете о 🤖<1>RoboSats⚡?", + "Trade finished!":"Торговля завершена!!", + "rate_robosats":"Что Вы думаете о <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Спасибо! RoboSats тоже Вас любит ❤️", "RoboSats gets better with more liquidity and users. Tell a bitcoiner friend about Robosats!":"RoboSats становится лучше с большей ликвидностью и пользователями. Расскажите другу-биткойнеру о Robosat!", "Thank you for using Robosats!":"Спасибо за использование Robosats!", diff --git a/frontend/src/locales/zh.json b/frontend/src/locales/zh.json index e4f385f5..806601d0 100644 --- a/frontend/src/locales/zh.json +++ b/frontend/src/locales/zh.json @@ -300,8 +300,8 @@ "Confirm you received {{currencyCode}}?":"Confirm you received {{currencyCode}}?", "Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.":"Confirming that you received the fiat will finalize the trade. The satoshis in the escrow will be released to the buyer. Only confirm after the {{currencyCode}} has arrived to your account. In addition, if you have received {{currencyCode}} and do not confirm the receipt, you risk losing your bond.", "Confirm":"Confirm", - "🎉Trade finished!🥳":"🎉Trade finished!🥳", - "rate_robosats":"What do you think of 🤖<1>RoboSats⚡?", + "Trade finished!":"Trade finished!", + "rate_robosats":"What do you think of <1>RoboSats?", "Thank you! RoboSats loves you too ❤️":"Thank you! RoboSats loves you too ❤️", "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!", "Thank you for using Robosats!":"Thank you for using Robosats!",