From 3de809e23fd8b19014e21b6b0aa8d3c157b7a4cf Mon Sep 17 00:00:00 2001 From: sathwikcs <85106054+sathwikcs@users.noreply.github.com> Date: Thu, 23 Jan 2025 11:56:30 +0530 Subject: [PATCH] scanner --- .../home/ui/componets/ScannerToggleCard.kt | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/ScannerToggleCard.kt diff --git a/app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/ScannerToggleCard.kt b/app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/ScannerToggleCard.kt new file mode 100644 index 0000000..67ac33d --- /dev/null +++ b/app/src/main/java/in/sminnovations/attendanceapp/screens/home/ui/componets/ScannerToggleCard.kt @@ -0,0 +1,54 @@ +package `in`.sminnovations.attendanceapp.screens.home.ui.componets + +import androidx.compose.foundation.layout.Arrangement +import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.layout.padding +import androidx.compose.material.icons.Icons +import androidx.compose.material.icons.filled.Close +import androidx.compose.material.icons.filled.KeyboardArrowUp +import androidx.compose.material3.CardDefaults +import androidx.compose.material3.ExperimentalMaterial3Api +import androidx.compose.material3.Icon +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.OutlinedCard +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Alignment +import androidx.compose.ui.Modifier +import androidx.compose.ui.text.font.FontWeight +import androidx.compose.ui.unit.dp + +@OptIn(ExperimentalMaterial3Api::class) +@Composable +internal fun ScannerToggleButton( + isScanning: Boolean, onClick: () -> Unit, modifier: Modifier = Modifier +) { + OutlinedCard( + onClick = onClick, colors = CardDefaults.cardColors( + containerColor = MaterialTheme.colorScheme.primary + ), modifier = modifier + .fillMaxWidth() + .padding(16.dp) + ) { + Row( + modifier = Modifier + .fillMaxWidth() + .padding(vertical = 16.dp), + horizontalArrangement = Arrangement.Center, + verticalAlignment = Alignment.CenterVertically + ) { + Icon( + imageVector = if (isScanning) Icons.Default.Close else Icons.Default.KeyboardArrowUp, + contentDescription = null, + modifier = Modifier.padding(end = 8.dp) + ) + Text( + text = if (isScanning) "Close Scanner" else "Open Scanner", + style = MaterialTheme.typography.titleMedium, + fontWeight = FontWeight.Bold + ) + } + } +} +