@primer/react
Version:
An implementation of GitHub's Primer Design System using React
38 lines (35 loc) • 1.51 kB
JavaScript
import { clsx } from 'clsx';
import React, { forwardRef } from 'react';
import { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden.js';
import { defaultSxProp } from '../utils/defaultSxProp.js';
import Box from '../Box/Box.js';
import classes from './CounterLabel.module.css.js';
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
const CounterLabel = /*#__PURE__*/forwardRef(({
scheme = 'secondary',
sx = defaultSxProp,
className,
children,
...rest
}, forwardedRef) => {
const label = /*#__PURE__*/React.createElement(VisuallyHidden, null, "\xA0(", children, ")");
const counterProps = {
ref: forwardedRef,
['aria-hidden']: 'true',
['data-scheme']: scheme,
...rest
};
if (sx !== defaultSxProp) {
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Box, _extends({
as: "span"
}, counterProps, {
className: clsx(className, classes.CounterLabel),
sx: sx
}), children), label);
}
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("span", _extends({}, counterProps, {
className: clsx(className, classes.CounterLabel)
}), children), label);
});
CounterLabel.displayName = 'CounterLabel';
export { CounterLabel as default };