Skip to content
This repository has been archived by the owner on Nov 17, 2023. It is now read-only.

Commit

Permalink
feat(ui): add warning about keeping seed private
Browse files Browse the repository at this point in the history
Fix #522
  • Loading branch information
Sean Yesmunt authored and mrfelton committed Dec 12, 2018
1 parent c0a7c72 commit c2f0811
Show file tree
Hide file tree
Showing 41 changed files with 96 additions and 37 deletions.
15 changes: 12 additions & 3 deletions app/components/Icon/Warning.js
@@ -1,6 +1,15 @@
import React from 'react'
import FaExclamationCircle from 'react-icons/lib/fa/exclamation-circle'

const SystemIcon = props => <FaExclamationCircle style={{ verticalAlign: 'inherit' }} {...props} />
const SvgWarning = props => (
<svg width="1em" height="1em" viewBox="0 0 15 14" {...props}>
<defs>
<path
id="warning_svg__a"
d="M9.264 1.682l5.105 9.36A2 2 0 0 1 12.613 14H2.403a2 2 0 0 1-1.757-2.958l5.106-9.36a2 2 0 0 1 3.512 0zm-1.689 8.434a.706.706 0 1 0 0 1.412.706.706 0 0 0 0-1.412zm0-5.297a.706.706 0 0 0-.706.706V8.35a.706.706 0 1 0 1.412 0V5.525a.706.706 0 0 0-.706-.706z"
/>
</defs>
<use fill="currentColor" fillRule="evenodd" xlinkHref="#warning_svg__a" />
</svg>
)

export default SystemIcon
export default SvgWarning
49 changes: 27 additions & 22 deletions app/components/Onboarding/Steps/SeedView.js
Expand Up @@ -3,7 +3,7 @@ import React from 'react'
import PropTypes from 'prop-types'
import { FormattedMessage, injectIntl } from 'react-intl'
import { Flex } from 'rebass'
import { Bar, Form, Header, Spinner, Text } from 'components/UI'
import { Bar, Form, Header, Message, Spinner, Text } from 'components/UI'
import messages from './messages'

const SeedWord = ({ index, word }) => (
Expand Down Expand Up @@ -71,28 +71,33 @@ class SeedView extends React.Component {
)}
{!fetchingSeed &&
seed.length > 0 && (
<Flex justifyContent="space-between">
<Flex flexDirection="column" as="ul">
{seed.slice(0, 6).map((word, index) => (
<SeedWord key={index} index={index + 1} word={word} />
))}
<>
<Flex justifyContent="space-between" mb={3}>
<Flex flexDirection="column" as="ul">
{seed.slice(0, 6).map((word, index) => (
<SeedWord key={index} index={index + 1} word={word} />
))}
</Flex>
<Flex flexDirection="column" as="ul">
{seed.slice(6, 12).map((word, index) => (
<SeedWord key={index} index={index + 7} word={word} />
))}
</Flex>
<Flex flexDirection="column" as="ul">
{seed.slice(12, 18).map((word, index) => (
<SeedWord key={index} index={index + 13} word={word} />
))}
</Flex>
<Flex flexDirection="column" as="ul">
{seed.slice(18, 24).map((word, index) => (
<SeedWord key={index} index={index + 19} word={word} />
))}
</Flex>
</Flex>
<Flex flexDirection="column" as="ul">
{seed.slice(6, 12).map((word, index) => (
<SeedWord key={index} index={index + 7} word={word} />
))}
</Flex>
<Flex flexDirection="column" as="ul">
{seed.slice(12, 18).map((word, index) => (
<SeedWord key={index} index={index + 13} word={word} />
))}
</Flex>
<Flex flexDirection="column" as="ul">
{seed.slice(18, 24).map((word, index) => (
<SeedWord key={index} index={index + 19} word={word} />
))}
</Flex>
</Flex>
<Message variant="warning" justifyContent="center">
<FormattedMessage {...messages.seed_warning} />
</Message>
</>
)}
</Form>
)
Expand Down
2 changes: 2 additions & 0 deletions app/components/Onboarding/Steps/messages.js
Expand Up @@ -62,6 +62,8 @@ export default defineMessages({
save_seed_description:
'Please save these 24 words securely! This will allow you to recover your wallet in the future',
save_seed_title: 'Save your wallet seed',
seed_warning:
'Keep this private! If someone gains access to this list they can steal your money.',
signup_create: 'Create new wallet',
signup_description: 'Would you like to create a new wallet or import an existing one?',
signup_import: 'Import existing wallet',
Expand Down
14 changes: 7 additions & 7 deletions app/components/UI/Message.js
Expand Up @@ -9,7 +9,7 @@ import styled from 'styled-components'
import { variant } from 'styled-system'

const messageStyle = variant({ key: 'messages' })
const StyledMessage = styled(Flex)(messageStyle)
const StyledMessage = styled(Text)(messageStyle)

/**
* @render react
Expand Down Expand Up @@ -37,14 +37,14 @@ class Message extends React.Component {
}

render() {
const { children, variant, ...rest } = this.props
const { children, justifyContent, variant, ...rest } = this.props
return (
<Text fontSize="s" fontWeight="normal" {...rest}>
<StyledMessage variant={variant} alignItems="center">
<StyledMessage fontSize="s" fontWeight="normal" variant={variant} {...rest}>
<Flex alignItems="center" justifyContent={justifyContent}>
{this.renderIcon()}
{children}
</StyledMessage>
</Text>
<Box>{children}</Box>
</Flex>
</StyledMessage>
)
}
}
Expand Down
6 changes: 6 additions & 0 deletions app/icons/warning.svg
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions app/styles/variables.scss
Expand Up @@ -8,6 +8,7 @@
--primaryColor: #242633;
--secondaryColor: #373947;
--tertiaryColor: #313340;
--warningColor: #fcc419;
--primaryText: #fff;
--highlight: #353745;
--gradient: linear-gradient(270deg, #868b9f 0%, #333c5e 100%);
Expand Down
1 change: 1 addition & 0 deletions app/translations/af-ZA.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/ar-SA.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/bg-BG.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Създай нов портфейл",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Възстановяване на съществуващ портфейл",
Expand Down
1 change: 1 addition & 0 deletions app/translations/ca-ES.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/cs-CZ.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Vytvořit novou peněženku",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Importovat existující peněženku",
Expand Down
1 change: 1 addition & 0 deletions app/translations/da-DK.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/de-DE.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Neues Wallet erstellen",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Bestehendes Wallet importieren",
Expand Down
1 change: 1 addition & 0 deletions app/translations/el-GR.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Δημιουργήστε νέο πορτοφόλι",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Εισαγωγή υπάρχουσας πορτοφόλι",
Expand Down
1 change: 1 addition & 0 deletions app/translations/en.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "Retype your seed",
"components.Onboarding.Steps.save_seed_description": "Please save these 24 words securely! This will allow you to recover your wallet in the future",
"components.Onboarding.Steps.save_seed_title": "Save your wallet seed",
"components.Onboarding.Steps.seed_warning": "Keep this private! If someone gains access to this list they can steal your money.",
"components.Onboarding.Steps.signup_create": "Create new wallet",
"components.Onboarding.Steps.signup_description": "Would you like to create a new wallet or import an existing one?",
"components.Onboarding.Steps.signup_import": "Import existing wallet",
Expand Down
1 change: 1 addition & 0 deletions app/translations/es-ES.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Crear nueva cartera",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Importar cartera existente",
Expand Down
1 change: 1 addition & 0 deletions app/translations/fi-FI.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/fr-FR.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Créer un nouveau portefeuille",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Importer un portefeuille existant",
Expand Down
1 change: 1 addition & 0 deletions app/translations/ga-IE.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Déan sparán nua",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Iompórtáil sparán reatha",
Expand Down
1 change: 1 addition & 0 deletions app/translations/he-IL.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/hi-IN.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/hr-HR.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Stvori novi novčanik",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Uvezi postojeći novčanik",
Expand Down
1 change: 1 addition & 0 deletions app/translations/hu-HU.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/it-IT.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/ja-JP.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "新しいウォレットを作成します。",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "既存のウォレットをインポートします。",
Expand Down
1 change: 1 addition & 0 deletions app/translations/ko-KR.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/nl-NL.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Maak een nieuwe portemonnee aan",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Importeer een bestaande portefeuille",
Expand Down
1 change: 1 addition & 0 deletions app/translations/no-NO.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/pl-PL.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/pt-BR.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Criar nova carteira",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Importar carteira existente",
Expand Down
1 change: 1 addition & 0 deletions app/translations/pt-PT.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/ro-RO.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Creeaza un nou portofel",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Importa un portofel existent",
Expand Down
1 change: 1 addition & 0 deletions app/translations/ru-RU.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Создать новый кошелёк",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Импорт существующего кошелька",
Expand Down
1 change: 1 addition & 0 deletions app/translations/sr-SP.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down
1 change: 1 addition & 0 deletions app/translations/sv-SE.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Skapa ny wallet",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Importera befintlig wallet",
Expand Down
1 change: 1 addition & 0 deletions app/translations/tr-TR.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Yeni cüzdan oluştur",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Varolan cüzdanı geri yükle",
Expand Down
1 change: 1 addition & 0 deletions app/translations/uk-UA.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "Створити новий гаманець",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "Імпортувати наявний гаманець",
Expand Down
1 change: 1 addition & 0 deletions app/translations/vi-VN.json
Expand Up @@ -145,6 +145,7 @@
"components.Onboarding.Steps.retype_seed_title": "",
"components.Onboarding.Steps.save_seed_description": "",
"components.Onboarding.Steps.save_seed_title": "",
"components.Onboarding.Steps.seed_warning": "",
"components.Onboarding.Steps.signup_create": "",
"components.Onboarding.Steps.signup_description": "",
"components.Onboarding.Steps.signup_import": "",
Expand Down

0 comments on commit c2f0811

Please sign in to comment.