import React, { PropTypes } from 'react' import FolderRow from './FolderRow' import linkState from 'boost/linkState' import { createFolder } from 'boost/actions' export default class FolderSettingTab extends React.Component { constructor (props) { super(props) this.state = { name: '' } } handleSaveButtonClick (e) { this.setState({alert: null}, () => { if (this.state.name.trim().length === 0) return false let { dispatch } = this.props try { dispatch(createFolder({ name: this.state.name })) } catch (e) { this.setState({alert: { type: 'error', message: e.message }}) return } this.setState({name: ''}) }) } setAlert (alert, cb) { this.setState({alert: alert}, cb) } render () { let { folders } = this.props let folderElements = folders.map((folder, index) => { return ( this.setAlert(alert, cb)} /> ) }) let alert = this.state.alert let alertElement = alert != null ? (

{alert.message}

) : null return (
Manage folder
Folder
Edit/Delete
{folderElements}
{alertElement}
) } } FolderSettingTab.propTypes = { folders: PropTypes.array, dispatch: PropTypes.func } FolderSettingTab.prototype.linkState = linkState