Боюсь объединить два запроса. Мне нужно id
из первого, затем начните второй с этого первого id
из полученного списка. Я не могу найти хорошего решения для этого с помощью Swift Combine.
мой первый запрос выглядит так CarSerview.shared.getCategories() -> AnyPublisher<[Category], CarError>
:
private func getCategories() {
CarSerview.shared.getCategories()
.receive(on: DispatchQueue.main)
.map { car in
return car.id
}
.replaceError(with: [])
.assign(to: \.carsIds, on: self)
.store(in: &cancellable)
}
, а второй выглядит так CarSerview.shared.getCar() -> AnyPublisher<Car, CarError>
:
private func getCar(_ category: CategoryObject) {
SPService.shared.getExcursions(category)
.receive(on: DispatchQueue.main)
.map { car in
return car.cars.compactMap { $0.name }
}
.sink(receiveCompletion: { error in
print(error)
}, receiveValue: { [weak self] result in
self?.cars = result
})
}
как можно связать это два запроса в одном?