1
0
mirror of https://github.com/ascribe/onion.git synced 2024-06-29 00:58:03 +02:00
onion/js/components/ascribe_accordion_list/accordion_list_item.js

72 lines
2.3 KiB
JavaScript
Raw Normal View History

'use strict';
import React from 'react';
import { Link } from 'react-router';
2015-07-01 15:28:48 +02:00
2015-10-09 02:00:02 +02:00
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,
linkData: React.PropTypes.string,
children: React.PropTypes.oneOfType([
React.PropTypes.arrayOf(React.PropTypes.element),
React.PropTypes.element
])
},
render() {
2016-02-08 14:08:54 +01:00
const { badge,
buttons,
children,
className,
heading,
2016-02-08 14:08:54 +01:00
linkData,
subheading,
subsubheading,
2016-02-08 14:08:54 +01:00
thumbnail } = this.props;
return (
<div className="row">
<div className={className}>
<div className="wrapper">
2015-10-09 02:00:02 +02:00
<div className="pull-left">
<Link to={linkData}>
2015-10-09 13:14:29 +02:00
<div className="thumbnail-wrapper">
{thumbnail}
2015-10-09 13:14:29 +02:00
</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 to={linkData}>
{heading}
2015-10-09 13:14:29 +02:00
</Link>
<Link to={linkData}>
{subheading}
{subsubheading}
2015-10-09 13:14:29 +02:00
</Link>
<div className="accordion-list-item-buttons">
{buttons}
2015-10-09 13:14:29 +02:00
</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">
{badge}
2015-07-01 19:05:47 +02:00
</div>
</div>
</div>
{children}
</div>
);
}
});
export default AccordionListItem;