tidy normalized store hydration

This commit is contained in:
Shantur Rathore
2025-11-26 15:59:24 +00:00
parent 4e0e5dcdca
commit 3db9b0f673
2 changed files with 16 additions and 21 deletions

View File

@@ -1,3 +1,4 @@
import { batch } from "solid-js"
import { createStore, produce, reconcile } from "solid-js/store"
import type { SetStoreFunction } from "solid-js/store"
import type { ClientPart, MessageInfo } from "../../types/message"
@@ -361,22 +362,24 @@ export function createInstanceMessageStore(instanceId: string): InstanceMessageS
}
}
setState("messages", (prev) => ({ ...prev, ...nextMessages }))
setState("messageInfoVersion", (prev) => ({ ...prev, ...nextMessageInfoVersion }))
setState("pendingParts", () => nextPendingParts)
setState("permissions", "byMessage", (prev) => ({ ...prev, ...nextPermissionsByMessage }))
batch(() => {
setState("messages", () => nextMessages)
setState("messageInfoVersion", () => nextMessageInfoVersion)
setState("pendingParts", () => nextPendingParts)
setState("permissions", "byMessage", () => nextPermissionsByMessage)
if (usageState) {
setState("usage", sessionId, usageState)
}
if (usageState) {
setState("usage", sessionId, usageState)
}
setState("sessions", sessionId, (session) => ({
...session,
messageIds: incomingIds,
updatedAt: Date.now(),
}))
setState("sessions", sessionId, (session) => ({
...session,
messageIds: incomingIds,
updatedAt: Date.now(),
}))
bumpSessionRevision(sessionId)
bumpSessionRevision(sessionId)
})
}
function insertMessageIntoSession(sessionId: string, messageId: string) {