Divider
Divider
Thin separator for lists, toolbars, and stacked layouts.
Usage
Use `mode` to switch between horizontal rules and vertical rules.
Highlights
- Horizontal by default
- Shared tokens for both orientations
When to use it
- Separate list rows or settings sections.
- Split inline actions in an Appbar or toolbar.
Examples
Horizontal (default)
Preview (Web)
import { View } from 'react-native'; import { Divider } from 'react-native-molecules/components/Divider'; import { Text } from 'react-native-molecules/components/Text'; export default function Example() { return ( <View> <Text>Above</Text> <Divider spacing={10} /> <Text>Below</Text> </View> ); }
Vertical
Preview (Web)
import { StyleSheet, View } from 'react-native'; import { Divider } from 'react-native-molecules/components/Divider'; import { Text } from 'react-native-molecules/components/Text'; const styles = StyleSheet.create({ container: { flexDirection: 'row', gap: 12, }, }); export default function Example() { return ( <View style={styles.container}> <Text>Left</Text> <Divider mode="vertical" bold spacing={10} /> <Text>Right</Text> </View> ); }
| Prop | Type | Default | Description |
|---|---|---|---|
hitSlop | number | Insets | null | undefined | — | — |
id | string | undefined | — | — |
needsOffscreenAlphaCompositing | boolean | undefined | — | — |
onLayout | ((event: LayoutChangeEvent) => void) | undefined | — | — |
pointerEvents | "box-none" | "none" | "box-only" | "auto" | undefined | — | — |
removeClippedSubviews | boolean | undefined | — | — |
styleRequired | StyleProp<ViewStyle> | — | — |
testID | string | undefined | — | — |
nativeID | string | undefined | — | — |
collapsable | boolean | undefined | — | — |
collapsableChildren | boolean | undefined | — | — |
onBlur | ((e: BlurEvent) => void) | null | undefined | — | — |
onFocus | ((e: FocusEvent) => void) | null | undefined | — | — |
renderToHardwareTextureAndroid | boolean | undefined | — | — |
focusable | boolean | undefined | — | — |
tabIndex | 0 | -1 | undefined | — | — |
shouldRasterizeIOS | boolean | undefined | — | — |
isTVSelectable | boolean | undefined | — | — |
hasTVPreferredFocus | boolean | undefined | — | — |
tvParallaxShiftDistanceX | number | undefined | — | — |
tvParallaxShiftDistanceY | number | undefined | — | — |
tvParallaxTiltAngle | number | undefined | — | — |
tvParallaxMagnification | number | undefined | — | — |
onStartShouldSetResponder | ((event: GestureResponderEvent) => boolean) | undefined | — | — |
onMoveShouldSetResponder | ((event: GestureResponderEvent) => boolean) | undefined | — | — |
onResponderEnd | ((event: GestureResponderEvent) => void) | undefined | — | — |
onResponderGrant | ((event: GestureResponderEvent) => void) | undefined | — | — |
onResponderReject | ((event: GestureResponderEvent) => void) | undefined | — | — |
onResponderMove | ((event: GestureResponderEvent) => void) | undefined | — | — |
onResponderRelease | ((event: GestureResponderEvent) => void) | undefined | — | — |
onResponderStart | ((event: GestureResponderEvent) => void) | undefined | — | — |
onResponderTerminationRequest | ((event: GestureResponderEvent) => boolean) | undefined | — | — |
onResponderTerminate | ((event: GestureResponderEvent) => void) | undefined | — | — |
onStartShouldSetResponderCapture | ((event: GestureResponderEvent) => boolean) | undefined | — | — |
onMoveShouldSetResponderCapture | ((event: GestureResponderEvent) => boolean) | undefined | — | — |
onTouchStart | ((event: GestureResponderEvent) => void) | undefined | — | — |
onTouchMove | ((event: GestureResponderEvent) => void) | undefined | — | — |
onTouchEnd | ((event: GestureResponderEvent) => void) | undefined | — | — |
onTouchCancel | ((event: GestureResponderEvent) => void) | undefined | — | — |
onTouchEndCapture | ((event: GestureResponderEvent) => void) | undefined | — | — |
onPointerEnter | ((event: PointerEvent) => void) | undefined | — | — |
onPointerEnterCapture | ((event: PointerEvent) => void) | undefined | — | — |
onPointerLeave | ((event: PointerEvent) => void) | undefined | — | — |
onPointerLeaveCapture | ((event: PointerEvent) => void) | undefined | — | — |
onPointerMove | ((event: PointerEvent) => void) | undefined | — | — |
onPointerMoveCapture | ((event: PointerEvent) => void) | undefined | — | — |
onPointerCancel | ((event: PointerEvent) => void) | undefined | — | — |
onPointerCancelCapture | ((event: PointerEvent) => void) | undefined | — | — |
onPointerDown | ((event: PointerEvent) => void) | undefined | — | — |
onPointerDownCapture | ((event: PointerEvent) => void) | undefined | — | — |
onPointerUp | ((event: PointerEvent) => void) | undefined | — | — |
onPointerUpCapture | ((event: PointerEvent) => void) | undefined | — | — |
accessible | boolean | undefined | — | — |
accessibilityActions | readonly Readonly<{ name: AccessibilityActionName | string; label?: string | undefined; }>[] | undefined | — | — |
accessibilityLabel | string | undefined | — | — |
aria-label | string | undefined | — | — |
accessibilityRole | AccessibilityRole | undefined | — | — |
accessibilityState | AccessibilityState | undefined | — | — |
aria-busy | boolean | undefined | — | — |
aria-checked | boolean | "mixed" | undefined | — | — |
aria-disabled | boolean | undefined | — | — |
aria-expanded | boolean | undefined | — | — |
aria-selected | boolean | undefined | — | — |
accessibilityHint | string | undefined | — | — |
accessibilityValue | AccessibilityValue | undefined | — | — |
aria-valuemax | number | undefined | — | — |
aria-valuemin | number | undefined | — | — |
aria-valuenow | number | undefined | — | — |
aria-valuetext | string | undefined | — | — |
onAccessibilityAction | ((event: AccessibilityActionEvent) => void) | undefined | — | — |
importantForAccessibility | "auto" | "yes" | "no" | "no-hide-descendants" | undefined | — | — |
aria-hidden | boolean | undefined | — | — |
aria-modal | boolean | undefined | — | — |
role | Role | undefined | — | — |
accessibilityLabelledBy | string | string[] | undefined | — | — |
aria-labelledby | string | undefined | — | — |
accessibilityLiveRegion | "none" | "polite" | "assertive" | undefined | — | — |
aria-live | "polite" | "assertive" | "off" | undefined | — | — |
screenReaderFocusable | boolean | undefined | — | — |
accessibilityElementsHidden | boolean | undefined | — | — |
accessibilityViewIsModal | boolean | undefined | — | — |
onAccessibilityEscape | (() => void) | undefined | — | — |
onAccessibilityTap | (() => void) | undefined | — | — |
onMagicTap | (() => void) | undefined | — | — |
accessibilityIgnoresInvertColors | boolean | undefined | — | — |
accessibilityLanguage | string | undefined | — | — |
accessibilityShowsLargeContentViewer | boolean | undefined | — | — |
accessibilityLargeContentTitle | string | undefined | — | — |
accessibilityRespondsToUserInteraction | boolean | undefined | — | — |
mode | "horizontal" | "vertical" | undefined | — | — |
leftInset | number | undefined | — | — |
rightInset | number | undefined | — | — |
topInset | number | undefined | — | — |
bottomInset | number | undefined | — | — |
bold | boolean | undefined | — | — |
spacing | number | undefined | — | — |