@payfit/unity-components
Version:
54 lines (53 loc) • 2.07 kB
JavaScript
import { BottomSheetDragIndicator as e } from "./parts/BottomSheetDragIndicator.js";
import { forwardRef as t } from "react";
import { uyTv as n } from "@payfit/unity-themes";
import { jsx as r, jsxs as i } from "react/jsx-runtime";
import { Sheet as a, SheetBackdrop as o, SheetContent as s, SheetOverlay as c, SheetTrigger as l } from "react-aria-components/Sheet";
//#region src/core/components/bottom-sheet/BottomSheet.tsx
var u = n({ slots: {
overlay: [
"uy:fixed uy:inset-0 uy:z-30 uy:overflow-y-auto",
"uy:backdrop-blur-sm uy:bg-utility-backdrop/65",
"uy:data-[entering]:animate-fade-in uy:data-[exiting]:animate-fade-out"
],
wrapper: [
"uy:w-full uy:md:max-w-[50svw]",
"uy:fixed uy:bottom-0 uy:left-0 uy:right-0 uy:md:left-0 uy:md:right-0 uy:md:mx-auto uy:z-[100]",
"uy:bg-surface-neutral uy:rounded-t-200",
"uy:shadow-flying",
"uy:flex uy:flex-col uy:max-h-[95svh]",
"uy:overflow-hidden",
"uy:data-[entering]:animate-slide-up-fade-in uy:data-[exiting]:animate-slide-down-fade-out"
],
content: ["uy:flex uy:flex-col uy:h-full uy:min-h-[40svh] uy:overflow-hidden uy:outline-none"]
} }), d = t(({ children: t, isOpen: n, onOpenChange: l, defaultOpen: d, isDismissable: f = !0, isKeyboardDismissDisabled: p = !1, ...m }, h) => {
let { overlay: g, wrapper: _, content: v } = u();
return /* @__PURE__ */ i(c, {
"data-unity-component": "BottomSheet",
className: g(),
isOpen: n,
onOpenChange: l,
defaultOpen: d,
preventDismissal: !f,
children: [/* @__PURE__ */ r(o, {}), /* @__PURE__ */ r("div", {
className: "uy:contents",
onKeyDownCapture: (e) => {
!p || e.key !== "Escape" || (e.preventDefault(), e.stopPropagation());
},
children: /* @__PURE__ */ i(a, {
"data-dd-privacy": "allow",
...m,
ref: h,
className: _(),
"data-unity-bottom-sheet": !0,
children: [/* @__PURE__ */ r(e, {}), /* @__PURE__ */ r(s, {
className: v(),
children: t
})]
})
})]
});
});
d.displayName = "BottomSheet";
//#endregion
export { d as BottomSheet, l as SheetTrigger, u as bottomSheet };