UNPKG

@ariakit/react-core

Version:

Ariakit React core

34 lines (31 loc) 844 B
"use client"; // src/dialog/utils/prepend-hidden-dismiss.ts import { getDocument } from "@ariakit/core/utils/dom"; function prependHiddenDismiss(container, onClick) { const document = getDocument(container); const button = document.createElement("button"); button.type = "button"; button.tabIndex = -1; button.textContent = "Dismiss popup"; Object.assign(button.style, { border: "0px", clip: "rect(0 0 0 0)", height: "1px", margin: "-1px", overflow: "hidden", padding: "0px", position: "absolute", whiteSpace: "nowrap", width: "1px" }); button.addEventListener("click", onClick); container.prepend(button); const removeHiddenDismiss = () => { button.removeEventListener("click", onClick); button.remove(); }; return removeHiddenDismiss; } export { prependHiddenDismiss };