1
0
mirror of https://github.com/kremalicious/metamask-extension.git synced 2024-12-23 09:52:26 +01:00
metamask-extension/ui/app/info.js

163 lines
4.7 KiB
JavaScript
Raw Normal View History

const inherits = require('util').inherits
const Component = require('react').Component
const h = require('react-hyperscript')
const connect = require('react-redux').connect
const actions = require('./actions')
const extension = require('../../app/scripts/lib/extension')
module.exports = connect(mapStateToProps)(InfoScreen)
2016-06-21 22:18:32 +02:00
function mapStateToProps (state) {
return {}
}
inherits(InfoScreen, Component)
2016-06-21 22:18:32 +02:00
function InfoScreen () {
Component.call(this)
}
2016-06-21 22:18:32 +02:00
InfoScreen.prototype.render = function () {
var state = this.props
2016-07-01 03:23:05 +02:00
var manifest
try {
manifest = extension.runtime.getManifest()
2016-07-01 03:23:05 +02:00
} catch (e) {
manifest = { version: '2.0.0' }
}
return (
h('.flex-column.flex-grow', [
// subtitle and nav
h('.section-title.flex-row.flex-center', [
h('i.fa.fa-arrow-left.fa-lg.cursor-pointer', {
onClick: (event) => {
state.dispatch(actions.goHome())
2016-06-21 22:18:32 +02:00
},
}),
h('h2.page-subtitle', 'Info'),
]),
// main view
h('.flex-column.flex-justify-center.flex-grow.select-none', [
h('.flex-space-around', {
style: {
padding: '20px',
2016-06-21 22:18:32 +02:00
},
}, [
2016-06-21 22:18:32 +02:00
// current version number
2016-06-21 22:18:32 +02:00
h('.info.info-gray', [
h('div', 'Metamask'),
h('div', {
style: {
2016-06-21 22:18:32 +02:00
marginBottom: '10px',
},
}, `Version: ${manifest.version}`),
]),
2016-10-05 06:46:33 +02:00
h('div', {
style: {
marginBottom: '10px',
}},
[
h('div', [
h('a', {
href: 'https://metamask.io/privacy.html',
target: '_blank',
onClick (event) { this.navigateTo(event.target.href) },
}, [
h('div.info', 'Privacy Policy'),
]),
]),
h('div', [
h('a', {
href: 'https://metamask.io/terms.html',
target: '_blank',
onClick (event) { this.navigateTo(event.target.href) },
}, [
h('div.info', 'Terms of Use'),
]),
]),
h('div', [
h('a', {
href: 'https://metamask.io/attributions.html',
target: '_blank',
onClick (event) { this.navigateTo(event.target.href) },
}, [
h('div.info', 'Attributions'),
]),
]),
]
),
2016-06-21 22:18:32 +02:00
h('hr', {
style: {
2016-06-21 22:18:32 +02:00
margin: '20px 0 ',
width: '7em',
2016-06-21 22:18:32 +02:00
},
}),
2016-06-21 22:18:32 +02:00
h('div', {
style: {
2016-06-09 01:08:55 +02:00
paddingLeft: '30px',
}},
2016-06-21 22:18:32 +02:00
[
h('div', [
h('a', {
href: 'https://metamask.io/',
target: '_blank',
onClick (event) { this.navigateTo(event.target.href) },
}, [
h('img.icon-size', {
src: manifest.icons['128'],
2016-10-05 06:46:33 +02:00
style: {
2016-10-05 06:50:56 +02:00
filter: 'grayscale(100%)', /* IE6-9 */
WebkitFilter: 'grayscale(100%)', /* Microsoft Edge and Firefox 35+ */
},
2016-06-21 22:18:32 +02:00
}),
2016-06-23 00:31:02 +02:00
h('div.info', 'Visit our web site'),
2016-06-21 22:18:32 +02:00
]),
]),
h('div.fa.fa-slack', [
h('a.info', {
href: 'http://slack.metamask.io',
target: '_blank',
onClick (event) { this.navigateTo(event.target.href) },
}, 'Join the conversation on Slack'),
]),
h('div.fa.fa-twitter', [
h('a.info', {
href: 'https://twitter.com/metamask_io',
target: '_blank',
onClick (event) { this.navigateTo(event.target.href) },
}, 'Follow us on Twitter'),
]),
h('div.fa.fa-envelope', [
h('a.info', {
target: '_blank',
2016-06-23 00:31:02 +02:00
style: { width: '85vw' },
onClick () { extension.tabs.create({url: 'mailto:help@metamask.io?subject=Feedback'}) },
2016-10-05 06:46:33 +02:00
}, 'Email us!'),
2016-06-21 22:18:32 +02:00
]),
h('div.fa.fa-github', [
h('a.info', {
2016-10-31 17:30:22 +01:00
href: 'https://github.com/MetaMask/metamask-plugin/issues',
2016-06-21 22:18:32 +02:00
target: '_blank',
onClick (event) { this.navigateTo(event.target.href) },
2016-10-05 06:46:33 +02:00
}, 'Start a thread on GitHub'),
2016-06-21 22:18:32 +02:00
]),
]),
]),
]),
])
)
}
2016-06-21 22:18:32 +02:00
InfoScreen.prototype.navigateTo = function (url) {
extension.tabs.create({ url })
}