diff --git a/app/src/main/java/com/m57/hermescontrol/data/local/AuthManager.kt b/app/src/main/java/com/m57/hermescontrol/data/local/AuthManager.kt index 7624f819..0a39a7f1 100644 --- a/app/src/main/java/com/m57/hermescontrol/data/local/AuthManager.kt +++ b/app/src/main/java/com/m57/hermescontrol/data/local/AuthManager.kt @@ -95,9 +95,7 @@ object AuthManager { requirePrefs().edit().putString(KEY_CONNECTION_PROFILES, json).apply() } - fun getProfileToken(profileId: String): String? { - return requirePrefs().getString("token_$profileId", null) - } + fun getProfileToken(profileId: String): String? = requirePrefs().getString("token_$profileId", null) fun setProfileToken( profileId: String, diff --git a/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt b/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt index 61627288..853cd79c 100644 --- a/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt +++ b/app/src/main/java/com/m57/hermescontrol/ui/chat/ChatViewModel.kt @@ -150,13 +150,33 @@ class ChatViewModel( is WsEvent.SessionInfo -> {} - is WsEvent.MessageStart -> handleMessageStart(event) - is WsEvent.MessageToken -> handleMessageToken(event) - is WsEvent.ThinkingDelta -> handleThinkingDelta(event) - is WsEvent.MessageComplete -> handleMessageComplete(event) - is WsEvent.MessageDone -> handleMessageDone(event) - is WsEvent.ToolStart -> handleToolStart(event) - is WsEvent.ToolComplete -> handleToolComplete(event) + is WsEvent.MessageStart -> { + handleMessageStart(event) + } + + is WsEvent.MessageToken -> { + handleMessageToken(event) + } + + is WsEvent.ThinkingDelta -> { + handleThinkingDelta(event) + } + + is WsEvent.MessageComplete -> { + handleMessageComplete(event) + } + + is WsEvent.MessageDone -> { + handleMessageDone(event) + } + + is WsEvent.ToolStart -> { + handleToolStart(event) + } + + is WsEvent.ToolComplete -> { + handleToolComplete(event) + } is WsEvent.ClarifyRequest -> { if (!isCurrentSession(event.sessionId)) return diff --git a/app/src/main/java/com/m57/hermescontrol/ui/settings/SettingsViewModel.kt b/app/src/main/java/com/m57/hermescontrol/ui/settings/SettingsViewModel.kt index e08f0ae1..362deb31 100644 --- a/app/src/main/java/com/m57/hermescontrol/ui/settings/SettingsViewModel.kt +++ b/app/src/main/java/com/m57/hermescontrol/ui/settings/SettingsViewModel.kt @@ -58,10 +58,11 @@ class SettingsViewModel : ViewModel() { profiles = AuthManager.getConnectionProfiles(), selectedProfileId = selectedId, renameProfileName = - AuthManager.getConnectionProfiles().firstOrNull { - p -> - p.id == selectedId - }?.name ?: "", + AuthManager + .getConnectionProfiles() + .firstOrNull { p -> + p.id == selectedId + }?.name ?: "", ) } } diff --git a/app/src/main/java/com/m57/hermescontrol/ui/skills/SkillsScreen.kt b/app/src/main/java/com/m57/hermescontrol/ui/skills/SkillsScreen.kt index dd030a66..a8b3ca54 100644 --- a/app/src/main/java/com/m57/hermescontrol/ui/skills/SkillsScreen.kt +++ b/app/src/main/java/com/m57/hermescontrol/ui/skills/SkillsScreen.kt @@ -67,7 +67,11 @@ fun SkillsScreen( var selectedStatus by remember { mutableStateOf("All Statuses") } val categories = remember(state.skills) { - listOf("All") + state.skills.mapNotNull { it.category }.distinct().sorted() + listOf("All") + + state.skills + .mapNotNull { it.category } + .distinct() + .sorted() } var selectedCategory by remember { mutableStateOf("All") }