aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/components/pages/create-account/connect-hardware/connect-screen.js
blob: 0dd8e285b113ac98916d66e30fb929db9f4fa84f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
const { Component } = require('react')
const PropTypes = require('prop-types')
const h = require('react-hyperscript')

class ConnectScreen extends Component {
    constructor (props, context) {
        super(props)
    }

    renderUnsupportedBrowser () {
        return (
            h('div', {}, [
                h('div.hw-connect', [
                    h('h3.hw-connect__title', {}, this.context.t('browserNotSupported')),
                    h('p.hw-connect__msg', {}, this.context.t('chromeRequiredForTrezor')),
                ]),
                h(
                    'button.btn-primary.btn--large',
                    {
                      onClick: () => global.platform.openWindow({
                        url: 'https://google.com/chrome',
                      }),
                    },
                    this.context.t('downloadGoogleChrome')
                ),
            ])
        )
    }

    renderConnectScreen () {
        return (
            h('div', {}, [
                h('div.hw-connect', [
                    h('h3.hw-connect__title', {}, this.context.t('trezorHardwareWallet')),
                    h('p.hw-connect__msg', {}, this.context.t('connectToTrezorHelp')),
                    h('p.hw-connect__msg', {}, [
                        this.context.t('connectToTrezorTrouble'),
                        h('a.hw-connect__link', {
                            href: 'https://support.metamask.io/',
                            target: '_blank',
                        }, ` ${this.context.t('learnMore')}`),
                    ]),
                ]),
                h(
                    'button.btn-primary.btn--large',
                    { onClick: this.props.connectToTrezor.bind(this) },
                    this.props.btnText
                ),
            ])
        )
      }

    render () {
        if (this.props.browserSupported) {
            return this.renderConnectScreen()
        }
        return this.renderUnsupportedBrowser()
    }
}

ConnectScreen.propTypes = {
    connectToTrezor: PropTypes.func.isRequired,
    btnText: PropTypes.string.isRequired,
    browserSupported: PropTypes.bool.isRequired,
}

ConnectScreen.contextTypes = {
    t: PropTypes.func,
}

module.exports = ConnectScreen