← All Releases
2.5.0
July 21, 2026Tabs and OTP Input components, full MFA setup and login flow, and shippable design-token CSS files importable from consumer apps
Summary
- Added new
TabsandOtpInputcomponents. - Added a complete two-factor authentication flow —
TwoFactorSetupFormandTwoFactorLoginFormblocks, matching installable pages, andsetup2FA/verify2FA/signInWith2FAcomposables onuseAccAuth. - Exposed the design-token CSS files (
reset.css,variables.css,app.css, and a concatenatedindex.css) as package exports so consumer apps can import them directly, with a new/design-tokensdocs page.
Added
Components
- Added
Tabs— av-modeltab list withoptions,disabled, and anisLinkmode that renders each option as aNuxtLink(using the option'sto) for route-driven navigation. Fully themeable via--lev-tabs-*CSS variables, including separate--lev-tabs-item-border-width/-style/-colorfor per-item border control. - Added
OtpInput— a one-time-password / verification-code input withv-modelsupport, configurablelength,numericOnly/ alphanumeric modes,disabledandinvalidstates,autocomplete="one-time-code"for password-manager / SMS autofill, click-to-first-empty focus, paste distribution with whitespace stripping, and arrow-key / backspace navigation. Themeable via--lev-otp-input-*CSS variables.
Auth
- Added
setup2FA(),verify2FA(), andsignInWith2FA()touseAccAuthfor the full TOTP-based 2FA lifecycle: generate a secret + QR URI, verify the user's 6-digit code, and complete sign-in whensignInWithPasswordreturnsMFA_REQUIRED. See2FA setup,verify2FA, andsignInWith2FA. - Added
MFA_ALREADY_ENABLEDtoAuthErrorCode. - Added
challengeTokentoSignInResult— present onsignInWithPasswordandverifywhen MFA is required, and consumed bysignInWith2FAto complete the login.
Installable templates
- Added
TwoFactorSetupFormas an installable block — single-view setup that callssetup2FAto generate a TOTP secret, displays the QR code + secret text, and verifies the 6-digit code viaverify2FA. Shows a "Back to login" action onUNAUTHORIZEDrather than auto-redirecting. - Added
TwoFactorLoginFormas an installable block — prompts for the 6-digit TOTP code, reads the challenge token from shared state set byLoginForm, and callssignInWith2FAto complete login. - Added
Two-Factor SetupandTwo-Factor Loginas installable page templates, both using the sharedAuthPagelayout.
Design tokens
- Exposed the package's CSS files as importable package exports:
@levarnebv/accelerator-nuxtv3-module/styles(concatenatedindex.css), as well as/styles/reset.css,/styles/variables.css, and/styles/app.cssindividually. Consumers can now import the design-token system directly instead of redefining tokens. - Added a
/design-tokensdocs page that enumerates every token invariables.cssandapp.css, resolvesvar(--…)chains, and groups them by category (Color Palette, Mapped Colors, Theme tokens, Spacing, Radius, Shadow, Typography, …) for at-a-glance reference.
Changed
LoginFormnow handlesMFA_REQUIREDfromsignInWithPassword: it stores thechallengeTokenin shared state and redirects to the 2FA login page, so consumers using the installable block get the MFA flow automatically.SegmentedControlfocus-visibleoutline fallback changed from#5298f5to#1d66bfto align with the updated brand color.
Breaking Changes
- The newly exposed
@levarnebv/accelerator-nuxtv3-module/stylesentry (and/styles/reset.cssindividually) ships a full element reset —box-sizing: border-box, zeroedmargin/padding,border: 0 solid, a normalizedline-height, and more. If your consumer app does not already apply a CSS reset, importing./stylesor./styles/reset.csswill strip browser default styling (heading sizes, list indentation, link underlines, form control chrome, etc.) and can change how existing pages render.