2016-12-21 11:24:32 +01:00
|
|
|
import React from 'react'
|
2017-11-06 16:32:04 +01:00
|
|
|
import PropTypes from 'prop-types'
|
2016-12-22 11:52:21 +01:00
|
|
|
import Collapse from 'react-collapse'
|
2017-01-11 17:52:21 +01:00
|
|
|
import Collapser from './Collapser'
|
2016-12-21 11:24:32 +01:00
|
|
|
|
|
|
|
export default class LayerEditorGroup extends React.Component {
|
|
|
|
static propTypes = {
|
2017-11-06 16:32:04 +01:00
|
|
|
title: PropTypes.string.isRequired,
|
|
|
|
isActive: PropTypes.bool.isRequired,
|
|
|
|
children: PropTypes.element.isRequired,
|
|
|
|
onActiveToggle: PropTypes.func.isRequired
|
2016-12-21 11:24:32 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
render() {
|
2016-12-21 11:27:49 +01:00
|
|
|
return <div>
|
2017-01-10 21:28:30 +01:00
|
|
|
<div className="maputnik-layer-editor-group"
|
2016-12-21 11:27:49 +01:00
|
|
|
onClick={e => this.props.onActiveToggle(!this.props.isActive)}
|
|
|
|
>
|
2016-12-21 11:24:32 +01:00
|
|
|
<span>{this.props.title}</span>
|
|
|
|
<span style={{flexGrow: 1}} />
|
|
|
|
<Collapser isCollapsed={this.props.isActive} />
|
|
|
|
</div>
|
2016-12-22 12:06:04 +01:00
|
|
|
<Collapse isOpened={this.props.isActive}>
|
|
|
|
{this.props.children}
|
|
|
|
</Collapse>
|
2016-12-21 11:24:32 +01:00
|
|
|
</div>
|
|
|
|
}
|
|
|
|
}
|