@@ -8,15 +8,20 @@ import com.everymeal.data.datasource.onboarding.OnboardingDataSource
8
8
import com.everymeal.data.datasource.onboarding.OnboardingDataSourceImpl
9
9
import com.everymeal.data.datasource.restaurant.RestaurantDataSource
10
10
import com.everymeal.data.datasource.restaurant.RestaurantDataSourceImpl
11
+ import com.everymeal.data.datasource.review.ReviewDataSource
12
+ import com.everymeal.data.datasource.review.ReviewDataSourceImpl
13
+ import com.everymeal.data.repository.auth.DefaultAuthRepository
11
14
import com.everymeal.data.repository.local.LocalRepositoryImpl
12
- import com.everymeal.data.repository.DefaultAuthRepository
13
15
import com.everymeal.data.repository.onboarding.OnboardingRepositoryImpl
14
16
import com.everymeal.data.repository.restaurant.RestaurantRepositoryImpl
15
- import com.everymeal.domain.repository.local.LocalRepository
17
+ import com.everymeal.data.repository.review.DefaultReviewRepository
18
+ import com.everymeal.data.repository.search.DefaultSearchRepository
16
19
import com.everymeal.domain.repository.auth.AuthRepository
20
+ import com.everymeal.domain.repository.local.LocalRepository
17
21
import com.everymeal.domain.repository.onboarding.OnboardingRepository
18
22
import com.everymeal.domain.repository.restaurant.RestaurantRepository
19
- import com.everymeal.presentation.ui.home.Restaurant
23
+ import com.everymeal.domain.repository.review.ReviewRepository
24
+ import com.everymeal.domain.repository.search.SearchRepository
20
25
import dagger.Binds
21
26
import dagger.Module
22
27
import dagger.hilt.InstallIn
@@ -30,48 +35,66 @@ abstract class RepositoryModule {
30
35
@Singleton
31
36
@Binds
32
37
abstract fun bindOnboardingRepository (
33
- onboardingRepositoryImpl : OnboardingRepositoryImpl
38
+ onboardingRepositoryImpl : OnboardingRepositoryImpl ,
34
39
): OnboardingRepository
35
40
36
41
@Singleton
37
42
@Binds
38
43
abstract fun bindOnboardingDataSource (
39
- onboardingDataSourceImpl : OnboardingDataSourceImpl
44
+ onboardingDataSourceImpl : OnboardingDataSourceImpl ,
40
45
): OnboardingDataSource
41
46
42
47
@Singleton
43
48
@Binds
44
49
abstract fun bindLocalRepository (
45
- localRepositoryImpl : LocalRepositoryImpl
50
+ localRepositoryImpl : LocalRepositoryImpl ,
46
51
): LocalRepository
47
52
48
53
@Singleton
49
54
@Binds
50
55
abstract fun bindLocalDataSource (
51
- localDataSourceImpl : LocalDataSourceImpl
56
+ localDataSourceImpl : LocalDataSourceImpl ,
52
57
): LocalDataSource
53
58
54
59
@Singleton
55
60
@Binds
56
61
abstract fun bindAuthRemoteDataSource (
57
- authRemoteDataSourceImpl : AuthRemoteRemoteDataSourceImpl
62
+ authRemoteDataSourceImpl : AuthRemoteRemoteDataSourceImpl ,
58
63
): AuthRemoteDataSource
59
64
65
+ @Singleton
66
+ @Binds
67
+ abstract fun bindRestaurantDataSource (
68
+ restaurantDataSourceImpl : RestaurantDataSourceImpl ,
69
+ ): RestaurantDataSource
70
+
71
+ @Singleton
72
+ @Binds
73
+ abstract fun bindRestaurantRepository (
74
+ restaurantRepositoryImpl : RestaurantRepositoryImpl ,
75
+ ): RestaurantRepository
76
+
60
77
@Singleton
61
78
@Binds
62
79
abstract fun bindAuthRepository (
63
- defaultAuthRepository : DefaultAuthRepository
80
+ defaultAuthRepository : DefaultAuthRepository ,
64
81
): AuthRepository
65
82
66
83
@Singleton
67
84
@Binds
68
- abstract fun bindRestaurantDataSource (
69
- restaurantDataSourceImpl : RestaurantDataSourceImpl
70
- ): RestaurantDataSource
85
+ abstract fun bindReviewDataSource (
86
+ reviewDataSourceImpl : ReviewDataSourceImpl ,
87
+ ): ReviewDataSource
71
88
72
89
@Singleton
73
90
@Binds
74
- abstract fun bindRestaurantRepository (
75
- restaurantRepositoryImpl : RestaurantRepositoryImpl
76
- ): RestaurantRepository
91
+ abstract fun bindReviewRepository (
92
+ defaultReviewRepository : DefaultReviewRepository ,
93
+ ): ReviewRepository
94
+
95
+ @Singleton
96
+ @Binds
97
+ abstract fun bindSearchRepository (
98
+ defaultSearchRepository : DefaultSearchRepository ,
99
+ ): SearchRepository
77
100
}
0 commit comments