@bigfishtv/cockpit
Version:
48 lines (46 loc) • 1.14 kB
JavaScript
import React, { Component } from 'react'
import classnames from 'classnames'
import Icon from '../Icon'
/**
* Default tree cell used for asset folders
*/
export default class TreeCell extends Component {
render() {
const {
title,
locked,
isCollapsed,
showIndicator,
onIndicatorClick,
onIndicatorDoubleClick,
isOver,
position,
onClick,
onDoubleClick,
selected,
} = this.props
return (
<div className={classnames('tree-item', isOver && 'drag-' + position)}>
<div
className={classnames('tree-cell tree-cell-small', { selected: selected })}
onClick={onClick}
onDoubleClick={onDoubleClick}>
{showIndicator && (
<div
className={classnames('tree-cell-icon', isCollapsed && 'collapsed')}
onClick={onIndicatorClick}
onDoubleClick={onIndicatorDoubleClick}>
<Icon name={'chevron-' + (isCollapsed ? 'right' : 'down')} size={18} />
</div>
)}
{locked && (
<div className="tree-cell-icon">
<Icon name="lock" size={12} />
</div>
)}
<div className="tree-cell-title">{title}</div>
</div>
</div>
)
}
}