@crossed/primitive
Version:
A universal & performant styling library for React Native, Next.js & React
24 lines (23 loc) • 687 B
JavaScript
import { jsx } from "react/jsx-runtime";
import { useUncontrolled } from "@crossed/core";
import { forwardRef, useId } from "react";
import { Provider } from "./context";
const createSheetMain = (Styled) => forwardRef((props, ref) => {
const {
open: openProps,
defaultOpen = false,
onChangeOpen,
...otherProps
} = props;
const [open, setOpen] = useUncontrolled({
value: openProps,
defaultValue: defaultOpen,
onChange: onChangeOpen
});
const id = useId();
return /* @__PURE__ */ jsx(Provider, { open, setOpen, id, children: /* @__PURE__ */ jsx(Styled, { ...otherProps, ref }) });
});
export {
createSheetMain
};
//# sourceMappingURL=Sheet.js.map