From 966b4392778f47ba0493f1d377df5e52d10bf018 Mon Sep 17 00:00:00 2001 From: Daniel Arantes Loverde Date: Sat, 6 Jun 2026 10:53:16 -0300 Subject: [PATCH] Update LCEssentials+API.swift --- Sources/LCEssentials/Classes/LCEssentials+API.swift | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Sources/LCEssentials/Classes/LCEssentials+API.swift b/Sources/LCEssentials/Classes/LCEssentials+API.swift index f040d78..93fd002 100644 --- a/Sources/LCEssentials/Classes/LCEssentials+API.swift +++ b/Sources/LCEssentials/Classes/LCEssentials+API.swift @@ -26,7 +26,6 @@ import Foundation import Security #endif #if canImport(UIKit) -#if canImport(UIKit) import UIKit #endif #endif @@ -47,6 +46,8 @@ public enum httpMethod: String { case get = "GET" /// The PUT method. case put = "PUT" + /// The PATCH method. + case patch = "PATCH" /// The DELETE method. case delete = "DELETE" } @@ -90,7 +91,7 @@ public struct API { /// - Parameters: /// - url: The URL string for the request. /// - params: Optional parameters for the request. Can be `[String: Any]` for JSON/form-data, or `Data` for raw body. - /// - method: The HTTP method to use for the request (`.get`, `.post`, `.put`, `.delete`). + /// - method: The HTTP method to use for the request (`.get`, `.post`, `.put`, `.delete`,`.patch` ). /// - headers: Optional custom HTTP headers to be added to the request. These override default headers if there are conflicts. /// - jsonEncoding: A boolean indicating whether parameters should be JSON encoded. Defaults to `true`. /// - debug: A boolean indicating whether to print debug logs for the request and response. Defaults to `true`. @@ -110,8 +111,8 @@ public struct API { persistConnection: Bool = false) async throws -> T { if let urlReq = URL(string: url.replaceURL(params as? [String: Any] ?? [:] )) { - var request = URLRequest(url: urlReq, cachePolicy: .reloadIgnoringLocalCacheData, timeoutInterval: 30) - if method == .post || method == .put || method == .delete { + var request = URLRequest(url: urlReq, cachePolicy: .reloadIgnoringLocalCacheData, timeoutInterval: timeoutInterval) + if method == .post || method == .put || method == .delete || method == .patch { if let params = params as? [String: Any], let pathFile = params["file"] as? String, let fileURL = URL(string: pathFile) {