32 lines
8.8 KiB
XML
32 lines
8.8 KiB
XML
<?xml version="1.0" ?>
|
|
<SmellBaseline>
|
|
<ManuallySuppressedIssues/>
|
|
<CurrentIssues>
|
|
<ID>ComposableParamOrder:LibreChatNavHost.kt$MainNavDisplay</ID>
|
|
<ID>FunctionNaming:String0.commonMain.kt$@InternalResourceApi internal fun _collectCommonMainString0Resources(map: MutableMap<String, StringResource>)</ID>
|
|
<ID>ImportOrdering:DrawerDisplayMapping.kt$import com.garfiec.librechat.core.common.extensions.toInstantOrNull import com.garfiec.librechat.core.common.extensions.formatMonthAbbrev import com.garfiec.librechat.core.model.Conversation import kotlin.time.Clock import kotlin.time.Instant import kotlinx.datetime.TimeZone import kotlinx.datetime.toLocalDateTime</ID>
|
|
<ID>ImportOrdering:ExpectResourceCollectors.kt$import kotlin.String import kotlin.collections.Map import org.jetbrains.compose.resources.DrawableResource import org.jetbrains.compose.resources.FontResource import org.jetbrains.compose.resources.PluralStringResource import org.jetbrains.compose.resources.StringArrayResource import org.jetbrains.compose.resources.StringResource</ID>
|
|
<ID>ImportOrdering:LibreChatNavHost.kt$import androidx.compose.animation.core.FastOutSlowInEasing import androidx.compose.animation.core.LinearEasing import androidx.compose.animation.core.tween import androidx.compose.animation.fadeIn import androidx.compose.animation.fadeOut import androidx.compose.animation.scaleIn import androidx.compose.animation.scaleOut import androidx.compose.animation.slideInHorizontally import androidx.compose.animation.slideOutHorizontally import androidx.compose.animation.togetherWith import androidx.compose.foundation.background import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding import androidx.compose.material3.AlertDialog import androidx.compose.material3.DrawerValue import androidx.compose.material3.MaterialTheme import androidx.compose.material3.ModalDrawerSheet import androidx.compose.material3.ModalNavigationDrawer import androidx.compose.material3.Text import androidx.compose.material3.TextButton import androidx.compose.material3.rememberDrawerState import androidx.compose.runtime.Composable import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.getValue import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import androidx.lifecycle.compose.collectAsStateWithLifecycle import androidx.navigation3.runtime.NavKey import androidx.navigation3.runtime.entryProvider import androidx.navigation3.runtime.rememberNavBackStack import androidx.navigation3.ui.NavDisplay import androidx.navigation3.runtime.rememberSaveableStateHolderNavEntryDecorator import androidx.lifecycle.viewmodel.navigation3.rememberViewModelStoreNavEntryDecorator import com.garfiec.librechat.core.ui.components.BannerDisplay import com.garfiec.librechat.feature.agents.navigation.AgentMarketplace import com.garfiec.librechat.feature.agents.navigation.agentsEntries import com.garfiec.librechat.feature.auth.navigation.AuthRoute import com.garfiec.librechat.feature.auth.navigation.ServerUrl import com.garfiec.librechat.feature.auth.navigation.authEntries import com.garfiec.librechat.feature.chat.navigation.Chat import com.garfiec.librechat.feature.chat.navigation.NewChat import com.garfiec.librechat.feature.chat.navigation.chatEntries import com.garfiec.librechat.feature.conversations.navigation.ArchivedConversations import com.garfiec.librechat.feature.conversations.navigation.conversationsEntries import com.garfiec.librechat.feature.files.navigation.Files import com.garfiec.librechat.feature.files.navigation.filesEntries import com.garfiec.librechat.feature.settings.navigation.SettingsTabbed import com.garfiec.librechat.feature.settings.navigation.memoriesEntry import com.garfiec.librechat.feature.settings.navigation.mcpServersEntry import com.garfiec.librechat.feature.settings.navigation.settingsEntries import kotlinx.coroutines.launch import librechat_mobile.shared.generated.resources.Res import librechat_mobile.shared.generated.resources.dismiss import librechat_mobile.shared.generated.resources.dont_warn_again import librechat_mobile.shared.generated.resources.version_mismatch_message import librechat_mobile.shared.generated.resources.version_mismatch_title import org.jetbrains.compose.resources.stringResource import org.koin.compose.viewmodel.koinViewModel</ID>
|
|
<ID>ImportOrdering:NavHostViewModel.kt$import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import com.garfiec.librechat.core.data.repository.AuthRepository import com.garfiec.librechat.core.data.repository.BannerRepository import com.garfiec.librechat.core.data.datastore.SettingsDataStore import com.garfiec.librechat.core.data.repository.ConfigRepository import com.garfiec.librechat.core.data.repository.ConversationRepository import com.garfiec.librechat.core.model.Banner import com.garfiec.librechat.core.network.client.TokenManager import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.SharedFlow import kotlinx.coroutines.flow.SharingStarted import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.asStateFlow import kotlinx.coroutines.flow.combine import kotlinx.coroutines.flow.stateIn import kotlinx.coroutines.launch import co.touchlab.kermit.Logger import com.garfiec.librechat.core.common.extensions.firstBlocking</ID>
|
|
<ID>ImportOrdering:Res.kt$import kotlin.ByteArray import kotlin.OptIn import kotlin.String import kotlin.Suppress import org.jetbrains.compose.resources.InternalResourceApi import org.jetbrains.compose.resources.getResourceUri import org.jetbrains.compose.resources.readResourceBytes</ID>
|
|
<ID>ImportOrdering:String0.commonMain.kt$import kotlin.OptIn import kotlin.String import kotlin.collections.MutableMap import org.jetbrains.compose.resources.InternalResourceApi import org.jetbrains.compose.resources.ResourceContentHash import org.jetbrains.compose.resources.ResourceItem import org.jetbrains.compose.resources.StringResource</ID>
|
|
<ID>LambdaParameterInRestartableEffect:DrawerContent.kt$onLoadMore</ID>
|
|
<ID>MaxLineLength:NavHostViewModel.kt$NavHostViewModel$private val favoritesStateHolder = FavoritesStateHolder(settingsDataStore, conversationListStateHolder.recentConversations, viewModelScope)</ID>
|
|
<ID>MaxLineLength:Res.kt$Res$public suspend</ID>
|
|
<ID>NoUnusedImports:LibreChatNavHost.kt$com.garfiec.librechat.shared.navigation.LibreChatNavHost.kt</ID>
|
|
<ID>PackageName:ExpectResourceCollectors.kt$package librechat_mobile.shared.generated.resources</ID>
|
|
<ID>PackageName:Res.kt$package librechat_mobile.shared.generated.resources</ID>
|
|
<ID>PackageName:String0.commonMain.kt$package librechat_mobile.shared.generated.resources</ID>
|
|
<ID>PackageNaming:ExpectResourceCollectors.kt$package librechat_mobile.shared.generated.resources</ID>
|
|
<ID>PackageNaming:Res.kt$package librechat_mobile.shared.generated.resources</ID>
|
|
<ID>PackageNaming:String0.commonMain.kt$package librechat_mobile.shared.generated.resources</ID>
|
|
<ID>ParameterNaming:DrawerContent.kt$onSearchQueryChanged</ID>
|
|
<ID>ParameterNaming:SettingsSidebarContent.kt$onCategorySelected</ID>
|
|
<ID>ParameterNaming:SidebarScaffold.kt$onSettingsCategorySelected</ID>
|
|
<ID>PropertyWrapping:NavHostViewModel.kt$NavHostViewModel$private val favoritesStateHolder = FavoritesStateHolder(settingsDataStore, conversationListStateHolder.recentConversations, viewModelScope)</ID>
|
|
<ID>ViewModelForwarding:LibreChatNavHost.kt$MainNavDisplay( navigator = navigator, navHostViewModel = navHostViewModel, onMenuClick = { scope.launch { drawerState.open() } }, modifier = Modifier.fillMaxSize(), )</ID>
|
|
<ID>ViewModelForwarding:LibreChatNavHost.kt$PhoneLayout( navigator = navigator, navHostViewModel = navHostViewModel, modifier = modifier, )</ID>
|
|
<ID>ViewModelForwarding:LibreChatNavHost.kt$SidebarScaffold( viewModel = navHostViewModel, onNewChat = { scope.launch { drawerState.close() } if (navigator.currentRoute !is NewChat) { navigator.navigateToTopLevel(NewChat) } }, onConversationClick = { conversationId -> scope.launch { drawerState.close() } navigator.navigateToChat(conversationId) }, onSettingsClick = { scope.launch { drawerState.close() } navigator.navigate(SettingsTabbed) }, onSettingsCategorySelected = { category -> navigator.navigate(category.toRoute()) }, onAgentsClick = { scope.launch { drawerState.close() } navigator.navigate(AgentMarketplace) }, onFilesClick = { scope.launch { drawerState.close() } navigator.navigate(Files) }, )</ID>
|
|
<ID>ViewModelForwarding:SidebarScaffold.kt$DrawerContent( viewModel = viewModel, onNewChat = onNewChat, onConversationClick = onConversationClick, onSettingsClick = onSettingsClick, onAgentsClick = onAgentsClick, onFilesClick = onFilesClick, )</ID>
|
|
</CurrentIssues>
|
|
</SmellBaseline>
|