sealed interface NavItem : Destination {
data class X(
val id: String,
val enabled: Boolean = true, //default value
) : NavItem
}
composable<NavItem.X>(
deepLinks =
listOf(
navDeepLink {
uriPattern = "${context.packageName}://x?id={id}" // no default value
}
)
) {
X(
id = id,
enabled = enabled,
)
}
Process: com.xxx.devstorefrontmobile, PID: 17824
java.lang.NullPointerException
at com.kiwi.navigationcompose.typed.internal.UriBundleDecoder.decodeBoolean(UriBundleDecoder.kt:56)
at kotlinx.serialization.encoding.AbstractDecoder.decodeBooleanElement(AbstractDecoder.kt:50)
at com.xxx.android.components.NavItem$X$$serializer.deserialize(NavItem.kt:64)
at com.xxx.android.components.NavItem$X$$serializer.deserialize(NavItem.kt:64)
at kotlinx.serialization.encoding.Decoder$DefaultImpls.decodeSerializableValue(Decoding.kt:257)
at kotlinx.serialization.encoding.AbstractDecoder.decodeSerializableValue(AbstractDecoder.kt:16)
at com.kiwi.navigationcompose.typed.internal.UriBundleDecoder.decodeSerializableValue(UriBundleDecoder.kt:29)
at com.kiwi.navigationcompose.typed.NavBuilderKt.decodeArguments(NavBuilder.kt:234)
at com.kiwi.navigationcompose.typed.NavBuilderKt$composable$1.invoke(NavBuilder.kt:77)
at com.kiwi.navigationcompose.typed.NavBuilderKt$composable$1.invoke(NavBuilder.kt:76)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:118)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.navigation.compose.NavHostKt$NavHost$4$2.invoke(NavHost.kt:173)
at androidx.navigation.compose.NavHostKt$NavHost$4$2.invoke(NavHost.kt:172)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:248)
at androidx.compose.runtime.saveable.SaveableStateHolderImpl.SaveableStateProvider(SaveableStateHolder.kt:84)
at androidx.navigation.compose.NavBackStackEntryProviderKt.SaveableStateProvider(NavBackStackEntryProvider.kt:65)
at androidx.navigation.compose.NavBackStackEntryProviderKt.access$SaveableStateProvider(NavBackStackEntryProvider.kt:1)
at androidx.navigation.compose.NavBackStackEntryProviderKt$LocalOwnersProvider$1.invoke(NavBackStackEntryProvider.kt:52)
at androidx.navigation.compose.NavBackStackEntryProviderKt$LocalOwnersProvider$1.invoke(NavBackStackEntryProvider.kt:51)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.runtime.CompositionLocalKt.CompositionLocalProvider(CompositionLocal.kt:228)
at androidx.navigation.compose.NavBackStackEntryProviderKt.LocalOwnersProvider(NavBackStackEntryProvider.kt:47)
at androidx.navigation.compose.NavHostKt$NavHost$4.invoke(NavHost.kt:172)
at androidx.navigation.compose.NavHostKt$NavHost$4.invoke(NavHost.kt:146)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:118)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.animation.CrossfadeKt$Crossfade$5$1.invoke(Crossfade.kt:133)
at androidx.compose.animation.CrossfadeKt$Crossfade$5$1.invoke(Crossfade.kt:128)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:109)
at androidx.compose.runtime.internal.ComposableLambdaImpl.invoke(ComposableLambda.jvm.kt:35)
at androidx.compose.animation.CrossfadeKt.Crossfade(Crossfade.kt:142)
at androidx.compose.animation.CrossfadeKt.Crossfade(Crossfade.kt:73)
at androidx.navigation.compose.NavHostKt.NavHost(NavHost.kt:146)
at androidx.navigation.compose.NavHostKt$NavHost$5.invoke(Unknown Source:13)
at androidx.navigation.compose.NavHostKt$NavHost$5.invoke(Unknown Source:10)
at androidx.compose.runtime.RecomposeScopeImpl.compose(RecomposeScopeImpl.kt:192)
at androidx.compose.runtime.ComposerImpl.recomposeToGroupEnd(Composer.kt:2556)
at androidx.compose.runtime.ComposerImpl.skipToGroupEnd(Composer.kt:2850)