Sha256: 88daa1a8160460cff68568eadb8221e1816a3e48697125b045a1568ae51e0f10

Contents?: true

Size: 1.31 KB

Versions: 644

Compression:

Stored size: 1.31 KB

Contents

import React from 'react'
import classnames from 'classnames'

import { globalProps } from '../utilities/globalProps'
import { buildHtmlProps } from '../utilities/props'
import Title from '../pb_title/_title'

type StatValueProps = {
  className?: string,
  htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
  id?: string,
  unit?: string,
  value: string | number,
}

const StatValue = (props: StatValueProps): React.ReactElement => {
  const {
    className,
    htmlOptions = {},
    id,
    unit,
    value = 0,
  } = props

  const htmlProps = buildHtmlProps(htmlOptions)

  const displayValue = function(value: string | number) {
    if (value || value === 0) {
      return (
        <Title
            size={1}
            tag="span"
            text={`${value}`}
        />
      )
    }
  }

  const displayUnit = function(unit: string) {
    if (unit) {
      return (
        <Title
            size={3}
            tag="span"
            text={unit}
        />
      )
    }
  }

  return (
    <div
        className={classnames('pb_stat_value_kit', globalProps(props), className)}
        id={id}
        {...htmlProps}
    >
      <div className="pb_stat_value_wrapper">
        {displayValue(value)}
        &nbsp;
        {displayUnit(unit)}
      </div>
    </div>
  )
}

export default StatValue

Version data entries

644 entries across 644 versions & 1 rubygems

Version Path
playbook_ui-14.11.1.pre.alpha.PLAY17445539 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PBNTR798datepickerturbo5537 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.pbntr703collapsiblerowsrails5536 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PLAY1751pbcontenttagpt25529 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PBNTR7495495 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.12.0.pre.rc.11 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.12.0.pre.rc.10 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.12.0.pre.rc.9 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.12.0.pre.rc.8 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.12.0.pre.rc.7 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.play1724darkmodeauditmap5437 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PBNTR719listdraggablesimple5432 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PBNTR768stickyrightcolumn5431 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.12.0.pre.rc.6 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PBNTR718simiplifieddraggablereact5415 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.play1724darkmodeauditmap5413 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.12.0.pre.rc.5 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.play1724darkmodeauditmap5409 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PBNTR718simiplifieddraggablereact5400 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx
playbook_ui-14.11.1.pre.alpha.PBNTR718simiplifieddraggablereact5392 app/pb_kits/playbook/pb_stat_value/_stat_value.tsx