diff options
| author | Adam Malczewski <[email protected]> | 2026-06-07 02:20:51 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-07 02:20:51 +0900 |
| commit | 5f867c6711ed693aa2a029ae1fb07eb1106ee32c (patch) | |
| tree | 3d2942b455454d8c4e241b6d3fe22bb3526e7ed8 /src/core/chunks/reducer.ts | |
| parent | 529c6a2bb56447fe93796111df3d4cc5a05fdd93 (diff) | |
| download | dispatch-web-5f867c6711ed693aa2a029ae1fb07eb1106ee32c.tar.gz dispatch-web-5f867c6711ed693aa2a029ae1fb07eb1106ee32c.zip | |
Slice 3 wave B: tabbed multi-conversation app + model selector (DaisyUI)
- store.svelte.ts: tabs store over injected localStorage; one chat store per
conversation (Map); single WS routes chat.delta/error by conversationId;
draft (null active) mints a conversationId and becomes a tab on first send
(title from deriveTitle); GET /models catalog; default model flash; close tab
= dispose + cache.delete (local forget) + neighbour activation; restore tabs
from storage + load() on construct
- App.svelte: DaisyUI tab strip (+ / close), model selector, chat, surfaces
- AppStore: tabs/activeConversationId/activeChat/models/activeModel +
send/selectModel/newDraft/selectTab/closeTab; +localStorage inject opt
Verified: svelte-check 0/0, vitest 281 (stable x2), biome clean, build ok.
Diffstat (limited to 'src/core/chunks/reducer.ts')
0 files changed, 0 insertions, 0 deletions
