Package-level declarations

Types

Link copied to clipboard
data class InputOTPSlotState(val char: Char?, val isActive: Boolean, val hasFakeCaret: Boolean)
Link copied to clipboard

State holder for the OTP input — created by rememberInputOTPState.

Functions

Link copied to clipboard
fun InputOTP(state: InputOTPState, modifier: Modifier = Modifier, enabled: Boolean = true, content: @Composable RowScope.() -> Unit)

Shadcn/ui-style OTP / PIN input root — mirrors InputOTP from input-otp.tsx.

Link copied to clipboard
fun RowScope.InputOTPGroup(modifier: Modifier = Modifier, content: @Composable RowScope.() -> Unit)

Groups consecutive InputOTPSlots into a visually joined block. Mirrors InputOTPGroup.

Link copied to clipboard
fun RowScope.InputOTPSeparator(modifier: Modifier = Modifier)

Separator dash between InputOTPGroups — mirrors InputOTPSeparator.

Link copied to clipboard
fun RowScope.InputOTPSlot(state: InputOTPState, index: Int, modifier: Modifier = Modifier, isFirst: Boolean = false, isLast: Boolean = false)

Individual digit slot — mirrors InputOTPSlot.

Link copied to clipboard
fun rememberInputOTPState(value: String = "", length: Int = 6, onValueChange: (String) -> Unit = {}): InputOTPState