ProductsScreen

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

navController

Controlador de navegación para cambiar entre pantallas.

cartViewModel

ViewModel que maneja el estado del carrito de compra.

isLoggedIn

Estado que indica si el usuario está autenticado.