From 8d2e33b222de9f9c06098aa03c6ead6ceb09d977 Mon Sep 17 00:00:00 2001 From: "debanshu.datta" Date: Wed, 30 Mar 2022 22:59:00 +0530 Subject: [PATCH] Adding Bottom Navigation and reorganizing code --- .idea/deploymentTargetDropDown.xml | 4 +- .../compose_github/di/AppModule.kt | 1 - ...itHubRepository.kt => githubRepository.kt} | 2 +- ...{GitHubViewModel.kt => githubViewModel.kt} | 6 +-- .../compose_github/ui/MainActivity.kt | 19 +++----- .../compose_github/ui/base/MainScreen.kt | 43 +++++++++++++++++++ .../compose_github/ui/base/Navigation.kt | 29 +++++++++++++ .../compose_github/ui/base/Screen.kt | 12 ++++++ .../ui/base/components/AddItem.kt | 39 +++++++++++++++++ .../ui/base/components/BottomBar.kt | 23 ++++++++++ .../components/MainAppBar.kt | 1 + .../components/SearchBar.kt | 2 +- .../state/SearchState.kt | 0 .../state/SearchWidgetState.kt | 0 .../ui/feature_follow/FollowScreen.kt | 9 ++++ .../ui/feature_profile/ProfileScreen.kt | 4 +- .../ui/feature_search/SearchScreen.kt | 33 ++------------ .../ui/feature_trending/TrendingScreen.kt | 9 ++++ .../ui/navigation/Navigation.kt | 22 ---------- .../compose_github/ui/navigation/Screen.kt | 6 --- build.gradle | 2 +- 21 files changed, 183 insertions(+), 83 deletions(-) rename app/src/main/java/com/debanshu777/compose_github/network/dataSource/{GitHubRepository.kt => githubRepository.kt} (96%) rename app/src/main/java/com/debanshu777/compose_github/network/dataSource/{GitHubViewModel.kt => githubViewModel.kt} (87%) create mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/base/MainScreen.kt create mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/base/Navigation.kt create mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/base/Screen.kt create mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/base/components/AddItem.kt create mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/base/components/BottomBar.kt rename app/src/main/java/com/debanshu777/compose_github/ui/{feature_search => base}/components/MainAppBar.kt (96%) rename app/src/main/java/com/debanshu777/compose_github/ui/{feature_search => base}/components/SearchBar.kt (97%) rename app/src/main/java/com/debanshu777/compose_github/ui/{feature_search => base}/state/SearchState.kt (100%) rename app/src/main/java/com/debanshu777/compose_github/ui/{feature_search => base}/state/SearchWidgetState.kt (100%) create mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/feature_follow/FollowScreen.kt create mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/feature_trending/TrendingScreen.kt delete mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/navigation/Navigation.kt delete mode 100644 app/src/main/java/com/debanshu777/compose_github/ui/navigation/Screen.kt diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml index 4bc0e10..7e6a4ee 100644 --- a/.idea/deploymentTargetDropDown.xml +++ b/.idea/deploymentTargetDropDown.xml @@ -7,11 +7,11 @@ - + - + \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/di/AppModule.kt b/app/src/main/java/com/debanshu777/compose_github/di/AppModule.kt index badf469..56d962c 100644 --- a/app/src/main/java/com/debanshu777/compose_github/di/AppModule.kt +++ b/app/src/main/java/com/debanshu777/compose_github/di/AppModule.kt @@ -13,7 +13,6 @@ import io.ktor.client.features.json.serializer.* import io.ktor.client.features.logging.* import io.ktor.client.request.* import io.ktor.http.* -import javax.inject.Singleton @InstallIn(SingletonComponent::class) @Module diff --git a/app/src/main/java/com/debanshu777/compose_github/network/dataSource/GitHubRepository.kt b/app/src/main/java/com/debanshu777/compose_github/network/dataSource/githubRepository.kt similarity index 96% rename from app/src/main/java/com/debanshu777/compose_github/network/dataSource/GitHubRepository.kt rename to app/src/main/java/com/debanshu777/compose_github/network/dataSource/githubRepository.kt index 6677bc0..a536e78 100644 --- a/app/src/main/java/com/debanshu777/compose_github/network/dataSource/GitHubRepository.kt +++ b/app/src/main/java/com/debanshu777/compose_github/network/dataSource/githubRepository.kt @@ -11,7 +11,7 @@ import javax.inject.Inject import javax.inject.Provider import kotlin.io.use -class GitHubRepository @Inject constructor(){ +class githubRepository @Inject constructor(){ @Inject lateinit var httpClient : Provider suspend fun getUserData(userId:String): Resource { return try { diff --git a/app/src/main/java/com/debanshu777/compose_github/network/dataSource/GitHubViewModel.kt b/app/src/main/java/com/debanshu777/compose_github/network/dataSource/githubViewModel.kt similarity index 87% rename from app/src/main/java/com/debanshu777/compose_github/network/dataSource/GitHubViewModel.kt rename to app/src/main/java/com/debanshu777/compose_github/network/dataSource/githubViewModel.kt index 6331c01..b425430 100644 --- a/app/src/main/java/com/debanshu777/compose_github/network/dataSource/GitHubViewModel.kt +++ b/app/src/main/java/com/debanshu777/compose_github/network/dataSource/githubViewModel.kt @@ -1,14 +1,10 @@ package com.debanshu777.compose_github.network.dataSource -import android.util.Log import androidx.compose.runtime.MutableState import androidx.compose.runtime.State import androidx.compose.runtime.mutableStateOf import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope -import com.debanshu777.compose_github.network.model.GitHubSearchResponse -import com.debanshu777.compose_github.network.model.GitHubSearchUserList -import com.debanshu777.compose_github.network.model.GitHubUserResponse import com.debanshu777.compose_github.ui.feature_profile.state.ProfileState import com.debanshu777.compose_github.ui.feature_search.state.SearchState import com.debanshu777.compose_github.ui.feature_search.state.SearchWidgetState @@ -19,7 +15,7 @@ import kotlinx.coroutines.launch import javax.inject.Inject @HiltViewModel -class GitHubViewModel @Inject constructor(private val gitHubRepository: GitHubRepository) :ViewModel() { +class githubViewModel @Inject constructor(private val gitHubRepository: githubRepository) :ViewModel() { val userDataState = MutableStateFlow(ProfileState()) val searchState= MutableStateFlow(SearchState()) diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/MainActivity.kt b/app/src/main/java/com/debanshu777/compose_github/ui/MainActivity.kt index 21210d1..8ba0999 100644 --- a/app/src/main/java/com/debanshu777/compose_github/ui/MainActivity.kt +++ b/app/src/main/java/com/debanshu777/compose_github/ui/MainActivity.kt @@ -3,17 +3,10 @@ package com.debanshu777.compose_github.ui import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent -import androidx.compose.material.MaterialTheme -import androidx.compose.material.Surface -import androidx.compose.material.Text -import androidx.compose.runtime.Composable -import androidx.compose.runtime.collectAsState -import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.material.* import androidx.hilt.navigation.compose.hiltViewModel -import androidx.lifecycle.viewmodel.compose.viewModel -import com.debanshu777.compose_github.network.dataSource.GitHubViewModel -import com.debanshu777.compose_github.ui.feature_search.SearchScreen -import com.debanshu777.compose_github.ui.navigation.Navigation +import com.debanshu777.compose_github.network.dataSource.githubViewModel +import com.debanshu777.compose_github.ui.base.MainScreen import com.debanshu777.compose_github.ui.theme.ComposeGithubTheme import dagger.hilt.android.AndroidEntryPoint @@ -23,12 +16,12 @@ class MainActivity : ComponentActivity() { super.onCreate(savedInstanceState) setContent { ComposeGithubTheme { - val viewModel:GitHubViewModel= hiltViewModel() + val viewModel:githubViewModel= hiltViewModel() // A surface container using the 'background' color from the theme Surface(color = MaterialTheme.colors.background) { - Navigation(viewModel) + MainScreen(viewModel) } } } } -} +} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/base/MainScreen.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/MainScreen.kt new file mode 100644 index 0000000..47df167 --- /dev/null +++ b/app/src/main/java/com/debanshu777/compose_github/ui/base/MainScreen.kt @@ -0,0 +1,43 @@ +package com.debanshu777.compose_github.ui.base + +import androidx.compose.material.Scaffold +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.navigation.compose.rememberNavController +import com.debanshu777.compose_github.network.dataSource.githubViewModel +import com.debanshu777.compose_github.ui.base.components.BottomBar +import com.debanshu777.compose_github.ui.feature_search.components.MainAppBar +import com.debanshu777.compose_github.ui.feature_search.state.SearchState +import com.debanshu777.compose_github.ui.feature_search.state.SearchWidgetState + +@Composable +fun MainScreen(viewModel: githubViewModel){ + val navController = rememberNavController() + val searchWidgetState by viewModel.searchWidgetState + val searchTextState by viewModel.searchTextState + Scaffold( + topBar = { + MainAppBar( + searchWidgetState = searchWidgetState, + searchTextState = searchTextState, + onTextChange = { + viewModel.updateSearchTextState(it) + }, + onCloseClicked = { + viewModel.updateSearchTextState("") + viewModel.updateSearchWidgetState(SearchWidgetState.CLOSED) + viewModel.searchState.value= SearchState(data= emptyList()) + }, + onSearchClick = { + viewModel.searchUser(it) + }, + onSearchTriggered={ + viewModel.updateSearchWidgetState(SearchWidgetState.OPENED) + } + ) + }, + bottomBar = { BottomBar(navController = navController)} + ) { + Navigation(viewModel,navController) + } +} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/base/Navigation.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/Navigation.kt new file mode 100644 index 0000000..eb012f4 --- /dev/null +++ b/app/src/main/java/com/debanshu777/compose_github/ui/base/Navigation.kt @@ -0,0 +1,29 @@ +package com.debanshu777.compose_github.ui.base + +import androidx.compose.runtime.Composable +import androidx.navigation.NavHostController +import androidx.navigation.compose.NavHost +import androidx.navigation.compose.composable +import com.debanshu777.compose_github.network.dataSource.githubViewModel +import com.debanshu777.compose_github.ui.feature_follow.FollowScreen +import com.debanshu777.compose_github.ui.feature_profile.ProfileScreen +import com.debanshu777.compose_github.ui.feature_search.SearchScreen +import com.debanshu777.compose_github.ui.feature_trending.TrendingScreen + +@Composable +fun Navigation(viewModel: githubViewModel, navController: NavHostController) { + NavHost(navController = navController, startDestination = Screen.TrendingScreen.route) { + composable(route = Screen.SearchScreen.route){ + SearchScreen(viewModel,navController) + } + composable(route = Screen.ProfileScreen.route){ + ProfileScreen(viewModel) + } + composable(route= Screen.TrendingScreen.route){ + TrendingScreen() + } + composable(route = Screen.FollowScreen.route){ + FollowScreen() + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/base/Screen.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/Screen.kt new file mode 100644 index 0000000..a166972 --- /dev/null +++ b/app/src/main/java/com/debanshu777/compose_github/ui/base/Screen.kt @@ -0,0 +1,12 @@ +package com.debanshu777.compose_github.ui.base + +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.* +import androidx.compose.ui.graphics.vector.ImageVector + +sealed class Screen(val route:String, val title:String, val icon:ImageVector){ + object SearchScreen: Screen("search_screen","Search", Icons.Default.Search) + object ProfileScreen: Screen("profile_screen","Profile", Icons.Default.Person) + object TrendingScreen: Screen("trending_screen","Trending", Icons.Default.DateRange) + object FollowScreen: Screen("follow_screen","Follow", Icons.Default.Favorite) +} diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/base/components/AddItem.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/AddItem.kt new file mode 100644 index 0000000..b891ed7 --- /dev/null +++ b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/AddItem.kt @@ -0,0 +1,39 @@ +package com.debanshu777.compose_github.ui.base.components + +import androidx.compose.foundation.layout.RowScope +import androidx.compose.material.* +import androidx.compose.runtime.Composable +import androidx.navigation.NavDestination +import androidx.navigation.NavDestination.Companion.hierarchy +import androidx.navigation.NavGraph.Companion.findStartDestination +import androidx.navigation.NavHostController +import com.debanshu777.compose_github.ui.base.Screen + +@Composable +fun RowScope.AddItem( + screen: Screen, + currentDestination: NavDestination?, + navController: NavHostController +){ + BottomNavigationItem( + label={ + Text(text = screen.title) + }, + icon = { + Icon( + imageVector = screen.icon, + contentDescription = "Navigation Icon" + ) + }, + selected = currentDestination?.hierarchy?.any{ + it.route == screen.route + } == true, + unselectedContentColor = LocalContentColor.current.copy(alpha = ContentAlpha.disabled), + onClick = { + navController.navigate(screen.route){ + popUpTo(navController.graph.findStartDestination().id) + launchSingleTop =true + } + } + ) +} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/base/components/BottomBar.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/BottomBar.kt new file mode 100644 index 0000000..bf5a9f2 --- /dev/null +++ b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/BottomBar.kt @@ -0,0 +1,23 @@ +package com.debanshu777.compose_github.ui.base.components + +import androidx.compose.material.BottomNavigation +import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.navigation.NavHostController +import androidx.navigation.compose.currentBackStackEntryAsState +import com.debanshu777.compose_github.ui.base.Screen + +@Composable +fun BottomBar(navController: NavHostController){ + val screens = listOf( + Screen.TrendingScreen, + Screen.FollowScreen + ) + val navBackStackEntry by navController.currentBackStackEntryAsState() + val currentDestination=navBackStackEntry?.destination + BottomNavigation { + screens.forEach{ screen -> + AddItem(screen = screen, currentDestination = currentDestination, navController = navController) + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/components/MainAppBar.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/MainAppBar.kt similarity index 96% rename from app/src/main/java/com/debanshu777/compose_github/ui/feature_search/components/MainAppBar.kt rename to app/src/main/java/com/debanshu777/compose_github/ui/base/components/MainAppBar.kt index 06109e9..70b1b15 100644 --- a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/components/MainAppBar.kt +++ b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/MainAppBar.kt @@ -8,6 +8,7 @@ import androidx.compose.material.icons.Icons import androidx.compose.material.icons.filled.Search import androidx.compose.runtime.Composable import androidx.compose.ui.tooling.preview.Preview +import com.debanshu777.compose_github.ui.base.components.SearchBar import com.debanshu777.compose_github.ui.feature_search.state.SearchWidgetState @Composable diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/components/SearchBar.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/SearchBar.kt similarity index 97% rename from app/src/main/java/com/debanshu777/compose_github/ui/feature_search/components/SearchBar.kt rename to app/src/main/java/com/debanshu777/compose_github/ui/base/components/SearchBar.kt index 818a0d5..ee67862 100644 --- a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/components/SearchBar.kt +++ b/app/src/main/java/com/debanshu777/compose_github/ui/base/components/SearchBar.kt @@ -1,4 +1,4 @@ -package com.debanshu777.compose_github.ui.feature_search.components +package com.debanshu777.compose_github.ui.base.components import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/state/SearchState.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/state/SearchState.kt similarity index 100% rename from app/src/main/java/com/debanshu777/compose_github/ui/feature_search/state/SearchState.kt rename to app/src/main/java/com/debanshu777/compose_github/ui/base/state/SearchState.kt diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/state/SearchWidgetState.kt b/app/src/main/java/com/debanshu777/compose_github/ui/base/state/SearchWidgetState.kt similarity index 100% rename from app/src/main/java/com/debanshu777/compose_github/ui/feature_search/state/SearchWidgetState.kt rename to app/src/main/java/com/debanshu777/compose_github/ui/base/state/SearchWidgetState.kt diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_follow/FollowScreen.kt b/app/src/main/java/com/debanshu777/compose_github/ui/feature_follow/FollowScreen.kt new file mode 100644 index 0000000..db922b9 --- /dev/null +++ b/app/src/main/java/com/debanshu777/compose_github/ui/feature_follow/FollowScreen.kt @@ -0,0 +1,9 @@ +package com.debanshu777.compose_github.ui.feature_follow + +import androidx.compose.material.Text +import androidx.compose.runtime.Composable + +@Composable +fun FollowScreen(){ + Text("Follow Screen") +} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_profile/ProfileScreen.kt b/app/src/main/java/com/debanshu777/compose_github/ui/feature_profile/ProfileScreen.kt index d94b482..14657d4 100644 --- a/app/src/main/java/com/debanshu777/compose_github/ui/feature_profile/ProfileScreen.kt +++ b/app/src/main/java/com/debanshu777/compose_github/ui/feature_profile/ProfileScreen.kt @@ -4,10 +4,10 @@ import androidx.compose.material.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue -import com.debanshu777.compose_github.network.dataSource.GitHubViewModel +import com.debanshu777.compose_github.network.dataSource.githubViewModel @Composable -fun ProfileScreen(viewModel:GitHubViewModel){ +fun ProfileScreen(viewModel:githubViewModel){ val profileData by viewModel.userDataState.collectAsState() Text(text = profileData.data.toString()) } \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/SearchScreen.kt b/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/SearchScreen.kt index 849963b..571df84 100644 --- a/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/SearchScreen.kt +++ b/app/src/main/java/com/debanshu777/compose_github/ui/feature_search/SearchScreen.kt @@ -21,43 +21,18 @@ import androidx.compose.ui.unit.ExperimentalUnitApi import androidx.compose.ui.unit.TextUnit import androidx.compose.ui.unit.TextUnitType import androidx.compose.ui.unit.dp -import androidx.hilt.navigation.compose.hiltViewModel import androidx.navigation.NavController import coil.compose.AsyncImage -import com.debanshu777.compose_github.network.dataSource.GitHubViewModel +import com.debanshu777.compose_github.network.dataSource.githubViewModel import com.debanshu777.compose_github.ui.feature_search.components.Card -import com.debanshu777.compose_github.ui.feature_search.components.MainAppBar -import com.debanshu777.compose_github.ui.feature_search.state.SearchState -import com.debanshu777.compose_github.ui.feature_search.state.SearchWidgetState -import com.debanshu777.compose_github.ui.navigation.Screen +import com.debanshu777.compose_github.ui.base.Screen @OptIn(ExperimentalUnitApi::class) @Composable -fun SearchScreen(viewModel: GitHubViewModel, navController: NavController){ - val searchWidgetState by viewModel.searchWidgetState - val searchTextState by viewModel.searchTextState +fun SearchScreen(viewModel: githubViewModel, navController: NavController){ val searchData by viewModel.searchState.collectAsState() Scaffold( - topBar = { - MainAppBar( - searchWidgetState = searchWidgetState, - searchTextState = searchTextState, - onTextChange = { - viewModel.updateSearchTextState(it) - }, - onCloseClicked = { - viewModel.updateSearchTextState("") - viewModel.updateSearchWidgetState(SearchWidgetState.CLOSED) - viewModel.searchState.value= SearchState(data= emptyList()) - }, - onSearchClick = { - viewModel.searchUser(it) - }, - onSearchTriggered={ - viewModel.updateSearchWidgetState(SearchWidgetState.OPENED) - } - ) - } + ) { LazyColumn( modifier = Modifier.fillMaxWidth(), diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/feature_trending/TrendingScreen.kt b/app/src/main/java/com/debanshu777/compose_github/ui/feature_trending/TrendingScreen.kt new file mode 100644 index 0000000..3ff9a10 --- /dev/null +++ b/app/src/main/java/com/debanshu777/compose_github/ui/feature_trending/TrendingScreen.kt @@ -0,0 +1,9 @@ +package com.debanshu777.compose_github.ui.feature_trending + +import androidx.compose.material.Text +import androidx.compose.runtime.Composable + +@Composable +fun TrendingScreen() { + Text("Trending Screen") +} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/navigation/Navigation.kt b/app/src/main/java/com/debanshu777/compose_github/ui/navigation/Navigation.kt deleted file mode 100644 index 384c5e7..0000000 --- a/app/src/main/java/com/debanshu777/compose_github/ui/navigation/Navigation.kt +++ /dev/null @@ -1,22 +0,0 @@ -package com.debanshu777.compose_github.ui.navigation - -import androidx.compose.runtime.Composable -import androidx.navigation.compose.NavHost -import androidx.navigation.compose.composable -import androidx.navigation.compose.rememberNavController -import com.debanshu777.compose_github.network.dataSource.GitHubViewModel -import com.debanshu777.compose_github.ui.feature_profile.ProfileScreen -import com.debanshu777.compose_github.ui.feature_search.SearchScreen - -@Composable -fun Navigation(viewModel: GitHubViewModel) { - val navController = rememberNavController() - NavHost(navController = navController, startDestination = Screen.SearchScreen.route) { - composable(route = Screen.SearchScreen.route){ - SearchScreen(viewModel,navController) - } - composable(route = Screen.ProfileScreen.route){ - ProfileScreen(viewModel) - } - } -} \ No newline at end of file diff --git a/app/src/main/java/com/debanshu777/compose_github/ui/navigation/Screen.kt b/app/src/main/java/com/debanshu777/compose_github/ui/navigation/Screen.kt deleted file mode 100644 index 5b2035b..0000000 --- a/app/src/main/java/com/debanshu777/compose_github/ui/navigation/Screen.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.debanshu777.compose_github.ui.navigation - -sealed class Screen(val route:String){ - object SearchScreen: Screen("search_screen") - object ProfileScreen: Screen("profile_screen") -} diff --git a/build.gradle b/build.gradle index 306dfef..3819ba2 100644 --- a/build.gradle +++ b/build.gradle @@ -23,6 +23,6 @@ task clean(type: Delete) { tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach { kotlinOptions { - freeCompilerArgs += "-opt-in=org.mylibrary.OptInAnnotation" + freeCompilerArgs += "-opt-in=kotlin.RequiresOptIn" } } \ No newline at end of file