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 { observer } from 'xmobx/mobx-react'
import { ProductItemListProps } from './typings'
import {
  defaultRenderProductItem,
  defaultRenderProductItemList,
  defaultRenderProductListWrapper,
  defaultRenderProductListContainer,
} from './renderProps'

@observer
class ProductItemList extends React.Component<ProductItemListProps> {
  static defaultProps = {
    className: '',
    list: [{}, {}, {}],
    renderProductItem: defaultRenderProductItem,
    renderProductItemList: defaultRenderProductItemList,
    renderProductListWrapper: defaultRenderProductListWrapper,
    renderProductListContainer: defaultRenderProductListContainer,
  }

  render() {
    const {
      renderProductListWrapper,
      renderProductListContainer,
      ...remainingProps
    } = this.props

    const hasSingleProduct = (this.props.list.length === 1 ? true : false)
    const children = renderProductListContainer({ hasSingleProduct, ...remainingProps })
    const view = renderProductListWrapper({ ...remainingProps, children })
    return view
  }
}

export { ProductItemList }
export default ProductItemList