(function() { var resolve = pageflow.react.resolve; class TimelineItem extends React.Component { render() { var {PageLink, LazyLoadedPageThumbnail} = pageflow.react.components; var {TimelineItemSpacer} = pageflow.timelinePage; var targetPage = this.props.pageLink.targetPage; return (
  • {this.props.pageLink.tagline} {this.caption()}
  • ); } className() { return [ 'timeline_item', 'position_' + (this.props.pageLink.timelineItemPosition || 'left'), 'alignment_' + this.alignment(), this.props.pageLink.timelineItemSize || 'medium' ].join(' '); } alignment() { var position = this.props.pageLink.timelineItemPosition; if (this.props.timelineLayout === 'right') { return 'right'; } else if (this.props.timelineLayout === 'left') { return 'left'; } else if (this.props.timelineLayout === 'margin') { return position === 'right' ? 'right' : 'left'; } else { return position === 'right' ? 'left' : 'right'; } } caption() { return this.props.pageLink.title || (this.props.pageLink.targetPage && this.props.pageLink.targetPage.title); } }; pageflow.timelinePage.TimelineItem = pageflow.react.createContainer(TimelineItem, { fragments: { pageLink: { targetPage: resolve('page', { property: 'targetPageId' }) } } }); }());