import 'package:firebase_auth/firebase_auth.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:injector/injector.dart'; import 'package:prosappco/blocs/service_bloc/service_bloc.dart'; class UserServiceListScreen extends StatefulWidget { const UserServiceListScreen({super.key}); @override State createState() => _UserServiceListScreenState(); } class _UserServiceListScreenState extends State { late final ServiceBloc serviceBloc; @override void initState() { super.initState(); serviceBloc = Injector.appInstance.get(); serviceBloc .add(LoadServicesForUser(FirebaseAuth.instance.currentUser!.uid)); } @override Widget build(BuildContext context) { return BlocProvider( create: (context) => serviceBloc, child: Scaffold( appBar: AppBar( title: const Text('Mis Servicios'), ), body: BlocBuilder( builder: (context, serviceState) { if (serviceState is ServicesForUserLoaded) { return serviceState.services.isEmpty ? const Center( child: Text('No tienes servicios'), ) : ListView.builder( itemCount: serviceState.services.length, itemBuilder: (_, index) { final serviceInfo = serviceState.services[index]; final user = serviceInfo.user; final professional = serviceInfo.professional; final service = serviceInfo.service; return ListTile( onTap: () {}, title: Column( children: [ Text(user.name ?? ''), Text(professional.identification), Text(service.address), ], ), ); }, ); } return const Center( child: CircularProgressIndicator(), ); }, ), ), ); } }