Repository navigation
v0.45.0
@kanzo-tech/llm (minor)
- A local model's load is something you read.
localModelLoad(id)from@kanzo-tech/llm/localanswers where the download and load stand:{ state: "idle" },{ state: "loading", progress, text },{ state: "ready" }or{ state: "failed", error }. The type isModelLoad, on@kanzo-tech/llm. It answers the same whichever screen started the load.watchLocalModel(id, listener)says when it changes, souseSyncExternalStore((l) => watchLocalModel(id, l), () => localModelLoad(id))is the whole subscription. - Breaking:
LocalModelSettings.onProgressis gone. A host that kept its own store from it readslocalModelLoadinstead, and draws it with@kanzo-tech/ai'sModelBadge.
@kanzo-tech/ai (minor)
-
The parts a guided chat is built from, beside the transcript and the composer:
Question,QuestionPrompt,QuestionDescription,QuestionOptionsandQuestionOptionput a question to the person in a panel. The options are outline buttons and the chosen one is filled. It is a radio group, so the arrow keys move between options, andonValueChangeis the answer, in one press. A Task'sDecisionhas this shape.Workingsays work is under way: a spinner and its words in arole="status", with@kanzo-tech/ui'sProgressbeside it when there is a measure.ModelBadge(ModelBadgeProps,ModelBadgeTranslations) shows the model in the page as a badge: Preparing the model · 42%, Model ready or Model failed. Pressing it opens the progress bar and the engine's words, or the failure as aProblemwith a retry (no retry forai/unavailable). Give itlocalModelLoad's value.
These replace a decision drawn with
RadioGroup, a spinner beside a sentence, or a model-loading bar of your own. -
ConversationScrollButtonno longer stays on screen with nothing to scroll to. When the transcript stops overflowing without a scroll (the panel grew, the device turned, a turn was removed),Conversationmeasures again and takes the pin back. -
ChatandAssistdraw a model's offers with@kanzo-tech/ui'sSuggestions.
@kanzo-tech/ui (minor)
Suggestionstakespending: that many pills in skeleton after the ones already there, and the strip staysaria-busyuntil they land. It is for offers that arrive one by one, such as a model's. A strip that drew its own skeletons beside its pills can pass the count instead.
@kanzo-tech/theme (patch)
-
kanzo-darkcarries its brand at the same weight askanzo:--primaryand--ringare#5cb572rather than the neon#1ae973.- The first chart series,
--chart-1, is the brand's green#52b770rather than the lime#64c600. - The neon stays as
--success, as in the light theme.
Buttons, focus rings and the first series of every chart are calmer on a dark Kanzo page. A host that matched the old neon in its own CSS should read
var(--primary)instead.