UNPKG

@workday/canvas-kit-react

Version:

The parent module that contains all Workday Canvas Kit React components

20 lines (19 loc) 1.15 kB
import * as React from 'react'; import { BaseButton } from './BaseButton'; import { createComponent } from '@workday/canvas-kit-react/common'; export const Button = createComponent('button')({ displayName: 'Button', Component: ({ children, icon, colors, iconPosition, shouldMirrorIcon, size = 'medium', ...elemProps }, ref, Element) => { const baseIconPosition = iconPosition ? iconPosition : icon ? children ? 'start' : 'only' : undefined; return (React.createElement(BaseButton, { as: Element, ref: ref, size: size, icon: icon, colors: colors, iconPosition: baseIconPosition, ...elemProps }, icon && baseIconPosition === 'start' && (React.createElement(BaseButton.Icon, { size: size, icon: icon, shouldMirrorIcon: shouldMirrorIcon })), children && React.createElement(BaseButton.Label, null, children), icon && baseIconPosition && ['only', 'end'].includes(baseIconPosition) && (React.createElement(BaseButton.Icon, { size: size, icon: icon, shouldMirrorIcon: shouldMirrorIcon })))); }, });