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    
@skava/ui / src / components / abstractions / BundleCollection / BundleCollection.tsx
Size: Mime:
import React from 'react'
import { BundleCollectionProps } from './typings'
import {
  defaultRenderProduct,
  defaultRenderOptions,
  defaultRenderDescription,
  defaultRenderRating,
  defaultRenderQuantity,
  defaultRenderButton,
  defaultRenderWrapper,
  defaultRenderBox,
} from './renderProps'

class BundleCollection extends React.PureComponent<BundleCollectionProps> {
  static defaultProps = {
    className: '',

    // renderProps
    renderProduct: defaultRenderProduct,
    renderOptions: defaultRenderOptions,
    renderDescription: defaultRenderDescription,
    renderRating: defaultRenderRating,
    renderQuantity: defaultRenderQuantity,
    renderButton: defaultRenderButton,
    renderBox: defaultRenderBox,
    renderWrapper: defaultRenderWrapper,
  }
  render() {
    const { renderWrapper, renderBox, ...remainingProps } = this.props
    const children = renderBox(remainingProps)
    const view = renderWrapper({ children, ...remainingProps })
    return view
  }
}

export { BundleCollection }
export default BundleCollection