Skip to content

Commit

Permalink
Fixed NavContainer functions by providing Scope generic type parameter
Browse files Browse the repository at this point in the history
  • Loading branch information
chRyNaN committed Jan 1, 2022
1 parent f29de19 commit 86d28c9
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 32 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ import androidx.compose.runtime.getValue

@Composable
@ExperimentalNavigationApi
internal actual fun <T> InternalNavContainer(
navigator: BaseComposeNavigatorByContentViewModel<T>
internal actual fun <Scope, Key> InternalNavContainer(
navigator: BaseComposeNavigatorByContentViewModel<Scope, Key>
) {
val contentKey by navigator.keyChanges.collectAsState(initial = navigator.initialKey)

val scope = object : ComposeNavigationContentScope<T> {
val scope = object : ComposeNavigationContentScope<Key> {

override val navigator: ComposeStackNavigatorByContent<T> = navigator
override val navigator: ComposeStackNavigatorByContent<Key> = navigator
}

Box {
Expand All @@ -26,9 +26,9 @@ internal actual fun <T> InternalNavContainer(

@Composable
@ExperimentalNavigationApi
internal actual fun <T, S : ComposeNavigationKeyScope<T>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<T, S>,
scope: S
internal actual fun <Scope, Key, NavigationScope : ComposeNavigationKeyScope<Key>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<Scope, Key, NavigationScope>,
scope: NavigationScope
) {
val contentKey by navigator.keyChanges.collectAsState(initial = navigator.initialKey)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ import com.chrynan.navigation.NavigationIntent

@Composable
@ExperimentalNavigationApi
internal expect fun <T> InternalNavContainer(navigator: BaseComposeNavigatorByContentViewModel<T>)
internal expect fun <Scope, Key> InternalNavContainer(navigator: BaseComposeNavigatorByContentViewModel<Scope, Key>)

@Composable
@ExperimentalNavigationApi
internal expect fun <T, S : ComposeNavigationKeyScope<T>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<T, S>,
scope: S
internal expect fun <Scope, Key, NavigationScope : ComposeNavigationKeyScope<Key>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<Scope, Key, NavigationScope>,
scope: NavigationScope
)

/**
Expand All @@ -37,7 +37,7 @@ internal expect fun <T, S : ComposeNavigationKeyScope<T>> InternalNavContainer(
*/
@Composable
@ExperimentalNavigationApi
fun <T> NavContainer(navigator: ComposeNavigatorByContentViewModel<T>) {
fun <Scope, Key> NavContainer(navigator: ComposeNavigatorByContentViewModel<Scope, Key>) {
InternalNavContainer(navigator = navigator)
}

Expand Down Expand Up @@ -68,10 +68,10 @@ fun <T> NavContainer(navigator: ComposeNavigatorByContentViewModel<T>) {
*/
@Composable
@ExperimentalNavigationApi
fun <T> NavContainer(navigator: ComposeNavigatorByKeyViewModel<T>) {
val scope = object : ComposeNavigationKeyScope<T> {
fun <Scope, Key> NavContainer(navigator: ComposeNavigatorByKeyViewModel<Scope, Key>) {
val scope = object : ComposeNavigationKeyScope<Key> {

override val navigator: ComposeStackNavigatorByKey<T>
override val navigator: ComposeStackNavigatorByKey<Key>
get() = navigator
}

Expand Down Expand Up @@ -104,10 +104,10 @@ fun <T> NavContainer(navigator: ComposeNavigatorByKeyViewModel<T>) {
*/
@Composable
@ExperimentalNavigationApi
fun <T : NavigationIntent> NavContainer(navigator: ComposeNavigationIntentNavigatorByKeyViewModel<T>) {
val scope = object : ComposeNavigationIntentScope<T> {
fun <Scope, Intent : NavigationIntent> NavContainer(navigator: ComposeNavigationIntentNavigatorByKeyViewModel<Scope, Intent>) {
val scope = object : ComposeNavigationIntentScope<Intent> {

override val navigator: ComposeNavigationIntentStackNavigatorByKey<T>
override val navigator: ComposeNavigationIntentStackNavigatorByKey<Intent>
get() = navigator
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ import org.jetbrains.compose.web.dom.Div

@Composable
@ExperimentalNavigationApi
internal actual fun <T> InternalNavContainer(
navigator: BaseComposeNavigatorByContentViewModel<T>
internal actual fun <Scope, Key> InternalNavContainer(
navigator: BaseComposeNavigatorByContentViewModel<Scope, Key>
) {
val contentKey by navigator.keyChanges.collectAsState(initial = navigator.initialKey)

val scope = object : ComposeNavigationContentScope<T> {
val scope = object : ComposeNavigationContentScope<Key> {

override val navigator: ComposeStackNavigatorByContent<T> = navigator
override val navigator: ComposeStackNavigatorByContent<Key> = navigator
}

Div {
Expand All @@ -26,9 +26,9 @@ internal actual fun <T> InternalNavContainer(

@Composable
@ExperimentalNavigationApi
internal actual fun <T, S : ComposeNavigationKeyScope<T>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<T, S>,
scope: S
internal actual fun <Scope, Key, NavigationScope : ComposeNavigationKeyScope<Key>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<Scope, Key, NavigationScope>,
scope: NavigationScope
) {
val contentKey by navigator.keyChanges.collectAsState(initial = navigator.initialKey)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,14 @@ import androidx.compose.runtime.getValue

@Composable
@ExperimentalNavigationApi
internal actual fun <T> InternalNavContainer(
navigator: BaseComposeNavigatorByContentViewModel<T>
internal actual fun <Scope, Key> InternalNavContainer(
navigator: BaseComposeNavigatorByContentViewModel<Scope, Key>
) {
val contentKey by navigator.keyChanges.collectAsState(initial = navigator.initialKey)

val scope = object : ComposeNavigationContentScope<T> {
val scope = object : ComposeNavigationContentScope<Key> {

override val navigator: ComposeStackNavigatorByContent<T> = navigator
override val navigator: ComposeStackNavigatorByContent<Key> = navigator
}

Box {
Expand All @@ -26,9 +26,9 @@ internal actual fun <T> InternalNavContainer(

@Composable
@ExperimentalNavigationApi
internal actual fun <T, S : ComposeNavigationKeyScope<T>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<T, S>,
scope: S
internal actual fun <Scope, Key, NavigationScope : ComposeNavigationKeyScope<Key>> InternalNavContainer(
navigator: BaseComposeNavigatorByKeyViewModel<Scope, Key, NavigationScope>,
scope: NavigationScope
) {
val contentKey by navigator.keyChanges.collectAsState(initial = navigator.initialKey)

Expand Down

0 comments on commit 86d28c9

Please sign in to comment.