import LeadKit import RxSwift import Alamofire {% set serviceName = concat(networkServiceName, "NetworkService") -%} class {{ serviceName }}: NetworkService { static let apiBaseUrl = "{{ apiUrl }}" convenience init() { self.init(configuration: NetworkServiceConfiguration(baseUrl: {{ serviceName }}.apiBaseUrl)) } func apiRequest(with parameters: ApiRequestParameters, decoder: JSONDecoder = JSONDecoder()) -> Single { return rxRequest(with: parameters, decoder: decoder).map { $0.model }.asSingle() } func apiRequestParameters(relativeUrl: String, method: HTTPMethod = .get, parameters: Parameters? = nil, requestEncoding: ParameterEncoding? = nil, requestHeaders: HTTPHeaders? = nil) -> ApiRequestParameters { return configuration.apiRequestParameters(relativeUrl: relativeUrl, method: method, parameters: parameters, requestEncoding: requestEncoding, requestHeaders: requestHeaders) } } {{ "\n" }}