@ariakit/react-core
Version:
Ariakit React core
45 lines (42 loc) • 1.19 kB
JavaScript
"use client";
import {
DialogDescriptionContext
} 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-description.tsx
import { removeUndefinedValues } from "@ariakit/core/utils/misc";
import { useContext } from "react";
var TagName = "p";
var useDialogDescription = createHook(function useDialogDescription2(_a) {
var _b = _a, { store } = _b, props = __objRest(_b, ["store"]);
const setDescriptionId = useContext(DialogDescriptionContext);
const id = useId(props.id);
useSafeLayoutEffect(() => {
setDescriptionId == null ? void 0 : setDescriptionId(id);
return () => setDescriptionId == null ? void 0 : setDescriptionId(void 0);
}, [setDescriptionId, id]);
props = __spreadValues({
id
}, props);
return removeUndefinedValues(props);
});
var DialogDescription = forwardRef(function DialogDescription2(props) {
const htmlProps = useDialogDescription(props);
return createElement(TagName, htmlProps);
});
export {
useDialogDescription,
DialogDescription
};