Skip to content
Devix Open Source

Changelog

Every release of OTP Input, newest first. Breaking changes are flagged.

v1.0.0

12 Sep 2026

First release.

Added

  • Real <input> boxes, so password managers can fill them, with autocomplete="one-time-code" on the first for iOS and the WebOTP API for Chrome on Android.
  • The whole code dropped into one box — what Dashlane, 1Password and some Android keyboards do — is spread across the rest.
  • Paste that understands a message: "Your verification code is 123-456" becomes 123456, wherever in the group it is pasted.
  • Arabic-Indic, Persian, Devanagari, Bengali and full-width digits read as digits.
  • Numeric, alphanumeric and alphabetic modes, a rule of your own, and folding to upper case.
  • Keyboard: type forward, backspace clears then steps back, arrows, Home and End, and select-all.
  • A labelled group with "Digit 3 of 6" on each box and a live region announcing progress and completion.
  • reject() to mark a failed attempt, announce it and put the cursor back at the start.
  • Masking for PINs, separators (123–456) that are decoration rather than value, autofocus, disabled and invalid states.
  • A hidden input carrying the whole code, so a plain form posts one field.
  • React, Vue, Svelte and <dx-otp> entries; the React field renders as a plain input on a server.
  • Theming through CSS variables, classNames on every part, theme: 'auto', and a @layer devix stylesheet.
  • 3.0 kB gzip, zero dependencies.