UNPKG

react-awesome-slider-fw

Version:
35 lines (31 loc) 832 B
import React, { Component } from 'react'; import PropTypes from 'prop-types'; export default function CaptionedHoc(WrappedComponent) { return class extends Component { static propTypes = { screens: PropTypes.array.isRequired, }; renderScreens() { return this.props.screens.map((screen, index) => ( <div key={`${this.props.name}-screen-${index}`} data-src={screen.media} style={{ backgroundColor: screen.backgroundColor, }} > <div data-type="caption"> <p>{screen.caption}</p> </div> </div> )); } render() { return ( <WrappedComponent {...this.props}> {this.renderScreens()} </WrappedComponent> ); } }; }