@veracity/vui
Version:
Veracity UI is a React component library crafted for use within Veracity applications and pages. Based on Styled Components and @xstyled.
37 lines (35 loc) • 1.28 kB
JavaScript
import colors_default from "../theme/foundations/colors.js";
import { HSLToRGBA, cs, parseHSL } from "../utils/styles.js";
import { useStyleConfig } from "../core/theme.js";
import styled from "../core/styled.js";
import vui from "../core/vui.js";
import { useModalContext } from "./context.js";
import { jsx } from "react/jsx-runtime";
//#region src/modal/modalBackdrop.tsx
const { h, s, l } = parseHSL(colors_default.sandstone[5]);
const rgba = HSLToRGBA(h, s, l, .6);
const ModalBackdropBase = styled.divBox`
background-color: ${rgba};
inset: 0;
position: fixed;
z-index: 1399;
`;
/** Displays a dark overlay underneath modal content, but on top of page content. */
const ModalBackdrop = vui((props, ref) => {
const { className, ...rest } = props;
const context = useModalContext();
const styles = useStyleConfig("Modal", context);
return /* @__PURE__ */ jsx(ModalBackdropBase, {
animation: "fadeIn",
className: cs("vui-modalBackdrop", className),
style: { zIndex: context.backdropZIndex ?? 1399 },
ref,
...styles.backdrop,
...rest
});
});
ModalBackdrop.displayName = "ModalBackdrop";
//#endregion
export { ModalBackdrop, ModalBackdrop as default, ModalBackdropBase };
globalThis.__vuiVersion__ = "5.3.1"
//# sourceMappingURL=modalBackdrop.js.map