Daniel Pitts
11/15/2024, 6:53 PMfun dispatch(event: ChatSessionClientEvent): Flow<ChatSessionServerEvent> {
return flow {
when (event) {
is MakeChoice -> makeChoice(event)
ReloadSettings -> reloadSettings()
is RequestChatState -> requestChatState(event)
ResetSettings -> resetSettings()
SaveSettings -> saveSettings()
is SetTools -> setTools(event)
is ToolCallResults -> toolCallResults(event)
is UpdateSettings -> updateSettings(event)
is UserMessage -> userMessage(event)
}
}.shareIn(this, SharingStarted.WhileSubscribed())
}
Where the event handlers will emit ChatSessionServerEvent instances.ephemient
11/15/2024, 11:55 PMDaniel Pitts
11/15/2024, 11:56 PMDaniel Pitts
11/16/2024, 3:58 PM