1
1
package net.mullvad.mullvadvpn.usecase.customlists
2
2
3
3
import kotlinx.coroutines.flow.combine
4
- import net.mullvad.mullvadvpn.lib.model.Constraint
5
- import net.mullvad.mullvadvpn.lib.model.Ownership
6
- import net.mullvad.mullvadvpn.lib.model.Providers
7
- import net.mullvad.mullvadvpn.lib.model.RelayItem
8
- import net.mullvad.mullvadvpn.relaylist.filterOnOwnershipAndProvider
9
4
import net.mullvad.mullvadvpn.relaylist.toRelayItemCustomList
10
5
import net.mullvad.mullvadvpn.repository.CustomListsRepository
11
- import net.mullvad.mullvadvpn.repository.RelayListFilterRepository
12
6
import net.mullvad.mullvadvpn.repository.RelayListRepository
13
7
14
8
class CustomListsRelayItemUseCase (
@@ -23,23 +17,3 @@ class CustomListsRelayItemUseCase(
23
17
customLists?.map { it.toRelayItemCustomList(relayList) } ? : emptyList()
24
18
}
25
19
}
26
-
27
- class FilterCustomListsRelayItemUseCase (
28
- private val customListsRelayItemUseCase : CustomListsRelayItemUseCase ,
29
- private val relayListFilterRepository : RelayListFilterRepository
30
- ) {
31
-
32
- operator fun invoke () =
33
- combine(
34
- customListsRelayItemUseCase(),
35
- relayListFilterRepository.selectedOwnership,
36
- relayListFilterRepository.selectedProviders,
37
- ) { customLists, selectedOwnership, selectedProviders ->
38
- customLists.filterOnOwnershipAndProvider(selectedOwnership, selectedProviders)
39
- }
40
-
41
- private fun List<RelayItem.CustomList>.filterOnOwnershipAndProvider (
42
- ownership : Constraint <Ownership >,
43
- providers : Constraint <Providers >
44
- ) = mapNotNull { it.filterOnOwnershipAndProvider(ownership, providers) }
45
- }
0 commit comments