FORM

PinField

PinField coordinates segmented entry, focus movement, paste distribution, masking, and one joined string value.

PLAYGROUND

Verify a high-value action

Enter or paste a six-digit code. Focus advances per character, Backspace returns to the previous empty field, and bind receives the joined value.

TRANSFER VERIFICATION

Confirm the security code

A six-digit code was sent to the verified contact method.

Verification code
The code expires in ten minutes. You can paste all six digits at once.
dowe
signal verificationCode value:""

PinField bind:verificationCode length:6 type:"number" label:"Verification code" helpText:"The code expires in ten minutes. You can paste all six digits at once." variant:"outlined" scheme:"primary" size:"lg" name:"transfer-code"

ENTRY MODES

Choose the right code contract

Numeric codes suit one-time verification, password mode masks sensitive access keys, and text mode accepts alphanumeric recovery codes.

Device code
Short numeric pairing code.
Vault PIN
Masked while preserving the joined value.
Recovery key
Text mode accepts an alphanumeric key.
dowe
PinField value:"5821" length:4 type:"number" label:"Device code" variant:"soft" scheme:"info" size:"sm"

PinField value:"749205" length:6 type:"password" label:"Vault PIN" variant:"solid" scheme:"secondary" size:"md"

PinField value:"A7K9Q2M4" length:8 type:"text" label:"Recovery key" variant:"line" scheme:"success" size:"md"

VALIDATION AND SCALE

Respond to the complete code

Validation applies to the joined value, so feedback stays attached to the complete segmented control.

Expired verification code
This code is incomplete or has expired. Request a new one.
Enrollment key
Paste the complete eight-character key from the enrollment screen.
Small
Medium
Large

BEHAVIOR

Segmented input, one value

Dowe coordinates entry across individual cells and exposes a single predictable value to the surrounding form.

KEYBOARD

Managed focus

Character entry advances focus and Backspace returns to the previous empty cell.

PASTE

Distributed input

Pasting fills consecutive cells up to length and updates the joined value once.

TARGETS

Portable code entry

Web, SwiftUI, and Compose preserve cell count, Input-sized styling, type, focus, paste, feedback, and sizing. Numeric entry uses a numeric keyboard without browser number spinners.

API

Props

PinField also accepts the applicable common spacing, sizing, visibility, accessibility, and shadow props.

Prop
Type
Default

No data

There are no records to display