mirror of
https://github.com/open-webui/open-webui.git
synced 2026-09-17 23:52:29 +00:00
Messages.svelte rebuilds the message list by walking the parent chain and creating spread copies on every history.messages change. During streaming, this runs on every token — hundreds of times per second — even though each ResponseMessage already has its own reactive binding for content updates. Throttle the rebuild to once per animation frame (~60Hz) during content-only updates, while keeping immediate rebuilds for structural changes (currentId changes like chat switches, navigation, or new messages). Adds onDestroy cleanup for the pending rAF. |
||
|---|---|---|
| .. | ||
| ChatControls | ||
| ContentRenderer | ||
| Controls | ||
| FileNav | ||
| MessageInput | ||
| Messages | ||
| ModelSelector | ||
| Overview | ||
| Placeholder | ||
| Settings | ||
| Artifacts.svelte | ||
| Chat.svelte | ||
| ChatControls.svelte | ||
| ChatPlaceholder.svelte | ||
| FileNav.svelte | ||
| MessageInput.svelte | ||
| Messages.svelte | ||
| ModelSelector.svelte | ||
| Navbar.svelte | ||
| Overview.svelte | ||
| Placeholder.svelte | ||
| SettingsModal.svelte | ||
| ShareChatModal.svelte | ||
| ShortcutItem.svelte | ||
| ShortcutsModal.svelte | ||
| Suggestions.svelte | ||
| TagChatModal.svelte | ||
| Tags.svelte | ||
| ToolServersModal.svelte | ||