Sha256: 6dd798aa2021af165e281d681b62bb11f723263dec70c193d492bf032dc1f9be

Contents?: true

Size: 1.36 KB

Versions: 164

Compression:

Stored size: 1.36 KB

Contents

/* @flow */

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

import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'

import { globalProps } from '../utilities/globalProps'

type ButtonToolbarProps = {
  aria?: {[key: string]: string},
  children?: React.ReactChild[] | React.ReactChild,
  className?: string,
  connected?: boolean,
  data?: {[key: string]: string},
  htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
  id?: string,
  onClick?: React.MouseEventHandler<HTMLSpanElement>,
  orientation?: "horizontal" | "vertical",
  text?: string,
 variant?: "primary" | "secondary",
}

const ButtonToolbar  = (props: ButtonToolbarProps): React.ReactElement => {
  const {
    aria = {},
    children,
    className,
    data = {},
    htmlOptions = {},
    id,
    orientation = 'horizontal',
    text,
    variant = 'primary',
  } = props

  const ariaProps = buildAriaProps(aria)
  const dataProps = buildDataProps(data)
  const htmlProps = buildHtmlProps(htmlOptions)

  const classes = classnames(
    buildCss('pb_button_toolbar_kit', orientation, variant),
    globalProps(props),
    className
  )

  return (
    <div
        {...ariaProps}
        {...dataProps}
        {...htmlProps}
        className={classes}
        id={id}
    >
      {children || text}
    </div>
  )
}

export default ButtonToolbar

Version data entries

164 entries across 164 versions & 1 rubygems

Version Path
playbook_ui-13.34.1.pre.alpha.play1407statvaluekitinconsistencies3388 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.34.1.pre.alpha.PLAY14703378 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.34.1 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.34.0.pre.alpha.PBNTR358responsiveadvancedtablereact3370 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.34.0.pre.alpha.PBNTR358responsiveadvancedtablereact3369 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.34.0.pre.alpha.PBNTR358responsiveadvancedtablereact3368 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.34.0.pre.alpha.PBNTR358responsiveadvancedtablereact3366 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.34.0 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.33.1.pre.alpha.play1407statvaluekitinconsistencies3352 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.33.1.pre.alpha.PLAY14063320 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.33.1 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.33.0.pre.alpha.PBNTR405dropdownformfixesrails3311 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.33.0.pre.alpha.PLAY1454formpillicons3309 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.33.0 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.32.0.pre.alpha.PBNTR405dropdownformfixesrails3301 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.32.0.pre.alpha.PLAY1138iconkitaddcolorprop3268 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.32.0.pre.alpha.play1416movealiaslogic3266 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.32.0.pre.alpha.PLAY14143255 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.32.0.pre.alpha.PLAY14143251 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-13.32.0.pre.alpha.play1416movealiaslogic3239 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx