@ariakit/react-core
Version:
Ariakit React core
34 lines (31 loc) • 844 B
JavaScript
"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
};