Mailspring/app/internal_packages/thread-list/lib/thread-list-toolbar.jsx

41 lines
952 B
JavaScript

import React, {Component} from 'react'
import PropTypes from 'prop-types'
import {MultiselectToolbar} from 'nylas-component-kit'
import InjectsToolbarButtons, {ToolbarRole} from './injects-toolbar-buttons'
class ThreadListToolbar extends Component {
static displayName = 'ThreadListToolbar';
static propTypes = {
items: PropTypes.array,
selection: PropTypes.shape({
clear: PropTypes.func,
}),
injectedButtons: PropTypes.element,
};
onClearSelection = () => {
this.props.selection.clear()
};
render() {
const {injectedButtons, items} = this.props
return (
<MultiselectToolbar
collection="thread"
selectionCount={items.length}
toolbarElement={injectedButtons}
onClearSelection={this.onClearSelection}
/>
)
}
}
const toolbarProps = {
extraRoles: [`ThreadList:${ToolbarRole}`],
}
export default InjectsToolbarButtons(ThreadListToolbar, toolbarProps)