@kubit-ui-web/react-components
Version:
Kubit React Components is a customizable, accessible library of React web components, designed to enhance your application's user experience
28 lines • 1.2 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import React from 'react';
import { DrawerControlled } from './drawerControlled';
const DrawerUnControlledComponent = ({ defaultOpen = true, closeIcon, popover, onOpenClose, ...props }, ref) => {
const [open, setOpen] = React.useState(defaultOpen);
// Popover could close when pressing scape or clicking outside
const handleCloseDrawer = () => {
setOpen(prevOpen => {
if (prevOpen) {
onOpenClose?.(false);
}
return false;
});
};
const handleCloseIconClick = e => {
handleCloseDrawer();
closeIcon?.onClick?.(e);
};
const handlePopoverCloseInternally = () => {
handleCloseDrawer();
popover?.onCloseInternally?.();
};
return (_jsx(DrawerControlled, { ...props, ref: ref, closeIcon: { ...closeIcon, onClick: handleCloseIconClick }, open: open, popover: { ...popover, onCloseInternally: handlePopoverCloseInternally } }));
};
const DrawerUnControlled = React.forwardRef(DrawerUnControlledComponent);
export { DrawerUnControlled };
export { DrawerUnControlled as Drawer };
//# sourceMappingURL=drawerUnControlled.js.map