UNPKG

@primer/react

Version:

An implementation of GitHub's Primer Design System using React

52 lines (49 loc) 1.4 kB
import { XIcon } from '@primer/octicons-react'; import { clsx } from 'clsx'; import { defaultTokenSize } from './TokenBase.js'; import classes from './_RemoveTokenButton.module.css.js'; import { jsx } from 'react/jsx-runtime'; const RemoveTokenButton = ({ 'aria-label': ariaLabel, isParentInteractive, size = defaultTokenSize, className, borderOffset = 0, as: _as, children: _children, ...rest }) => { if (isParentInteractive) { return /*#__PURE__*/jsx("span", { ...rest, tabIndex: -1, "aria-label": ariaLabel, "data-size": size, className: clsx(classes.TokenButton, className), style: { transform: `translate(${borderOffset}px, -${borderOffset}px)` }, children: /*#__PURE__*/jsx(XIcon, { size: size === 'small' || size === 'medium' ? 12 : 16 }) }); } return /*#__PURE__*/jsx("button", { ...rest, "aria-label": 'Remove token', "data-size": size, className: clsx(classes.TokenButton, className), style: { transform: `translate(${borderOffset}px, -${borderOffset}px)` } // eslint-disable-next-line react-hooks/refs , ref: rest.ref, type: "button", children: /*#__PURE__*/jsx(XIcon, { size: size === 'small' || size === 'medium' ? 12 : 16 }) }); }; RemoveTokenButton.displayName = "RemoveTokenButton"; export { RemoveTokenButton as default };