feat: change package name

This commit is contained in:
2026-06-05 18:02:48 +03:30
parent 92b7ab49c4
commit cbe77fbb9e
97 changed files with 3228 additions and 3395 deletions
@@ -0,0 +1,108 @@
package com.approagency.pharmacy.navigation
import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.navigationBarsPadding
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.LocalPharmacy
import androidx.compose.material.icons.filled.Science
import androidx.compose.material.icons.filled.Search
import androidx.compose.material3.Icon
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
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.graphics.Color
import androidx.compose.ui.unit.dp
import androidx.navigation.NavHostController
import androidx.navigation.compose.currentBackStackEntryAsState
@Composable
fun BottomBar(navController: NavHostController) {
val items = listOf(
Triple("home", "عمومی", Icons.Filled.LocalPharmacy),
Triple("search", "جستجو",Icons.Filled.Search),
Triple("lab", "آزمایش", Icons.Filled.Science)
)
val navBackStackEntry by navController.currentBackStackEntryAsState()
val currentRoute = navBackStackEntry?.destination?.route
Surface(
tonalElevation = 2.dp,
modifier = Modifier
.navigationBarsPadding()
.height(56.dp)
) {
Row(modifier = Modifier.fillMaxSize(),
verticalAlignment = Alignment.CenterVertically) {
items.forEach { item ->
val selected = currentRoute == item.first
val color = if (selected)
MaterialTheme.colorScheme.primary
else
MaterialTheme.colorScheme.onSurfaceVariant
val background = if (selected)
MaterialTheme.colorScheme.primary.copy(alpha = 0.12f)
else
Color.Transparent
Box(
modifier = Modifier
.weight(1f).padding(horizontal = 8.dp , vertical = 4.dp)
.clip(MaterialTheme.shapes.large)
.background(background)
.clickable {
if (!selected) {
navController.navigate(item.first) {
popUpTo("home") {
saveState = true
}
launchSingleTop = true
restoreState = true
}
}
}.padding(horizontal = 10.dp, vertical = 10.dp),
contentAlignment = Alignment.Center
) {
Row(
verticalAlignment = Alignment.CenterVertically
) {
Icon(
imageVector = item.third,
contentDescription = item.second,
tint = color,
modifier = Modifier.size(22.dp)
)
Spacer(modifier = Modifier.width(6.dp))
Text(
text = item.second,
color = color,
style = MaterialTheme.typography.labelMedium
)
}
}
}
}
}
}