Changelog
Version 0.6.1
Every @aparte/* package ships at this version (they are released in lockstep).
Patch Changes
-
2075f9b: README fix: the npm page announced ”🚧 Pre-alpha — not yet published to npm” — false on the very page npm was serving, and it had been through four releases. It now states what the package is (alpha, plain
0.x, lockstep, API can still change) and links the changelog.The quick start went with it: it showed
registerDefaultRenderers()as a required step (the built-ins install themselves since 0.5.0-alpha.0) and stopped before the one line that makes the retry/edit buttons appear now that they ship off. It also pointed at the docs sources in the monorepo rather than at apartejs.dev.@aparte/core -
0c4c0e3: Fix: a locale switch now reaches the components already on screen. The docs say it plainly — “a locale switch is live: mounted components re-render immediately” — and
setLocale()does notify. The components honoured only part of it, so switching language left a bilingual interface until a reload rebuilt the elements:- a bubble rebuilt its action-bar labels but kept its old name (
You/Assistant), its avatar initial, thearia-labelof the‹ ›branch arrows and of the action toolbar, and the waiting indicator’s screen-reader label; - a viewport applied
locale.directiononce at render, so a chat already mounted never flipped to RTL; - a conversation list kept its previous-language row labels (the delete/archive buttons, and the fallback title of an untitled conversation) until something else happened to re-render it.
All three now refresh on the config change, keeping the existing precedences: an explicit
nameattribute still outranks the locale, and an instance-scoped config change never touches a component resolving to another config.@aparte/core - a bubble rebuilt its action-bar labels but kept its old name (
-
6e0211c: Fix: refreshing a live option list no longer throws away the keyboard position.
aparte-selectkeeps its roving highlight as adata-activeattribute on an option ELEMENT, so replacing the options of an open dropdown took it away — while the component still believed it held a position. Consequences, all silent:- the visible highlight disappeared mid-navigation;
aria-activedescendanton the trigger kept pointing at an id no longer in the document — a broken reference for a screen reader;- the next arrow key moved from the stale index.
Worse, nothing noticed: a consumer refreshing a list writes into
.aparte-select-options, a descendant, and the observer watched only its own children. It now watches the subtree and re-asserts the highlight on the new elements, clamped to the new length, and only when the dropdown was already open with a position held — a refresh never invents one, and navigation resumes where the user was rather than jumping back to the top.Found via three CI-only e2e flakes (a keyboard-navigation assertion polling ten seconds for a highlight that a concurrent refresh had erased).
@aparte/plugin-model-selectoris the in-repo consumer that triggers it, whenever the provider list settles.@aparte/core
Version-only bumps (no changes of their own): @aparte/engine, @aparte/provider-ai-sdk, @aparte/provider-openai-compat, @aparte/provider-transformers, @aparte/plugin-ask-user, @aparte/plugin-marked, @aparte/plugin-model-selector, @aparte/plugin-shiki, @aparte/plugin-streaming-markdown, @aparte/angular, @aparte/react, @aparte/svelte, @aparte/vue, @aparte/locale-fr.