Sha256: 5a1973fd344d5f915efbe1b523e250adcdba2ceae55fd4665e2d61b846d8cde4

Contents?: true

Size: 1.13 KB

Versions: 1

Compression:

Stored size: 1.13 KB

Contents

import React from 'react'

import { Caption, TitleCount } from 'playbook-ui'

const resultsText = (results: number): string => results == 1 ? 'Result' : 'Results'

type ResultsCountProps = {
  dark?: boolean,
  results?: number | null,
  title?: boolean,
}
const ResultsCount = ({ dark, results, title }: ResultsCountProps): React.ReactElement => {
  
  const resultTitle = () => {
    return (
      <TitleCount
          align="center"
          count={results}
          dark={dark}
          title={`${resultsText(results)}:`}
      />
    )
  }

  const justResults = () => {
    return (
      <Caption
          className="filter-results"
          dark={dark}
          size="xs"
          text={`${results} ${resultsText(results)}`}
      />
    )
  }

  const displayResultsCount = () => {
    if (results && title) {
      return (
        <>
          {resultTitle()}
        </>
      )
    } else if (results) {
      return (
        <>
          {justResults()}
        </>
      )
    } else {
      return (
        <div />
      )
    }
  }
  
  return (
    <>
      {displayResultsCount()}
    </>
  )
}

export default ResultsCount

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
playbook_ui-13.33.0.pre.alpha.PLAY14143305 app/pb_kits/playbook/pb_filter/Filter/ResultsCount.tsx