UNPKG

@ariakit/react-core

Version:

Ariakit React core

47 lines (33 loc) 1.36 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); var _JLMLKTUBcjs = require('./JLMLKTUB.cjs'); var _WBFXWJUHcjs = require('./WBFXWJUH.cjs'); var _MZ2HG624cjs = require('./MZ2HG624.cjs'); // src/heading/heading.tsx var _react = require('react'); var _jsxruntime = require('react/jsx-runtime'); var TagName = "h1"; var useHeading = _WBFXWJUHcjs.createHook.call(void 0, function useHeading2(props) { const ref = _react.useRef.call(void 0, null); const level = _react.useContext.call(void 0, _JLMLKTUBcjs.HeadingContext) || 1; const Element = `h${level}`; const tagName = _MZ2HG624cjs.useTagName.call(void 0, ref, Element); const isNativeHeading = _react.useMemo.call(void 0, () => !!tagName && /^h\d$/.test(tagName), [tagName] ); props = { render: /* @__PURE__ */ _jsxruntime.jsx.call(void 0, Element, {}), role: !isNativeHeading ? "heading" : void 0, "aria-level": !isNativeHeading ? level : void 0, ...props, ref: _MZ2HG624cjs.useMergeRefs.call(void 0, ref, props.ref) }; return props; } ); var Heading = _WBFXWJUHcjs.forwardRef.call(void 0, function Heading2(props) { const htmlProps = useHeading(props); return _WBFXWJUHcjs.createElement.call(void 0, TagName, htmlProps); }); exports.useHeading = useHeading; exports.Heading = Heading;