Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
Size: Mime:
import React from 'react'
import { ProductItemProps } from './typings'
import { productItemData as productDetails } from './fixture'
import {
  defaultRenderImage,
  defaultRenderTitle,
  defaultRenderPrice,
  defaultRenderOfferInfo,
  defaultRenderRatings,
  defaultRenderAddToCartButton,
  defaultRenderFavouriteButton,
  defaultRenderTemplate,
  defaultRenderWrapper,
} from './renderProps'

class ProductItem extends React.Component<ProductItemProps> {
  static defaultProps = {
    className: '',
    productItemData: productDetails,

    /**
     * render props
     */
    renderImage: defaultRenderImage,
    renderTitle: defaultRenderTitle,
    renderPrice: defaultRenderPrice,
    renderOfferInfo: defaultRenderOfferInfo,
    renderRatings: defaultRenderRatings,
    renderAddToCartButton: defaultRenderAddToCartButton,
    renderFavouriteButton: defaultRenderFavouriteButton,
    renderWrapper: defaultRenderWrapper,
  }
  render() {
    const { renderWrapper, ...remainingProps } = this.props
    const children = defaultRenderTemplate(remainingProps)
    return renderWrapper({ children, remainingProps })
  }
}

export { ProductItem }
export default ProductItem