← All Releases
2.10.0
October 1, 2026Add profile and CDN tools, reusable profile blocks, and stronger component typing
Summary
- Add Avatar, profile and CDN composables, and installable blocks for displaying and editing profiles.
- Improve component model typing, native attribute support, and Calendar and DatePicker bindings.
- Keep open Tooltips positioned correctly as their content changes size.
Added
- Add
Avatarwith image, initials, empty, and size-adapting skeleton states. It supports five sizes, a customizable#emptyslot, and CSS variables. - Add
useAccCdnto upload public or private files and request temporary URLs for private files. The default namespace isdefaulthere and in the backend. A namespace selects another backend-supported CDN configuration; it is not a folder. Configure additional namespaces inlevarneAcc.cdn.namespace, and ensure the backend accepts and routes them. Includedefaultin the configured list if the app also callsuseAccCdn()without a namespace. - Add
useProfileto read and update the signed-in user's profile or a profile the user is authorized to manage. Profiles with an avatar key include a resolved privateavatarUrl. - Add the
ProfileAvatarblock to show a profile image or initials and optionally select or remove an image. - Add the
ProfileFormblock to edit profile names and save a private profile image. Email remains display-only. - Add the Radio
#iconslot, which exposes whether the option is checked.
Changed
- Make component TypeScript contracts stricter and more precise than in 2.9.0. Generic value typing in Input, Radio, Tabs, SegmentedControl, Dropdown, and Dropzone improves inference; option values retain their literal types, and Dropdown/Dropzone model types follow single or multiple selection.
- Export
RangeValuefor calendar and date-picker ranges with optional endpoints. The Calendar wrapper exposes named models for selected dates, months, and years, pluscurrentMonthandcurrentYear; DatePicker adds anameprop for its input. - Change the disabled checked Checkbox to use the primary disabled color.
Fixed
- Reposition open
Tooltipswhen their content resizes so they stay centered over the trigger.
Breaking Changes
- Checkbox and Toggle models are now
booleanand default tofalse; they no longer useundefinedfor the unchecked state. Consumers usingundefinedas a meaningful state should migrate tofalseor manage that separate state outside the component.