Sha256: ce1590354e06c98aec2837ab952ec1bc056515ef0f3bf68fcb7716b021165b10

Contents?: true

Size: 1.35 KB

Versions: 480

Compression:

Stored size: 1.35 KB

Contents

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

480 entries across 480 versions & 1 rubygems

Version Path
playbook_ui-14.10.0.pre.rc.23 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.22 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.21 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.play1703errorstatealignment5060 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.20 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.19 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.18 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.PLAY1660reactdropzone5020 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.17 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.16 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.play17004992 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.play1703errorstatealignment4991 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.15 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.PLAY16264952 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.PLAY1731inputmasking4927 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.play1742globalheightfixes4926 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.play1742globalheightfixes4925 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.14 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.10.0.pre.rc.13 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx
playbook_ui-14.9.0.pre.alpha.PBNTR746datepickerdefaultbug4903 app/pb_kits/playbook/pb_button_toolbar/_button_toolbar.tsx