/* * Copyright 2007-2017 Charles du Jeu - Abstrium SAS * This file is part of Pydio. * * Pydio is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * Pydio 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 Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with Pydio. If not, see . * * The latest code can be found at . */ const {Component, PropTypes} = require('react') /** * Left panel of the address book * Display treeview hierarchy of users, teams, groups. */ class NestedListItem extends Component{ /** * Triggers this.props.onTouchTap */ onTouchTap(){ this.props.onTouchTap(this.props.entry); } /** * Recursively build other NestedListItem * @param data */ buildNestedItems(data){ return data.map(function(entry){ return ( ); }.bind(this)); } render(){ const {id, label, icon, selected} = this.props.entry; const children = this.props.entry.collections || []; const nested = this.buildNestedItems(children); let fontIcon; if(icon){ fontIcon = ; } return ( ); } } NestedListItem.propTypes = { /** * Keeps track of the current depth level */ nestedLevel:PropTypes.number, /** * Currently selected node id */ selected:PropTypes.string, /** * Callback triggered when an entry is selected */ onTouchTap:PropTypes.func } export {NestedListItem as default}