// lib/presentation/bloc/offer/offer_bloc.dart import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:equatable/equatable.dart'; import 'package:proxibuy/data/models/datasources/offer_data_source.dart'; import '../../../../data/models/offer_model.dart'; part 'offer_event.dart'; part 'offer_state.dart'; class OfferBloc extends Bloc { final OfferDataSource dataSource; OfferBloc({required this.dataSource}) : super(OfferInitial()) { on((event, emit) async { emit(OfferLoading()); try { final offers = await dataSource.getNearbyOffers(); emit(OfferSuccess(offers)); } catch (e) { emit(OfferFailure('متاسفانه خطایی رخ داد: ${e.toString()}')); } }); } }