@ariakit/react-core
Version:
Ariakit React core
50 lines (47 loc) • 1.14 kB
JavaScript
"use client";
import {
useHeading
} from "./MHSXKWXY.js";
import {
DialogHeadingContext
} from "./T2AZQXQU.js";
import {
createElement,
createHook,
forwardRef
} from "./VOQWLFSQ.js";
import {
useId,
useSafeLayoutEffect
} from "./5GGHRIN3.js";
import {
__objRest,
__spreadValues
} from "./3YLGPPWQ.js";
// src/dialog/dialog-heading.tsx
import { useContext } from "react";
var TagName = "h1";
var useDialogHeading = createHook(
function useDialogHeading2(_a) {
var _b = _a, { store } = _b, props = __objRest(_b, ["store"]);
const setHeadingId = useContext(DialogHeadingContext);
const id = useId(props.id);
useSafeLayoutEffect(() => {
setHeadingId == null ? void 0 : setHeadingId(id);
return () => setHeadingId == null ? void 0 : setHeadingId(void 0);
}, [setHeadingId, id]);
props = __spreadValues({
id
}, props);
props = useHeading(props);
return props;
}
);
var DialogHeading = forwardRef(function DialogHeading2(props) {
const htmlProps = useDialogHeading(props);
return createElement(TagName, htmlProps);
});
export {
useDialogHeading,
DialogHeading
};