UNPKG

@primer/react

Version:

An implementation of GitHub's Primer Design System using React

72 lines (71 loc) 1.89 kB
import { useMergedRefs } from "../hooks/useMergedRefs.js"; import { useDevOnlyEffect } from "../internal/hooks/useDevOnlyEffect.js"; import Heading_module_css_default from "./Heading.module.css.js"; import { c } from "react-compiler-runtime"; import { clsx } from "clsx"; import { jsx } from "react/jsx-runtime"; import React, { forwardRef } from "react"; //#region src/Heading/Heading.tsx const Heading = /*#__PURE__*/ forwardRef((t0, forwardedRef) => { const $ = c(15); let className; let props; let t1; let variant; if ($[0] !== t0) { ({as: t1, className, variant, ...props} = t0); $[0] = t0; $[1] = className; $[2] = props; $[3] = t1; $[4] = variant; } else { className = $[1]; props = $[2]; t1 = $[3]; variant = $[4]; } const Component = t1 === void 0 ? "h2" : t1; const innerRef = React.useRef(null); const mergedRef = useMergedRefs(forwardedRef, innerRef); let t2; let t3; if ($[5] === Symbol.for("react.memo_cache_sentinel")) { t2 = () => { if (innerRef.current && !(innerRef.current instanceof HTMLHeadingElement)) console.warn("This Heading component should be an instanceof of h1-h6"); }; t3 = [innerRef]; $[5] = t2; $[6] = t3; } else { t2 = $[5]; t3 = $[6]; } useDevOnlyEffect(t2, t3); let t4; if ($[7] !== className) { t4 = clsx(className, Heading_module_css_default.Heading); $[7] = className; $[8] = t4; } else t4 = $[8]; let t5; if ($[9] !== Component || $[10] !== mergedRef || $[11] !== props || $[12] !== t4 || $[13] !== variant) { t5 = /*#__PURE__*/ jsx(Component, { className: t4, "data-variant": variant, "data-component": "Heading", ...props, ref: mergedRef }); $[9] = Component; $[10] = mergedRef; $[11] = props; $[12] = t4; $[13] = variant; $[14] = t5; } else t5 = $[14]; return t5; }); Heading.displayName = "Heading"; //#endregion export { Heading as default };