Aero chat welcome panel: frosted and flush; honest model availability
The welcome panel is the same frosted glass as the cards now (blurred, not a flat tint) and stretches flush with the chat header and composer (measured: 268..1280 at 1280, exactly the chrome's edges) - a flat pane floating 40px inside the scene read as "cut off next to the sidebar". Availability no longer over-promises: a /api/tags listing proves availability only on a local daemon (the listing is the installed set); on a cloud key the catalogue can include models a free plan cannot run, and provider seeds before their first live /models test, so those stay badge-less until actually used. The configured favourites keep their verified state. Contrast 0 findings, chat 102/102, providers 20/20, mobile 126/126, i18n 13/13, native 33/33. Version 0.5.2, SW -> freezmo-v75.
This commit is contained in:
parent
e2676be080
commit
7e7969b568
4 changed files with 25 additions and 5 deletions
|
|
@ -179,8 +179,11 @@ export function ChatScreen() {
|
|||
if (!providerState.keys[info.id]) continue;
|
||||
const models = modelsFor(providerState, info.id).slice(0, 400);
|
||||
if (models.length === 0) continue;
|
||||
// Only a live /models listing proves the key can use them; the built-in
|
||||
// seeds stay badge-less until the first successful test.
|
||||
const listed = (providerState.models[info.id]?.length ?? 0) > 0;
|
||||
for (const name of models) {
|
||||
cloud.push({ name, badge: "text", available: true, provider: info.id });
|
||||
cloud.push({ name, badge: "text", available: listed ? true : null, provider: info.id });
|
||||
}
|
||||
}
|
||||
return [...ollama, ...cloud];
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue