func getActiveModel()

in HuggingChat-Mac/Network/DataService.swift [78:99]


    func getActiveModel() -> AnyPublisher<AnyObject, HFError> {
        guard let activeModel = activeModel else {
            return getModels(shouldForceRefresh: false).tryMap { models in
                guard let model = models.first else {
                    throw HFError.unknown
                }
                return model
            }.mapError({ error in
                if let error = error as? HFError {
                    return error
                } else {
                    return HFError.unknown
                }
            }).eraseToAnyPublisher()
        }
        
        if let model = DataService.getLocalModels()?.first(where: {$0.id == activeModel.id}) {
            return Just(model).setFailureType(to: HFError.self).eraseToAnyPublisher()
        } else {
            return Fail(outputType: AnyObject.self, failure: HFError.unknown).eraseToAnyPublisher()
        }
    }