Screen.kt 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. package io.nexilis.alpha.ui.screen
  2. import androidx.compose.material.icons.Icons
  3. import androidx.compose.material.icons.automirrored.filled.Chat
  4. import androidx.compose.material.icons.filled.AttachFile
  5. import androidx.compose.material.icons.filled.Email
  6. import androidx.compose.material.icons.filled.Home
  7. import androidx.compose.material.icons.filled.Person
  8. import androidx.compose.ui.graphics.vector.ImageVector
  9. sealed class Screen(
  10. val route: String,
  11. val imageVector: ImageVector,
  12. val title: String
  13. ) {
  14. object Home : Screen("home", Icons.Filled.Home, "Home")
  15. object Chats : Screen("chats", Icons.AutoMirrored.Filled.Chat, "Chats")
  16. object Profile : Screen("profile", Icons.Filled.Person, "Profile")
  17. object Contact : Screen("contact", Icons.Filled.Email, "Contact")
  18. object Chat : Screen("chat", Icons.Filled.Email, "Chat")
  19. object SignIn : Screen("sign_in", Icons.Filled.Email, "Sign In")
  20. object SignUp : Screen("sign_up", Icons.Filled.Email, "Sign Up")
  21. object Friend : Screen("friend", Icons.Filled.Person, "Friend")
  22. object AttachmentCaption : Screen("attachment", Icons.Filled.AttachFile, "Attachments")
  23. }
  24. val barItems = listOf(
  25. Screen.Home,
  26. Screen.Chats,
  27. Screen.Profile
  28. )
  29. val screenItems = listOf(
  30. Screen.Home,
  31. Screen.Chats,
  32. Screen.Profile,
  33. Screen.Contact,
  34. Screen.Chat,
  35. Screen.SignIn,
  36. Screen.SignUp,
  37. Screen.Friend,
  38. Screen.AttachmentCaption
  39. )