aboutsummaryrefslogblamecommitdiffstats
path: root/ui/app/components/wallet-view.js
blob: 0c5bd5c4fc82bb6574f1c7be8194ebf12baa490e (plain) (tree)
1
2
3
4
5
6
7





                                                                        
                                                   
























                                                               
                                                            


      
                                                       

                                   
                              











                                           

                                                                                 








                         



                               
                                                                                



                         
       
 





                                  

                  
                    












                                            

                            





                                               

                         


                              
                             





                                               

                         


                              
                             


                 
 
                      




                                   


                           
      


    
const Component = require('react').Component
const connect = require('react-redux').connect
const h = require('react-hyperscript')
const inherits = require('util').inherits
const Identicon = require('./identicon')
const AccountDropdowns = require('./account-dropdowns').AccountDropdowns
const Content = require('./wallet-content-display')

module.exports = connect(mapStateToProps)(WalletView)

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


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

const noop = () => {}

WalletView.prototype.render = function () {
  const selected = '0x82df11beb942BEeeD58d466fCb0F0791365C7684'
  const { network } = this.props

  return h('div.wallet-view.flex-column', {
    style: {
      flexGrow: 1,
      height: '82vh',
      background: '#FAFAFA', // TODO: add to reusable colors
    }
  }, [

    // TODO: Separate component: wallet account details
    h('div.flex-row.flex-center', {
      style: {
        margin: '1.8em 1.3em',
      }
    }, [

      h('.identicon-wrapper.select-none', [
        h(Identicon, {
          diameter: 24,
          address: selected,
        }),
      ]),

      h('span', {
        style: {
          fontSize: '1.2em',
          marginLeft: '0.6em', // TODO: switch all units for this component to em
        }
      }, [
        'Account 1'
      ]),

      h(
        AccountDropdowns,
        {
          style: {
            marginLeft: 'auto',
            cursor: 'pointer',
          },
          selected,
          network, // TODO: this prop could be in the account dropdown container
          identities: {},
        },
      ),

    ]),

    h(Content, {
     title: 'Wallet',
     amount: '1001.124 ETH',
     fiatValue: '$300,000.00 USD',
     active: true,
    }),

    // Buy Buttons
    // for index.css
    // TODO: move into a class
    // div.wallet-btn {
    //   border: 1px solid rgb(91, 93, 103);
    //   border-radius: 2px;
    //   height: 30px;
    //   width: 75px;
    //   font-size: 0.8em;
    //   text-align: center;
    //   line-height: 25px;
    // }

    h('div.flex-row', {
      style: {
        marginLeft: '1.3em',
        marginTop: '0.8em',
      }
    }, [
      h('div', {
        style: {
          border: '1px solid rgb(91, 93, 103)',
          borderRadius: '2px',
          height: '28px',
          width: '70px',
          fontSize: '0.8em',
          textAlign: 'center',
          lineHeight: '25px',
          marginLeft: '.6em',
        }
      }, 'BUY'),
      h('div.wallet-btn', {
        style: {
          border: '1px solid rgb(91, 93, 103)',
          borderRadius: '2px',
          height: '28px',
          width: '70px',
          fontSize: '0.8em',
          textAlign: 'center',
          lineHeight: '25px',
          marginLeft: '.6em',
        }
      }, 'SEND'),
    ]),

    // Wallet contents
    h(Content, {
      title: "Total Token Balance",
      amount: "45.439 ETH",
      fiatValue: "$13,000.00 USD",
      active: false,
      style: {
        marginTop: '1.3em',
      }
    })

  ])
}