Products Screen
fun ProductsScreen(navController: NavController, cartViewModel: CartViewModel, isLoggedIn: MutableState<Boolean>)
Pantalla principal que muestra los productos disponibles organizados por categorías.
Obtiene la lista de productos desde ProductsViewModel, gestiona el estado de carga, error, y muestra una lista de categorías con sus productos correspondientes.
También maneja la lógica para mostrar un popup con detalles del producto seleccionado, permite añadir productos al carrito a través del CartViewModel, y controla la navegación a la pantalla de compra o carrito.
Return
Composable que representa la UI de la pantalla de productos.
Parameters
nav Controller
Controlador de navegación para cambiar entre pantallas.
cart View Model
ViewModel que maneja el estado del carrito de compra.
is Logged In
Estado que indica si el usuario está autenticado.