← All Releases

2.3.0

July 7, 2026

Calendar and SegmentedControl components, full auth flow templates, verify action, PostgreSQL session storage, and design-token refresh

Summary

Added

Components

  • Added Calendar — single and range date selection with day/month/year views, configurable week start, multi-month display, disabled/enabled date lists, maximum range length, allowGaps for ranges spanning unavailable dates, loading skeletons, and locale-aware headers.
  • Added SegmentedControl — lightweight v-model button group with options, disabled, and full theming via CSS variables.
  • Added loaderText, size, and allowedSizes props to Button for labeled loading state and trigger sizing.
  • Added displayFormatter prop to Input for read-only formatted display while keeping the raw modelValue.
  • Added size and allowedSizes props to Dropdown for sizing the trigger.

Auth

  • Added verify() to useAccAuth to confirm a user's email from a verification token and create a session on success. Supports sessionDuration, matching signInWithPassword.
  • Added the frontendPath parameter to signUp, signInWithPassword, verify, requestPasswordReset, and confirmPasswordReset so the link path in backend-sent emails can be customized. See Email flows.
  • Added new AuthErrorCode values: INVALID_TOKEN and ALREADY_VERIFIED.

Installable templates

Session storage

  • Added a postgresql session storage driver backed by a PostgreSQL table. The table is auto-created on first use. Requires the pg package (and @types/pg for TypeScript) in the consumer app. Expired rows are filtered out on read but not deleted automatically — schedule a periodic clean-up to remove them. See Session storage.

Changed

  • Restyled Alert, Badge, Breadcrumb, Button, Checkbox, Dropdown, and Dropzone against the refreshed design-token system.
  • Expanded the CSS variable system in variables.css with a full semantic mapping layer (--primary-*, --secondary-*, --success-*, --warning-*, --danger-*, --info-*, --feature-*, --feature-secondary-*) and theme tokens (--bg-*, --content-*, --border-*, --focus-ring) so consumer apps can retheme by overriding a small set of semantic variables.
  • Changed disabledErrors on form components to only suppress validation errors; customError now continues to display and style regardless of disabledErrors.
  • Changed the module-local sessionDuration so it is no longer forwarded to upstream auth providers — it only controls the Accelerator-side cookie/session TTL.
  • Changed CLI install commands to use kebab-case page names and removed the blocks prefix from block install commands.
  • Changed CLI template installation to strip the /preview/ prefix from in-template navigation links and frontendPath values so installed templates point at the consumer app's real routes.

Breaking Changes

  • Removed the old Register block template. Migrate to the new RegisterForm block, which uses the shared PasswordRequirements component and the AuthPage layout.
  • disabledErrors no longer hides customError. If you relied on disabledErrors suppressing custom error messages, you will now see them displayed. Validation errors are still suppressed as before.