From 27064d323bbe62e52ccbd4c611298f26a2fd153e Mon Sep 17 00:00:00 2001 From: Ismailov_Rovshan Date: Sat, 11 Nov 2023 03:13:55 +0400 Subject: [PATCH] com2 --- .idea/deploymentTargetDropDown.xml | 8 +- app/build.gradle.kts | 10 ++- .../com/example/myapplication/MainActivity.kt | 13 +-- .../myapplication/components/Catalog.kt | 34 ++++++++ .../example/myapplication/components/Main.kt | 60 ++++++++++++++ .../myapplication/components/Processors.kt | 48 +++++++++++ .../myapplication/components/Registration.kt | 66 +++++++++++++++ .../myapplication/components/Videocards.kt | 55 +++++++++++++ .../components/common/CatalogItem.kt | 48 +++++++++++ .../myapplication/components/common/Input.kt | 38 +++++++++ .../components/common/ProductCard.kt | 69 ++++++++++++++++ .../components/common/TextNice.kt | 9 ++ .../myapplication/navigation/NavItem.kt | 11 +++ .../myapplication/navigation/Navbar.kt | 82 +++++++++++++++++++ 14 files changed, 533 insertions(+), 18 deletions(-) create mode 100644 app/src/main/java/com/example/myapplication/components/Catalog.kt create mode 100644 app/src/main/java/com/example/myapplication/components/Main.kt create mode 100644 app/src/main/java/com/example/myapplication/components/Processors.kt create mode 100644 app/src/main/java/com/example/myapplication/components/Registration.kt create mode 100644 app/src/main/java/com/example/myapplication/components/Videocards.kt create mode 100644 app/src/main/java/com/example/myapplication/components/common/CatalogItem.kt create mode 100644 app/src/main/java/com/example/myapplication/components/common/Input.kt create mode 100644 app/src/main/java/com/example/myapplication/components/common/ProductCard.kt create mode 100644 app/src/main/java/com/example/myapplication/components/common/TextNice.kt create mode 100644 app/src/main/java/com/example/myapplication/navigation/NavItem.kt diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml index e9e4381..a685b6d 100644 --- a/.idea/deploymentTargetDropDown.xml +++ b/.idea/deploymentTargetDropDown.xml @@ -1,9 +1,9 @@ - + - + @@ -11,7 +11,7 @@ - - + + \ No newline at end of file diff --git a/app/build.gradle.kts b/app/build.gradle.kts index b2ff921..72c8b0a 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -5,12 +5,12 @@ plugins { android { namespace = "com.example.myapplication" - compileSdk = 33 + compileSdk = 34 defaultConfig { applicationId = "com.example.myapplication" minSdk = 24 - targetSdk = 33 + targetSdk = 34 versionCode = 1 versionName = "1.0" @@ -49,13 +49,15 @@ android { dependencies { implementation("androidx.core:core-ktx:1.9.0") - implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.1") - implementation("androidx.activity:activity-compose:1.7.0") + implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.2") + implementation("androidx.activity:activity-compose:1.7.2") implementation(platform("androidx.compose:compose-bom:2023.03.00")) + implementation("androidx.navigation:navigation-compose:2.6.0") implementation("androidx.compose.ui:ui") implementation("androidx.compose.ui:ui-graphics") implementation("androidx.compose.ui:ui-tooling-preview") implementation("androidx.compose.material3:material3") + implementation("androidx.navigation:navigation-runtime-ktx:2.7.5") testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.5") androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1") diff --git a/app/src/main/java/com/example/myapplication/MainActivity.kt b/app/src/main/java/com/example/myapplication/MainActivity.kt index 34bce68..25f6232 100644 --- a/app/src/main/java/com/example/myapplication/MainActivity.kt +++ b/app/src/main/java/com/example/myapplication/MainActivity.kt @@ -1,5 +1,6 @@ package com.example.myapplication +import Navbar import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent @@ -19,25 +20,17 @@ class MainActivity : ComponentActivity() { MyApplicationTheme { // A surface container using the 'background' color from the theme Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colorScheme.background) { - Greeting("Android") + Navbar() } } } } } -@Composable -fun Greeting(name: String, modifier: Modifier = Modifier) { - Text( - text = "Hello $name!", - modifier = modifier - ) -} - @Preview(showBackground = true) @Composable fun GreetingPreview() { MyApplicationTheme { - Greeting("Android") + Navbar() } } \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/Catalog.kt b/app/src/main/java/com/example/myapplication/components/Catalog.kt new file mode 100644 index 0000000..c586c62 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/Catalog.kt @@ -0,0 +1,34 @@ +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.navigation.NavController +import androidx.navigation.compose.rememberNavController + +@Composable +fun Catalog(navController: NavController){ + Column(modifier = Modifier.fillMaxWidth().padding(start = 10.dp, end = 10.dp, top = 20.dp, ), + horizontalAlignment = Alignment.End + ){ + CatalogItem(text = "Видеокарты",navController, "videocards") + CatalogItem(text = "Процессоры",navController, "processors") + CatalogItem(text = "ПЗУ",navController, "videocards") + CatalogItem(text = "ОЗУ",navController, "videocards") + } +} + +@Preview(showBackground = true) +@Composable +fun CatalogPreview() { +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/Main.kt b/app/src/main/java/com/example/myapplication/components/Main.kt new file mode 100644 index 0000000..9d87a18 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/Main.kt @@ -0,0 +1,60 @@ +import androidx.compose.foundation.BorderStroke +import androidx.compose.foundation.background +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.Button +import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.OutlinedTextField +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.text.style.TextAlign +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.navigation.NavController +import androidx.navigation.compose.rememberNavController +import com.example.myapplication.R +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun Main(navController: NavController) { + Column( + modifier = Modifier + .fillMaxSize() + .padding(8.dp) + ) { + OutlinedTextField( + value = "", + onValueChange = { }, + placeholder = { Text("Поиск товара") }, + modifier = Modifier + .fillMaxWidth() + .padding(8.dp) + ) + Text( + text = "Товары дня:", + fontSize = 28.sp, + color = Color.Black, + modifier = Modifier.padding(8.dp) + ) + + ProductCard("MSI GeForce RTX 4090 VENTUS 3X OC", 210999, R.drawable.product1) + ProductCard("Palit GeForce GTX 1660 SUPER", 25999, R.drawable.product2) + } +} + +@Preview(showBackground = true) +@Composable +fun MainPreview() { + val navController = rememberNavController() + + Main(navController = navController) +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/Processors.kt b/app/src/main/java/com/example/myapplication/components/Processors.kt new file mode 100644 index 0000000..9acc4fb --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/Processors.kt @@ -0,0 +1,48 @@ +import androidx.compose.foundation.BorderStroke +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.material3.Button +import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.navigation.NavController +import com.example.myapplication.R + +@Composable +fun Processors (navController: NavController) { + LazyColumn { + item { + Text( + text = "Видеокарты", + fontSize = 28.sp, + color = Color.Black, + modifier = Modifier.padding(8.dp) + ) + } + item { + ProductCard("Intel Celeron G5905 OEM", 4099, R.drawable.product3) + } + item { + ProductCard("AMD Ryzen 5 4500 BOX", 9799, R.drawable.product4) + } + + item { + Button( + onClick = { }, + modifier = Modifier.fillMaxWidth(0.5f).padding(start = 10.dp, top = 10.dp), + border = BorderStroke(1.dp, Color.Black), + + colors = ButtonDefaults.buttonColors( + Color.Green, + ) + ) { + Text("Добавить товар", fontSize = 14.sp, color = Color.Black) + } + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/Registration.kt b/app/src/main/java/com/example/myapplication/components/Registration.kt new file mode 100644 index 0000000..7d6e18c --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/Registration.kt @@ -0,0 +1,66 @@ +import androidx.compose.foundation.BorderStroke +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.material3.Button +import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.navigation.NavController +import androidx.compose.ui.tooling.preview.Preview +import androidx.navigation.compose.rememberNavController + + +@Composable +fun Registration (navController: NavController){ + Column( + modifier = Modifier + .fillMaxSize() + .padding(start = 10.dp, end = 10.dp), + verticalArrangement = Arrangement.Center, + horizontalAlignment = Alignment.CenterHorizontally + ){ + Input("Имя") + Input("Эл.почта") + Input("Пароль") + Input("Повторите пароль") + + Button( + onClick = { /*TODO*/ }, + modifier = Modifier.fillMaxWidth(), + ) + { + TextNice("Создать аккаунт") + } + + Button( + onClick = {navController.navigate("authorization")}, + modifier = Modifier.fillMaxWidth(), + border = BorderStroke(1.dp, Color.Black), + colors= ButtonDefaults.buttonColors( + containerColor= Color.White, + contentColor = Color.Gray + )) + { + TextNice("Авторизация") + + } + } +} + +@Preview(showBackground = true) +@Composable +fun RegistrationPreview() { + // Создаем заглушку для NavController + val navController = rememberNavController() + + // Выводим превью компонента + Registration(navController = navController) +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/Videocards.kt b/app/src/main/java/com/example/myapplication/components/Videocards.kt new file mode 100644 index 0000000..d22db61 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/Videocards.kt @@ -0,0 +1,55 @@ +import androidx.compose.foundation.BorderStroke +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.lazy.LazyColumn +import androidx.compose.material3.Button +import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.navigation.NavController +import androidx.navigation.compose.rememberNavController +import com.example.myapplication.R +@Composable +fun Videocards (navController: NavController) { + LazyColumn { + item { + Text( + text = "Видеокарты", + fontSize = 28.sp, + color = Color.Black, + modifier = Modifier.padding(8.dp) + ) + } + item { + ProductCard("MSI GeForce RTX 4090 VENTUS 3X OC", 210999, R.drawable.product1) + } + item { + ProductCard("Palit GeForce GTX 1660 SUPER", 25999, R.drawable.product2) + } + + item { + Button( + onClick = { }, + modifier = Modifier.fillMaxWidth(0.5f).padding(start = 10.dp, top = 10.dp), + border = BorderStroke(1.dp, Color.Black), + + colors = ButtonDefaults.buttonColors( + Color.Green, + ) + ) { + Text("Добавить товар", fontSize = 14.sp, color = Color.Black) + } + } + } +} +@Preview(showBackground = true) +@Composable +fun Videocards() { + val navController = rememberNavController() + Videocards(navController = navController) +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/common/CatalogItem.kt b/app/src/main/java/com/example/myapplication/components/common/CatalogItem.kt new file mode 100644 index 0000000..34cd199 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/common/CatalogItem.kt @@ -0,0 +1,48 @@ +import androidx.compose.runtime.Composable +import androidx.compose.foundation.BorderStroke +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.material3.Button +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.Button +import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.Text +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.RectangleShape +import androidx.compose.ui.graphics.painter.Painter +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import androidx.navigation.compose.rememberNavController +import android.graphics.Bitmap +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.size +import androidx.navigation.NavController + +@Composable +fun CatalogItem(text: String, navController: NavController, route: String) { + + Button( + onClick = { navController.navigate(route) }, + modifier = Modifier.fillMaxWidth().padding(3.dp), + border = BorderStroke(1.dp, Color.Black), + shape = RoundedCornerShape(15.dp), + colors = ButtonDefaults.buttonColors( + containerColor = Color.White, + ) + ) { + Row( + modifier = Modifier.fillMaxWidth(), + verticalAlignment = Alignment.CenterVertically + ) { + TextNice(text) + } + } +} + + diff --git a/app/src/main/java/com/example/myapplication/components/common/Input.kt b/app/src/main/java/com/example/myapplication/components/common/Input.kt new file mode 100644 index 0000000..a7967fb --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/common/Input.kt @@ -0,0 +1,38 @@ +import androidx.compose.foundation.border +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.OutlinedTextField +import androidx.compose.material3.Text +import androidx.compose.material3.TextField +import androidx.compose.material3.TextFieldDefaults +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.Dp +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun Input(label: String, height: Dp = 50.dp, modifier: Modifier = Modifier.padding(5.dp)) { + Column(modifier=modifier) { + OutlinedTextField( + placeholder = { + Text(label, fontSize = 15.sp, color = Color.Black) + }, + value = "", + onValueChange = {}, + colors= TextFieldDefaults.outlinedTextFieldColors( + focusedBorderColor = Color.Transparent, + disabledBorderColor = Color.Transparent, + unfocusedBorderColor = Color.Transparent, + errorBorderColor = Color.Transparent + ), + modifier = Modifier.border(1.dp, Color.Black, RoundedCornerShape(10.dp)).fillMaxWidth().height(height), + ) + } +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/common/ProductCard.kt b/app/src/main/java/com/example/myapplication/components/common/ProductCard.kt new file mode 100644 index 0000000..e28450b --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/common/ProductCard.kt @@ -0,0 +1,69 @@ +import android.graphics.Bitmap +import androidx.annotation.DrawableRes +import androidx.compose.foundation.BorderStroke +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.Spacer +import androidx.compose.foundation.layout.aspectRatio +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.Button +import androidx.compose.material3.ButtonDefaults +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.graphics.RectangleShape +import androidx.compose.ui.graphics.asImageBitmap +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.compose.ui.unit.sp +import com.example.myapplication.R + +@Composable +fun ProductCard(name: String, price: Int, @DrawableRes imgId: Int) { + + Column (modifier = Modifier.padding(top = 20.dp, start = 10.dp, end=10.dp)) { + Row { + Image( + painter = painterResource(id = imgId), + contentDescription = null, + modifier = Modifier + .size(200.dp) + .aspectRatio(1f) // Устанавливаем соотношение сторон 1:1 (квадрат) + ) + Column (modifier = Modifier.padding(start = 15.dp, end = 15.dp)){ + Text(text = name, fontSize = 24.sp, color = Color.Black) + Text(text = price.toString() + " ₽", fontSize = 16.sp, color = Color.Black) + } + } + Button( + onClick = { }, + modifier = Modifier.fillMaxWidth(), + border = BorderStroke(1.dp, Color.Black), + colors = ButtonDefaults.buttonColors( + containerColor = Color.White, + ) + ) { + TextNice("Добавить в корзину") + } + + + } + +} + +@Preview(showBackground = true) +@Composable +fun ProductCardPreview() { + ProductCard("MSI GeForce RTX 4090 VENTUS 3X OC" ,15000, R.drawable.product1) +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/components/common/TextNice.kt b/app/src/main/java/com/example/myapplication/components/common/TextNice.kt new file mode 100644 index 0000000..2212f68 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/components/common/TextNice.kt @@ -0,0 +1,9 @@ +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.graphics.Color +import androidx.compose.ui.unit.sp + +@Composable +fun TextNice(text: String) { + Text(text, fontSize = 25.sp, color = Color.Black) +} \ No newline at end of file diff --git a/app/src/main/java/com/example/myapplication/navigation/NavItem.kt b/app/src/main/java/com/example/myapplication/navigation/NavItem.kt new file mode 100644 index 0000000..95a1d89 --- /dev/null +++ b/app/src/main/java/com/example/myapplication/navigation/NavItem.kt @@ -0,0 +1,11 @@ +package com.example.myapplication.navigation; + +import androidx.annotation.DrawableRes; + +class NavItem( + val route : String, + val label : String, + @DrawableRes val icon : Int +) { +} + diff --git a/app/src/main/java/com/example/myapplication/navigation/Navbar.kt b/app/src/main/java/com/example/myapplication/navigation/Navbar.kt index e69de29..cd25279 100644 --- a/app/src/main/java/com/example/myapplication/navigation/Navbar.kt +++ b/app/src/main/java/com/example/myapplication/navigation/Navbar.kt @@ -0,0 +1,82 @@ +import androidx.compose.foundation.Image +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.NavigationBar +import androidx.compose.material3.NavigationBarItem +import androidx.compose.material3.Scaffold +import androidx.compose.material3.Surface +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.res.painterResource +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import androidx.navigation.NavType +import androidx.navigation.compose.NavHost +import androidx.navigation.compose.composable +import androidx.navigation.compose.rememberNavController +import androidx.navigation.navArgument +import com.example.myapplication.R +import com.example.myapplication.navigation.NavItem +import com.example.myapplication.ui.theme.MyApplicationTheme + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +fun Navbar() { + val navController = rememberNavController() + val items = listOf( + NavItem("main", "Главная", R.drawable.home), + NavItem("catalog", "Каталог", R.drawable.search), + NavItem("cart", "Корзина", R.drawable.cart), + ) + Scaffold( + bottomBar = { + NavigationBar { + items.forEach{item -> + NavigationBarItem( + icon = { + Image( + painter = painterResource(item.icon), + contentDescription = null, + modifier = Modifier.size(35.dp) + ) + }, + label={ Text(item.label) }, + onClick = { + navController.navigate(item.route) + }, + selected = false, + modifier = Modifier.fillMaxSize() + ) + } + } + } + ) {innerPaddings -> + NavHost( + navController = navController, + startDestination = "authorization", + modifier = Modifier.padding(innerPaddings) + ) { + composable("main") { Main(navController) } + composable("authorization") { Authorization(navController) } + composable("processors") { Processors(navController) } + composable("registration") { Registration(navController) } + composable("catalog") { Catalog(navController) } + composable("videocards") { Videocards(navController) } + } + } +} + +@Preview(name="Navbar") +@Composable +fun PreviewNavbar() { + MyApplicationTheme { + // A surface container using the 'background' color from the theme + Surface(modifier = Modifier.fillMaxSize(), color = MaterialTheme.colorScheme.background) { + Navbar() + } + } +}