TopComponents

This commit is contained in:
sathwikcs
2024-10-24 09:42:30 +05:30
parent a48f7ff007
commit bb59f43dfe

View File

@@ -7,37 +7,19 @@ import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.Button
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.collectAsState
import androidx.compose.runtime.getValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.layout.ContentScale
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
import androidx.hilt.navigation.compose.hiltViewModel
import androidx.navigation.NavController
import androidx.navigation.compose.rememberNavController
import `in`.sminnovations.attendanceapp.R
import `in`.sminnovations.attendanceapp.screens.settings.data.EmployeeDataSettings
import `in`.sminnovations.attendanceapp.screens.settings.viewModel.SettingsViewModel
@Composable
fun TopComponents(
navController: NavController,
settingsViewModel: SettingsViewModel = hiltViewModel()
) {
val employeeDataSettings by settingsViewModel.employeeDataSettings.collectAsState(
initial = EmployeeDataSettings()
)
Column(
modifier = Modifier.fillMaxWidth(), horizontalAlignment = Alignment.CenterHorizontally
) {
@@ -51,38 +33,5 @@ fun TopComponents(
)
Spacer(modifier = Modifier.height(16.dp))
Text(
text = employeeDataSettings.name,
style = MaterialTheme.typography.titleMedium,
fontWeight = FontWeight.Bold,
fontSize = 20.sp,
color = MaterialTheme.colorScheme.onSurface
)
Spacer(modifier = Modifier.height(8.dp))
Text(
text = "ID: ${employeeDataSettings.id}",
style = MaterialTheme.typography.bodyMedium,
color = MaterialTheme.colorScheme.onSurfaceVariant,
fontSize = 16.sp
)
Spacer(modifier = Modifier.height(4.dp))
Text(
text = employeeDataSettings.designation,
style = MaterialTheme.typography.bodyMedium,
color = MaterialTheme.colorScheme.primary,
fontSize = 16.sp
)
Spacer(modifier = Modifier.height(8.dp))
Button(onClick = {
settingsViewModel.logout()
navController.navigate("login")
}) {
Text(text = "Log out")
}
}
}