mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-22 01:47:00 +01:00
add shared transaction constants (#9459)
Co-authored-by: Erik Marks <25517051+rekmarks@users.noreply.github.com>
This commit is contained in:
parent
1ab922972e
commit
026a06b39d
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "ሰርዝ"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "ሙከራን ሰርዝ"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "የስረዛ ነዳጅ ወጪ"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "ይህን አውታረ መረብ ለመሰረዝ እንደሚፈልጉ እርግጠኛ ነዎት?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "ማጠራቀም"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Ether አስቀምጥ"
|
||||
},
|
||||
@ -985,9 +979,6 @@
|
||||
"sentEther": {
|
||||
"message": "የተላከ ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "የተላኩ ተለዋጭ ስሞች"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "እያንዳንዱን ቃል በነጠላ ክፍት ቦታ ይለያዩ"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "إلغاء"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "إلغاء المحاولة"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "رسوم الإلغاء بعملة جاس"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "هل أنت متأكد أنك تريد حذف هذه الشبكة؟"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "إيداع"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "إيداع عملة إيثير"
|
||||
},
|
||||
@ -981,9 +975,6 @@
|
||||
"sentEther": {
|
||||
"message": "أرسل عملة إيثير"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "العملات الرمزية المرسلة"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "افصل كل كلمة بمسافة واحدة"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Отказ"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Отмяна на опита"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Такса в газ за анулиране "
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Наистина ли искате да изтриете тази мрежа?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Депозит"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Депозирайте етер"
|
||||
},
|
||||
@ -984,9 +978,6 @@
|
||||
"sentEther": {
|
||||
"message": "изпратен етер"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "изпратени жетони"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Отделете всяка дума с интервал"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "বাতিল করুন"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "প্রচেষ্টা বাতিল করুন"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "বাতিল করার গ্যাস ফী"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "আপনি কি এই নেটওয়ার্কটি মোছার বিষয়ে নিশ্চিত?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "জমা "
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "ইথার জমা করুন"
|
||||
},
|
||||
@ -988,9 +982,6 @@
|
||||
"sentEther": {
|
||||
"message": "পাঠানো ইথার "
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "টোকেনগুলি পাঠান"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "প্রতিটি শব্দকে একটি স্পেস দিয়ে আলাদা করুন"
|
||||
},
|
||||
|
@ -161,9 +161,6 @@
|
||||
"cancel": {
|
||||
"message": "Cancel·la"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Cancel·la l'intent"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Preu de cancel·lació del gas"
|
||||
},
|
||||
@ -305,9 +302,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Estàs segur que vols eliminar aquesta xarxa?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depòsit"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Diposita Ether"
|
||||
},
|
||||
@ -966,9 +960,6 @@
|
||||
"sentEther": {
|
||||
"message": "envia ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "fitxes enviades"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separa cada paraula amb un sol espai"
|
||||
},
|
||||
|
@ -118,9 +118,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "Výchozí síť pro Etherové transakce je Main Net."
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Vklad"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Vložit Ether"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Afbryd"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Annullér forsøg"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Gebyr for brændstofannullering"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Er du sikker på, at du vil slette dette netværk?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Indbetal"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Indbetal Ether"
|
||||
},
|
||||
@ -966,9 +960,6 @@
|
||||
"sentEther": {
|
||||
"message": "sendte ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "afsendte tokens"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separer hvert ord med et enkelt mellemrum"
|
||||
},
|
||||
|
@ -158,9 +158,6 @@
|
||||
"cancel": {
|
||||
"message": "Abbrechen"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Versuch abbrechen"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Stornierungs-Gasgebühr"
|
||||
},
|
||||
@ -299,9 +296,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Sind Sie sicher, dass Sie dieses Netzwerk löschen möchten?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Einzahlen"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Ether einzahlen"
|
||||
},
|
||||
@ -957,9 +951,6 @@
|
||||
"sentEther": {
|
||||
"message": "Ether senden"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "gesendete Token"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Trennen Sie die Wörter mit einem einzelnen Leerzeichen voneinander"
|
||||
},
|
||||
|
@ -161,9 +161,6 @@
|
||||
"cancel": {
|
||||
"message": "Ακύρωση"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Ακύρωση Προσπάθειας"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Ακύρωση Χρέωσης Αερίου"
|
||||
},
|
||||
@ -305,9 +302,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Θέλετε σίγουρα να διαγράψετε αυτό το δίκτυο;"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Κατάθεση"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Κατάθεση Ether"
|
||||
},
|
||||
@ -985,9 +979,6 @@
|
||||
"sentEther": {
|
||||
"message": "απεσταλμένα ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "αποστολή token"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Διαχωρίστε κάθε λέξη με ένα μόνο κενό"
|
||||
},
|
||||
|
@ -239,9 +239,6 @@
|
||||
"cancel": {
|
||||
"message": "Cancel"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Cancel Attempt"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Cancellation Gas Fee"
|
||||
},
|
||||
@ -477,9 +474,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Are you sure you want to delete this network?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Deposit"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Deposit Ether"
|
||||
},
|
||||
@ -1458,9 +1452,6 @@
|
||||
"sentEther": {
|
||||
"message": "sent ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "sent tokens"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separate each word with a single space"
|
||||
},
|
||||
|
@ -136,9 +136,6 @@
|
||||
"cancel": {
|
||||
"message": "Cancelar"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Intentar cancelar"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Comisión de Gas por cancelación"
|
||||
},
|
||||
@ -271,9 +268,6 @@
|
||||
"deleteAccount": {
|
||||
"message": "Eliminar Cuenta"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depositar"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Depositar Ether"
|
||||
},
|
||||
@ -783,9 +777,6 @@
|
||||
"sentEther": {
|
||||
"message": "se mandó ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "se mandaron tokens"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separar a cada palabra con un sólo espacio"
|
||||
},
|
||||
|
@ -161,9 +161,6 @@
|
||||
"cancel": {
|
||||
"message": "Cancelar"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Cancelar intento"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Tasa de cancelación de gas"
|
||||
},
|
||||
@ -305,9 +302,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "¿Estás seguro de que deseas borrar esta red?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depósito"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Depositar Ethers"
|
||||
},
|
||||
@ -973,9 +967,6 @@
|
||||
"sentEther": {
|
||||
"message": "Ethers enviados"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "tokens enviados"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separa cada palabra con un solo espacio"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Tühista"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Tühista katse"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Tühistamise gaasitasu"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Olete kindel, et soovite selle võrgu kustutada?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Sissemakse"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Eetri sissemakse"
|
||||
},
|
||||
@ -978,9 +972,6 @@
|
||||
"sentEther": {
|
||||
"message": "saadetud eeter"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "saadetud load"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Eraldage iga sõna ühe tühikuga"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "لغو"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "لغو تلاش"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "لغو فیس گاز"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "آیا مطمئن هستید که این شبکه حذف شود؟"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "سپرده"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "پرداخت ایتر"
|
||||
},
|
||||
@ -988,9 +982,6 @@
|
||||
"sentEther": {
|
||||
"message": "ایتر ارسال شد"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "رمزیاب های فرستاده شده"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "هر کلمه را با یک فاصله واحد جدا سازید"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Peruuta"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Peruuta yritys"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Peruutuksen gas-maksu"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Haluatko varmasti poistaa tämän verkon?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Talleta"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Talleta Etheriä"
|
||||
},
|
||||
@ -985,9 +979,6 @@
|
||||
"sentEther": {
|
||||
"message": "lähetä etheriä"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "lähetetyt poletit"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Erottele sanat toisistaan yhdellä välilyönnillä"
|
||||
},
|
||||
|
@ -146,9 +146,6 @@
|
||||
"cancel": {
|
||||
"message": "Kanselahin"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Kanselahin ang Pagtangka"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Gas Fee sa Pagkansela"
|
||||
},
|
||||
@ -284,9 +281,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Sigurado ka bang gusto mong i-delete ang network na ito?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Deposito"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Magdeposito ng Ether"
|
||||
},
|
||||
@ -900,9 +894,6 @@
|
||||
"sentEther": {
|
||||
"message": "nagpadala ng ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "mga ipinadalang token"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Paghiwa-hiwalayin ang bawat salita gamit ang isang space"
|
||||
},
|
||||
|
@ -155,9 +155,6 @@
|
||||
"cancel": {
|
||||
"message": "Annuler"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Annuler la tentative."
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Frais en gas de l'annulation"
|
||||
},
|
||||
@ -299,9 +296,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Êtes-vous sûr de vouloir supprimer ce réseau ?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Déposer"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Déposer de l'Ether"
|
||||
},
|
||||
@ -970,9 +964,6 @@
|
||||
"sentEther": {
|
||||
"message": "Ether envoyé"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "Jetons envoyés"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separez chaque mot avec un espace simple"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "ביטול"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "בטל ניסיון"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "עמלת דלק עבור ביטול"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "הנך בטוח/ה שברצונך למחוק רשת זו?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "הפקדה"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "הפקדת את'ר"
|
||||
},
|
||||
@ -982,9 +976,6 @@
|
||||
"sentEther": {
|
||||
"message": "את'ר שנשלח"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "טוקנים שנשלחו"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "יש להפריד כל מילה עם רווח יחיד"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "रद्द करें"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "प्रयास रद्द करें"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "रद्दीकरण गैस शुल्क"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "क्या आप वाकई इस नेटवर्क को हटाना चाहते हैं?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "जमा "
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Ether जमा करें"
|
||||
},
|
||||
@ -985,9 +979,6 @@
|
||||
"sentEther": {
|
||||
"message": "भेजे गए ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "भेजे गए टोकन"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "प्रत्येक शब्द को एक स्पेस से अलग करें"
|
||||
},
|
||||
|
@ -97,9 +97,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "ईथर लेनदेन के लिए डिफ़ॉल्ट नेटवर्क मुख्य नेट है।"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "जमा"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "जमा - Ether"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Odustani"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Otkaži pokušaj"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Otkazivanje naknade za gorivo"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Sigurno želite izbrisati ovu mrežu?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Polog"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Položi Ether"
|
||||
},
|
||||
@ -981,9 +975,6 @@
|
||||
"sentEther": {
|
||||
"message": "pošalji ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "pošalji tokene"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Odvojite pojedinačne riječi jednim razmakom"
|
||||
},
|
||||
|
@ -85,9 +85,6 @@
|
||||
"cancel": {
|
||||
"message": "Anile"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Teste Anile"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Anilasyon Gaz Chaj"
|
||||
},
|
||||
@ -169,9 +166,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "Dfo rezo a pou tranzaksyon Ether se Mainnet."
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depo"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Depo Ether"
|
||||
},
|
||||
@ -615,9 +609,6 @@
|
||||
"sentEther": {
|
||||
"message": "Voye ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "tokens deja voye"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separe chak mo ak yon sèl espas"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Mégse"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Kísérlet megszakítása"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "A törlés gázára"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Biztosan törli ezt a hálózatot?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Befizetés"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Ether befizetése"
|
||||
},
|
||||
@ -981,9 +975,6 @@
|
||||
"sentEther": {
|
||||
"message": "elküldött ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "elküldött érmék"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Minden egyes szavat szóközzel válasszon el"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Batal"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Batalkan Percobaan"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Pembatalan Biaya Gas"
|
||||
},
|
||||
@ -969,9 +966,6 @@
|
||||
"sentEther": {
|
||||
"message": "kirim ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "token terkirim"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Pisahkan setiap kata dengan spasi tunggal"
|
||||
},
|
||||
|
@ -226,9 +226,6 @@
|
||||
"cancel": {
|
||||
"message": "Annulla"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Tentativo di Annullamento"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Costo di Annullamento in Gas"
|
||||
},
|
||||
@ -464,9 +461,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Sei sicuro di voler eliminare questa rete?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Deposita"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Deposita Ether"
|
||||
},
|
||||
@ -1358,9 +1352,6 @@
|
||||
"sentEther": {
|
||||
"message": "ether inviati"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "tokens inviati"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separa ogni parola con un solo spazio"
|
||||
},
|
||||
|
@ -169,9 +169,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "デフォルトのEther送受信ネットワークはメインネットです。"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "振込"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Etherを振込"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "ರದ್ದುಮಾಡಿ"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "ಪ್ರಯತ್ನವನ್ನು ರದ್ದುಪಡಿಸಿ"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "ರದ್ದುಗೊಳಿಸುವ ಗ್ಯಾಸ್ ಶುಲ್ಕ"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "ನೀವು ಈ ನೆಟ್ವರ್ಕ್ ಅನ್ನು ಖಚಿತವಾಗಿ ಅಳಿಸಲು ಬಯಸುತ್ತೀರಾ?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "ಠೇವಣಿ"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "ಎಥರ್ ಠೇವಣಿ ಮಾಡಿ"
|
||||
},
|
||||
@ -988,9 +982,6 @@
|
||||
"sentEther": {
|
||||
"message": "ಕಳುಹಿಸಲಾದ ಎಥರ್"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "ಕಳುಹಿಸಲಾದ ಟೋಕನ್ಗಳು"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "ಒಂದು ಸ್ಪೇಸ್ ಮೂಲಕ ಪ್ರತಿ ಪದವನ್ನು ಬೇರ್ಪಡಿಸಿ"
|
||||
},
|
||||
|
@ -161,9 +161,6 @@
|
||||
"cancel": {
|
||||
"message": "취소"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "취소 시도"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "취소 가스 수수료"
|
||||
},
|
||||
@ -305,9 +302,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "정말로 이 네트워크를 삭제하시겠습니까?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "입금"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "이더리움 입금하기"
|
||||
},
|
||||
@ -979,9 +973,6 @@
|
||||
"sentEther": {
|
||||
"message": "전송된 이더"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "전송된 토큰"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "각 단어는 공백 한칸으로 분리합니다"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Atšaukti"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Atšaukti mėginimą"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Dujų mokesčio atšaukimas"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Ar tikrai norite panaikinti šį tinklą?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Indėlis"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Įnešti eterių"
|
||||
},
|
||||
@ -988,9 +982,6 @@
|
||||
"sentEther": {
|
||||
"message": "siųsti eterių"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "išsiųsti žetonai"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Kiekvieną žodį atskirkite viengubu tarpu"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Atcelt"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Atcelt mēģinājumu"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Atcelšanas maksājums par Gas"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Vai tiešām vēlaties dzēst šo tīklu?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Iemaksa"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Noguldīt Ether"
|
||||
},
|
||||
@ -984,9 +978,6 @@
|
||||
"sentEther": {
|
||||
"message": "nosūtītie ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "nosūtītie marķieri"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Atdaliet katru vārdu ar vienu atstarpi"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Batal"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Batalkan Percubaan"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Fi Gas Pembatalan"
|
||||
},
|
||||
@ -962,9 +959,6 @@
|
||||
"sentEther": {
|
||||
"message": "menghantar ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "token dihantar"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Pisahkan setiap perkataan dengan ruang tunggal"
|
||||
},
|
||||
|
@ -94,9 +94,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "Het standaardnetwerk voor Ether-transacties is Main Net."
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Storting"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Stort Ether"
|
||||
},
|
||||
|
@ -161,9 +161,6 @@
|
||||
"cancel": {
|
||||
"message": "Avbryt"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Avbryt forsøk"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Kansellering gassavgift"
|
||||
},
|
||||
@ -305,9 +302,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Er du sikker på at du vil slette dette nettverket?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Innskudd"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Sett inn Ether "
|
||||
},
|
||||
@ -966,9 +960,6 @@
|
||||
"sentEther": {
|
||||
"message": "sendt ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "sendte tokener "
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Del hvert ord med et enkelt mellomrom "
|
||||
},
|
||||
|
@ -73,9 +73,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "Ang default network para sa Ether transactions ay ang Main Net."
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Deposito"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "I-deposito ang Ether"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Anuluj"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Anuluj próbę"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Opłata za gaz za anulowanie"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Czy na pewno chcesz usunąć tę sieć?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Zdeponuj"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Zdeponuj Eter"
|
||||
},
|
||||
@ -982,9 +976,6 @@
|
||||
"sentEther": {
|
||||
"message": "wyślij eter"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "wysłane tokeny"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Oddziel słowa pojedynczą spacją"
|
||||
},
|
||||
|
@ -97,9 +97,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "A rede pré definida para transações em Ether é a Main Net."
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depósito"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Depositar Ether"
|
||||
},
|
||||
|
@ -158,9 +158,6 @@
|
||||
"cancel": {
|
||||
"message": "Cancelar"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Tentativa de cancelamento"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Tarifa de Gas de cancelamento"
|
||||
},
|
||||
@ -302,9 +299,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Tem certeza de que deseja excluir esta rede?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depósito"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Depositar Ether"
|
||||
},
|
||||
@ -976,9 +970,6 @@
|
||||
"sentEther": {
|
||||
"message": "ether enviado"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "tokens enviados"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Separe cada palavra com um único espaço"
|
||||
},
|
||||
|
@ -45,9 +45,6 @@
|
||||
"delete": {
|
||||
"message": "Eliminar"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depósito"
|
||||
},
|
||||
"details": {
|
||||
"message": "Detalhes"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Anulare"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Anulare încercare"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Taxă de anulare în gaz"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Sigur vreți să ștergeți această rețea?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depunere"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Depuneți Ether"
|
||||
},
|
||||
@ -975,9 +969,6 @@
|
||||
"sentEther": {
|
||||
"message": "trimiteți ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "tokenuri trimise"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Despărțiți fiecare cuvânt cu un spațiu"
|
||||
},
|
||||
|
@ -163,9 +163,6 @@
|
||||
"cancel": {
|
||||
"message": "Отмена"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Попытка отмены транзакции"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Комиссия за газ на отмену"
|
||||
},
|
||||
@ -330,9 +327,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Вы уверены, что хотите удалить эту сеть?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Пополнить"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Пополнить Ether"
|
||||
},
|
||||
@ -1024,9 +1018,6 @@
|
||||
"sentEther": {
|
||||
"message": "Отправить Ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "Отправленные токены"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Разделяйте каждое слово одним пробелом"
|
||||
},
|
||||
|
@ -158,9 +158,6 @@
|
||||
"cancel": {
|
||||
"message": "Zrušit"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Zrušiť pokus"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Storno poplatok za GAS"
|
||||
},
|
||||
@ -302,9 +299,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Naozaj chcete túto sieť odstrániť?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Vklad"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Vložit Ether"
|
||||
},
|
||||
@ -951,9 +945,6 @@
|
||||
"sentEther": {
|
||||
"message": "poslaný ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "poslané tokeny"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Každé slovo oddeľte jednou medzerou"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Prekliči"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Prekliči poskus"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Preklicani znesek gas"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Ali ste prepričani, da želite izbrisati to omrežje?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Vplačaj"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Vplačilo ethra"
|
||||
},
|
||||
@ -970,9 +964,6 @@
|
||||
"sentEther": {
|
||||
"message": "poslani ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "poslani žetoni"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Vsako besedo ločite z enim presledkom"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Otkaži"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Otkaži pokušaj"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Otkazivanje gas naknade"
|
||||
},
|
||||
@ -305,9 +302,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Da li ste sigurni da želite da izbrišete ovu mrežu?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Depozit"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Dajte depozit Ether-u"
|
||||
},
|
||||
@ -979,9 +973,6 @@
|
||||
"sentEther": {
|
||||
"message": "ether je poslat"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "poslati tokeni"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Razdvojite svaku reč jednim mestom razmaka"
|
||||
},
|
||||
|
@ -161,9 +161,6 @@
|
||||
"cancel": {
|
||||
"message": "Avbryt"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Avbryt försök"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Gasavgift för avbrytning"
|
||||
},
|
||||
@ -302,9 +299,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Är du säker på att du vill ta bort detta nätverk?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Deposition"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Sätt in Ether"
|
||||
},
|
||||
@ -972,9 +966,6 @@
|
||||
"sentEther": {
|
||||
"message": "skickat ether"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "skickade tokens"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Lägg in ett mellanslag mellan varje ord"
|
||||
},
|
||||
|
@ -158,9 +158,6 @@
|
||||
"cancel": {
|
||||
"message": "Ghairi"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Jaribio la Kubatilisha"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Ada ya Kubatilisha Gesi"
|
||||
},
|
||||
@ -302,9 +299,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Una uhakika unataka kufuta mtandao huu?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Fedha zilizopo kwenye akaunti"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Weka Ether"
|
||||
},
|
||||
@ -966,9 +960,6 @@
|
||||
"sentEther": {
|
||||
"message": "ether iliyotumwa"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "vianzio vilivyotumwa"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Tenganisha kila neno kwa nafasi moja"
|
||||
},
|
||||
|
@ -136,9 +136,6 @@
|
||||
"delete": {
|
||||
"message": "நீக்கு"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "வைப்புத்தொகை"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "வைப்புத்தொகை எதிர் "
|
||||
},
|
||||
|
@ -142,9 +142,6 @@
|
||||
"deleteNetwork": {
|
||||
"message": "ลบเครือข่าย?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "ฝาก"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "การฝากอีเธอร์"
|
||||
},
|
||||
|
@ -118,9 +118,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "Ether işlemleri için varsayılan ağ Main Net."
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Yatır"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Ether yatır"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "Скасувати"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "Відмінити спробу"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "Вартість пального за скасування"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "Ви впевнені, що хочете видалити цю мережу?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Депозит"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Депонувати Ether"
|
||||
},
|
||||
@ -988,9 +982,6 @@
|
||||
"sentEther": {
|
||||
"message": "надісланий ефір"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "надіслані токени"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "Відділіть кожне слово одним пробілом"
|
||||
},
|
||||
|
@ -79,9 +79,6 @@
|
||||
"defaultNetwork": {
|
||||
"message": "Mạng lưới mặc định dùng cho các giao dịch Ether là Main Net (tiền ETH thật)."
|
||||
},
|
||||
"deposit": {
|
||||
"message": "Ký gửi/nạp tiền"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "Ký gửi Ether"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "取消"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "取消操作"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "取消天然气费"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "您是否确认要删除该网络?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "存入"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "存入 Ether"
|
||||
},
|
||||
@ -970,9 +964,6 @@
|
||||
"sentEther": {
|
||||
"message": "以太币已发送"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "代币已发送"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "用空格分隔每个单词"
|
||||
},
|
||||
|
@ -164,9 +164,6 @@
|
||||
"cancel": {
|
||||
"message": "取消"
|
||||
},
|
||||
"cancelAttempt": {
|
||||
"message": "嘗試取消"
|
||||
},
|
||||
"cancellationGasFee": {
|
||||
"message": "需要的手續費"
|
||||
},
|
||||
@ -308,9 +305,6 @@
|
||||
"deleteNetworkDescription": {
|
||||
"message": "你確定要刪除網路嗎?"
|
||||
},
|
||||
"deposit": {
|
||||
"message": "存入"
|
||||
},
|
||||
"depositEther": {
|
||||
"message": "存入乙太幣"
|
||||
},
|
||||
@ -967,9 +961,6 @@
|
||||
"sentEther": {
|
||||
"message": "發送乙太幣"
|
||||
},
|
||||
"sentTokens": {
|
||||
"message": "發送代幣"
|
||||
},
|
||||
"separateEachWord": {
|
||||
"message": "單詞之間請以空白間隔"
|
||||
},
|
||||
|
@ -1,14 +0,0 @@
|
||||
const TRANSACTION_TYPE_CANCEL = 'cancel'
|
||||
const TRANSACTION_TYPE_RETRY = 'retry'
|
||||
const TRANSACTION_TYPE_STANDARD = 'standard'
|
||||
|
||||
const TRANSACTION_STATUS_APPROVED = 'approved'
|
||||
const TRANSACTION_STATUS_CONFIRMED = 'confirmed'
|
||||
|
||||
export {
|
||||
TRANSACTION_TYPE_CANCEL,
|
||||
TRANSACTION_TYPE_RETRY,
|
||||
TRANSACTION_TYPE_STANDARD,
|
||||
TRANSACTION_STATUS_APPROVED,
|
||||
TRANSACTION_STATUS_CONFIRMED,
|
||||
}
|
@ -9,29 +9,19 @@ import { ethers } from 'ethers'
|
||||
import NonceTracker from 'nonce-tracker'
|
||||
import log from 'loglevel'
|
||||
import BigNumber from 'bignumber.js'
|
||||
import {
|
||||
TOKEN_METHOD_APPROVE,
|
||||
TOKEN_METHOD_TRANSFER,
|
||||
TOKEN_METHOD_TRANSFER_FROM,
|
||||
SEND_ETHER_ACTION_KEY,
|
||||
DEPLOY_CONTRACT_ACTION_KEY,
|
||||
CONTRACT_INTERACTION_KEY,
|
||||
SWAP,
|
||||
} from '../../../../ui/app/helpers/constants/transactions'
|
||||
import cleanErrorStack from '../../lib/cleanErrorStack'
|
||||
import { hexToBn, bnToHex, BnMultiplyByFraction } from '../../lib/util'
|
||||
import { TRANSACTION_NO_CONTRACT_ERROR_KEY } from '../../../../ui/app/helpers/constants/error-keys'
|
||||
import { getSwapsTokensReceivedFromTxMeta } from '../../../../ui/app/pages/swaps/swaps.util'
|
||||
import {
|
||||
TRANSACTION_CATEGORIES,
|
||||
TRANSACTION_STATUSES,
|
||||
TRANSACTION_TYPES,
|
||||
} from '../../../../shared/constants/transaction'
|
||||
import TransactionStateManager from './tx-state-manager'
|
||||
import TxGasUtil from './tx-gas-utils'
|
||||
import PendingTransactionTracker from './pending-tx-tracker'
|
||||
import * as txUtils from './lib/util'
|
||||
import {
|
||||
TRANSACTION_TYPE_CANCEL,
|
||||
TRANSACTION_TYPE_RETRY,
|
||||
TRANSACTION_TYPE_STANDARD,
|
||||
TRANSACTION_STATUS_APPROVED,
|
||||
} from './enums'
|
||||
|
||||
const hstInterface = new ethers.utils.Interface(abi)
|
||||
|
||||
@ -240,7 +230,7 @@ export default class TransactionController extends EventEmitter {
|
||||
*/
|
||||
let txMeta = this.txStateManager.generateTxMeta({
|
||||
txParams: normalizedTxParams,
|
||||
type: TRANSACTION_TYPE_STANDARD,
|
||||
type: TRANSACTION_TYPES.STANDARD,
|
||||
})
|
||||
|
||||
if (origin === 'metamask') {
|
||||
@ -348,7 +338,7 @@ export default class TransactionController extends EventEmitter {
|
||||
return {}
|
||||
} else if (
|
||||
txMeta.txParams.to &&
|
||||
txMeta.transactionCategory === SEND_ETHER_ACTION_KEY
|
||||
txMeta.transactionCategory === TRANSACTION_CATEGORIES.SENT_ETHER
|
||||
) {
|
||||
// if there's data in the params, but there's no contract code, it's not a valid transaction
|
||||
if (txMeta.txParams.data) {
|
||||
@ -408,8 +398,8 @@ export default class TransactionController extends EventEmitter {
|
||||
},
|
||||
lastGasPrice,
|
||||
loadingDefaults: false,
|
||||
status: TRANSACTION_STATUS_APPROVED,
|
||||
type: TRANSACTION_TYPE_CANCEL,
|
||||
status: TRANSACTION_STATUSES.APPROVED,
|
||||
type: TRANSACTION_TYPES.CANCEL,
|
||||
})
|
||||
|
||||
this.addTx(newTxMeta)
|
||||
@ -443,8 +433,8 @@ export default class TransactionController extends EventEmitter {
|
||||
},
|
||||
lastGasPrice,
|
||||
loadingDefaults: false,
|
||||
status: TRANSACTION_STATUS_APPROVED,
|
||||
type: TRANSACTION_TYPE_RETRY,
|
||||
status: TRANSACTION_STATUSES.APPROVED,
|
||||
type: TRANSACTION_TYPES.RETRY,
|
||||
})
|
||||
|
||||
if (customGasLimit) {
|
||||
@ -582,7 +572,7 @@ export default class TransactionController extends EventEmitter {
|
||||
async publishTransaction(txId, rawTx) {
|
||||
const txMeta = this.txStateManager.getTx(txId)
|
||||
txMeta.rawTx = rawTx
|
||||
if (txMeta.transactionCategory === SWAP) {
|
||||
if (txMeta.transactionCategory === TRANSACTION_CATEGORIES.SWAP) {
|
||||
const preTxBalance = await this.query.getBalance(txMeta.txParams.from)
|
||||
txMeta.preTxBalance = preTxBalance.toString(16)
|
||||
}
|
||||
@ -638,7 +628,7 @@ export default class TransactionController extends EventEmitter {
|
||||
'transactions#confirmTransaction - add txReceipt',
|
||||
)
|
||||
|
||||
if (txMeta.transactionCategory === SWAP) {
|
||||
if (txMeta.transactionCategory === TRANSACTION_CATEGORIES.SWAP) {
|
||||
const postTxBalance = await this.query.getBalance(txMeta.txParams.from)
|
||||
const latestTxMeta = this.txStateManager.getTx(txId)
|
||||
|
||||
@ -754,7 +744,7 @@ export default class TransactionController extends EventEmitter {
|
||||
|
||||
this.txStateManager
|
||||
.getFilteredTxList({
|
||||
status: TRANSACTION_STATUS_APPROVED,
|
||||
status: TRANSACTION_STATUSES.APPROVED,
|
||||
})
|
||||
.forEach((txMeta) => {
|
||||
const txSignError = new Error(
|
||||
@ -826,16 +816,16 @@ export default class TransactionController extends EventEmitter {
|
||||
}
|
||||
|
||||
const tokenMethodName = [
|
||||
TOKEN_METHOD_APPROVE,
|
||||
TOKEN_METHOD_TRANSFER,
|
||||
TOKEN_METHOD_TRANSFER_FROM,
|
||||
TRANSACTION_CATEGORIES.TOKEN_METHOD_APPROVE,
|
||||
TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER,
|
||||
TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER_FROM,
|
||||
].find((methodName) => methodName === name && name.toLowerCase())
|
||||
|
||||
let result
|
||||
if (txParams.data && tokenMethodName) {
|
||||
result = tokenMethodName
|
||||
} else if (txParams.data && !to) {
|
||||
result = DEPLOY_CONTRACT_ACTION_KEY
|
||||
result = TRANSACTION_CATEGORIES.DEPLOY_CONTRACT
|
||||
}
|
||||
|
||||
let code
|
||||
@ -849,7 +839,9 @@ export default class TransactionController extends EventEmitter {
|
||||
|
||||
const codeIsEmpty = !code || code === '0x' || code === '0x0'
|
||||
|
||||
result = codeIsEmpty ? SEND_ETHER_ACTION_KEY : CONTRACT_INTERACTION_KEY
|
||||
result = codeIsEmpty
|
||||
? TRANSACTION_CATEGORIES.SENT_ETHER
|
||||
: TRANSACTION_CATEGORIES.CONTRACT_INTERACTION
|
||||
}
|
||||
|
||||
return { transactionCategory: result, getCodeResponse: code }
|
||||
|
@ -175,9 +175,14 @@ async function verifyLocale(code) {
|
||||
|
||||
async function verifyEnglishLocale() {
|
||||
const englishLocale = await getLocale('en')
|
||||
const javascriptFiles = await findJavascriptFiles(
|
||||
const uiJSFiles = await findJavascriptFiles(
|
||||
path.resolve(__dirname, '..', 'ui'),
|
||||
)
|
||||
const sharedJSFiles = await findJavascriptFiles(
|
||||
path.resolve(__dirname, '..', 'shared'),
|
||||
)
|
||||
|
||||
const javascriptFiles = sharedJSFiles.concat(uiJSFiles)
|
||||
|
||||
// match "t(`...`)" because constructing message keys from template strings
|
||||
// prevents this script from finding the messages, and then inappropriately
|
||||
|
147
shared/constants/transaction.js
Normal file
147
shared/constants/transaction.js
Normal file
@ -0,0 +1,147 @@
|
||||
/**
|
||||
* Transaction Type is a MetaMask construct used internally
|
||||
* @typedef {Object} TransactionTypes
|
||||
* @property {'standard'} STANDARD - A standard transaction, usually the first with
|
||||
* a given nonce
|
||||
* @property {'cancel'} CANCEL - A transaction submitted with the same nonce as a
|
||||
* previous transaction, a higher gas price and a zeroed out send amount. Useful
|
||||
* for users who accidentally send to erroneous addresses or if they send too much.
|
||||
* @property {'retry'} RETRY - When a transaction is failed it can be retried by
|
||||
* resubmitting the same transaction with a higher gas fee. This type is also used
|
||||
* to speed up pending transactions. This is accomplished by creating a new tx with
|
||||
* the same nonce and higher gas fees.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @type {TransactionTypes}
|
||||
*/
|
||||
export const TRANSACTION_TYPES = {
|
||||
STANDARD: 'standard',
|
||||
CANCEL: 'cancel',
|
||||
RETRY: 'retry',
|
||||
}
|
||||
|
||||
/**
|
||||
* Transaction Status is a mix of Ethereum and MetaMask terminology, used internally
|
||||
* for transaction processing.
|
||||
* @typedef {Object} TransactionStatuses
|
||||
* @property {'unapproved'} UNAPPROVED - A new transaction that the user has not
|
||||
* approved or rejected
|
||||
* @property {'approved'} APPROVED - The user has approved the transaction in the
|
||||
* MetaMask UI
|
||||
* @property {'rejected'} REJECTED - The user has rejected the transaction in the
|
||||
* MetaMask UI
|
||||
* @property {'signed'} SIGNED - The transaction has been signed
|
||||
* @property {'submitted'} SIGNED - The transaction has been submitted to network
|
||||
* @property {'failed'} FAILED - The transaction has failed for some reason
|
||||
* @property {'dropped'} DROPPED - The transaction was dropped due to a tx with same
|
||||
* nonce being accepted
|
||||
* @property {'confirmed'} CONFIRMED - The transaction was confirmed by the network
|
||||
*/
|
||||
|
||||
/**
|
||||
* @type {TransactionStatuses}
|
||||
*/
|
||||
export const TRANSACTION_STATUSES = {
|
||||
UNAPPROVED: 'unapproved',
|
||||
APPROVED: 'approved',
|
||||
REJECTED: 'rejected',
|
||||
SIGNED: 'signed',
|
||||
SUBMITTED: 'submitted',
|
||||
FAILED: 'failed',
|
||||
DROPPED: 'dropped',
|
||||
CONFIRMED: 'confirmed',
|
||||
}
|
||||
|
||||
/**
|
||||
* @typedef {Object} TransactionCategories
|
||||
* @property {'transfer'} TOKEN_METHOD_TRANSFER - A token transaction where the user
|
||||
* is sending tokens that they own to another address
|
||||
* @property {'transferfrom'} TOKEN_METHOD_TRANSFER_FROM - A token transaction
|
||||
* transferring tokens from an account that the sender has an allowance of.
|
||||
* For more information on allowances, see the approve category.
|
||||
* @property {'approve'} TOKEN_METHOD_APPROVE - A token transaction requesting an
|
||||
* allowance of the token to spend on behalf of the user
|
||||
* @property {'incoming'} INCOMING - An incoming (deposit) transaction
|
||||
* @property {'sentEther'} SENT_ETHER - A transaction sending ether to a recipient
|
||||
* @property {'contractInteraction'} CONTRACT_INTERACTION - A transaction that is
|
||||
* interacting with a smart contract's methods that we have not treated as a special
|
||||
* case, such as approve, transfer, and transferfrom
|
||||
* @property {'contractDeployment'} DEPLOY_CONTRACT - A transaction that deployed
|
||||
* a smart contract
|
||||
* @property {'swap'} SWAP - A transaction swapping one token for another through
|
||||
* MetaMask Swaps
|
||||
* @property {'swapApproval'} SWAP_APPROVAL - Similar to the approve category, a swap
|
||||
* approval is a special case of ERC20 approve method that requests an allowance of
|
||||
* the token to spend on behalf of the user for the MetaMask Swaps contract. The first
|
||||
* swap for any token will have an accompanying swapApproval transaction.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @type {TransactionCategories}
|
||||
*/
|
||||
export const TRANSACTION_CATEGORIES = {
|
||||
TOKEN_METHOD_TRANSFER: 'transfer',
|
||||
TOKEN_METHOD_TRANSFER_FROM: 'transferfrom',
|
||||
TOKEN_METHOD_APPROVE: 'approve',
|
||||
INCOMING: 'incoming',
|
||||
SENT_ETHER: 'sentEther',
|
||||
CONTRACT_INTERACTION: 'contractInteraction',
|
||||
DEPLOY_CONTRACT: 'contractDeployment',
|
||||
SWAP: 'swap',
|
||||
SWAP_APPROVAL: 'swapApproval',
|
||||
}
|
||||
|
||||
/**
|
||||
* Transaction Group Status is a MetaMask construct to track the status of groups
|
||||
* of transactions.
|
||||
* @typedef {Object} TransactionGroupStatuses
|
||||
* @property {'cancelled'} CANCELLED - A cancel type transaction in the group was
|
||||
* confirmed
|
||||
* @property {'pending'} PENDING - The primaryTransaction of the group has a status
|
||||
* that is one of TRANSACTION_STATUSES.APPROVED, TRANSACTION_STATUSES.UNAPPROVED
|
||||
* or TRANSACTION_STATUSES.SUBMITTED
|
||||
*/
|
||||
|
||||
/**
|
||||
* @type {TransactionGroupStatuses}
|
||||
*/
|
||||
export const TRANSACTION_GROUP_STATUSES = {
|
||||
CANCELLED: 'cancelled',
|
||||
PENDING: 'pending',
|
||||
}
|
||||
|
||||
/**
|
||||
* Transaction Group Category is a MetaMask construct to categorize the intent
|
||||
* of a group of transactions for purposes of displaying in the UI
|
||||
* @typedef {Object} TransactionGroupCategories
|
||||
* @property {'send'} SEND - Transaction group representing ether being sent from
|
||||
* the user.
|
||||
* @property {'receive'} RECEIVE - Transaction group representing a deposit/incoming
|
||||
* transaction. This category maps 1:1 with TRANSACTION_CATEGORIES.INCOMING.
|
||||
* @property {'interaction'} INTERACTION - Transaction group representing
|
||||
* an interaction with a smart contract's methods.
|
||||
* @property {'approval'} APPROVAL - Transaction group representing a request for an
|
||||
* allowance of a token to spend on the user's behalf.
|
||||
* @property {'signature-request'} SIGNATURE_REQUEST - Transaction group representing
|
||||
* a signature request This currently only shows up in the UI when its pending user
|
||||
* approval in the UI. Once the user approves or rejects it will no longer show in
|
||||
* activity.
|
||||
* @property {'swap'} SWAP - Transaction group representing a token swap through
|
||||
* MetaMask Swaps. This transaction group's primary currency changes depending
|
||||
* on context. If the user is viewing an asset page for a token received from a swap,
|
||||
* the primary currency will be the received token. Otherwise the token exchanged
|
||||
* will be shown.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @type {TransactionGroupCategories}
|
||||
*/
|
||||
export const TRANSACTION_GROUP_CATEGORIES = {
|
||||
SEND: 'send',
|
||||
RECEIVE: 'receive',
|
||||
INTERACTION: 'interaction',
|
||||
APPROVAL: 'approval',
|
||||
SIGNATURE_REQUEST: 'signature-request',
|
||||
SWAP: 'swap',
|
||||
}
|
@ -5,20 +5,15 @@ import EthTx from 'ethereumjs-tx'
|
||||
import ObservableStore from 'obs-store'
|
||||
import sinon from 'sinon'
|
||||
import TransactionController from '../../../../../app/scripts/controllers/transactions'
|
||||
import { TRANSACTION_TYPE_RETRY } from '../../../../../app/scripts/controllers/transactions/enums'
|
||||
|
||||
import {
|
||||
TOKEN_METHOD_APPROVE,
|
||||
TOKEN_METHOD_TRANSFER,
|
||||
SEND_ETHER_ACTION_KEY,
|
||||
DEPLOY_CONTRACT_ACTION_KEY,
|
||||
CONTRACT_INTERACTION_KEY,
|
||||
} from '../../../../../ui/app/helpers/constants/transactions'
|
||||
|
||||
import {
|
||||
createTestProviderTools,
|
||||
getTestAccounts,
|
||||
} from '../../../../stub/provider'
|
||||
import {
|
||||
TRANSACTION_CATEGORIES,
|
||||
TRANSACTION_TYPES,
|
||||
} from '../../../../../shared/constants/transaction'
|
||||
|
||||
const noop = () => true
|
||||
const currentNetworkId = '42'
|
||||
@ -628,7 +623,7 @@ describe('Transaction Controller', function () {
|
||||
{ lastGasPrice, type },
|
||||
{
|
||||
lastGasPrice: '0xa',
|
||||
type: TRANSACTION_TYPE_RETRY,
|
||||
type: TRANSACTION_TYPES.RETRY,
|
||||
},
|
||||
)
|
||||
})
|
||||
@ -651,7 +646,7 @@ describe('Transaction Controller', function () {
|
||||
{ lastGasPrice, type },
|
||||
{
|
||||
lastGasPrice: '0xa',
|
||||
type: TRANSACTION_TYPE_RETRY,
|
||||
type: TRANSACTION_TYPES.RETRY,
|
||||
},
|
||||
)
|
||||
})
|
||||
@ -773,7 +768,7 @@ describe('Transaction Controller', function () {
|
||||
data: '',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: SEND_ETHER_ACTION_KEY,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.SENT_ETHER,
|
||||
getCodeResponse: null,
|
||||
})
|
||||
})
|
||||
@ -785,7 +780,7 @@ describe('Transaction Controller', function () {
|
||||
'0xa9059cbb0000000000000000000000002f318C334780961FB129D2a6c30D0763d9a5C970000000000000000000000000000000000000000000000000000000000000000a',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: TOKEN_METHOD_TRANSFER,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER,
|
||||
getCodeResponse: undefined,
|
||||
})
|
||||
})
|
||||
@ -797,7 +792,7 @@ describe('Transaction Controller', function () {
|
||||
'0x095ea7b30000000000000000000000002f318C334780961FB129D2a6c30D0763d9a5C9700000000000000000000000000000000000000000000000000000000000000005',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: TOKEN_METHOD_APPROVE,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.TOKEN_METHOD_APPROVE,
|
||||
getCodeResponse: undefined,
|
||||
})
|
||||
})
|
||||
@ -808,7 +803,7 @@ describe('Transaction Controller', function () {
|
||||
data: '0xabd',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: DEPLOY_CONTRACT_ACTION_KEY,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.DEPLOY_CONTRACT,
|
||||
getCodeResponse: undefined,
|
||||
})
|
||||
})
|
||||
@ -819,7 +814,7 @@ describe('Transaction Controller', function () {
|
||||
data: '0xabd',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: SEND_ETHER_ACTION_KEY,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.SENT_ETHER,
|
||||
getCodeResponse: '0x',
|
||||
})
|
||||
})
|
||||
@ -830,7 +825,7 @@ describe('Transaction Controller', function () {
|
||||
data: '0xabd',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: SEND_ETHER_ACTION_KEY,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.SENT_ETHER,
|
||||
getCodeResponse: null,
|
||||
})
|
||||
})
|
||||
@ -869,7 +864,7 @@ describe('Transaction Controller', function () {
|
||||
data: 'abd',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: CONTRACT_INTERACTION_KEY,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.CONTRACT_INTERACTION,
|
||||
getCodeResponse: '0x0a',
|
||||
})
|
||||
})
|
||||
@ -908,7 +903,7 @@ describe('Transaction Controller', function () {
|
||||
data: '',
|
||||
})
|
||||
assert.deepEqual(result, {
|
||||
transactionCategory: CONTRACT_INTERACTION_KEY,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.CONTRACT_INTERACTION,
|
||||
getCodeResponse: '0x0a',
|
||||
})
|
||||
})
|
||||
|
@ -1,7 +1,7 @@
|
||||
import React, { PureComponent } from 'react'
|
||||
import PropTypes from 'prop-types'
|
||||
import Modal from '../../modal'
|
||||
import { SUBMITTED_STATUS } from '../../../../helpers/constants/transactions'
|
||||
import { TRANSACTION_STATUSES } from '../../../../../../shared/constants/transaction'
|
||||
import CancelTransactionGasFee from './cancel-transaction-gas-fee'
|
||||
|
||||
export default class CancelTransaction extends PureComponent {
|
||||
@ -24,7 +24,7 @@ export default class CancelTransaction extends PureComponent {
|
||||
componentDidUpdate() {
|
||||
const { transactionStatus, showTransactionConfirmedModal } = this.props
|
||||
|
||||
if (transactionStatus !== SUBMITTED_STATUS) {
|
||||
if (transactionStatus !== TRANSACTION_STATUSES.SUBMITTED) {
|
||||
showTransactionConfirmedModal()
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,6 @@
|
||||
import { TRANSACTION_TYPES } from '../../../../../shared/constants/transaction'
|
||||
import { getHexGasTotal } from '../../../helpers/utils/confirm-tx.util'
|
||||
|
||||
import {
|
||||
TRANSACTION_TYPE_CANCEL,
|
||||
TRANSACTION_TYPE_RETRY,
|
||||
} from '../../../../../app/scripts/controllers/transactions/enums'
|
||||
import {
|
||||
// event constants
|
||||
TRANSACTION_CREATED_EVENT,
|
||||
@ -114,13 +111,13 @@ export function getActivities(transaction, isFirstTransaction = false) {
|
||||
// If the status is 'submitted', we need to determine whether the event is a
|
||||
// transaction retry or a cancellation attempt.
|
||||
if (value === SUBMITTED_STATUS) {
|
||||
if (type === TRANSACTION_TYPE_RETRY) {
|
||||
if (type === TRANSACTION_TYPES.RETRY) {
|
||||
eventKey = TRANSACTION_RESUBMITTED_EVENT
|
||||
} else if (type === TRANSACTION_TYPE_CANCEL) {
|
||||
} else if (type === TRANSACTION_TYPES.CANCEL) {
|
||||
eventKey = TRANSACTION_CANCEL_ATTEMPTED_EVENT
|
||||
}
|
||||
} else if (value === CONFIRMED_STATUS) {
|
||||
if (type === TRANSACTION_TYPE_CANCEL) {
|
||||
if (type === TRANSACTION_TYPES.CANCEL) {
|
||||
eventKey = TRANSACTION_CANCEL_SUCCESS_EVENT
|
||||
}
|
||||
}
|
||||
|
@ -6,7 +6,7 @@ import {
|
||||
} from '../../../selectors'
|
||||
import { getHexGasTotal } from '../../../helpers/utils/confirm-tx.util'
|
||||
import { sumHexes } from '../../../helpers/utils/transactions.util'
|
||||
import { TOKEN_METHOD_APPROVE } from '../../../helpers/constants/transactions'
|
||||
import { TRANSACTION_CATEGORIES } from '../../../../../shared/constants/transaction'
|
||||
import TransactionBreakdown from './transaction-breakdown.component'
|
||||
|
||||
const mapStateToProps = (state, ownProps) => {
|
||||
@ -17,7 +17,8 @@ const mapStateToProps = (state, ownProps) => {
|
||||
} = transaction
|
||||
const { showFiatInTestnets } = getPreferences(state)
|
||||
const isMainnet = getIsMainnet(state)
|
||||
const isTokenApprove = transactionCategory === TOKEN_METHOD_APPROVE
|
||||
const isTokenApprove =
|
||||
transactionCategory === TRANSACTION_CATEGORIES.TOKEN_METHOD_APPROVE
|
||||
|
||||
const gasLimit = typeof gasUsed === 'string' ? gasUsed : gas
|
||||
|
||||
|
@ -7,28 +7,18 @@ import Send from '../../ui/icon/send-icon.component'
|
||||
import Sign from '../../ui/icon/sign-icon.component'
|
||||
import Swap from '../../ui/icon/swap-icon-for-list.component'
|
||||
import {
|
||||
TRANSACTION_CATEGORY_APPROVAL,
|
||||
TRANSACTION_CATEGORY_SIGNATURE_REQUEST,
|
||||
TRANSACTION_CATEGORY_INTERACTION,
|
||||
TRANSACTION_CATEGORY_SEND,
|
||||
TRANSACTION_CATEGORY_RECEIVE,
|
||||
TRANSACTION_CATEGORY_SWAP,
|
||||
UNAPPROVED_STATUS,
|
||||
FAILED_STATUS,
|
||||
REJECTED_STATUS,
|
||||
CANCELLED_STATUS,
|
||||
DROPPED_STATUS,
|
||||
SUBMITTED_STATUS,
|
||||
APPROVED_STATUS,
|
||||
} from '../../../helpers/constants/transactions'
|
||||
TRANSACTION_GROUP_CATEGORIES,
|
||||
TRANSACTION_GROUP_STATUSES,
|
||||
TRANSACTION_STATUSES,
|
||||
} from '../../../../../shared/constants/transaction'
|
||||
|
||||
const ICON_MAP = {
|
||||
[TRANSACTION_CATEGORY_APPROVAL]: Approve,
|
||||
[TRANSACTION_CATEGORY_INTERACTION]: Interaction,
|
||||
[TRANSACTION_CATEGORY_SEND]: Send,
|
||||
[TRANSACTION_CATEGORY_SIGNATURE_REQUEST]: Sign,
|
||||
[TRANSACTION_CATEGORY_RECEIVE]: Receive,
|
||||
[TRANSACTION_CATEGORY_SWAP]: Swap,
|
||||
[TRANSACTION_GROUP_CATEGORIES.APPROVAL]: Approve,
|
||||
[TRANSACTION_GROUP_CATEGORIES.INTERACTION]: Interaction,
|
||||
[TRANSACTION_GROUP_CATEGORIES.SEND]: Send,
|
||||
[TRANSACTION_GROUP_CATEGORIES.SIGNATURE_REQUEST]: Sign,
|
||||
[TRANSACTION_GROUP_CATEGORIES.RECEIVE]: Receive,
|
||||
[TRANSACTION_GROUP_CATEGORIES.SWAP]: Swap,
|
||||
}
|
||||
|
||||
const FAIL_COLOR = '#D73A49'
|
||||
@ -36,13 +26,13 @@ const PENDING_COLOR = '#6A737D'
|
||||
const OK_COLOR = '#2F80ED'
|
||||
|
||||
const COLOR_MAP = {
|
||||
[SUBMITTED_STATUS]: PENDING_COLOR,
|
||||
[UNAPPROVED_STATUS]: PENDING_COLOR,
|
||||
[APPROVED_STATUS]: PENDING_COLOR,
|
||||
[FAILED_STATUS]: FAIL_COLOR,
|
||||
[REJECTED_STATUS]: FAIL_COLOR,
|
||||
[CANCELLED_STATUS]: FAIL_COLOR,
|
||||
[DROPPED_STATUS]: FAIL_COLOR,
|
||||
[TRANSACTION_GROUP_STATUSES.PENDING]: PENDING_COLOR,
|
||||
[TRANSACTION_STATUSES.UNAPPROVED]: PENDING_COLOR,
|
||||
[TRANSACTION_STATUSES.APPROVED]: PENDING_COLOR,
|
||||
[TRANSACTION_STATUSES.FAILED]: FAIL_COLOR,
|
||||
[TRANSACTION_STATUSES.REJECTED]: FAIL_COLOR,
|
||||
[TRANSACTION_GROUP_STATUSES.CANCELLED]: FAIL_COLOR,
|
||||
[TRANSACTION_STATUSES.DROPPED]: FAIL_COLOR,
|
||||
}
|
||||
|
||||
export default function TransactionIcon({ status, category }) {
|
||||
|
@ -12,20 +12,15 @@ import Button from '../../ui/button'
|
||||
import Tooltip from '../../ui/tooltip'
|
||||
import TransactionListItemDetails from '../transaction-list-item-details'
|
||||
import { CONFIRM_TRANSACTION_ROUTE } from '../../../helpers/constants/routes'
|
||||
import {
|
||||
TRANSACTION_CATEGORY_SIGNATURE_REQUEST,
|
||||
UNAPPROVED_STATUS,
|
||||
TRANSACTION_CATEGORY_APPROVAL,
|
||||
FAILED_STATUS,
|
||||
DROPPED_STATUS,
|
||||
REJECTED_STATUS,
|
||||
TRANSACTION_CATEGORY_SWAP,
|
||||
} from '../../../helpers/constants/transactions'
|
||||
import { useShouldShowSpeedUp } from '../../../hooks/useShouldShowSpeedUp'
|
||||
import TransactionStatus from '../transaction-status/transaction-status.component'
|
||||
import TransactionIcon from '../transaction-icon'
|
||||
import { useTransactionTimeRemaining } from '../../../hooks/useTransactionTimeRemaining'
|
||||
import IconWithLabel from '../../ui/icon-with-label'
|
||||
import {
|
||||
TRANSACTION_GROUP_CATEGORIES,
|
||||
TRANSACTION_STATUSES,
|
||||
} from '../../../../../shared/constants/transaction'
|
||||
|
||||
export default function TransactionListItem({
|
||||
transactionGroup,
|
||||
@ -71,17 +66,20 @@ export default function TransactionListItem({
|
||||
gasPrice,
|
||||
)
|
||||
|
||||
const isSignatureReq = category === TRANSACTION_CATEGORY_SIGNATURE_REQUEST
|
||||
const isApproval = category === TRANSACTION_CATEGORY_APPROVAL
|
||||
const isUnapproved = displayedStatusKey === UNAPPROVED_STATUS
|
||||
const isSwap = category === TRANSACTION_CATEGORY_SWAP
|
||||
const isSignatureReq =
|
||||
category === TRANSACTION_GROUP_CATEGORIES.SIGNATURE_REQUEST
|
||||
const isApproval = category === TRANSACTION_GROUP_CATEGORIES.APPROVAL
|
||||
const isUnapproved = status === TRANSACTION_STATUSES.UNAPPROVED
|
||||
const isSwap = category === TRANSACTION_GROUP_CATEGORIES.SWAP
|
||||
|
||||
const className = classnames('transaction-list-item', {
|
||||
'transaction-list-item--unconfirmed':
|
||||
isPending ||
|
||||
[FAILED_STATUS, DROPPED_STATUS, REJECTED_STATUS].includes(
|
||||
displayedStatusKey,
|
||||
),
|
||||
[
|
||||
TRANSACTION_STATUSES.FAILED,
|
||||
TRANSACTION_STATUSES.DROPPED,
|
||||
TRANSACTION_STATUSES.REJECTED,
|
||||
].includes(displayedStatusKey),
|
||||
})
|
||||
|
||||
const toggleShowDetails = useCallback(() => {
|
||||
@ -210,7 +208,7 @@ export default function TransactionListItem({
|
||||
senderAddress={senderAddress}
|
||||
recipientAddress={recipientAddress}
|
||||
onRetry={retryTransaction}
|
||||
showRetry={status === FAILED_STATUS && !isSwap}
|
||||
showRetry={status === TRANSACTION_STATUSES.FAILED && !isSwap}
|
||||
showSpeedUp={shouldShowSpeedUp}
|
||||
isEarliestNonce={isEarliestNonce}
|
||||
onCancel={cancelTransaction}
|
||||
|
@ -10,11 +10,9 @@ import * as actions from '../../../ducks/gas/gas.duck'
|
||||
import { useI18nContext } from '../../../hooks/useI18nContext'
|
||||
import TransactionListItem from '../transaction-list-item'
|
||||
import Button from '../../ui/button'
|
||||
import {
|
||||
TOKEN_CATEGORY_HASH,
|
||||
TRANSACTION_CATEGORY_SWAP,
|
||||
} from '../../../helpers/constants/transactions'
|
||||
import { TOKEN_CATEGORY_HASH } from '../../../helpers/constants/transactions'
|
||||
import { SWAPS_CONTRACT_ADDRESS } from '../../../helpers/constants/swaps'
|
||||
import { TRANSACTION_CATEGORIES } from '../../../../../shared/constants/transaction'
|
||||
|
||||
const PAGE_INCREMENT = 10
|
||||
|
||||
@ -37,7 +35,7 @@ const tokenTransactionFilter = ({
|
||||
}) => {
|
||||
if (TOKEN_CATEGORY_HASH[transactionCategory]) {
|
||||
return false
|
||||
} else if (transactionCategory === TRANSACTION_CATEGORY_SWAP) {
|
||||
} else if (transactionCategory === TRANSACTION_CATEGORIES.SWAP) {
|
||||
return destinationTokenSymbol === 'ETH' || sourceTokenSymbol === 'ETH'
|
||||
}
|
||||
return true
|
||||
|
@ -3,18 +3,11 @@ import PropTypes from 'prop-types'
|
||||
import classnames from 'classnames'
|
||||
import Tooltip from '../../ui/tooltip'
|
||||
|
||||
import {
|
||||
UNAPPROVED_STATUS,
|
||||
REJECTED_STATUS,
|
||||
SUBMITTED_STATUS,
|
||||
CONFIRMED_STATUS,
|
||||
FAILED_STATUS,
|
||||
DROPPED_STATUS,
|
||||
CANCELLED_STATUS,
|
||||
APPROVED_STATUS,
|
||||
SIGNED_STATUS,
|
||||
} from '../../../helpers/constants/transactions'
|
||||
import { useI18nContext } from '../../../hooks/useI18nContext'
|
||||
import {
|
||||
TRANSACTION_GROUP_STATUSES,
|
||||
TRANSACTION_STATUSES,
|
||||
} from '../../../../../shared/constants/transaction'
|
||||
|
||||
const QUEUED_PSEUDO_STATUS = 'queued'
|
||||
const PENDING_PSEUDO_STATUS = 'pending'
|
||||
@ -30,17 +23,17 @@ const PENDING_PSEUDO_STATUS = 'pending'
|
||||
* status label will be the date the transaction was finalized.
|
||||
*/
|
||||
const pendingStatusHash = {
|
||||
[SUBMITTED_STATUS]: PENDING_PSEUDO_STATUS,
|
||||
[APPROVED_STATUS]: PENDING_PSEUDO_STATUS,
|
||||
[SIGNED_STATUS]: PENDING_PSEUDO_STATUS,
|
||||
[TRANSACTION_STATUSES.SUBMITTED]: PENDING_PSEUDO_STATUS,
|
||||
[TRANSACTION_STATUSES.APPROVED]: PENDING_PSEUDO_STATUS,
|
||||
[TRANSACTION_STATUSES.SIGNED]: PENDING_PSEUDO_STATUS,
|
||||
}
|
||||
|
||||
const statusToClassNameHash = {
|
||||
[UNAPPROVED_STATUS]: 'transaction-status--unapproved',
|
||||
[REJECTED_STATUS]: 'transaction-status--rejected',
|
||||
[FAILED_STATUS]: 'transaction-status--failed',
|
||||
[DROPPED_STATUS]: 'transaction-status--dropped',
|
||||
[CANCELLED_STATUS]: 'transaction-status--cancelled',
|
||||
[TRANSACTION_STATUSES.UNAPPROVED]: 'transaction-status--unapproved',
|
||||
[TRANSACTION_STATUSES.REJECTED]: 'transaction-status--rejected',
|
||||
[TRANSACTION_STATUSES.FAILED]: 'transaction-status--failed',
|
||||
[TRANSACTION_STATUSES.DROPPED]: 'transaction-status--dropped',
|
||||
[TRANSACTION_GROUP_STATUSES.CANCELLED]: 'transaction-status--cancelled',
|
||||
[QUEUED_PSEUDO_STATUS]: 'transaction-status--queued',
|
||||
[PENDING_PSEUDO_STATUS]: 'transaction-status--pending',
|
||||
}
|
||||
@ -59,7 +52,8 @@ export default function TransactionStatus({
|
||||
statusKey = isEarliestNonce ? PENDING_PSEUDO_STATUS : QUEUED_PSEUDO_STATUS
|
||||
}
|
||||
|
||||
const statusText = statusKey === CONFIRMED_STATUS ? date : t(statusKey)
|
||||
const statusText =
|
||||
statusKey === TRANSACTION_STATUSES.CONFIRMED ? date : t(statusKey)
|
||||
|
||||
return (
|
||||
<Tooltip
|
||||
|
@ -51,13 +51,13 @@ import {
|
||||
SWAP_FAILED_ERROR,
|
||||
SWAPS_FETCH_ORDER_CONFLICT,
|
||||
} from '../../helpers/constants/swaps'
|
||||
import { SWAP, SWAP_APPROVAL } from '../../helpers/constants/transactions'
|
||||
import {
|
||||
fetchBasicGasAndTimeEstimates,
|
||||
fetchGasEstimates,
|
||||
resetCustomGasState,
|
||||
} from '../gas/gas.duck'
|
||||
import { formatCurrency } from '../../helpers/utils/confirm-tx.util'
|
||||
import { TRANSACTION_CATEGORIES } from '../../../../shared/constants/transaction'
|
||||
|
||||
const initialState = {
|
||||
aggregatorMetadata: null,
|
||||
@ -599,7 +599,7 @@ export const signAndSendTransactions = (history, metaMetricsEvent) => {
|
||||
updateTransaction(
|
||||
{
|
||||
...approveTxMeta,
|
||||
transactionCategory: SWAP_APPROVAL,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.SWAP_APPROVAL,
|
||||
sourceTokenSymbol: sourceTokenInfo.symbol,
|
||||
},
|
||||
true,
|
||||
@ -624,7 +624,7 @@ export const signAndSendTransactions = (history, metaMetricsEvent) => {
|
||||
...tradeTxMeta,
|
||||
sourceTokenSymbol: sourceTokenInfo.symbol,
|
||||
destinationTokenSymbol: destinationTokenInfo.symbol,
|
||||
transactionCategory: SWAP,
|
||||
transactionCategory: TRANSACTION_CATEGORIES.SWAP,
|
||||
destinationTokenDecimals: destinationTokenInfo.decimals,
|
||||
destinationTokenAddress: destinationTokenInfo.address,
|
||||
swapMetaData,
|
||||
|
@ -1,56 +1,21 @@
|
||||
export const UNAPPROVED_STATUS = 'unapproved'
|
||||
export const REJECTED_STATUS = 'rejected'
|
||||
export const APPROVED_STATUS = 'approved'
|
||||
export const SIGNED_STATUS = 'signed'
|
||||
export const SUBMITTED_STATUS = 'submitted'
|
||||
export const CONFIRMED_STATUS = 'confirmed'
|
||||
export const FAILED_STATUS = 'failed'
|
||||
export const DROPPED_STATUS = 'dropped'
|
||||
export const CANCELLED_STATUS = 'cancelled'
|
||||
import {
|
||||
TRANSACTION_CATEGORIES,
|
||||
TRANSACTION_STATUSES,
|
||||
} from '../../../../shared/constants/transaction'
|
||||
|
||||
export const PENDING_STATUS_HASH = {
|
||||
[UNAPPROVED_STATUS]: true,
|
||||
[APPROVED_STATUS]: true,
|
||||
[SUBMITTED_STATUS]: true,
|
||||
[TRANSACTION_STATUSES.UNAPPROVED]: true,
|
||||
[TRANSACTION_STATUSES.APPROVED]: true,
|
||||
[TRANSACTION_STATUSES.SUBMITTED]: true,
|
||||
}
|
||||
|
||||
export const PRIORITY_STATUS_HASH = {
|
||||
...PENDING_STATUS_HASH,
|
||||
[CONFIRMED_STATUS]: true,
|
||||
[TRANSACTION_STATUSES.CONFIRMED]: true,
|
||||
}
|
||||
|
||||
export const TOKEN_METHOD_TRANSFER = 'transfer'
|
||||
export const TOKEN_METHOD_APPROVE = 'approve'
|
||||
export const TOKEN_METHOD_TRANSFER_FROM = 'transferfrom'
|
||||
|
||||
export const TOKEN_CATEGORY_HASH = {
|
||||
[TOKEN_METHOD_APPROVE]: true,
|
||||
[TOKEN_METHOD_TRANSFER]: true,
|
||||
[TOKEN_METHOD_TRANSFER_FROM]: true,
|
||||
[TRANSACTION_CATEGORIES.TOKEN_METHOD_APPROVE]: true,
|
||||
[TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER]: true,
|
||||
[TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER_FROM]: true,
|
||||
}
|
||||
|
||||
export const SWAP = 'swap'
|
||||
export const SWAP_APPROVAL = 'swapApproval'
|
||||
|
||||
export const INCOMING_TRANSACTION = 'incoming'
|
||||
|
||||
export const SEND_ETHER_ACTION_KEY = 'sentEther'
|
||||
export const DEPLOY_CONTRACT_ACTION_KEY = 'contractDeployment'
|
||||
export const APPROVE_ACTION_KEY = 'approve'
|
||||
export const SEND_TOKEN_ACTION_KEY = 'sentTokens'
|
||||
export const TRANSFER_FROM_ACTION_KEY = 'transferFrom'
|
||||
export const SIGNATURE_REQUEST_KEY = 'signatureRequest'
|
||||
export const DECRYPT_REQUEST_KEY = 'decryptRequest'
|
||||
export const ENCRYPTION_PUBLIC_KEY_REQUEST_KEY = 'encryptionPublicKeyRequest'
|
||||
export const CONTRACT_INTERACTION_KEY = 'contractInteraction'
|
||||
export const CANCEL_ATTEMPT_ACTION_KEY = 'cancelAttempt'
|
||||
export const DEPOSIT_TRANSACTION_KEY = 'deposit'
|
||||
|
||||
// Transaction List Item Categories
|
||||
// Used for UI distinction between transactions in the history list
|
||||
export const TRANSACTION_CATEGORY_SEND = 'send'
|
||||
export const TRANSACTION_CATEGORY_RECEIVE = 'receive'
|
||||
export const TRANSACTION_CATEGORY_INTERACTION = 'interaction'
|
||||
export const TRANSACTION_CATEGORY_APPROVAL = 'approval'
|
||||
export const TRANSACTION_CATEGORY_SIGNATURE_REQUEST = 'signature-request'
|
||||
export const TRANSACTION_CATEGORY_SWAP = 'swap'
|
||||
|
@ -3,16 +3,12 @@ import MethodRegistry from 'eth-method-registry'
|
||||
import abi from 'human-standard-token-abi'
|
||||
import { ethers } from 'ethers'
|
||||
import log from 'loglevel'
|
||||
import {
|
||||
TRANSACTION_TYPE_CANCEL,
|
||||
TRANSACTION_STATUS_CONFIRMED,
|
||||
} from '../../../../app/scripts/controllers/transactions/enums'
|
||||
import { getEtherscanNetworkPrefix } from '../../../lib/etherscan-prefix-for-network'
|
||||
import {
|
||||
TOKEN_METHOD_TRANSFER,
|
||||
TOKEN_METHOD_APPROVE,
|
||||
TOKEN_METHOD_TRANSFER_FROM,
|
||||
} from '../constants/transactions'
|
||||
TRANSACTION_CATEGORIES,
|
||||
TRANSACTION_STATUSES,
|
||||
TRANSACTION_TYPES,
|
||||
} from '../../../../shared/constants/transaction'
|
||||
import fetchWithCache from './fetch-with-cache'
|
||||
|
||||
import { addCurrencies } from './conversion-util'
|
||||
@ -120,9 +116,9 @@ export function getFourBytePrefix(data = '') {
|
||||
*/
|
||||
export function isTokenMethodAction(transactionCategory) {
|
||||
return [
|
||||
TOKEN_METHOD_TRANSFER,
|
||||
TOKEN_METHOD_APPROVE,
|
||||
TOKEN_METHOD_TRANSFER_FROM,
|
||||
TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER,
|
||||
TRANSACTION_CATEGORIES.TOKEN_METHOD_APPROVE,
|
||||
TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER_FROM,
|
||||
].includes(transactionCategory)
|
||||
}
|
||||
|
||||
@ -184,8 +180,8 @@ export function getStatusKey(transaction) {
|
||||
}
|
||||
|
||||
if (
|
||||
status === TRANSACTION_STATUS_CONFIRMED &&
|
||||
type === TRANSACTION_TYPE_CANCEL
|
||||
status === TRANSACTION_STATUSES.CONFIRMED &&
|
||||
type === TRANSACTION_TYPES.CANCEL
|
||||
) {
|
||||
return 'cancelled'
|
||||
}
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { TRANSACTION_CATEGORIES } from '../../../shared/constants/transaction'
|
||||
import { ETH_SWAPS_TOKEN_ADDRESS } from '../helpers/constants/swaps'
|
||||
import { SWAP } from '../helpers/constants/transactions'
|
||||
import { getSwapsTokensReceivedFromTxMeta } from '../pages/swaps/swaps.util'
|
||||
import { useTokenFiatAmount } from './useTokenFiatAmount'
|
||||
|
||||
@ -12,7 +12,7 @@ import { useTokenFiatAmount } from './useTokenFiatAmount'
|
||||
*/
|
||||
|
||||
/**
|
||||
* A SWAP transaction group's primaryTransaction contains details of the swap,
|
||||
* A Swap transaction group's primaryTransaction contains details of the swap,
|
||||
* including the source (from) and destination (to) token type (ETH, DAI, etc..)
|
||||
* When viewing a non ETH asset page, we need to determine if that asset is the
|
||||
* token that was received (destination) from the swap. In that circumstance we
|
||||
@ -34,7 +34,8 @@ export function useSwappedTokenValue(transactionGroup, currentAsset) {
|
||||
primaryTransaction.destinationTokenSymbol === 'ETH')
|
||||
|
||||
const swapTokenValue =
|
||||
transactionCategory === SWAP && isViewingReceivedTokenFromSwap
|
||||
transactionCategory === TRANSACTION_CATEGORIES.SWAP &&
|
||||
isViewingReceivedTokenFromSwap
|
||||
? getSwapsTokensReceivedFromTxMeta(
|
||||
primaryTransaction.destinationTokenSymbol,
|
||||
initialTransaction,
|
||||
@ -42,7 +43,8 @@ export function useSwappedTokenValue(transactionGroup, currentAsset) {
|
||||
senderAddress,
|
||||
decimals,
|
||||
)
|
||||
: transactionCategory === SWAP && primaryTransaction.swapTokenValue
|
||||
: transactionCategory === TRANSACTION_CATEGORIES.SWAP &&
|
||||
primaryTransaction.swapTokenValue
|
||||
|
||||
const isNegative =
|
||||
typeof swapTokenValue === 'string'
|
||||
|
@ -10,26 +10,15 @@ import {
|
||||
stripHttpSchemes,
|
||||
} from '../helpers/utils/util'
|
||||
import {
|
||||
CONTRACT_INTERACTION_KEY,
|
||||
DEPLOY_CONTRACT_ACTION_KEY,
|
||||
INCOMING_TRANSACTION,
|
||||
TOKEN_METHOD_TRANSFER,
|
||||
TOKEN_METHOD_TRANSFER_FROM,
|
||||
SEND_ETHER_ACTION_KEY,
|
||||
TRANSACTION_CATEGORY_APPROVAL,
|
||||
TRANSACTION_CATEGORY_INTERACTION,
|
||||
TRANSACTION_CATEGORY_RECEIVE,
|
||||
TRANSACTION_CATEGORY_SEND,
|
||||
TRANSACTION_CATEGORY_SIGNATURE_REQUEST,
|
||||
TRANSACTION_CATEGORY_SWAP,
|
||||
TOKEN_METHOD_APPROVE,
|
||||
PENDING_STATUS_HASH,
|
||||
TOKEN_CATEGORY_HASH,
|
||||
SWAP,
|
||||
SWAP_APPROVAL,
|
||||
SUBMITTED_STATUS,
|
||||
} from '../helpers/constants/transactions'
|
||||
import { getTokens } from '../ducks/metamask/metamask'
|
||||
import {
|
||||
TRANSACTION_CATEGORIES,
|
||||
TRANSACTION_GROUP_CATEGORIES,
|
||||
TRANSACTION_STATUSES,
|
||||
} from '../../../shared/constants/transaction'
|
||||
import { useI18nContext } from './useI18nContext'
|
||||
import { useTokenFiatAmount } from './useTokenFiatAmount'
|
||||
import { useUserPreferencedCurrency } from './useUserPreferencedCurrency'
|
||||
@ -82,7 +71,7 @@ export function useTransactionDisplayData(transactionGroup) {
|
||||
|
||||
const displayedStatusKey = getStatusKey(primaryTransaction)
|
||||
const isPending = displayedStatusKey in PENDING_STATUS_HASH
|
||||
const isSubmitted = displayedStatusKey === SUBMITTED_STATUS
|
||||
const isSubmitted = displayedStatusKey === TRANSACTION_STATUSES.SUBMITTED
|
||||
|
||||
const primaryValue = primaryTransaction.txParams?.value
|
||||
let prefix = '-'
|
||||
@ -154,12 +143,12 @@ export function useTransactionDisplayData(transactionGroup) {
|
||||
// 7. Swap Approval
|
||||
|
||||
if (transactionCategory === null || transactionCategory === undefined) {
|
||||
category = TRANSACTION_CATEGORY_SIGNATURE_REQUEST
|
||||
category = TRANSACTION_GROUP_CATEGORIES.SIGNATURE_REQUEST
|
||||
title = t('signatureRequest')
|
||||
subtitle = origin
|
||||
subtitleContainsOrigin = true
|
||||
} else if (transactionCategory === SWAP) {
|
||||
category = TRANSACTION_CATEGORY_SWAP
|
||||
} else if (transactionCategory === TRANSACTION_CATEGORIES.SWAP) {
|
||||
category = TRANSACTION_GROUP_CATEGORIES.SWAP
|
||||
title = t('swapTokenToToken', [
|
||||
initialTransaction.sourceTokenSymbol,
|
||||
initialTransaction.destinationTokenSymbol,
|
||||
@ -178,43 +167,45 @@ export function useTransactionDisplayData(transactionGroup) {
|
||||
} else {
|
||||
prefix = '-'
|
||||
}
|
||||
} else if (transactionCategory === SWAP_APPROVAL) {
|
||||
category = TRANSACTION_CATEGORY_APPROVAL
|
||||
} else if (transactionCategory === TRANSACTION_CATEGORIES.SWAP_APPROVAL) {
|
||||
category = TRANSACTION_GROUP_CATEGORIES.APPROVAL
|
||||
title = t('swapApproval', [primaryTransaction.sourceTokenSymbol])
|
||||
subtitle = origin
|
||||
subtitleContainsOrigin = true
|
||||
primarySuffix = primaryTransaction.sourceTokenSymbol
|
||||
} else if (transactionCategory === TOKEN_METHOD_APPROVE) {
|
||||
category = TRANSACTION_CATEGORY_APPROVAL
|
||||
} else if (
|
||||
transactionCategory === TRANSACTION_CATEGORIES.TOKEN_METHOD_APPROVE
|
||||
) {
|
||||
category = TRANSACTION_GROUP_CATEGORIES.APPROVAL
|
||||
prefix = ''
|
||||
title = t('approveSpendLimit', [token?.symbol || t('token')])
|
||||
subtitle = origin
|
||||
subtitleContainsOrigin = true
|
||||
} else if (
|
||||
transactionCategory === DEPLOY_CONTRACT_ACTION_KEY ||
|
||||
transactionCategory === CONTRACT_INTERACTION_KEY
|
||||
transactionCategory === TRANSACTION_CATEGORIES.DEPLOY_CONTRACT ||
|
||||
transactionCategory === TRANSACTION_CATEGORIES.CONTRACT_INTERACTION
|
||||
) {
|
||||
category = TRANSACTION_CATEGORY_INTERACTION
|
||||
category = TRANSACTION_GROUP_CATEGORIES.INTERACTION
|
||||
title =
|
||||
(methodData?.name && camelCaseToCapitalize(methodData.name)) ||
|
||||
t(transactionCategory)
|
||||
subtitle = origin
|
||||
subtitleContainsOrigin = true
|
||||
} else if (transactionCategory === INCOMING_TRANSACTION) {
|
||||
category = TRANSACTION_CATEGORY_RECEIVE
|
||||
} else if (transactionCategory === TRANSACTION_CATEGORIES.INCOMING) {
|
||||
category = TRANSACTION_GROUP_CATEGORIES.RECEIVE
|
||||
title = t('receive')
|
||||
prefix = ''
|
||||
subtitle = t('fromAddress', [shortenAddress(senderAddress)])
|
||||
} else if (
|
||||
transactionCategory === TOKEN_METHOD_TRANSFER_FROM ||
|
||||
transactionCategory === TOKEN_METHOD_TRANSFER
|
||||
transactionCategory === TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER_FROM ||
|
||||
transactionCategory === TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER
|
||||
) {
|
||||
category = TRANSACTION_CATEGORY_SEND
|
||||
category = TRANSACTION_GROUP_CATEGORIES.SEND
|
||||
title = t('sendSpecifiedTokens', [token?.symbol || t('token')])
|
||||
recipientAddress = getTokenAddressParam(tokenData)
|
||||
subtitle = t('toAddress', [shortenAddress(recipientAddress)])
|
||||
} else if (transactionCategory === SEND_ETHER_ACTION_KEY) {
|
||||
category = TRANSACTION_CATEGORY_SEND
|
||||
} else if (transactionCategory === TRANSACTION_CATEGORIES.SENT_ETHER) {
|
||||
category = TRANSACTION_GROUP_CATEGORIES.SEND
|
||||
title = t('sendETH')
|
||||
subtitle = t('toAddress', [shortenAddress(recipientAddress)])
|
||||
}
|
||||
@ -243,12 +234,15 @@ export function useTransactionDisplayData(transactionGroup) {
|
||||
subtitle,
|
||||
subtitleContainsOrigin,
|
||||
primaryCurrency:
|
||||
transactionCategory === SWAP && isPending ? '' : primaryCurrency,
|
||||
transactionCategory === TRANSACTION_CATEGORIES.SWAP && isPending
|
||||
? ''
|
||||
: primaryCurrency,
|
||||
senderAddress,
|
||||
recipientAddress,
|
||||
secondaryCurrency:
|
||||
(isTokenCategory && !tokenFiatAmount) ||
|
||||
(transactionCategory === SWAP && !swapTokenFiatAmount)
|
||||
(transactionCategory === TRANSACTION_CATEGORIES.SWAP &&
|
||||
!swapTokenFiatAmount)
|
||||
? undefined
|
||||
: secondaryCurrency,
|
||||
displayedStatusKey,
|
||||
|
@ -13,15 +13,12 @@ import {
|
||||
TRANSACTION_ERROR_KEY,
|
||||
GAS_LIMIT_TOO_LOW_ERROR_KEY,
|
||||
} from '../../helpers/constants/error-keys'
|
||||
import {
|
||||
CONFIRMED_STATUS,
|
||||
DROPPED_STATUS,
|
||||
} from '../../helpers/constants/transactions'
|
||||
import UserPreferencedCurrencyDisplay from '../../components/app/user-preferenced-currency-display'
|
||||
import { PRIMARY, SECONDARY } from '../../helpers/constants/common'
|
||||
import { hexToDecimal } from '../../helpers/utils/conversions.util'
|
||||
import AdvancedGasInputs from '../../components/app/gas-customization/advanced-gas-inputs'
|
||||
import TextField from '../../components/ui/text-field'
|
||||
import { TRANSACTION_STATUSES } from '../../../../shared/constants/transaction'
|
||||
|
||||
export default class ConfirmTransactionBase extends Component {
|
||||
static contextTypes = {
|
||||
@ -134,8 +131,8 @@ export default class ConfirmTransactionBase extends Component {
|
||||
} = prevProps
|
||||
const statusUpdated = transactionStatus !== prevTxStatus
|
||||
const txDroppedOrConfirmed =
|
||||
transactionStatus === DROPPED_STATUS ||
|
||||
transactionStatus === CONFIRMED_STATUS
|
||||
transactionStatus === TRANSACTION_STATUSES.DROPPED ||
|
||||
transactionStatus === TRANSACTION_STATUSES.CONFIRMED
|
||||
|
||||
if (
|
||||
nextNonce !== prevNextNonce ||
|
||||
|
@ -14,14 +14,8 @@ import {
|
||||
DECRYPT_MESSAGE_REQUEST_PATH,
|
||||
ENCRYPTION_PUBLIC_KEY_REQUEST_PATH,
|
||||
} from '../../helpers/constants/routes'
|
||||
import {
|
||||
TOKEN_METHOD_TRANSFER,
|
||||
TOKEN_METHOD_APPROVE,
|
||||
TOKEN_METHOD_TRANSFER_FROM,
|
||||
DEPLOY_CONTRACT_ACTION_KEY,
|
||||
SEND_ETHER_ACTION_KEY,
|
||||
} from '../../helpers/constants/transactions'
|
||||
import { MESSAGE_TYPE } from '../../../../app/scripts/lib/enums'
|
||||
import { TRANSACTION_CATEGORIES } from '../../../../shared/constants/transaction'
|
||||
|
||||
export default class ConfirmTransactionSwitch extends Component {
|
||||
static propTypes = {
|
||||
@ -32,27 +26,27 @@ export default class ConfirmTransactionSwitch extends Component {
|
||||
const { txData } = this.props
|
||||
const { id, txParams: { data } = {}, transactionCategory } = txData
|
||||
|
||||
if (transactionCategory === DEPLOY_CONTRACT_ACTION_KEY) {
|
||||
if (transactionCategory === TRANSACTION_CATEGORIES.DEPLOY_CONTRACT) {
|
||||
const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${id}${CONFIRM_DEPLOY_CONTRACT_PATH}`
|
||||
return <Redirect to={{ pathname }} />
|
||||
}
|
||||
|
||||
if (transactionCategory === SEND_ETHER_ACTION_KEY) {
|
||||
if (transactionCategory === TRANSACTION_CATEGORIES.SENT_ETHER) {
|
||||
const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${id}${CONFIRM_SEND_ETHER_PATH}`
|
||||
return <Redirect to={{ pathname }} />
|
||||
}
|
||||
|
||||
if (data) {
|
||||
switch (transactionCategory) {
|
||||
case TOKEN_METHOD_TRANSFER: {
|
||||
case TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER: {
|
||||
const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${id}${CONFIRM_SEND_TOKEN_PATH}`
|
||||
return <Redirect to={{ pathname }} />
|
||||
}
|
||||
case TOKEN_METHOD_APPROVE: {
|
||||
case TRANSACTION_CATEGORIES.TOKEN_METHOD_APPROVE: {
|
||||
const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${id}${CONFIRM_APPROVE_PATH}`
|
||||
return <Redirect to={{ pathname }} />
|
||||
}
|
||||
case TOKEN_METHOD_TRANSFER_FROM: {
|
||||
case TRANSACTION_CATEGORIES.TOKEN_METHOD_TRANSFER_FROM: {
|
||||
const pathname = `${CONFIRM_TRANSACTION_ROUTE}/${id}${CONFIRM_TRANSFER_FROM_PATH}`
|
||||
return <Redirect to={{ pathname }} />
|
||||
}
|
||||
|
@ -34,11 +34,11 @@ import {
|
||||
QUOTES_NOT_AVAILABLE_ERROR,
|
||||
OFFLINE_FOR_MAINTENANCE,
|
||||
} from '../../../helpers/constants/swaps'
|
||||
import { SUBMITTED_STATUS } from '../../../helpers/constants/transactions'
|
||||
import { ASSET_ROUTE, DEFAULT_ROUTE } from '../../../helpers/constants/routes'
|
||||
|
||||
import { getRenderableNetworkFeesForQuote } from '../swaps.util'
|
||||
import SwapsFooter from '../swaps-footer'
|
||||
import { TRANSACTION_STATUSES } from '../../../../../shared/constants/transaction'
|
||||
import SwapFailureIcon from './swap-failure-icon'
|
||||
import SwapSuccessIcon from './swap-success-icon'
|
||||
import QuotesTimeoutIcon from './quotes-timeout-icon'
|
||||
@ -115,7 +115,7 @@ export default function AwaitingSwap({
|
||||
|
||||
const statusKey = tradeTxData && getStatusKey(tradeTxData)
|
||||
const timeRemaining = useTransactionTimeRemaining(
|
||||
statusKey === SUBMITTED_STATUS,
|
||||
statusKey === TRANSACTION_STATUSES.SUBMITTED,
|
||||
true,
|
||||
tradeTxData?.submittedTime,
|
||||
usedGasPrice,
|
||||
|
@ -1,17 +1,14 @@
|
||||
import { createSelector } from 'reselect'
|
||||
import {
|
||||
SUBMITTED_STATUS,
|
||||
CONFIRMED_STATUS,
|
||||
FAILED_STATUS,
|
||||
PRIORITY_STATUS_HASH,
|
||||
PENDING_STATUS_HASH,
|
||||
} from '../helpers/constants/transactions'
|
||||
import {
|
||||
TRANSACTION_TYPE_CANCEL,
|
||||
TRANSACTION_TYPE_RETRY,
|
||||
} from '../../../app/scripts/controllers/transactions/enums'
|
||||
import { hexToDecimal } from '../helpers/utils/conversions.util'
|
||||
import txHelper from '../../lib/tx-helper'
|
||||
import {
|
||||
TRANSACTION_STATUSES,
|
||||
TRANSACTION_TYPES,
|
||||
} from '../../../shared/constants/transaction'
|
||||
import { getSelectedAddress } from '.'
|
||||
|
||||
export const incomingTxListSelector = (state) => {
|
||||
@ -252,13 +249,14 @@ export const nonceSortedTransactionsSelector = createSelector(
|
||||
} = nonceProps
|
||||
|
||||
const previousPrimaryIsNetworkFailure =
|
||||
nonceProps.primaryTransaction.status === FAILED_STATUS &&
|
||||
nonceProps.primaryTransaction.status ===
|
||||
TRANSACTION_STATUSES.FAILED &&
|
||||
nonceProps.primaryTransaction?.txReceipt?.status !== '0x0'
|
||||
const currentTransactionIsOnChainFailure =
|
||||
transaction?.txReceipt?.status === '0x0'
|
||||
|
||||
if (
|
||||
status === CONFIRMED_STATUS ||
|
||||
status === TRANSACTION_STATUSES.CONFIRMED ||
|
||||
currentTransactionIsOnChainFailure ||
|
||||
previousPrimaryIsNetworkFailure ||
|
||||
(txTime > primaryTxTime && status in PRIORITY_STATUS_HASH)
|
||||
@ -276,11 +274,11 @@ export const nonceSortedTransactionsSelector = createSelector(
|
||||
nonceProps.initialTransaction = transaction
|
||||
}
|
||||
|
||||
if (type === TRANSACTION_TYPE_RETRY) {
|
||||
if (type === TRANSACTION_TYPES.RETRY) {
|
||||
nonceProps.hasRetried = true
|
||||
}
|
||||
|
||||
if (type === TRANSACTION_TYPE_CANCEL) {
|
||||
if (type === TRANSACTION_TYPES.CANCEL) {
|
||||
nonceProps.hasCancelled = true
|
||||
}
|
||||
} else {
|
||||
@ -289,8 +287,8 @@ export const nonceSortedTransactionsSelector = createSelector(
|
||||
transactions: [transaction],
|
||||
initialTransaction: transaction,
|
||||
primaryTransaction: transaction,
|
||||
hasRetried: transaction.type === TRANSACTION_TYPE_RETRY,
|
||||
hasCancelled: transaction.type === TRANSACTION_TYPE_CANCEL,
|
||||
hasRetried: transaction.type === TRANSACTION_TYPES.RETRY,
|
||||
hasCancelled: transaction.type === TRANSACTION_TYPES.CANCEL,
|
||||
}
|
||||
|
||||
insertOrderedNonce(orderedNonces, nonce)
|
||||
@ -344,6 +342,6 @@ export const submittedPendingTransactionsSelector = createSelector(
|
||||
transactionsSelector,
|
||||
(transactions = []) =>
|
||||
transactions.filter(
|
||||
(transaction) => transaction.status === SUBMITTED_STATUS,
|
||||
(transaction) => transaction.status === TRANSACTION_STATUSES.SUBMITTED,
|
||||
),
|
||||
)
|
||||
|
Loading…
Reference in New Issue
Block a user