import 'package:ebroker/exports/main_export.dart'; import 'package:flutter/material.dart'; import '../../Repositories/personalized_feed_repository.dart'; abstract class AddUpdatePersonalizedInterestState {} class AddUpdatePersonalizedInterestInitial extends AddUpdatePersonalizedInterestState {} class AddUpdatePersonalizedInterestInProgress extends AddUpdatePersonalizedInterestState {} class AddUpdatePersonalizedInterestSuccess extends AddUpdatePersonalizedInterestState {} class AddUpdatePersonalizedInterestFail extends AddUpdatePersonalizedInterestState { final dynamic error; AddUpdatePersonalizedInterestFail(this.error); } class AddUpdatePersonalizedInterest extends Cubit { AddUpdatePersonalizedInterest() : super(AddUpdatePersonalizedInterestInitial()); PersonalizedFeedRepository personalizedFeedRepository = PersonalizedFeedRepository(); void addOrUpdate({ required PersonalizedFeedAction action, required List categoryIds, List? outdoorFacilityList, RangeValues? priceRange, List? selectedPropertyType, String? city, }) async { try { emit(AddUpdatePersonalizedInterestInProgress()); await personalizedFeedRepository.addOrUpdate( action: action, categoryIds: categoryIds, outdoorFacilityList: outdoorFacilityList, priceRange: priceRange, city: city, selectedPropertyType: selectedPropertyType); emit(AddUpdatePersonalizedInterestSuccess()); } catch (e) { emit(AddUpdatePersonalizedInterestFail(e)); } } }