Sha256: 54c25425bbbd21e7d619b2cfae0ab801390a3ec1d7542b9d7749a155650de7c8

Contents?: true

Size: 829 Bytes

Versions: 11

Compression:

Stored size: 829 Bytes

Contents

/* @flow */

import React from 'react'

type CardPropTypes = {
  children: Array<React.ReactNode> | React.ReactNode,
  padding?: 'none' | 'xs' | 'sm' | 'md' | 'lg' | 'xl',
  selected?: Boolean,
  shadow?: 'none' | 'shallow' | 'default' | 'deep' | 'deeper' | 'deepest',
}

const cardCSS = ({
  selected=false,
  shadow='none',
}: CardPropTypes) => {
  let css = ''
  css += selected ? '_selected' : '_deselected'
  css += `_shadow_${shadow}`
  return css
}

const bodyCSS = ({padding='md'}: CardPropTypes) => {
  let css = ''
  css += `_${padding}`
  return css
}

const Card = (props: CardPropTypes) => {
  const {children} = props

  return (
    <div className={`pb_card_kit${cardCSS(props)}`}>
      <div className={`pb_card_body_kit${bodyCSS(props)}`}>
        { children }
      </div>
    </div>
  )
}

export default Card

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
playbook_ui-2.9.8 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.7 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.6 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.5 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.4 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.3 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.2 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.1 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.9.0 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.8.9 app/pb_kits/playbook/pb_card/_card.jsx
playbook_ui-2.8.8 app/pb_kits/playbook/pb_card/_card.jsx