mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-22 18:00:18 +01:00
Merge pull request #9902 from MetaMask/Version-v8.1.5
Version v8.1.5 RC
This commit is contained in:
commit
8799671955
16
CHANGELOG.md
16
CHANGELOG.md
@ -1,7 +1,21 @@
|
||||
# Changelog
|
||||
|
||||
## Current Develop Branch
|
||||
- [#9612](https://github.com/MetaMask/metamask-extension/pull/9612): Update main-quote-summary designs/styles
|
||||
|
||||
## 8.1.5 Wed Nov 18 2020
|
||||
- [#9871](https://github.com/MetaMask/metamask-extension/pull/9871): Show send text upon hover in main asset list
|
||||
- [#9855](https://github.com/MetaMask/metamask-extension/pull/9855): Make edit icon and account name in account details modal focusable
|
||||
- [#9853](https://github.com/MetaMask/metamask-extension/pull/9853): Provide alternative text for images where appropriate
|
||||
- [#9869](https://github.com/MetaMask/metamask-extension/pull/9869): Remove CoinSwitch from the Deposit modal
|
||||
- [#9883](https://github.com/MetaMask/metamask-extension/pull/9883): Move add contact button in fullscreen/expanded view of settings lower to expose the close button.
|
||||
- [#9891](https://github.com/MetaMask/metamask-extension/pull/9891): Add token verification message to swaps build quote screen
|
||||
- [#9896](https://github.com/MetaMask/metamask-extension/pull/9896): Show failed token balance updates
|
||||
- [#9909](https://github.com/MetaMask/metamask-extension/pull/9909): Update asset page etherscan link to the address-filtered token page on Etherscan
|
||||
- [#9910](https://github.com/MetaMask/metamask-extension/pull/9910): Revert "Show a 'send eth' button on home screen in full screen mode"
|
||||
- [#9907](https://github.com/MetaMask/metamask-extension/pull/9907): Ensure "Known contract address" warning is shown on send screen even when changing asset
|
||||
- [#9911](https://github.com/MetaMask/metamask-extension/pull/9911): Fix display of Ledger connection error
|
||||
- [#9918](https://github.com/MetaMask/metamask-extension/pull/9918): Fix missing icon in asset page dropdown and in advanced gas modal button group
|
||||
|
||||
|
||||
## 8.1.4 Tue Nov 10 2020
|
||||
- [#9687](https://github.com/MetaMask/metamask-extension/pull/9687): Allow speeding up of underpriced transactions
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask ካሊፎርኒያ ውስጥ ተዘጋጅቶ የተገነባ ነው።"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "በ CoinSwitch ላይ ይግዙ"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch ከ300 በላይ ክሪፕቶ ከረንሲዎችን በጥሩ ዋጋ ለመመንዘር ባለ አንድ ማቆሚያ መዳረሻ ነው።"
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "ETH በ Wyre ይግዙ"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "ከ Ropsten የሙከራ አውታረ መረብ ጋር በመገናኘት ላይ"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "ወደ CoinSwitch ይቀጥሉ"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "ወደ Wyre ይቀጥሉ"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "تم تصميم وإنشاء MetaMask في ولاية كاليفورنيا."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "قم بالشراء على CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch هي الوجهة الوحيدة لتبادل أكثر من 300 عملة مشفرة بأفضل سعر."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "قم بشراء عملة إيثير بواسطة Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "جارِ الاتصال بشبكة اختبار Ropsten "
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "المتابعة إلى CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "الاستمرار إلى Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask е проектиран и създаден в Калифорния."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Купете на CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch е дестинацията за еднократна размяна, с цел да обменя повече от 300 криптовалути с най-добър курс."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Купете ETH с Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Свързване с тестова мрежа Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Продължете към CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Продължете към Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask ক্যালিফোর্নিয়াতে ডিজাইন করা এবং নির্মিত।"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "CoinSwitch এ ক্রয় করুন"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch হল 300রও বেশি ক্রিপ্টোকারেন্সি সর্বোত্তম হারে বিনময় করার সবথেকে ভালো স্থান।"
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Wyre দিয়ে ETH ক্রয় করুন"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "রপস্টেন টেস্ট নেটওয়ার্কের সাথে সংযোগ করছে"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "CoinSwitch এ অবিরত থাকুন"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Wyre এ অবিরত রাখুন"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask ha estat dissenyat i desenvolupat a Califòrnia."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Comprar a CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch és la destinació número 1 per a canviar més de 300 criptomonedes al millor preu."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Compra ETH amb Wyre"
|
||||
},
|
||||
@ -221,9 +215,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Connectant a la xarxa de test Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continua a CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continua a Wyre"
|
||||
},
|
||||
|
@ -49,12 +49,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask je navržen a vytvořen v Kalifornii."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Nákup na CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch je jediným místem, kde můžete vyměňovat více než 300 kryptocurrencí za nejlepší cenu."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Zrušit"
|
||||
},
|
||||
@ -79,9 +73,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Připojuji se k Ropsten Test Network"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Přejít na CoinSwitch"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "Nasazení kontraktu"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask er designet og bygget i Californien."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Køb på CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch er den direkte destination for veksling af mere end 300 kryptovalutaer til den bedste sats."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Køb ETH med Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Forbinder til Ropsten-testnetværk"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Fortsæt til CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Fortsæt til Wyre"
|
||||
},
|
||||
|
@ -143,12 +143,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask wurde in Kalifornien entwickelt und gebaut."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Auf CoinSwitch kaufen"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch ist die One-Stop-Destination, um mehr als 300 Kryptowährungen zum besten Preis zu tauschen."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "ETH mit Wyre kaufen"
|
||||
},
|
||||
@ -215,9 +209,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": " Verbinde zum Ropsten Testnetzwerk"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Zu CoinSwitch fortfahren"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Weiter zu Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "Το MetaMask έχει σχεδιαστεί και αναπτυχθεί στην Καλιφόρνια."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Αγοράστε στο CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "Το CoinSwitch είναι ο προορισμός μιας στάσης για ανταλλαγή σε περισσότερα από 300 κρυπτονομίσματα στην καλύτερη ισοτιμία."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Αγοράστε ETH με το Wyre"
|
||||
},
|
||||
@ -221,9 +215,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Σύνδεση με το Δίκτυο Δοκιμών Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Συνέχεια με CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Συνεχίστε στο Wyre"
|
||||
},
|
||||
|
@ -43,6 +43,9 @@
|
||||
"activityLog": {
|
||||
"message": "activity log"
|
||||
},
|
||||
"addAccount": {
|
||||
"message": "Add an account"
|
||||
},
|
||||
"addAcquiredTokens": {
|
||||
"message": "Add the tokens you've acquired using MetaMask"
|
||||
},
|
||||
@ -221,12 +224,6 @@
|
||||
"buy": {
|
||||
"message": "Buy"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Buy on CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch is the one-stop destination to exchange more than 300 cryptocurrencies at the best rate."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Buy ETH with Wyre"
|
||||
},
|
||||
@ -361,9 +358,6 @@
|
||||
"contactsSettingsDescription": {
|
||||
"message": "Add, edit, remove, and manage your contacts"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continue to CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continue to Wyre"
|
||||
},
|
||||
@ -635,6 +629,9 @@
|
||||
"ethereumPublicAddress": {
|
||||
"message": "Ethereum Public Address"
|
||||
},
|
||||
"etherscan": {
|
||||
"message": "Etherscan"
|
||||
},
|
||||
"etherscanView": {
|
||||
"message": "View account on Etherscan"
|
||||
},
|
||||
@ -1358,6 +1355,9 @@
|
||||
"scanQrCode": {
|
||||
"message": "Scan QR Code"
|
||||
},
|
||||
"scrollDown": {
|
||||
"message": "Scroll down"
|
||||
},
|
||||
"search": {
|
||||
"message": "Search"
|
||||
},
|
||||
@ -1841,6 +1841,9 @@
|
||||
"swapUnknown": {
|
||||
"message": "Unknown"
|
||||
},
|
||||
"swapVerifyTokenExplanation": {
|
||||
"message": "Multiple tokens can use the same name and symbol. Check Etherscan to verify this is the token you're looking for."
|
||||
},
|
||||
"swapViewToken": {
|
||||
"message": "View $1"
|
||||
},
|
||||
@ -2079,6 +2082,10 @@
|
||||
"userName": {
|
||||
"message": "Username"
|
||||
},
|
||||
"verifyThisTokenOn": {
|
||||
"message": "Verify this token on $1",
|
||||
"description": "Points the user to etherscan as a place they can verify information about a token. $1 is replaced with the translation for \"etherscan\""
|
||||
},
|
||||
"viewAccount": {
|
||||
"message": "View Account"
|
||||
},
|
||||
|
@ -127,12 +127,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask fue diseñado y construido en California"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Comprar en CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch es el destino de una sola parada para intercambiar más de 300 criptomonedas al mejor precio."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Cancelar"
|
||||
},
|
||||
@ -193,9 +187,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Conectando a la red de test Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continuar a CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continuar a Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask se diseñó y creó en California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Comprar en CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch es un destino integral para intercambiar más de 300 tipos de criptomonedas con la mejor tasa."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Comprar ETH con Wyre"
|
||||
},
|
||||
@ -221,9 +215,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Conexión con la red de prueba Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continuar a CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continuar a Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask on projekteeritud ja loodud Californias."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Osta CoinSwitchil"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch on ühe akna sihtpunkt enama kui 300 krüptoraha vahetamiseks parima hinnaga."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Ostke ETH-d Wyre'iga"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Ühendamine Ropsteni testvõrguga"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Avage ConSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Ava Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask در کالیفورنیا طراحی و ساخته شده است."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "خرید بر اساس CoinSwitch "
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch یک مقصد یک-ایستگاه است تا بیش از 300 رمز ارز را در بهترین نرخ مبادله نماید."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "ETH را توسط Wyre خریداری نمایید"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "در حال اتصال به شبکه آزمایشی Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "ادامه به CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "ادامه به Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask on suunniteltu ja koottu Kaliforniassa."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Osta CoinSwitchissa"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch on yhden pysähdyksen kohde yli 300 kryptovaluutan vaihtoon parhailla kursseilla."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Osta ETH:ta Wyrella"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Yhdistetään Ropstenin koeverkkoon"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Jatka CoinSwitchiin"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Jatka Wyreen"
|
||||
},
|
||||
|
@ -131,12 +131,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "Ang MetaMask ay dinisenyo at binuo sa California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Bilhin sa CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "Ang CoinSwitch ay ang one-stop na destinasyon para magpapalit ng mahigit sa 300 cryptocurrency sa pinakamababang halaga."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Bumili ng ETH gamit ang Wyre"
|
||||
},
|
||||
@ -203,9 +197,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Kumokonekta sa Ropsten Test Network"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Magpatuloy sa CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Magpatuloy sa Wyre"
|
||||
},
|
||||
|
@ -140,12 +140,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask est designé et developpé en Californie."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Acheter sur CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch est la destination unique pour échanger plus de 300 crypto-devises au meilleur taux."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Acheter ETH avec Wyre"
|
||||
},
|
||||
@ -215,9 +209,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Connexion au réseau de test Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continuer vers CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continuer vers Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask תוכנן ונבנה בקליפורניה."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "רכישה ב-CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch הוא היעד עם כלל האפשרויות להחלפת יותר מ-300 מטבעות קריפטו בשער הטוב ביותר."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "רכישת את'ר עם Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "מתחבר אל רשת בדיקה Ropsten "
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "המשך אל CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "המשך ל-Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "मेटामास्क का डिजाइन और निर्माण कैलिफोर्निया में किया गया है।"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "CoinSwitch पर खरीदें"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "300 से अधिक क्रिप्टोकरेंसी को सबसे अच्छी दर पर एक्सचेंज करने के लिए CoinSwitch सर्वोत्तम स्थल है।"
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Wyre से ETH खरीदें"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "रोपस्टेन टेस्ट नेटवर्क से कनेक्ट करना"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "कॉइनस्विच पर जारी रखें "
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Wyre को जारी रखें"
|
||||
},
|
||||
|
@ -46,12 +46,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "मेटामास्क कैलिफ़ोर्निया में डिज़ाइन और बनाया गया है।"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "कॉइनस्विच पर खरीदें"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "कॉइनस्विच 300 से अधिक क्रिप्टोक्रांसियों को सर्वोत्तम दर पर विनिमय करने का एक-स्टॉप गंतव्य है।"
|
||||
},
|
||||
"cancel": {
|
||||
"message": "रद्द करें"
|
||||
},
|
||||
@ -61,9 +55,6 @@
|
||||
"confirmPassword": {
|
||||
"message": "पासवर्ड की पुष्टि करें"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "कॉइनस्विच को ब्हेजना जारी रखें"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "अनुबंध परिनियोजन व तैनाती"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask je osmišljen i izrađen u Kaliforniji."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Kupujte na usluzi CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "Usluga CoinSwitch predstavlja mjesto stalne razmjene više od 300 kriptovaluta po najboljim tečajevima."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Kupi ETH Wyerom"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Povezivanje na testnu mrežu Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Nastavi na uslugu CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Nastavi na uslugu Wyre"
|
||||
},
|
||||
|
@ -76,12 +76,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask fèt e bati nan California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Achte sou CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch se destinasyon nan yon sèl-Stop nan echanj plis pase 300 kriptoksèr nan pousantaj la pi byen."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Anile"
|
||||
},
|
||||
@ -121,9 +115,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Konekte ak Ropsten Tès Rezo a"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Kontinye CoinSwitch"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "Kontra Deplwaman"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "A MetaMaskot Kaliforniában tervezték és hozták létre."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Vegye meg a CoinSwitchen"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "A CoinSwitch a legjobb hely több mint 300 cryptovaluta legjobb árfolyamon történő átváltására."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Vásároljon ETH-t a Wyre-rel"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Csatlakozás a Ropsten teszthálózathoz"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Tovább a CoinSwitch-re"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Tovább a Wyre-re"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask dirancang dan dibangun di California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Beli di CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch adalah destinasi serba-ada untuk pertukaran lebih dari 300 mata uang kripto dengan kurs terbaik."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Membeli ETH dengan Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Menghubungkan ke Jaringan Uji Coba Ropsten "
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Lanjut ke CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Lanjutkan ke Wyre"
|
||||
},
|
||||
|
@ -208,12 +208,6 @@
|
||||
"buy": {
|
||||
"message": "Compra"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Compra su CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch è la destinazione one-stop per lo scambio di oltre 300 criptovalute alla migliore tariffa."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Compra ETH con Wyre"
|
||||
},
|
||||
@ -348,9 +342,6 @@
|
||||
"contactsSettingsDescription": {
|
||||
"message": "Aggiungi, modifica, rimuovi e gestisci i tuoi contatti"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continua su CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continua su Wyre"
|
||||
},
|
||||
|
@ -112,12 +112,6 @@
|
||||
"blockiesIdenticon": {
|
||||
"message": "Blockies Identicon を使用"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "CoinSwitchのサイトで購入"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitchは、最高のレートで300以上の暗号化交換を行うワンストップの宛先です。"
|
||||
},
|
||||
"cancel": {
|
||||
"message": "キャンセル"
|
||||
},
|
||||
@ -130,9 +124,6 @@
|
||||
"confirmPassword": {
|
||||
"message": "パスワードの確認"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "CoinSwitchを開く"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "コントラクトのデプロイ"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask ಅನ್ನು ವಿನ್ಯಾಸಗೊಳಿಸಲಾಗಿದೆ ಮತ್ತು ಕ್ಯಾಲಿಫೋರ್ನಿಯಾದಲ್ಲಿ ನಿರ್ಮಿಸಲಾಗಿದೆ."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "ಕಾಯಿನ್ಸ್ವೀಚ್ನಲ್ಲಿ ಖರೀದಿಸಿ"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "300 ಕ್ಕೂ ಹೆಚ್ಚು ಕ್ರಿಪ್ಟೋಕರೆನ್ಸಿಗಳನ್ನು ಉತ್ತಮ ದರದಲ್ಲಿ ವಿನಿಮಯ ಮಾಡಿಕೊಳ್ಳುವ ಒಂದು ತಾಣವೆಂದರೆ ಕಾಯಿನ್ಸ್ವಿಚ್ ಆಗಿದೆ."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Wyre ನೊಂದಿಗೆ ETH ಖರೀದಿಸಿ"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Ropsten ಪರೀಕ್ಷಾ ನೆಟ್ವರ್ಕ್ಗೆ ಸಂಪರ್ಕಿಸಲಾಗುತ್ತಿದೆ"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "CoinSwitch ಗೆ ಮುಂದುವರಿಸಿ"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Wyre ಗೆ ಮುಂದುವರಿಸಿ"
|
||||
},
|
||||
|
@ -143,12 +143,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "메타마스크는 캘리포니아에서 디자인되고 만들어졌습니다."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "코인 스위치 구입"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "코인 스위치는 최상의 속도로 300 개 이상의 크립토 카드를 교환하는 원 스톱 목적지입니다."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Wyre로 ETH 구매"
|
||||
},
|
||||
@ -221,9 +215,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Ropsten 테스트넷 접속 중"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "코인 스위치 계속하기"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Wyre로 계속 진행"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "„MetaMask“ suprojektuota ir įdiegta Kalifornijoje."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Pirkti „CoinSwitch“"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "„CoinSwitch“ – tai lengvai pasiekiama vieta keisti per 300 kriptovaliutų geriausiu santykiu."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Pirkti ETH su „Wyre“"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Jungiamasi prie „Ropsten“ bandomojo tinklo"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Tęsti su „CoinSwitch“"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Tęsti su „Wyre“"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask ir izstrādāta un izveidota Kalifornijā."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Pirkt CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch ir vienots galamērķis vairāk nekā 300 kriptovalūtu maiņai, izmantojot labāko kursu."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Pirkt ETH ar Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Pieslēdzas Ropsten testa tīklam"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Iet uz CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Pāriet uz Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask direka dan dibina di California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Beli di CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch ialah tempat sehentian untuk menukar lebih daripada 300 mata wang kripto dengan kadar terbaik."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Beli ETH dengan Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Menyambungkan kepada Rangkaian Ujian Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Teruskan ke CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Teruskan ke Wyre"
|
||||
},
|
||||
|
@ -43,12 +43,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask is ontworpen en gebouwd in Californië."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Koop op CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch is de one-stop-bestemming om meer dan 300 cryptocurrencies tegen de beste prijs in te wisselen."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Annuleer"
|
||||
},
|
||||
@ -58,9 +52,6 @@
|
||||
"confirmPassword": {
|
||||
"message": "bevestig wachtwoord"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Ga verder naar CoinSwitch"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "Contractimplementatie"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask ble bygget og designet i California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Kjøp på CoinSwitch "
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch er destinasjonen som utveksler mer enn 300 typer kryptovaluta med den beste kursen."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Kjøp ETH med Wyre"
|
||||
},
|
||||
@ -221,9 +215,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Kobler til Ropsten testnettverk"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Fortsett med CoinSwitch "
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Fortsett til Wyre "
|
||||
},
|
||||
|
@ -31,12 +31,6 @@
|
||||
"balance": {
|
||||
"message": "Balanse:"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Bumili sa CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "Ang CoinSwitch ay isang one-stop destination upang makipagpalitan ng higit sa 300 mga cryptocurrency sa pinakamahusay na rate."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Kanselahin"
|
||||
},
|
||||
@ -46,9 +40,6 @@
|
||||
"confirmPassword": {
|
||||
"message": "Tiyakin ang Password"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Magpatuloy sa CoinSwitch"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "Pag-deploy ng Contract"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask został zaprojektowany i stworzony w Kaliforni."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Kup w CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch to miejsce, w którym możesz wymieniać ponad 300 kryptowalut po najlepszym kursie."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Kup ETH poprzez Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Łączenie z siecią testową Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Przejdź do CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Przejdź do Wyre"
|
||||
},
|
||||
|
@ -46,12 +46,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask é desenhada e construída na California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Comprar no CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch é o destino único para trocar mais de 300 moedas criptográficas com a melhor taxa."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Cancelar"
|
||||
},
|
||||
@ -61,9 +55,6 @@
|
||||
"confirmPassword": {
|
||||
"message": "Confirmar Palavra-passe"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continuar para o CoinSwitch"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "Distribuição do Contrato"
|
||||
},
|
||||
|
@ -143,12 +143,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "O MetaMask foi projetado e desenvolvido na Califórnia."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Compre no CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "O CoinSwitch é o destino único para trocar mais de 300 criptomoedas com a melhor taxa."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Comprar ETH com Wyre"
|
||||
},
|
||||
@ -218,9 +212,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Conectando à Rede de Testes Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continuar para CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continuar para Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask este concepută și creată în California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Cumpărați pe CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch este destinația unică pentru a schimba peste 300 de cripto monede la cele mai bune cursuri."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Cumpărați ETH cu Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Se conectează la rețeaua de test Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Continuare către CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Continuați la Wyre"
|
||||
},
|
||||
|
@ -145,12 +145,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask спроектирован и разработан в Калифорнии."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Купить на CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch - это однонаправленное место для обмена более 300 криптоконверсий по наилучшей цене."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Купить ETH на Wyre"
|
||||
},
|
||||
@ -223,9 +217,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Соединение с тестовой сетью Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Продолжить в CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Продолжить на Wyre"
|
||||
},
|
||||
|
@ -140,12 +140,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask je navržen a vytvořen v Kalifornii."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Kúpiť na CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch je jedno miesto, kde si môžete vymieňať viac ako 300 kryptomien za najlepšiu cenu."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Kúpte ETH s Wyre"
|
||||
},
|
||||
@ -218,9 +212,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Připojuji se k Ropsten Test Network"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Pokračovať na CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Pokračovať na Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask je zasnovan in ustvarjen v Kaliforniji."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Kupi na CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch je destinacija na enem mestu za izmenjavo več kot 300 kriptokotovitev po najboljši hitrosti."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Kupi ETH z Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Povezovanje na testno omrežje Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Nadaljuj na CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Nadaljuj na Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask je dizajniran i izgrađen u Kaliforniji."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Kupujte na CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch je odredište gde na jednom mestu možete razmeniti više od 300 kripto valuta po najboljem kursu."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Kupite ETH preko servisa Wyre"
|
||||
},
|
||||
@ -221,9 +215,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Povezuje se na Ropsten Test mrežu"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Nastavi na CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Nastavite ka Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask är skapat och utformat i Kalifornien."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Köp på CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch är allt-i-ett-platsen för att växla mer än 300 kryptovalutor till bästa kurs."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Köp ETH med Wyre"
|
||||
},
|
||||
@ -218,9 +212,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Ansluter till Ropsten Test Network"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Fortsätt till CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Fortsätt till Wyre"
|
||||
},
|
||||
|
@ -143,12 +143,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask imeundwa na kutengenezwa California."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Nunua kwenye CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch ni kituo cha kubadilisha fedha za kidijitali zaidi ya 300 kwa bei nzuri kabisa."
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Nunua ETH kwa kutumia Wyre"
|
||||
},
|
||||
@ -218,9 +212,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Inaunganisha kwenye Mtandao wa Majaribio wa Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Endelea kwenye CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Endelea kwenye Wyre"
|
||||
},
|
||||
|
@ -58,12 +58,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "மேடமஸ்க் வடிவமைக்கப்பட்டு கலிபோர்னியாவில் கட்டப்பட்டுள்ளது."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "நாணயம் ஸ்விட்சில் வாங்கவும்"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "சிறந்த விகிதத்தில் 300 க்கும் அதிகமான cryptocurrencies ஐ பரிமாறிக்கொள்ள ஒரு நாணயமாற்று இலக்கு நாணயம் ஸ்விட்ச் ஆகும்."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "ரத்து செய்"
|
||||
},
|
||||
@ -94,9 +88,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "ரொப்ஸ்டென் டெஸ்ட் நெட்வொர்க்குடன் இணைக்கிறது"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "நாணயம் மாறாமல் தொடர்க"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "ஒப்பந்த வரிசைப்படுத்தல்"
|
||||
},
|
||||
|
@ -52,12 +52,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask ออกแบบและพัฒนาที่แคลิฟอร์เนีย"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "ซื้อด้วย CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch เป็นจุดหมายปลายทางแบบครบวงจรในการแลกเปลี่ยนสกุลเงินมากกว่า 300 ครั้งในอัตราที่ดีที่สุด"
|
||||
},
|
||||
"cancel": {
|
||||
"message": "ยกเลิก"
|
||||
},
|
||||
@ -88,9 +82,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "เชื่อมต่อกับเครือข่ายทดสอบ Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "ไปที่ CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "ไปที่ Wyre"
|
||||
},
|
||||
|
@ -49,12 +49,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask California'da tasarlandı ve yaratıldı"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "CoinSwitch'de satın al"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "Cairnswich, 300'den fazla kriptona en iyi oranda eşlik eden tek durak noktasıdır."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Vazgeç"
|
||||
},
|
||||
@ -79,9 +73,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Ropsten Test Ağına bağlanıyor"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "CoinSwitch'e devam et"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "Sözleşme kurulumu"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask розроблено й створено в Каліфорнії."
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Купувати на CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch це точка призначення з однією зупинкою для обміну більш ніж 300 криптовалют за найкращими курсами. "
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "Купити ETH через Wyre"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "Під'єднуємось до Тестової мережі Ropsten"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Продовжити в CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "Продовжити у Wyre"
|
||||
},
|
||||
|
@ -34,12 +34,6 @@
|
||||
"balance": {
|
||||
"message": "Số dư:"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "Mua trên CoinSwitch"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch là điểm đến duy nhất để trao đổi hơn 300 tiền điện tử với tốc độ tốt nhất."
|
||||
},
|
||||
"cancel": {
|
||||
"message": "Hủy"
|
||||
},
|
||||
@ -49,9 +43,6 @@
|
||||
"confirmPassword": {
|
||||
"message": "Xác nhận mật khẩu"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "Tiếp tục đến CoinSwitch"
|
||||
},
|
||||
"contractDeployment": {
|
||||
"message": "Triển khai hợp đồng"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask在加利福尼亚设计和制造。"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "在CoinSwitch上购买"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch是以最优惠的价格交换超过300种加密货币的一站式目的地。"
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "使用 Wyre 购买 ETH"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "正在连接到Ropsten测试网络"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "继续访问 CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "继续前往 Wyre"
|
||||
},
|
||||
|
@ -146,12 +146,6 @@
|
||||
"builtInCalifornia": {
|
||||
"message": "MetaMask 是在加州設計製造"
|
||||
},
|
||||
"buyCoinSwitch": {
|
||||
"message": "在CoinSwitch上购买"
|
||||
},
|
||||
"buyCoinSwitchExplainer": {
|
||||
"message": "CoinSwitch是以最优惠的价格交换超过300种加密货币的一站式目的地。"
|
||||
},
|
||||
"buyWithWyre": {
|
||||
"message": "用 Wyre 購買 ETH"
|
||||
},
|
||||
@ -224,9 +218,6 @@
|
||||
"connectingToRopsten": {
|
||||
"message": "連線到 Ropsten 測試網路"
|
||||
},
|
||||
"continueToCoinSwitch": {
|
||||
"message": "繼續前往 CoinSwitch"
|
||||
},
|
||||
"continueToWyre": {
|
||||
"message": "繼續至 Wyre"
|
||||
},
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 1.6 KiB |
@ -64,6 +64,6 @@
|
||||
"notifications"
|
||||
],
|
||||
"short_name": "__MSG_appName__",
|
||||
"version": "8.1.4",
|
||||
"version": "8.1.5",
|
||||
"web_accessible_resources": ["inpage.js", "phishing.html"]
|
||||
}
|
||||
|
@ -29,8 +29,8 @@
|
||||
</head>
|
||||
<body class="notification">
|
||||
<div id="app-content">
|
||||
<img id="loading__logo" src="./images/logo/metamask-fox.svg" />
|
||||
<img id="loading__spinner" src="./images/spinner.gif" />
|
||||
<img id="loading__logo" src="./images/logo/metamask-fox.svg" alt="" />
|
||||
<img id="loading__spinner" src="./images/spinner.gif" alt="" />
|
||||
</div>
|
||||
<div id="popover-content"></div>
|
||||
<script src="./ui-libs.js" type="text/javascript" charset="utf-8"></script>
|
||||
|
@ -225,10 +225,7 @@ function setupController(initState, initLangCode) {
|
||||
const controller = new MetamaskController({
|
||||
infuraProjectId: process.env.INFURA_PROJECT_ID,
|
||||
// User confirmation callbacks:
|
||||
showUnconfirmedMessage: triggerUi,
|
||||
showUnapprovedTx: triggerUi,
|
||||
showPermissionRequest: triggerUi,
|
||||
showUnlockRequest: triggerUi,
|
||||
showUserConfirmation: triggerUi,
|
||||
openPopup,
|
||||
// initial state
|
||||
initState,
|
||||
|
@ -5,6 +5,7 @@ import { isValidAddress, sha3, bufferToHex } from 'ethereumjs-util'
|
||||
import ethers from 'ethers'
|
||||
import log from 'loglevel'
|
||||
import { isPrefixedFormattedHexString } from '../lib/util'
|
||||
import { LISTED_CONTRACT_ADDRESSES } from '../../../shared/constants/tokens'
|
||||
import { addInternalMethodPrefix } from './permissions'
|
||||
import { NETWORK_TYPE_TO_ID_MAP } from './network/enums'
|
||||
|
||||
@ -175,7 +176,13 @@ export default class PreferencesController {
|
||||
const suggested = this.getSuggestedTokens()
|
||||
const { rawAddress, symbol, decimals, image } = tokenOpts
|
||||
const address = normalizeAddress(rawAddress)
|
||||
const newEntry = { address, symbol, decimals, image }
|
||||
const newEntry = {
|
||||
address,
|
||||
symbol,
|
||||
decimals,
|
||||
image,
|
||||
unlisted: !LISTED_CONTRACT_ADDRESSES.includes(address.toLowerCase()),
|
||||
}
|
||||
suggested[address] = newEntry
|
||||
this.store.updateState({ suggestedTokens: suggested })
|
||||
}
|
||||
|
@ -18,8 +18,6 @@ export default function getBuyEthUrl({ network, address, service }) {
|
||||
switch (service) {
|
||||
case 'wyre':
|
||||
return `https://pay.sendwyre.com/purchase?dest=ethereum:${address}&destCurrency=ETH&accountId=AC-7AG3W4XH4N2&paymentMethod=debit-card`
|
||||
case 'coinswitch':
|
||||
return `https://metamask.coinswitch.co/?address=${address}&to=eth`
|
||||
case 'metamask-faucet':
|
||||
return 'https://faucet.metamask.io/'
|
||||
case 'rinkeby-faucet':
|
||||
|
@ -44,7 +44,6 @@ function logWeb3UsageHandler(req, res, _next, end, { origin, sendMetrics }) {
|
||||
recordedWeb3Usage[origin][path] = true
|
||||
|
||||
sendMetrics({
|
||||
matomo: true,
|
||||
event: `Website Used window.web3`,
|
||||
category: 'inpage_provider',
|
||||
properties: { action, web3Path: path },
|
||||
|
@ -71,15 +71,19 @@ export default function setupWeb3(log) {
|
||||
for (const [key, path] of applyTrapKeys) {
|
||||
web3[topKey][key] = new Proxy(web3[topKey][key], {
|
||||
apply: (...params) => {
|
||||
window.ethereum.request({
|
||||
method: 'metamask_logInjectedWeb3Usage',
|
||||
params: [
|
||||
{
|
||||
action: 'apply',
|
||||
path,
|
||||
},
|
||||
],
|
||||
})
|
||||
try {
|
||||
window.ethereum.request({
|
||||
method: 'metamask_logInjectedWeb3Usage',
|
||||
params: [
|
||||
{
|
||||
action: 'apply',
|
||||
path,
|
||||
},
|
||||
],
|
||||
})
|
||||
} catch (error) {
|
||||
log.debug('Failed to log web3 usage.', error)
|
||||
}
|
||||
|
||||
// Call function normally
|
||||
return Reflect.apply(...params)
|
||||
@ -93,15 +97,19 @@ export default function setupWeb3(log) {
|
||||
const name = stringifyKey(key)
|
||||
|
||||
if (getTrapKeys.has(name)) {
|
||||
window.ethereum.request({
|
||||
method: 'metamask_logInjectedWeb3Usage',
|
||||
params: [
|
||||
{
|
||||
action: 'get',
|
||||
path: getTrapKeys.get(name),
|
||||
},
|
||||
],
|
||||
})
|
||||
try {
|
||||
window.ethereum.request({
|
||||
method: 'metamask_logInjectedWeb3Usage',
|
||||
params: [
|
||||
{
|
||||
action: 'get',
|
||||
path: getTrapKeys.get(name),
|
||||
},
|
||||
],
|
||||
})
|
||||
} catch (error) {
|
||||
log.debug('Failed to log web3 usage.', error)
|
||||
}
|
||||
}
|
||||
|
||||
// return value normally
|
||||
@ -109,47 +117,51 @@ export default function setupWeb3(log) {
|
||||
},
|
||||
})
|
||||
})
|
||||
|
||||
const topLevelFunctions = [
|
||||
'isConnected',
|
||||
'setProvider',
|
||||
'reset',
|
||||
'sha3',
|
||||
'toHex',
|
||||
'toAscii',
|
||||
'fromAscii',
|
||||
'toDecimal',
|
||||
'fromDecimal',
|
||||
'fromWei',
|
||||
'toWei',
|
||||
'toBigNumber',
|
||||
'isAddress',
|
||||
]
|
||||
|
||||
// apply-trap top-level functions
|
||||
topLevelFunctions.forEach((key) => {
|
||||
// This type check is probably redundant, but we've been burned before.
|
||||
if (typeof web3[key] === 'function') {
|
||||
web3[key] = new Proxy(web3[key], {
|
||||
apply: (...params) => {
|
||||
try {
|
||||
window.ethereum.request({
|
||||
method: 'metamask_logInjectedWeb3Usage',
|
||||
params: [
|
||||
{
|
||||
action: 'apply',
|
||||
path: `web3.${key}`,
|
||||
},
|
||||
],
|
||||
})
|
||||
} catch (error) {
|
||||
log.debug('Failed to log web3 usage.', error)
|
||||
}
|
||||
|
||||
// Call function normally
|
||||
return Reflect.apply(...params)
|
||||
},
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const topLevelFunctions = [
|
||||
'isConnected',
|
||||
'setProvider',
|
||||
'reset',
|
||||
'sha3',
|
||||
'toHex',
|
||||
'toAscii',
|
||||
'fromAscii',
|
||||
'toDecimal',
|
||||
'fromDecimal',
|
||||
'fromWei',
|
||||
'toWei',
|
||||
'toBigNumber',
|
||||
'isAddress',
|
||||
]
|
||||
|
||||
// apply-trap top-level functions
|
||||
topLevelFunctions.forEach((key) => {
|
||||
// This type check is probably redundant, but we've been burned before.
|
||||
if (typeof web3[key] === 'function') {
|
||||
web3[key] = new Proxy(web3[key], {
|
||||
apply: (...params) => {
|
||||
window.ethereum.request({
|
||||
method: 'metamask_logInjectedWeb3Usage',
|
||||
params: [
|
||||
{
|
||||
action: 'apply',
|
||||
path: `web3.${key}`,
|
||||
},
|
||||
],
|
||||
})
|
||||
|
||||
// Call function normally
|
||||
return Reflect.apply(...params)
|
||||
},
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
const web3Proxy = new Proxy(web3, {
|
||||
get: (...params) => {
|
||||
// get the time of use
|
||||
|
@ -150,7 +150,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
isUnlocked: this.isUnlocked.bind(this),
|
||||
initState: initState.AppStateController,
|
||||
onInactiveTimeout: () => this.setLocked(),
|
||||
showUnlockRequest: opts.showUnlockRequest,
|
||||
showUnlockRequest: opts.showUserConfirmation,
|
||||
preferencesStore: this.preferencesController.store,
|
||||
})
|
||||
|
||||
@ -247,7 +247,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
notifyDomain: this.notifyConnections.bind(this),
|
||||
notifyAllDomains: this.notifyAllConnections.bind(this),
|
||||
preferences: this.preferencesController.store,
|
||||
showPermissionRequest: opts.showPermissionRequest,
|
||||
showPermissionRequest: opts.showUserConfirmation,
|
||||
},
|
||||
initState.PermissionsController,
|
||||
initState.PermissionsMetadata,
|
||||
@ -302,7 +302,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
getParticipateInMetrics: () =>
|
||||
this.preferencesController.getParticipateInMetaMetrics(),
|
||||
})
|
||||
this.txController.on('newUnapprovedTx', () => opts.showUnapprovedTx())
|
||||
this.txController.on('newUnapprovedTx', () => opts.showUserConfirmation())
|
||||
|
||||
this.txController.on(`tx:status-update`, async (txId, status) => {
|
||||
if (
|
||||
@ -1376,7 +1376,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
req,
|
||||
)
|
||||
this.sendUpdate()
|
||||
this.opts.showUnconfirmedMessage()
|
||||
this.opts.showUserConfirmation()
|
||||
return promise
|
||||
}
|
||||
|
||||
@ -1439,7 +1439,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
req,
|
||||
)
|
||||
this.sendUpdate()
|
||||
this.opts.showUnconfirmedMessage()
|
||||
this.opts.showUserConfirmation()
|
||||
return promise
|
||||
}
|
||||
|
||||
@ -1498,7 +1498,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
req,
|
||||
)
|
||||
this.sendUpdate()
|
||||
this.opts.showUnconfirmedMessage()
|
||||
this.opts.showUserConfirmation()
|
||||
return promise
|
||||
}
|
||||
|
||||
@ -1590,7 +1590,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
req,
|
||||
)
|
||||
this.sendUpdate()
|
||||
this.opts.showUnconfirmedMessage()
|
||||
this.opts.showUserConfirmation()
|
||||
return promise
|
||||
}
|
||||
|
||||
@ -1655,7 +1655,7 @@ export default class MetamaskController extends EventEmitter {
|
||||
version,
|
||||
)
|
||||
this.sendUpdate()
|
||||
this.opts.showUnconfirmedMessage()
|
||||
this.opts.showUserConfirmation()
|
||||
return promise
|
||||
}
|
||||
|
||||
|
@ -5,12 +5,15 @@ const pify = require('pify')
|
||||
const exec = pify(childProcess.exec, { multiArgs: true })
|
||||
const VERSION = require('../dist/chrome/manifest.json').version // eslint-disable-line import/no-unresolved
|
||||
|
||||
start().catch(console.error)
|
||||
start().catch((error) => {
|
||||
console.error(error)
|
||||
process.exit(1)
|
||||
})
|
||||
|
||||
async function start() {
|
||||
const authWorked = await checkIfAuthWorks()
|
||||
if (!authWorked) {
|
||||
console.log(`Sentry auth failed...`)
|
||||
throw new Error(`Sentry auth failed`)
|
||||
}
|
||||
// check if version exists or not
|
||||
const versionAlreadyExists = await checkIfVersionExists()
|
||||
|
@ -70,10 +70,10 @@
|
||||
"@formatjs/intl-relativetimeformat": "^5.2.6",
|
||||
"@fortawesome/fontawesome-free": "^5.13.0",
|
||||
"@material-ui/core": "^4.11.0",
|
||||
"@metamask/controllers": "^4.0.2",
|
||||
"@metamask/controllers": "^4.2.0",
|
||||
"@metamask/eth-ledger-bridge-keyring": "^0.2.6",
|
||||
"@metamask/eth-token-tracker": "^3.0.1",
|
||||
"@metamask/etherscan-link": "^1.2.0",
|
||||
"@metamask/etherscan-link": "^1.3.0",
|
||||
"@metamask/inpage-provider": "^6.1.0",
|
||||
"@metamask/jazzicon": "^2.0.0",
|
||||
"@metamask/logo": "^2.5.0",
|
||||
|
10
shared/constants/tokens.js
Normal file
10
shared/constants/tokens.js
Normal file
@ -0,0 +1,10 @@
|
||||
import contractMap from 'eth-contract-metadata'
|
||||
|
||||
/**
|
||||
* A normalized list of addresses exported as part of the contractMap in
|
||||
* eth-contract-metadata. Used primarily to validate if manually entered
|
||||
* contract addresses do not match one of our listed tokens
|
||||
*/
|
||||
export const LISTED_CONTRACT_ADDRESSES = Object.keys(
|
||||
contractMap,
|
||||
).map((address) => address.toLowerCase())
|
@ -97,8 +97,7 @@ describe('MetaMaskController', function () {
|
||||
.reply(200, '{"JPY":12415.9}')
|
||||
|
||||
metamaskController = new MetaMaskController({
|
||||
showUnapprovedTx: noop,
|
||||
showUnconfirmedMessage: noop,
|
||||
showUserConfirmation: noop,
|
||||
encryptor: {
|
||||
encrypt(_, object) {
|
||||
this.object = object
|
||||
|
@ -44,8 +44,7 @@ describe('Actions', function () {
|
||||
platform: { getVersion: () => 'foo' },
|
||||
provider,
|
||||
keyringController: new KeyringController({}),
|
||||
showUnapprovedTx: noop,
|
||||
showUnconfirmedMessage: noop,
|
||||
showUserConfirmation: noop,
|
||||
encryptor: {
|
||||
encrypt(_, object) {
|
||||
this.object = object
|
||||
|
@ -278,22 +278,22 @@ export default class AccountMenu extends Component {
|
||||
}
|
||||
|
||||
renderScrollButton() {
|
||||
const { shouldShowScrollButton } = this.state
|
||||
if (!this.state.shouldShowScrollButton) {
|
||||
return null
|
||||
}
|
||||
|
||||
return (
|
||||
shouldShowScrollButton && (
|
||||
<div
|
||||
className="account-menu__scroll-button"
|
||||
onClick={this.handleScrollDown}
|
||||
>
|
||||
<img
|
||||
src="./images/icons/down-arrow.svg"
|
||||
width={28}
|
||||
height={28}
|
||||
alt="scroll down"
|
||||
/>
|
||||
</div>
|
||||
)
|
||||
<div
|
||||
className="account-menu__scroll-button"
|
||||
onClick={this.handleScrollDown}
|
||||
>
|
||||
<img
|
||||
src="./images/icons/down-arrow.svg"
|
||||
width="28"
|
||||
height="28"
|
||||
alt={this.context.t('scrollDown')}
|
||||
/>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
@ -357,6 +357,7 @@ export default class AccountMenu extends Component {
|
||||
<img
|
||||
className="account-menu__item-icon"
|
||||
src="images/plus-btn-white.svg"
|
||||
alt={t('createAccount')}
|
||||
/>
|
||||
}
|
||||
text={t('createAccount')}
|
||||
@ -377,6 +378,7 @@ export default class AccountMenu extends Component {
|
||||
<img
|
||||
className="account-menu__item-icon"
|
||||
src="images/import-account.svg"
|
||||
alt={t('importAccount')}
|
||||
/>
|
||||
}
|
||||
text={t('importAccount')}
|
||||
@ -401,6 +403,7 @@ export default class AccountMenu extends Component {
|
||||
<img
|
||||
className="account-menu__item-icon"
|
||||
src="images/connect-icon.svg"
|
||||
alt={t('connectHardwareWallet')}
|
||||
/>
|
||||
}
|
||||
text={t('connectHardwareWallet')}
|
||||
@ -411,7 +414,7 @@ export default class AccountMenu extends Component {
|
||||
toggleAccountMenu()
|
||||
history.push(ABOUT_US_ROUTE)
|
||||
}}
|
||||
icon={<img src="images/mm-info-icon.svg" />}
|
||||
icon={<img src="images/mm-info-icon.svg" alt={t('infoHelp')} />}
|
||||
text={t('infoHelp')}
|
||||
/>
|
||||
<AccountMenuItem
|
||||
|
@ -13,13 +13,11 @@ import {
|
||||
getCurrentAccountWithSendEtherInfo,
|
||||
getNativeCurrency,
|
||||
getShouldShowFiat,
|
||||
getSelectedAddress,
|
||||
} from '../../../selectors'
|
||||
import { useCurrencyDisplay } from '../../../hooks/useCurrencyDisplay'
|
||||
|
||||
const AssetList = ({ onClickAsset }) => {
|
||||
const history = useHistory()
|
||||
const selectedAddress = useSelector((state) => getSelectedAddress(state))
|
||||
const selectedAccountBalance = useSelector(
|
||||
(state) => getCurrentAccountWithSendEtherInfo(state).balance,
|
||||
)
|
||||
@ -71,7 +69,6 @@ const AssetList = ({ onClickAsset }) => {
|
||||
onClick={() => onClickAsset(nativeCurrency)}
|
||||
data-testid="wallet-balance"
|
||||
primary={primaryCurrencyProperties.value}
|
||||
tokenAddress={selectedAddress}
|
||||
tokenSymbol={primaryCurrencyProperties.suffix}
|
||||
secondary={showFiat ? secondaryCurrencyDisplay : undefined}
|
||||
/>
|
||||
|
@ -7,6 +7,7 @@ const ConfirmPageContainerWarning = (props) => {
|
||||
<img
|
||||
className="confirm-page-container-warning__icon"
|
||||
src="/images/alert.svg"
|
||||
alt=""
|
||||
/>
|
||||
<div className="confirm-page-container-warning__warning">
|
||||
{props.warning}
|
||||
|
@ -47,7 +47,7 @@ export default function ConfirmPageContainerHeader({
|
||||
visibility: showEdit ? 'initial' : 'hidden',
|
||||
}}
|
||||
>
|
||||
<img src="/images/caret-left.svg" />
|
||||
<img src="/images/caret-left.svg" alt="" />
|
||||
<span
|
||||
className="confirm-page-container-header__back-button"
|
||||
onClick={() => onEdit()}
|
||||
|
@ -33,14 +33,14 @@ const ConfirmPageContainerNavigation = (props) => {
|
||||
data-testid="first-page"
|
||||
onClick={() => onNextTx(firstTx)}
|
||||
>
|
||||
<img src="/images/double-arrow.svg" />
|
||||
<img src="/images/double-arrow.svg" alt="" />
|
||||
</div>
|
||||
<div
|
||||
className="confirm-page-container-navigation__arrow"
|
||||
data-testid="previous-page"
|
||||
onClick={() => onNextTx(prevTxId)}
|
||||
>
|
||||
<img src="/images/single-arrow.svg" />
|
||||
<img src="/images/single-arrow.svg" alt="" />
|
||||
</div>
|
||||
</div>
|
||||
<div className="confirm-page-container-navigation__textcontainer">
|
||||
@ -65,6 +65,7 @@ const ConfirmPageContainerNavigation = (props) => {
|
||||
<img
|
||||
className="confirm-page-container-navigation__imageflip"
|
||||
src="/images/single-arrow.svg"
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
<div
|
||||
@ -75,6 +76,7 @@ const ConfirmPageContainerNavigation = (props) => {
|
||||
<img
|
||||
className="confirm-page-container-navigation__imageflip"
|
||||
src="/images/double-arrow.svg"
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -247,6 +247,7 @@
|
||||
|
||||
display: flex;
|
||||
color: $primary-blue;
|
||||
font-weight: 900;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -54,7 +54,10 @@ export default class ConfirmRemoveAccount extends Component {
|
||||
rel="noopener noreferrer"
|
||||
title={this.context.t('etherscanView')}
|
||||
>
|
||||
<img src="images/popout.svg" />
|
||||
<img
|
||||
src="images/popout.svg"
|
||||
alt={this.context.t('etherscanView')}
|
||||
/>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -12,7 +12,6 @@ export default class DepositEtherModal extends Component {
|
||||
static propTypes = {
|
||||
network: PropTypes.string.isRequired,
|
||||
toWyre: PropTypes.func.isRequired,
|
||||
toCoinSwitch: PropTypes.func.isRequired,
|
||||
address: PropTypes.string.isRequired,
|
||||
toFaucet: PropTypes.func.isRequired,
|
||||
hideWarning: PropTypes.func.isRequired,
|
||||
@ -87,7 +86,7 @@ export default class DepositEtherModal extends Component {
|
||||
}
|
||||
|
||||
render() {
|
||||
const { network, toWyre, toCoinSwitch, address, toFaucet } = this.props
|
||||
const { network, toWyre, address, toFaucet } = this.props
|
||||
|
||||
const isTestNetwork = ['3', '4', '5', '42'].find((n) => n === network)
|
||||
const networkName = getNetworkDisplayName(network)
|
||||
@ -111,31 +110,6 @@ export default class DepositEtherModal extends Component {
|
||||
</div>
|
||||
<div className="page-container__content">
|
||||
<div className="deposit-ether-modal__buy-rows">
|
||||
{this.renderRow({
|
||||
logo: (
|
||||
<img
|
||||
alt=""
|
||||
className="deposit-ether-modal__logo"
|
||||
src="./images/deposit-eth.svg"
|
||||
style={{
|
||||
height: '75px',
|
||||
width: '75px',
|
||||
}}
|
||||
/>
|
||||
),
|
||||
title: this.context.t('directDepositEther'),
|
||||
text: this.context.t('directDepositEtherExplainer'),
|
||||
buttonLabel: this.context.t('viewAccount'),
|
||||
onButtonClick: () => this.goToAccountDetailsModal(),
|
||||
})}
|
||||
{this.renderRow({
|
||||
logo: <i className="fa fa-tint fa-2x" />,
|
||||
title: this.context.t('testFaucet'),
|
||||
text: this.faucetRowText(networkName),
|
||||
buttonLabel: this.context.t('getEther'),
|
||||
onButtonClick: () => toFaucet(network),
|
||||
hide: !isTestNetwork,
|
||||
})}
|
||||
{this.renderRow({
|
||||
logo: (
|
||||
<div
|
||||
@ -163,28 +137,28 @@ export default class DepositEtherModal extends Component {
|
||||
})}
|
||||
{this.renderRow({
|
||||
logo: (
|
||||
<div
|
||||
<img
|
||||
alt=""
|
||||
className="deposit-ether-modal__logo"
|
||||
src="./images/deposit-eth.svg"
|
||||
style={{
|
||||
backgroundImage: "url('./images/coinswitch_logo.png')",
|
||||
height: '40px',
|
||||
height: '75px',
|
||||
width: '75px',
|
||||
}}
|
||||
/>
|
||||
),
|
||||
title: this.context.t('buyCoinSwitch'),
|
||||
text: this.context.t('buyCoinSwitchExplainer'),
|
||||
buttonLabel: this.context.t('continueToCoinSwitch'),
|
||||
onButtonClick: () => {
|
||||
this.context.metricsEvent({
|
||||
eventOpts: {
|
||||
category: 'Accounts',
|
||||
action: 'Deposit Ether',
|
||||
name: 'Click buy Ether via CoinSwitch',
|
||||
},
|
||||
})
|
||||
toCoinSwitch(address)
|
||||
},
|
||||
hide: isTestNetwork,
|
||||
title: this.context.t('directDepositEther'),
|
||||
text: this.context.t('directDepositEtherExplainer'),
|
||||
buttonLabel: this.context.t('viewAccount'),
|
||||
onButtonClick: () => this.goToAccountDetailsModal(),
|
||||
})}
|
||||
{this.renderRow({
|
||||
logo: <i className="fa fa-tint fa-2x" />,
|
||||
title: this.context.t('testFaucet'),
|
||||
text: this.faucetRowText(networkName),
|
||||
buttonLabel: this.context.t('getEther'),
|
||||
onButtonClick: () => toFaucet(network),
|
||||
hide: !isTestNetwork,
|
||||
})}
|
||||
</div>
|
||||
</div>
|
||||
|
@ -19,9 +19,6 @@ function mapDispatchToProps(dispatch) {
|
||||
toWyre: (address) => {
|
||||
dispatch(buyEth({ service: 'wyre', address }))
|
||||
},
|
||||
toCoinSwitch: (address) => {
|
||||
dispatch(buyEth({ service: 'coinswitch', address }))
|
||||
},
|
||||
hideModal: () => {
|
||||
dispatch(hideModal())
|
||||
},
|
||||
|
@ -24,7 +24,7 @@ export default class MetaMetricsOptInModal extends Component {
|
||||
<div className="metametrics-opt-in__content">
|
||||
<MetaFoxLogo />
|
||||
<div className="metametrics-opt-in__body-graphic">
|
||||
<img src="images/metrics-chart.svg" />
|
||||
<img src="images/metrics-chart.svg" alt="" />
|
||||
</div>
|
||||
<div className="metametrics-opt-in__title">
|
||||
Help Us Improve MetaMask
|
||||
|
@ -210,7 +210,7 @@ export default class QrScanner extends Component {
|
||||
return (
|
||||
<>
|
||||
<div className="qr-scanner__image">
|
||||
<img src="images/webcam.svg" width={70} height={70} />
|
||||
<img src="images/webcam.svg" width="70" height="70" alt="" />
|
||||
</div>
|
||||
{title ? <div className="qr-scanner__title">{title}</div> : null}
|
||||
<div className="qr-scanner__error">{msg}</div>
|
||||
|
@ -28,7 +28,7 @@ export default class TransactionConfirmed extends PureComponent {
|
||||
return (
|
||||
<Modal onSubmit={this.handleSubmit} submitText={t('ok')}>
|
||||
<div className="transaction-confirmed__content">
|
||||
<img src="images/check-icon.svg" />
|
||||
<img src="images/check-icon.svg" alt="" />
|
||||
<div className="transaction-confirmed__title">
|
||||
{`${t('confirmed')}!`}
|
||||
</div>
|
||||
|
@ -173,7 +173,7 @@ export default class Network extends Component {
|
||||
<img
|
||||
title={t('attemptingConnect')}
|
||||
src="images/loading.svg"
|
||||
alt=""
|
||||
alt={t('attemptingConnect')}
|
||||
/>
|
||||
</span>
|
||||
) : (
|
||||
|
@ -10,7 +10,7 @@ import { useTokenFiatAmount } from '../../../hooks/useTokenFiatAmount'
|
||||
export default function TokenCell({
|
||||
address,
|
||||
decimals,
|
||||
outdatedBalance,
|
||||
balanceError,
|
||||
symbol,
|
||||
string,
|
||||
image,
|
||||
@ -21,13 +21,14 @@ export default function TokenCell({
|
||||
|
||||
const formattedFiat = useTokenFiatAmount(address, string, symbol)
|
||||
|
||||
const warning = outdatedBalance ? (
|
||||
const warning = balanceError ? (
|
||||
<span>
|
||||
{t('troubleTokenBalances')}
|
||||
<a
|
||||
href={`https://ethplorer.io/address/${userAddress}`}
|
||||
rel="noopener noreferrer"
|
||||
target="_blank"
|
||||
onClick={(event) => event.stopPropagation()}
|
||||
style={{ color: '#F7861C' }}
|
||||
>
|
||||
{t('here')}
|
||||
@ -38,7 +39,7 @@ export default function TokenCell({
|
||||
return (
|
||||
<AssetListItem
|
||||
className={classnames('token-cell', {
|
||||
'token-cell--outdated': outdatedBalance,
|
||||
'token-cell--outdated': Boolean(balanceError),
|
||||
})}
|
||||
iconClassName="token-cell__icon"
|
||||
onClick={onClick.bind(null, address)}
|
||||
@ -55,7 +56,7 @@ export default function TokenCell({
|
||||
|
||||
TokenCell.propTypes = {
|
||||
address: PropTypes.string,
|
||||
outdatedBalance: PropTypes.bool,
|
||||
balanceError: PropTypes.object,
|
||||
symbol: PropTypes.string,
|
||||
decimals: PropTypes.number,
|
||||
string: PropTypes.string,
|
||||
@ -64,5 +65,5 @@ TokenCell.propTypes = {
|
||||
}
|
||||
|
||||
TokenCell.defaultProps = {
|
||||
outdatedBalance: false,
|
||||
balanceError: null,
|
||||
}
|
||||
|
@ -16,7 +16,7 @@ export default function TokenList({ onTokenClick }) {
|
||||
// from the background so it has a new reference with each background update,
|
||||
// even if the tokens haven't changed
|
||||
const tokens = useSelector(getTokens, isEqual)
|
||||
const { loading, error, tokensWithBalances } = useTokenTracker(tokens)
|
||||
const { loading, tokensWithBalances } = useTokenTracker(tokens, true)
|
||||
|
||||
if (loading) {
|
||||
return (
|
||||
@ -38,14 +38,7 @@ export default function TokenList({ onTokenClick }) {
|
||||
<div>
|
||||
{tokensWithBalances.map((tokenData, index) => {
|
||||
tokenData.image = assetImages[tokenData.address]
|
||||
return (
|
||||
<TokenCell
|
||||
key={index}
|
||||
{...tokenData}
|
||||
outdatedBalance={Boolean(error)}
|
||||
onClick={onTokenClick}
|
||||
/>
|
||||
)
|
||||
return <TokenCell key={index} {...tokenData} onClick={onTokenClick} />
|
||||
})}
|
||||
</div>
|
||||
)
|
||||
|
@ -40,7 +40,7 @@ export default class TransactionActivityLogIcon extends PureComponent {
|
||||
|
||||
return (
|
||||
<div className={classnames('transaction-activity-log-icon', className)}>
|
||||
{imagePath && <img src={imagePath} height={9} width={9} />}
|
||||
{imagePath && <img src={imagePath} height="9" width="9" alt="" />}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
@ -206,7 +206,7 @@ export default class TransactionListItemDetails extends PureComponent {
|
||||
onClick={this.handleEtherscanClick}
|
||||
disabled={!hash}
|
||||
>
|
||||
<img src="/images/arrow-popout.svg" />
|
||||
<img src="/images/arrow-popout.svg" alt="" />
|
||||
</Button>
|
||||
</Tooltip>
|
||||
{showRetry && (
|
||||
|
@ -23,7 +23,7 @@ export default function UserPreferencedCurrencyDisplay({
|
||||
const prefixComponent = useMemo(() => {
|
||||
return (
|
||||
currency === ETH &&
|
||||
showEthLogo && <img src="/images/eth.svg" height={ethLogoHeight} />
|
||||
showEthLogo && <img src="/images/eth.svg" height={ethLogoHeight} alt="" />
|
||||
)
|
||||
}, [currency, showEthLogo, ethLogoHeight])
|
||||
|
||||
|
@ -40,6 +40,7 @@ export default class CircleIcon extends PureComponent {
|
||||
height: iconSize,
|
||||
width: iconSize,
|
||||
}}
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
)
|
||||
|
@ -45,13 +45,15 @@ class EditableLabel extends Component {
|
||||
className={classnames('large-input', 'editable-label__input', {
|
||||
'editable-label__input--error': value === '',
|
||||
})}
|
||||
autoFocus
|
||||
/>,
|
||||
<div className="editable-label__icon-wrapper" key={2}>
|
||||
<i
|
||||
className="fa fa-check editable-label__icon"
|
||||
onClick={() => this.handleSubmit()}
|
||||
/>
|
||||
</div>,
|
||||
<button
|
||||
className="editable-label__icon-button"
|
||||
key={2}
|
||||
onClick={() => this.handleSubmit()}
|
||||
>
|
||||
<i className="fa fa-check editable-label__icon" />
|
||||
</button>,
|
||||
]
|
||||
}
|
||||
|
||||
@ -60,12 +62,13 @@ class EditableLabel extends Component {
|
||||
<div key={1} className="editable-label__value">
|
||||
{this.state.value}
|
||||
</div>,
|
||||
<div key={2} className="editable-label__icon-wrapper">
|
||||
<i
|
||||
className="fas fa-pencil-alt editable-label__icon"
|
||||
onClick={() => this.setState({ isEditing: true })}
|
||||
/>
|
||||
</div>,
|
||||
<button
|
||||
key={2}
|
||||
className="editable-label__icon-button"
|
||||
onClick={() => this.setState({ isEditing: true })}
|
||||
>
|
||||
<i className="fas fa-pencil-alt editable-label__icon" />
|
||||
</button>,
|
||||
]
|
||||
}
|
||||
|
||||
|
@ -23,10 +23,11 @@
|
||||
}
|
||||
}
|
||||
|
||||
&__icon-wrapper {
|
||||
&__icon-button {
|
||||
position: absolute;
|
||||
margin-left: 10px;
|
||||
left: 100%;
|
||||
background: unset;
|
||||
}
|
||||
|
||||
&__icon {
|
||||
|
@ -7,7 +7,7 @@ const ErrorMessage = (props, context) => {
|
||||
|
||||
return (
|
||||
<div className="error-message">
|
||||
<img src="/images/alert-red.svg" className="error-message__icon" />
|
||||
<img src="/images/alert-red.svg" alt="" className="error-message__icon" />
|
||||
<div className="error-message__text">{`ALERT: ${error}`}</div>
|
||||
</div>
|
||||
)
|
||||
|
@ -30,6 +30,7 @@ export default class IconWithFallback extends PureComponent {
|
||||
src={icon}
|
||||
style={style}
|
||||
className={className}
|
||||
alt=""
|
||||
/>
|
||||
) : (
|
||||
<i
|
||||
|
@ -19,7 +19,7 @@ const BlockieIdenticon = ({ address, diameter }) => {
|
||||
return (
|
||||
<>
|
||||
<canvas ref={canvasRef} style={{ display: 'none' }} />
|
||||
<img src={dataUrl} height={diameter} width={diameter} />
|
||||
<img src={dataUrl} height={diameter} width={diameter} alt="" />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
@ -40,6 +40,7 @@ export default class Identicon extends PureComponent {
|
||||
className={classnames('identicon', className)}
|
||||
src={image}
|
||||
style={getStyles(diameter)}
|
||||
alt=""
|
||||
/>
|
||||
)
|
||||
}
|
||||
@ -108,6 +109,7 @@ export default class Identicon extends PureComponent {
|
||||
className={classnames('identicon__eth-logo', className)}
|
||||
src="./images/eth_logo.svg"
|
||||
style={getStyles(diameter)}
|
||||
alt=""
|
||||
/>
|
||||
)
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ export default function InfoTooltip({
|
||||
html={contentText}
|
||||
theme={wide ? 'tippy-tooltip-wideInfo' : 'tippy-tooltip-info'}
|
||||
>
|
||||
<img src="images/mm-info-icon.svg" />
|
||||
<img src="images/mm-info-icon.svg" alt="" />
|
||||
</Tooltip>
|
||||
</div>
|
||||
)
|
||||
|
@ -24,12 +24,13 @@ export default class MetaFoxLogo extends PureComponent {
|
||||
})}
|
||||
>
|
||||
<img
|
||||
height={30}
|
||||
height="30"
|
||||
src="/images/logo/metamask-logo-horizontal.svg"
|
||||
className={classnames(
|
||||
'app-header__metafox-logo',
|
||||
'app-header__metafox-logo--horizontal',
|
||||
)}
|
||||
alt=""
|
||||
/>
|
||||
<img
|
||||
{...iconProps}
|
||||
@ -38,6 +39,7 @@ export default class MetaFoxLogo extends PureComponent {
|
||||
'app-header__metafox-logo',
|
||||
'app-header__metafox-logo--icon',
|
||||
)}
|
||||
alt=""
|
||||
/>
|
||||
</div>
|
||||
)
|
||||
|
@ -174,12 +174,12 @@ function Arrow({ variant }) {
|
||||
return variant === DEFAULT_VARIANT ? (
|
||||
<div className="sender-to-recipient__arrow-container">
|
||||
<div className="sender-to-recipient__arrow-circle">
|
||||
<img height={15} width={15} src="./images/arrow-right.svg" />
|
||||
<img height="15" width="15" src="./images/arrow-right.svg" alt="" />
|
||||
</div>
|
||||
</div>
|
||||
) : (
|
||||
<div className="sender-to-recipient__arrow-container">
|
||||
<img height={20} src="./images/caret-right.svg" />
|
||||
<img height="20" src="./images/caret-right.svg" alt="" />
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
@ -127,7 +127,8 @@ export function MetaMetricsProvider({ children }) {
|
||||
location.pathname.startsWith('/initialize')) ||
|
||||
participateInMetaMetrics
|
||||
) {
|
||||
// Events that happen during initialization before the user opts into MetaMetrics will be anonymous
|
||||
// Events that happen during initialization before the user opts into
|
||||
// MetaMetrics will be anonymous
|
||||
const idTrait = metaMetricsId ? 'userId' : 'anonymousId'
|
||||
const idValue = metaMetricsId ?? METAMETRICS_ANONYMOUS_ID
|
||||
const match = matchPath(location.pathname, {
|
||||
@ -135,19 +136,15 @@ export function MetaMetricsProvider({ children }) {
|
||||
exact: true,
|
||||
strict: true,
|
||||
})
|
||||
// Start by checking for a missing match route. If this falls through to the else if, then we know we
|
||||
// have a matched route for tracking.
|
||||
// Start by checking for a missing match route. If this falls through to
|
||||
// the else if, then we know we have a matched route for tracking.
|
||||
if (!match) {
|
||||
// We have more specific pages for each type of transaction confirmation
|
||||
// The user lands on /confirm-transaction first, then is redirected based on
|
||||
// the contents of state.
|
||||
if (location.pathname !== '/confirm-transaction') {
|
||||
// Otherwise we are legitimately missing a matching route
|
||||
captureMessage(`Segment page tracking found unmatched route`, {
|
||||
captureMessage(`Segment page tracking found unmatched route`, {
|
||||
extra: {
|
||||
previousMatch,
|
||||
currentPath: location.pathname,
|
||||
})
|
||||
}
|
||||
},
|
||||
})
|
||||
} else if (
|
||||
previousMatch.current !== match.path &&
|
||||
!(
|
||||
@ -156,9 +153,11 @@ export function MetaMetricsProvider({ children }) {
|
||||
previousMatch.current === undefined
|
||||
)
|
||||
) {
|
||||
// When a notification window is open by a Dapp we do not want to track the initial home route load that can
|
||||
// sometimes happen. To handle this we keep track of the previousMatch, and we skip the event track in the event
|
||||
// that we are dealing with the initial load of the homepage
|
||||
// When a notification window is open by a Dapp we do not want to track
|
||||
// the initial home route load that can sometimes happen. To handle
|
||||
// this we keep track of the previousMatch, and we skip the event track
|
||||
// in the event that we are dealing with the initial load of the
|
||||
// homepage
|
||||
const { path, params } = match
|
||||
const name = PATH_NAME_MAP[path]
|
||||
segment.page({
|
||||
|
@ -99,6 +99,8 @@ const PATH_NAME_MAP = {
|
||||
[`${CONNECT_ROUTE}/:id${CONNECT_CONFIRM_PERMISSIONS_ROUTE}`]: 'Grant Connected Site Permissions Confirmation Page',
|
||||
[CONNECTED_ROUTE]: 'Sites Connected To This Account Page',
|
||||
[CONNECTED_ACCOUNTS_ROUTE]: 'Accounts Connected To This Site Page',
|
||||
[`${CONFIRM_TRANSACTION_ROUTE}/:id`]: 'Confirmation Root Page',
|
||||
[CONFIRM_TRANSACTION_ROUTE]: 'Confirmation Root Page',
|
||||
[`${CONFIRM_TRANSACTION_ROUTE}/:id${CONFIRM_TOKEN_METHOD_PATH}`]: 'Confirm Token Method Transaction Page',
|
||||
[`${CONFIRM_TRANSACTION_ROUTE}/:id${CONFIRM_SEND_ETHER_PATH}`]: 'Confirm Send Ether Transaction Page',
|
||||
[`${CONFIRM_TRANSACTION_ROUTE}/:id${CONFIRM_SEND_TOKEN_PATH}`]: 'Confirm Send Token Transaction Page',
|
||||
|
@ -4,7 +4,7 @@ import { useSelector } from 'react-redux'
|
||||
import { getCurrentNetwork, getSelectedAddress } from '../selectors'
|
||||
import { useEqualityCheck } from './useEqualityCheck'
|
||||
|
||||
export function useTokenTracker(tokens) {
|
||||
export function useTokenTracker(tokens, includeFailedTokens = false) {
|
||||
const network = useSelector(getCurrentNetwork)
|
||||
const userAddress = useSelector(getSelectedAddress)
|
||||
|
||||
@ -42,6 +42,7 @@ export function useTokenTracker(tokens) {
|
||||
userAddress: address,
|
||||
provider: global.ethereumProvider,
|
||||
tokens: tokenList,
|
||||
includeFailedTokens,
|
||||
pollingInterval: 8000,
|
||||
})
|
||||
|
||||
@ -49,7 +50,7 @@ export function useTokenTracker(tokens) {
|
||||
tokenTracker.current.on('error', showError)
|
||||
tokenTracker.current.updateBalances()
|
||||
},
|
||||
[updateBalances, showError, teardownTracker],
|
||||
[updateBalances, includeFailedTokens, showError, teardownTracker],
|
||||
)
|
||||
|
||||
// Effect to remove the tracker when the component is removed from DOM
|
||||
|
@ -10,7 +10,7 @@ export default class TokenListPlaceholder extends Component {
|
||||
render() {
|
||||
return (
|
||||
<div className="token-list-placeholder">
|
||||
<img src="images/tokensearch.svg" />
|
||||
<img src="images/tokensearch.svg" alt="" width="65" height="58" />
|
||||
<div className="token-list-placeholder__text">
|
||||
{this.context.t('addAcquiredTokens')}
|
||||
</div>
|
||||
|
@ -53,7 +53,7 @@ export default class TokenSearch extends Component {
|
||||
renderAdornment() {
|
||||
return (
|
||||
<InputAdornment position="start" style={{ marginRight: '12px' }}>
|
||||
<img src="images/search.svg" width="17" height="17" />
|
||||
<img src="images/search.svg" width="17" height="17" alt="" />
|
||||
</InputAdornment>
|
||||
)
|
||||
}
|
||||
|
@ -42,5 +42,7 @@
|
||||
|
||||
&__icon {
|
||||
@include Paragraph;
|
||||
|
||||
font-weight: 900;
|
||||
}
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user