@ariakit/react-core
Version:
Ariakit React core
47 lines (33 loc) • 1.36 kB
JavaScript
;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;