aboutsummaryrefslogtreecommitdiffstats
path: root/ui/app/accounts/import/index.js
blob: a7c3252cda4b4331318f70b9b8395cfea770a5f4 (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
73
74
75
76
77
78
79
80
81
82
const inherits = require('util').inherits
const Component = require('react').Component
const h = require('react-hyperscript')
const connect = require('react-redux').connect
import Select from 'react-select'

// Subviews
const JsonImportView = require('./json.js')
const SeedImportView = require('./seed.js')

module.exports = connect(mapStateToProps)(AccountImportSubview)

function mapStateToProps (state) {
  return {
    types: state.metamask.keyringTypes,
  }
}

inherits(AccountImportSubview, Component)
function AccountImportSubview () {
  Component.call(this)
}

AccountImportSubview.prototype.render = function () {
  const props = this.props
  const state = this.state || {}
  const { types } = props
  const { type } = state

  return (
    h('div', {
      style: {
      },
    }, [
      h('div', {
        style: {
          padding: '10px',
          color: 'rgb(174, 174, 174)',
        },
      }, [

        h('h3', { style: { padding: '3px' } }, 'SELECT TYPE'),

        h('style', `
          .has-value.Select--single > .Select-control .Select-value .Select-value-label, .Select-value-label {
            color: rgb(174,174,174);
          }
        `),

        h(Select, {
          name: 'import-type-select',
          clearable: false,
          value: type || types[0],
          options: types.map((type) => {
            return {
              value: type,
              label: type,
            }
          }),
          onChange: (opt) => {
            this.setState({ type: opt.value })
          },
        }),
      ]),

      this.renderImportView(),
    ])
  )
}

AccountImportSubview.prototype.renderImportView = function() {
  const props = this.props
  const state = this.state || {}
  const { type } = state || props.types[0]

  switch (type) {
    case 'HD Key Tree':
      return h(SeedImportView)
    default:
      return h(JsonImportView)
  }
}