@primer/react
Version:
An implementation of GitHub's Primer Design System using React
99 lines (98 loc) • 2.27 kB
JavaScript
import Octicon from "../Octicon/Octicon.js";
import isNumeric from "../utils/isNumeric.js";
import CircleBadge_module_css_default from "./CircleBadge.module.css.js";
import { c } from "react-compiler-runtime";
import { clsx } from "clsx";
import { jsx } from "react/jsx-runtime";
//#region src/CircleBadge/CircleBadge.tsx
const variantSizes = {
small: 56,
medium: 96,
large: 128
};
const sizeStyles = ({ size, variant = "medium" }) => {
const calc = isNumeric(size) ? size : variantSizes[variant];
return {
width: calc,
height: calc
};
};
const CircleBadge = (t0) => {
const $ = c(14);
let T0;
let t1;
let t2;
let t3;
let t4;
let t5;
if ($[0] !== t0) {
const { as: t6, inline, ...props } = t0;
T0 = t6 === void 0 ? "div" : t6;
t1 = props;
t2 = "CircleBadge";
t3 = clsx(CircleBadge_module_css_default.CircleBadge, props.className);
t4 = inline ? "" : void 0;
t5 = sizeStyles(props);
$[0] = t0;
$[1] = T0;
$[2] = t1;
$[3] = t2;
$[4] = t3;
$[5] = t4;
$[6] = t5;
} else {
T0 = $[1];
t1 = $[2];
t2 = $[3];
t3 = $[4];
t4 = $[5];
t5 = $[6];
}
let t6;
if ($[7] !== T0 || $[8] !== t1 || $[9] !== t2 || $[10] !== t3 || $[11] !== t4 || $[12] !== t5) {
t6 = /*#__PURE__*/ jsx(T0, {
...t1,
"data-component": t2,
className: t3,
"data-inline": t4,
style: t5
});
$[7] = T0;
$[8] = t1;
$[9] = t2;
$[10] = t3;
$[11] = t4;
$[12] = t5;
$[13] = t6;
} else t6 = $[13];
return t6;
};
const CircleBadgeIcon = (props) => {
const $ = c(5);
let t0;
if ($[0] !== props.className) {
t0 = clsx(CircleBadge_module_css_default.CircleBadgeIcon, props.className);
$[0] = props.className;
$[1] = t0;
} else t0 = $[1];
let t1;
if ($[2] !== props || $[3] !== t0) {
t1 = /*#__PURE__*/ jsx(Octicon, {
...props,
"data-component": "CircleBadge.Icon",
className: t0
});
$[2] = props;
$[3] = t0;
$[4] = t1;
} else t1 = $[4];
return t1;
};
CircleBadgeIcon.displayName = "CircleBadge.Icon";
/**
* @deprecated This component is deprecated.
* Replace component with specific icon imports from `@primer/octicons-react` and customized styling.
*/
var CircleBadge_default = Object.assign(CircleBadge, { Icon: CircleBadgeIcon });
//#endregion
export { CircleBadge_default as default };