1
0
mirror of https://github.com/ascribe/onion.git synced 2024-06-30 21:52:08 +02:00
onion/js/components/ascribe_accordion_list/accordion_list_item.js

66 lines
2.2 KiB
JavaScript
Raw Normal View History

'use strict';
import React from 'react';
2015-07-01 15:28:48 +02:00
import Router from 'react-router';
2015-10-09 02:00:02 +02:00
let Link = Router.Link;
let AccordionListItem = React.createClass({
propTypes: {
badge: React.PropTypes.object,
className: React.PropTypes.string,
thumbnail: React.PropTypes.object,
heading: React.PropTypes.object,
subheading: React.PropTypes.object,
subsubheading: React.PropTypes.object,
buttons: React.PropTypes.object,
2015-10-09 02:00:02 +02:00
linkData: React.PropTypes.func,
children: React.PropTypes.oneOfType([
React.PropTypes.arrayOf(React.PropTypes.element),
React.PropTypes.element
])
},
mixins: [Router.Navigation],
render() {
return (
<div className="row">
<div className={this.props.className}>
<div className="wrapper">
2015-10-09 02:00:02 +02:00
<div className="pull-left">
2015-10-09 13:14:29 +02:00
<Link {...this.props.linkData()}>
<div className="thumbnail-wrapper">
{this.props.thumbnail}
</div>
</Link>
2015-07-01 13:54:58 +02:00
</div>
2015-10-09 13:14:29 +02:00
<div className="accordion-list-item-header">
<Link {...this.props.linkData()}>
{this.props.heading}
</Link>
<Link {...this.props.linkData()}>
{this.props.subheading}
{this.props.subsubheading}
</Link>
<div className="accordion-list-item-buttons">
{this.props.buttons}
</div>
2015-10-09 02:00:02 +02:00
</div>
2015-10-09 13:14:29 +02:00
<span style={{'clear': 'both'}}></span>
<div className="request-action-badge">
{this.props.badge}
2015-07-01 19:05:47 +02:00
</div>
</div>
</div>
{this.props.children}
</div>
);
}
});
export default AccordionListItem;