React Native MantineOverlays

Drawer

Side panel with slide animation

Import: import { Drawer } from 'react-native-mantine';

Usage

import { useState } from 'react';
import { Drawer, Button, Text } from 'react-native-mantine';

const MyComponent = () => {
  const [opened, setOpened] = useState(false);

  return (
    <>
      <Button onPress={() => setOpened(true)}>
        Open Drawer
      </Button>

      <Drawer
        opened={opened}
        onClose={() => setOpened(false)}
        position="left"
        title="My Drawer"
      >
        <Text>Drawer content goes here</Text>
      </Drawer>
    </>
  );
};

Props

PropTypeDefaultDescription
opened (required)booleanDrawer opened state
onClose (required)() => voidCalled when drawer is closed
titleReact.ReactNodeDrawer title
childrenReact.ReactNodeDrawer content
sizeMantineNumberSize | number'md'Drawer size
paddingSpacingValue'md'Drawer padding
position'left' | 'right' | 'top' | 'bottom''left'Drawer position
closeOnClickOutsidebooleantrueIf true, pressing the overlay closes the drawer
withOverlaybooleantrueIf true, drawer will show overlay
overlayOpacitynumber0.6Overlay opacity
overlayColorstring'#000'Overlay color
withCloseButtonbooleantrueIf true, close button will be shown
styleanyAdditional styles
transitionDurationnumber250Animation duration in ms
zIndexnumber1000Z-index
accessibilityLabelstringAccessibility label for the drawer
testIDstringTest identifier used by testing frameworks

Source on GitHub · npm