(pageId: string, messageId: string)
| 133 | } |
| 134 | |
| 135 | export async function switchBranch(pageId: string, messageId: string): Promise<void> { |
| 136 | const record = stores.message.get(pageId) |
| 137 | if (!record) return |
| 138 | |
| 139 | const { childrenMap } = buildMessageMaps(record.messages) |
| 140 | const leafId = findLeafFromMessage(childrenMap, messageId) |
| 141 | await stores.message.updateSession(pageId, { |
| 142 | leafMessageId: leafId, |
| 143 | selectedMessageId: messageId |
| 144 | }) |
| 145 | } |
| 146 | |
| 147 | function findLeafFromMessage( |
| 148 | childrenMap: Map<string | undefined, ChatMessage[]>, |
nothing calls this directly
no test coverage detected