// Copyright 2015-2017 Parity Technologies (UK) Ltd. // This file is part of Parity. // Parity is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by // the Free Software Foundation, either version 3 of the License, or // (at your option) any later version. // Parity is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details. // You should have received a copy of the GNU General Public License // along with Parity. If not, see . import { observer } from 'mobx-react'; import React, { Component, PropTypes } from 'react'; import { FormattedMessage } from 'react-intl'; import { ContainerTitle, DappCard, Portal, SectionList } from '~/ui'; import { CheckIcon } from '~/ui/Icons'; import styles from './addDapps.css'; @observer export default class AddDapps extends Component { static propTypes = { store: PropTypes.object.isRequired }; render () { const { store } = this.props; if (!store.modalOpen) { return null; } return ( } />
{ this.renderList(store.sortedLocal, store.displayApps, , ) } { this.renderList(store.sortedBuiltin, store.displayApps, , ) } { this.renderList(store.sortedNetwork, store.displayApps, , ) }
); } renderList (items, visibleItems, header, byline) { if (!items || !items.length) { return null; } return (
{ header }
{ byline }
); } renderApp = (app) => { const { store } = this.props; const isVisible = store.displayApps[app.id].visible; const onClick = () => { if (isVisible) { store.hideApp(app.id); } else { store.showApp(app.id); } }; return ( ); } }