aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbrunobar79 <brunobar79@gmail.com>2018-08-15 11:02:14 +0800
committerbrunobar79 <brunobar79@gmail.com>2018-08-15 11:02:14 +0800
commit8fb7099bf22562d8b185a3030a55e8584b36ac35 (patch)
treec2e05ef36aae288f67530c29bb9b3f4834819f71
parente54b8507d2b21540487165178fb9128b42d3d8cc (diff)
parent80fe3ce888ed361b45dca6c53521aa7b8124f95a (diff)
downloadtangerine-wallet-browser-8fb7099bf22562d8b185a3030a55e8584b36ac35.tar.gz
tangerine-wallet-browser-8fb7099bf22562d8b185a3030a55e8584b36ac35.tar.zst
tangerine-wallet-browser-8fb7099bf22562d8b185a3030a55e8584b36ac35.zip
Merge branch 'ledger-support' of github.com:MetaMask/metamask-extension into ledger-support
-rw-r--r--app/_locales/de/messages.json4
-rw-r--r--app/_locales/en/messages.json14
-rw-r--r--app/_locales/es/messages.json4
-rw-r--r--app/_locales/fr/messages.json4
-rw-r--r--app/_locales/it/messages.json6
-rw-r--r--app/_locales/nl/messages.json6
-rw-r--r--app/_locales/ph/messages.json2
-rw-r--r--app/_locales/pt/messages.json2
-rw-r--r--app/_locales/ru/messages.json2
-rw-r--r--app/_locales/th/messages.json2
-rw-r--r--app/_locales/tr/messages.json6
-rw-r--r--app/_locales/vi/messages.json2
-rw-r--r--app/_locales/zh_CN/messages.json2
-rw-r--r--app/_locales/zh_TW/messages.json2
-rw-r--r--mascara/src/app/first-time/index.css13
-rw-r--r--mascara/src/app/first-time/seed-screen.js16
-rw-r--r--ui/app/conversion-util.js4
-rw-r--r--ui/app/helpers/confirm-transaction/util.js2
-rw-r--r--ui/app/token-util.js2
-rw-r--r--ui/app/util.js4
20 files changed, 66 insertions, 33 deletions
diff --git a/app/_locales/de/messages.json b/app/_locales/de/messages.json
index 1d2619672..c06a99250 100644
--- a/app/_locales/de/messages.json
+++ b/app/_locales/de/messages.json
@@ -84,7 +84,7 @@
"message": "Auf Coinbase kaufen"
},
"buyCoinbaseExplainer": {
- "message": "Coinbase ist die weltweit bekannteste Art und Weise um bitcoin, ethereum und litecoin zu kaufen und verkaufen."
+ "message": "Coinbase ist die weltweit bekannteste Art und Weise um Bitcoin, Ethereum und Litecoin zu kaufen und verkaufen."
},
"ok": {
"message": "Ok"
@@ -828,7 +828,7 @@
"message": "Willkommen zur neuen Oberfläche (Beta)"
},
"uiWelcomeMessage": {
- "message": "Du verwendest nun die neue Metamask Oberfläche. Schau dich um, teste die neuen Features wie z.B. das Senden von Token und lass es uns wissen falls du irgendwelche Probleme hast."
+ "message": "Du verwendest nun die neue MetaMask Oberfläche. Schau dich um, teste die neuen Features wie z.B. das Senden von Token und lass es uns wissen falls du irgendwelche Probleme hast."
},
"unapproved": {
"message": "Nicht genehmigt"
diff --git a/app/_locales/en/messages.json b/app/_locales/en/messages.json
index 36a7a0d13..1614ede81 100644
--- a/app/_locales/en/messages.json
+++ b/app/_locales/en/messages.json
@@ -99,7 +99,7 @@
"message": "Buy on Coinbase"
},
"buyCoinbaseExplainer": {
- "message": "Coinbase is the world’s most popular way to buy and sell bitcoin, ethereum, and litecoin."
+ "message": "Coinbase is the world’s most popular way to buy and sell Bitcoin, Ethereum, and Litecoin."
},
"bytes": {
"message": "Bytes"
@@ -146,11 +146,17 @@
"connecting": {
"message": "Connecting..."
},
+ "connectToLedger": {
+ "message": "Connect to Ledger"
+ },
"connectToTrezor": {
"message": "Connect to Trezor"
},
- "connectToLedger": {
- "message": "Connect to Ledger"
+ "connectToTrezorHelp": {
+ "message": "MetaMask is able to access your TREZOR Ethereum accounts. First make sure your device is connected and unlocked."
+ },
+ "connectToTrezorTrouble": {
+ "message": "If you are having trouble, please make sure you are using the latest version of the TREZOR firmware."
},
"continue": {
"message": "Continue"
@@ -1090,7 +1096,7 @@
"message": "Welcome to the New UI (Beta)"
},
"uiWelcomeMessage": {
- "message": "You are now using the new Metamask UI."
+ "message": "You are now using the new MetaMask UI."
},
"unapproved": {
"message": "Unapproved"
diff --git a/app/_locales/es/messages.json b/app/_locales/es/messages.json
index f287674f1..ed7f8f681 100644
--- a/app/_locales/es/messages.json
+++ b/app/_locales/es/messages.json
@@ -75,7 +75,7 @@
"message": "Pedir prestado con Dharma (Beta)"
},
"builtInCalifornia": {
- "message": "Metamask fue diseñado y construido en California"
+ "message": "MetaMask fue diseñado y construido en California"
},
"buy": {
"message": "Comprar"
@@ -874,7 +874,7 @@
"message": "Advertencia"
},
"welcomeBeta": {
- "message": "Bienvenido a Metamask Beta"
+ "message": "Bienvenido a MetaMask Beta"
},
"whatsThis": {
"message": "¿Qué es esto?"
diff --git a/app/_locales/fr/messages.json b/app/_locales/fr/messages.json
index da2cfe4f8..1463e2b5f 100644
--- a/app/_locales/fr/messages.json
+++ b/app/_locales/fr/messages.json
@@ -63,7 +63,7 @@
"message": "Acheter sur Coinbase"
},
"buyCoinbaseExplainer": {
- "message": "Coinbase est le moyen le plus populaire au monde d'acheter et de vendre du bitcoin, de l'ethereum et du litecoin."
+ "message": "Coinbase est le moyen le plus populaire au monde d'acheter et de vendre du Bitcoin, de l'Ethereum et du Litecoin."
},
"cancel": {
"message": "Annuler"
@@ -570,7 +570,7 @@
"message": "Bienvenue dans la nouvelle interface utilisateur (Beta)"
},
"uiWelcomeMessage": {
- "message": "Vous utilisez maintenant la nouvelle interface utilisateur Metamask. Jetez un coup d'oeil, essayez de nouvelles fonctionnalités comme l'envoi de jetons, et faites-nous savoir si vous avez des problèmes."
+ "message": "Vous utilisez maintenant la nouvelle interface utilisateur MetaMask. Jetez un coup d'oeil, essayez de nouvelles fonctionnalités comme l'envoi de jetons, et faites-nous savoir si vous avez des problèmes."
},
"unavailable": {
"message": "Indisponible"
diff --git a/app/_locales/it/messages.json b/app/_locales/it/messages.json
index ef3ed4025..2ae5fae72 100644
--- a/app/_locales/it/messages.json
+++ b/app/_locales/it/messages.json
@@ -81,7 +81,7 @@
"message": "Compra su Coinbase"
},
"buyCoinbaseExplainer": {
- "message": "Coinbase è il servizio più popolare al mondo per comprare e vendere bitcoin, ethereum e litecoin."
+ "message": "Coinbase è il servizio più popolare al mondo per comprare e vendere Bitcoin, Ethereum e Litecoin."
},
"cancel": {
"message": "Cancella"
@@ -178,7 +178,7 @@
"message": "La rete predefinita per transazioni in Ether è la Rete Ethereum Principale."
},
"denExplainer": {
- "message": "Il DEN è il tuo archivio crittato con password dentro Metamask."
+ "message": "Il DEN è il tuo archivio crittato con password dentro MetaMask."
},
"deposit": {
"message": "Deposita"
@@ -816,4 +816,4 @@
"youSign": {
"message": "Ti stai connettendo"
}
-} \ No newline at end of file
+}
diff --git a/app/_locales/nl/messages.json b/app/_locales/nl/messages.json
index 38289f602..46847f1bf 100644
--- a/app/_locales/nl/messages.json
+++ b/app/_locales/nl/messages.json
@@ -81,7 +81,7 @@
"message": "Koop op Coinbase"
},
"buyCoinbaseExplainer": {
- "message": "Coinbase is 's werelds populairste manier om bitcoin, ethereum en litecoin te kopen en verkopen."
+ "message": "Coinbase is 's werelds populairste manier om Bitcoin, Ethereum en Litecoin te kopen en verkopen."
},
"cancel": {
"message": "Annuleer"
@@ -435,7 +435,7 @@
"message": "back-up woorden hebben alleen kleine letters"
},
"mainnet": {
- "message": "belangrijkste ethereum-netwerk"
+ "message": "belangrijkste Ethereum-netwerk"
},
"message": {
"message": "Bericht"
@@ -762,7 +762,7 @@
"message": "Welkom bij de nieuwe gebruikersinterface (bèta)"
},
"uiWelcomeMessage": {
- "message": "U gebruikt nu de nieuwe gebruikersinterface van Metamask. Kijk rond, probeer nieuwe functies uit zoals het verzenden van tokens en laat ons weten of u problemen ondervindt."
+ "message": "U gebruikt nu de nieuwe gebruikersinterface van MetaMask. Kijk rond, probeer nieuwe functies uit zoals het verzenden van tokens en laat ons weten of u problemen ondervindt."
},
"unavailable": {
"message": "Niet beschikbaar"
diff --git a/app/_locales/ph/messages.json b/app/_locales/ph/messages.json
index 29d63be02..9a243447a 100644
--- a/app/_locales/ph/messages.json
+++ b/app/_locales/ph/messages.json
@@ -63,7 +63,7 @@
"message": "Bumili sa Coinbase"
},
"buyCoinbaseExplainer": {
- "message": "Ang Coinbase ang pinakasikat na paraan upang bumili at magbenta ng bitcoin, ethereum, at litecoin sa buong mundo."
+ "message": "Ang Coinbase ang pinakasikat na paraan upang bumili at magbenta ng Bitcoin, Ethereum, at Litecoin sa buong mundo."
},
"cancel": {
"message": "Kanselahin"
diff --git a/app/_locales/pt/messages.json b/app/_locales/pt/messages.json
index e770392d0..6f0bb1584 100644
--- a/app/_locales/pt/messages.json
+++ b/app/_locales/pt/messages.json
@@ -81,7 +81,7 @@
"message": "Comprar no Coinbase"
},
"buyCoinbaseExplainer": {
- "message": "Coinbase é a forma mais conhecida para comprar e vender bitcoin, ethereum, e litecoin."
+ "message": "Coinbase é a forma mais conhecida para comprar e vender Bitcoin, Ethereum, e Litecoin."
},
"cancel": {
"message": "Cancelar"
diff --git a/app/_locales/ru/messages.json b/app/_locales/ru/messages.json
index b43251064..bb722735d 100644
--- a/app/_locales/ru/messages.json
+++ b/app/_locales/ru/messages.json
@@ -84,7 +84,7 @@
"message": "Купить на Coinbase"
},
"buyCoinbaseExplainer": {
- "message": "Биржа Coinbase – это наиболее популярный способ купить или продать bitcoin, ethereum и litecoin."
+ "message": "Биржа Coinbase – это наиболее популярный способ купить или продать Bitcoin, Ethereum и Litecoin."
},
"ok": {
"message": "ОК"
diff --git a/app/_locales/th/messages.json b/app/_locales/th/messages.json
index 3d7dec226..c9aaa0394 100644
--- a/app/_locales/th/messages.json
+++ b/app/_locales/th/messages.json
@@ -762,7 +762,7 @@
"message": "ยินดีต้อนรับสู่หน้าตาใหม่ (เบต้า)"
},
"uiWelcomeMessage": {
- "message": "ขณะนี้คุณใช้งาน Metamask หน้าตาใหม่แล้ว ลองใช้ความสามรถใหม่ ๆ เช่นการส่งโทเค็นและหากพบปัญหากรุณาแจ้งให้เราทราบ"
+ "message": "ขณะนี้คุณใช้งาน MetaMask หน้าตาใหม่แล้ว ลองใช้ความสามรถใหม่ ๆ เช่นการส่งโทเค็นและหากพบปัญหากรุณาแจ้งให้เราทราบ"
},
"unavailable": {
"message": "ใช้งานไม่ได้"
diff --git a/app/_locales/tr/messages.json b/app/_locales/tr/messages.json
index c2c09bc91..08ba6cde8 100644
--- a/app/_locales/tr/messages.json
+++ b/app/_locales/tr/messages.json
@@ -84,7 +84,7 @@
"message": "Coinbase'de satın al"
},
"buyCoinbaseExplainer": {
- "message": "Coinbase bitcoin, ethereum, and litecoin alıp satmanın dünyadaki en popüler yolu"
+ "message": "Coinbase Bitcoin, Ethereum, and Litecoin alıp satmanın dünyadaki en popüler yolu"
},
"ok": {
"message": "Tamam"
@@ -852,7 +852,7 @@
"message": "Yeni UI (Beta)'ya hoşgeldiniz"
},
"uiWelcomeMessage": {
- "message": "Şu anda yeni Metamask UI kullanmaktasınız. Gözatın, jeton gönderme gibi yeni özellikleri deneyin ve herhangi bir sorunlar karşılaşırsanız bize haber verin"
+ "message": "Şu anda yeni MetaMask UI kullanmaktasınız. Gözatın, jeton gönderme gibi yeni özellikleri deneyin ve herhangi bir sorunlar karşılaşırsanız bize haber verin"
},
"unapproved": {
"message": "Onaylanmadı"
@@ -909,4 +909,4 @@
"youSign": {
"message": "İmzalıyorsunuz"
}
-} \ No newline at end of file
+}
diff --git a/app/_locales/vi/messages.json b/app/_locales/vi/messages.json
index cd30de4de..782dfd119 100644
--- a/app/_locales/vi/messages.json
+++ b/app/_locales/vi/messages.json
@@ -570,7 +570,7 @@
"message": "Chào mừng bạn đến với giao diện mới (Beta)"
},
"uiWelcomeMessage": {
- "message": "Bạn đang sử dụng giao diện mới của Metamask. Chúng tôi khuyến khích bạn thử nghiệm và khám phá các tính năng mới như gửi token, và nếu bạn có gặp phải vấn đề gì khó khăn, xin hãy liên hệ ngay để chúng tôi có thể giúp đỡ bạn."
+ "message": "Bạn đang sử dụng giao diện mới của MetaMask. Chúng tôi khuyến khích bạn thử nghiệm và khám phá các tính năng mới như gửi token, và nếu bạn có gặp phải vấn đề gì khó khăn, xin hãy liên hệ ngay để chúng tôi có thể giúp đỡ bạn."
},
"unavailable": {
"message": "Không có sẵn"
diff --git a/app/_locales/zh_CN/messages.json b/app/_locales/zh_CN/messages.json
index 241ea948d..a39bba9da 100644
--- a/app/_locales/zh_CN/messages.json
+++ b/app/_locales/zh_CN/messages.json
@@ -879,7 +879,7 @@
"message": "欢迎使用新版界面 (Beta)"
},
"uiWelcomeMessage": {
- "message": "你现在正在使用新的 Metamask 界面。 尝试发送代币等新功能,有任何问题请告知我们。"
+ "message": "你现在正在使用新的 MetaMask 界面。 尝试发送代币等新功能,有任何问题请告知我们。"
},
"unapproved": {
"message": "未批准"
diff --git a/app/_locales/zh_TW/messages.json b/app/_locales/zh_TW/messages.json
index 9aaee0e16..200c75c3c 100644
--- a/app/_locales/zh_TW/messages.json
+++ b/app/_locales/zh_TW/messages.json
@@ -362,7 +362,7 @@
"message": "你想怎麼存入 Ether?"
},
"holdEther": {
- "message": "Metamask 讓您能保存 ether 和代幣, 並成為您接觸分散式應用程式的途徑."
+ "message": "MetaMask 讓您能保存 ether 和代幣, 並成為您接觸分散式應用程式的途徑."
},
"import": {
"message": "導入",
diff --git a/mascara/src/app/first-time/index.css b/mascara/src/app/first-time/index.css
index 09e7d378d..2d05a48b8 100644
--- a/mascara/src/app/first-time/index.css
+++ b/mascara/src/app/first-time/index.css
@@ -340,6 +340,19 @@
min-width: 0;
}
+.backup-phrase__tips-text--link {
+ color: #2f9ae0;
+ cursor: pointer;
+}
+
+.backup-phrase__tips-text--link:hover {
+ color: #2f9ae0;
+}
+
+.backup-phrase__tips-text--strong {
+ font-weight: bold;
+}
+
@media only screen and (max-width: 768px) {
.backup-phrase__content-wrapper {
flex-direction: column;
diff --git a/mascara/src/app/first-time/seed-screen.js b/mascara/src/app/first-time/seed-screen.js
index d004be77b..97d5d7930 100644
--- a/mascara/src/app/first-time/seed-screen.js
+++ b/mascara/src/app/first-time/seed-screen.js
@@ -5,6 +5,7 @@ import classnames from 'classnames'
import { withRouter } from 'react-router-dom'
import { compose } from 'recompose'
import Identicon from '../../../../ui/app/components/identicon'
+import {exportAsFile} from '../../../../ui/app/util'
import Breadcrumbs from './breadcrumbs'
import LoadingScreen from './loading-screen'
import { DEFAULT_ROUTE, INITIALIZE_CONFIRM_SEED_ROUTE } from '../../../../ui/app/routes'
@@ -65,6 +66,12 @@ class BackupPhraseScreen extends Component {
}
}
+ exportSeedWords = () => {
+ const { seedWords } = this.props
+
+ exportAsFile('MetaMask Secret Backup Phrase', seedWords, 'text/plain')
+ }
+
renderSecretWordsContainer () {
const { isShowingSecret } = this.state
@@ -111,7 +118,7 @@ class BackupPhraseScreen extends Component {
<div className="backup-phrase__tips">
<div className="backup-phrase__tips-text">Tips:</div>
<div className="backup-phrase__tips-text">
- Store this phrase in a password manager like 1password.
+ Store this phrase in a password manager like 1Password.
</div>
<div className="backup-phrase__tips-text">
Write this phrase on a piece of paper and store in a secure location. If you want even more security, write it down on multiple pieces of paper and store each in 2 - 3 different locations.
@@ -119,6 +126,13 @@ class BackupPhraseScreen extends Component {
<div className="backup-phrase__tips-text">
Memorize this phrase.
</div>
+ <div className="backup-phrase__tips-text">
+ <strong>
+ <a className="backup-phrase__tips-text--link backup-phrase__tips-text--strong" onClick={this.exportSeedWords}>
+ Download this Secret Backup Phrase
+ </a>
+ </strong> and keep it stored safely on an external encrypted hard drive or storage medium.
+ </div>
</div>
<div className="backup-phrase__next-button">
<button
diff --git a/ui/app/conversion-util.js b/ui/app/conversion-util.js
index a7a226cc5..38f5f1c50 100644
--- a/ui/app/conversion-util.js
+++ b/ui/app/conversion-util.js
@@ -46,7 +46,7 @@ const decToBigNumberViaString = n => R.pipe(String, toBigNumber['dec'])
// Setter Maps
const toBigNumber = {
hex: n => new BigNumber(stripHexPrefix(n), 16),
- dec: n => new BigNumber(n, 10),
+ dec: n => new BigNumber(String(n), 10),
BN: n => new BigNumber(n.toString(16), 16),
}
const toNormalizedDenomination = {
@@ -154,7 +154,7 @@ const subtractCurrencies = (a, b, options = {}) => {
bBase,
...conversionOptions
} = options
- const value = (new BigNumber(a, aBase)).minus(b, bBase)
+ const value = (new BigNumber(String(a), aBase)).minus(b, bBase)
return converter({
value,
diff --git a/ui/app/helpers/confirm-transaction/util.js b/ui/app/helpers/confirm-transaction/util.js
index a37778c19..76e80a8ac 100644
--- a/ui/app/helpers/confirm-transaction/util.js
+++ b/ui/app/helpers/confirm-transaction/util.js
@@ -141,7 +141,7 @@ export function hasUnconfirmedTransactions (state) {
export function roundExponential (value) {
const PRECISION = 4
- const bigNumberValue = new BigNumber(value)
+ const bigNumberValue = new BigNumber(String(value))
// In JS, numbers with exponentials greater than 20 get displayed as an exponential.
return bigNumberValue.e > 20 ? Number(bigNumberValue.toPrecision(PRECISION)) : value
diff --git a/ui/app/token-util.js b/ui/app/token-util.js
index 0d4233766..8798ed266 100644
--- a/ui/app/token-util.js
+++ b/ui/app/token-util.js
@@ -44,7 +44,7 @@ async function getSymbolAndDecimals (tokenAddress, existingTokens = []) {
function calcTokenAmount (value, decimals) {
const multiplier = Math.pow(10, Number(decimals || 0))
- return new BigNumber(value).div(multiplier).toNumber()
+ return new BigNumber(String(value)).div(multiplier).toNumber()
}
diff --git a/ui/app/util.js b/ui/app/util.js
index 8b194e0c7..ade4fec8a 100644
--- a/ui/app/util.js
+++ b/ui/app/util.js
@@ -271,9 +271,9 @@ function getContractAtAddress (tokenAddress) {
return global.eth.contract(abi).at(tokenAddress)
}
-function exportAsFile (filename, data) {
+function exportAsFile (filename, data, type = 'text/csv') {
// source: https://stackoverflow.com/a/33542499 by Ludovic Feltz
- const blob = new Blob([data], {type: 'text/csv'})
+ const blob = new Blob([data], {type})
if (window.navigator.msSaveOrOpenBlob) {
window.navigator.msSaveBlob(blob, filename)
} else {