import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:equatable/equatable.dart'; import 'package:get_it/get_it.dart'; import 'package:supabase_flutter/supabase_flutter.dart'; part 'company_events.dart'; part 'company_state.dart'; class CompanyBloc extends Bloc { final _supabase = GetIt.instance(); CompanyBloc() : super(const CompanyState(status: CompanyStatus.initial)) { on((event, emit) async { emit(const CompanyState(status: CompanyStatus.loading)); try { final userId = _supabase.auth.currentUser!.id; await _supabase.from('companies').insert({ 'owner_id': userId, 'ragione_sociale': event.ragioneSociale, 'partita_iva': event.partitaIva, 'codice_univoco': event.codiceUnivoco, }); emit(const CompanyState(status: CompanyStatus.success)); } catch (e) { emit(CompanyState(status: CompanyStatus.failure, error: e.toString())); } }); } }