MantleUI

InputOTP

A one-time password input with individual character slots. Supports configurable length, controlled mode, and colors.

Basic

Four Digits

Controlled

Disabled

Colors

Props

length6
number

Number of OTP input slots.

value
string

The current OTP value (controlled).

defaultValue
string

The initial OTP value (uncontrolled).

onValueChange
(value: string) => void

Called when the OTP value changes.

disabledfalse
boolean

Disables all input slots.

color"blue"
"blue" | "red" | "green" | "yellow" | "purple" | "neutral" | string

Accent color for the focus ring.

--mantle-bgtheme default
CSS variable

Override the background color via style. e.g. style={{ "--mantle-bg": "#1a1a2e" }}

--mantle-bordertheme default
CSS variable

Override the border color via style. Set to "transparent" to remove. e.g. style={{ "--mantle-border": "#e94560" }}

--mantle-texttheme default
CSS variable

Override the text color via style. e.g. style={{ "--mantle-text": "#ffffff" }}

--mantle-ringaccent
CSS variable

Override the focus ring color via style. e.g. style={{ "--mantle-ring": "#e94560" }}

© 2026 MantleUI. All rights reserved.