@@ -18,11 +18,13 @@ import dev.icerock.moko.resources.compose.stringResource
1818import kotlinx.coroutines.GlobalScope
1919import kotlinx.coroutines.delay
2020import kotlinx.coroutines.launch
21+ import kotlinx.serialization.json.Json
2122import project.pipepipe.app.MR
2223import project.pipepipe.app.SharedContext
2324import project.pipepipe.app.database.DatabaseOperations
2425import project.pipepipe.app.ui.screens.settings.buildLogJson
2526import project.pipepipe.app.uistate.ErrorInfo
27+ import project.pipepipe.shared.infoitem.SupportedServiceInfo
2628
2729@Composable
2830fun ErrorComponent (
@@ -33,6 +35,10 @@ fun ErrorComponent(
3335) {
3436 var showDetailsDialog by remember { mutableStateOf(false ) }
3537 var stackTrace by remember { mutableStateOf<String >(" " ) }
38+ val serviceList = remember {
39+ val jsonString = SharedContext .settingsManager.getString(" supported_services" , " []" )
40+ runCatching{ Json .decodeFromString<List <SupportedServiceInfo >>(jsonString) }.getOrDefault(emptyList())
41+ }
3642
3743 // Map error codes to specific messages (for GEO_001 onwards)
3844 val titleText = when (error.errorCode) {
@@ -46,7 +52,8 @@ fun ErrorComponent(
4652 " TIME_002" -> stringResource(MR .strings.error_code_time_002)
4753 else -> {
4854 if (error.errorCode.startsWith(" RISK" )) {
49- stringResource(MR .strings.error_code_risk).format(error.serviceId)
55+ val serviceName = serviceList.first { it.serviceId == error.serviceId }.serviceName
56+ stringResource(MR .strings.error_code_risk).format(serviceName)
5057 } else {
5158 stringResource(MR .strings.error_snackbar_message)
5259 }
0 commit comments