@@ -51,28 +51,28 @@ final class LocationDataSource: UITableViewDiffableDataSource<LocationSection, L
51
51
}
52
52
53
53
func setRelays( _ response: REST . ServerRelaysResponse , selectedLocations: RelayLocations ? , filter: RelayFilter ) {
54
- guard let customListsDataSource =
55
- dataSources. first ( where: { $0 is CustomListsDataSource } ) as? CustomListsDataSource ,
56
- let allLocationsDataSource =
54
+ let allLocationsDataSource =
57
55
dataSources. first ( where: { $0 is AllLocationDataSource } ) as? AllLocationDataSource
58
- else { return }
56
+
57
+ let customListsDataSource =
58
+ dataSources. first ( where: { $0 is CustomListsDataSource } ) as? CustomListsDataSource
59
59
60
60
let relays = response. wireguard. relays. filter { relay in
61
61
RelaySelector . relayMatchesFilter ( relay, filter: filter)
62
62
}
63
63
64
- allLocationsDataSource. reload ( response, relays: relays)
65
- customListsDataSource. reload ( allLocationNodes: allLocationsDataSource. nodes)
64
+ allLocationsDataSource? . reload ( response, relays: relays)
65
+ customListsDataSource? . reload ( allLocationNodes: allLocationsDataSource? . nodes ?? [ ] )
66
66
67
67
if let selectedLocations {
68
68
// Look for a matching custom list node.
69
69
if let customListId = selectedLocations. customListId,
70
- let customList = customListsDataSource. customList ( by: customListId) ,
71
- let selectedNode = customListsDataSource. node ( by: selectedLocations. locations, for: customList) {
70
+ let customList = customListsDataSource? . customList ( by: customListId) ,
71
+ let selectedNode = customListsDataSource? . node ( by: selectedLocations. locations, for: customList) {
72
72
selectedItem = LocationCellViewModel ( section: . customLists, node: selectedNode)
73
73
// Look for a matching all locations node.
74
74
} else if let location = selectedLocations. locations. first,
75
- let selectedNode = allLocationsDataSource. node ( by: location) {
75
+ let selectedNode = allLocationsDataSource? . node ( by: location) {
76
76
selectedItem = LocationCellViewModel ( section: . allLocations, node: selectedNode)
77
77
}
78
78
}
0 commit comments