RN Neo
Components

Input

Text input with focus depth and theme-aware colors

A styled text input built on React Native's TextInput. It animates shadow depth on focus and applies theme-consistent placeholder and selection colors.

Usage

import { Input } from 'rn-neo';

<Input placeholder="Enter your name" />

// With border and shadow
<Input placeholder="Email" border shadow backgroundColor="surface" padding="lg" />

// Custom focus shadow color
<Input placeholder="Search" border shadow shadowColor="primary" radius="md" />

Behavior

  • On focus, the shadow offset multiplier goes from to the resolved shadowSize — a subtle depth change signalling the active state.
  • placeholderTextColor defaults to the muted token; selectionColor defaults to primary. Pass either explicitly to override.
  • Your onFocus / onBlur handlers run alongside the internal focus tracking — they are not replaced.
padding defaults to 'md' if not set.

Props

Font

PropTypeDefaultDescription
textColorColors | stringFrom themeText color.
fontSizeFontSizeFont size token.
fontWeight'normal' | 'medium' | 'bold'Font weight token.
fontFamilystringCustom font family string.

Background

PropTypeDefaultDescription
backgroundColorBgColors | stringBackground color. Token or any color string.

Border

PropTypeDefaultDescription
borderbooleanFrom themeWhether to show a border.
borderSizeBorderSize | numberFrom themeBorder width. Token or raw number.
borderColorColors | stringFrom themeBorder color.
radiusRadius | numberFrom themeBorder radius. Token or raw number.

Shadow

PropTypeDefaultDescription
shadowbooleanFrom themeWhether to show a shadow.
shadowSizeShadowSize | numberFrom themeShadow offset size. Doubles on focus.
shadowColorColors | stringFrom themeShadow color.

Spacing

Accepts all standard spacing props (padding*, margin*); padding defaults to 'md'. See Box → Spacing for the full list.
Input also accepts all standard React Native TextInputPropsvalue, onChangeText, multiline, keyboardType, secureTextEntry, placeholderTextColor, selectionColor, … The style prop is applied last and overrides token-based styles.

On this page