Skip to content

Commit 8f79e67

Browse files
authored
Merge pull request #87 from appwrite/dev
feat: Apple SDK update for version 13.0.0
2 parents add7882 + a32b4e5 commit 8f79e67

File tree

8 files changed

+42
-18
lines changed

8 files changed

+42
-18
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Add the package to your `Package.swift` dependencies:
3131

3232
```swift
3333
dependencies: [
34-
.package(url: "[email protected]:appwrite/sdk-for-apple.git", from: "12.1.0"),
34+
.package(url: "[email protected]:appwrite/sdk-for-apple.git", from: "13.0.0"),
3535
],
3636
```
3737

Sources/Appwrite/Client.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ open class Client {
2323
"x-sdk-name": "Apple",
2424
"x-sdk-platform": "client",
2525
"x-sdk-language": "apple",
26-
"x-sdk-version": "12.1.0",
26+
"x-sdk-version": "13.0.0",
2727
"x-appwrite-response-format": "1.8.0"
2828
]
2929

@@ -354,7 +354,7 @@ open class Client {
354354

355355
if let warning = response.headers["x-appwrite-warning"].first {
356356
warning.split(separator: ";").forEach { warning in
357-
print("Warning: \(warning)")
357+
fputs("Warning: \(warning)\n", stderr)
358358
}
359359
}
360360

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import Foundation
2+
3+
public enum ExecutionStatus: String, CustomStringConvertible {
4+
case waiting = "waiting"
5+
case processing = "processing"
6+
case completed = "completed"
7+
case failed = "failed"
8+
9+
public var description: String {
10+
return rawValue
11+
}
12+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import Foundation
2+
3+
public enum ExecutionTrigger: String, CustomStringConvertible {
4+
case http = "http"
5+
case schedule = "schedule"
6+
case event = "event"
7+
8+
public var description: String {
9+
return rawValue
10+
}
11+
}

Sources/AppwriteModels/Document.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ open class Document<T : Codable>: Codable {
107107
createdAt: map["$createdAt"] as? String ?? "",
108108
updatedAt: map["$updatedAt"] as? String ?? "",
109109
permissions: map["$permissions"] as? [String] ?? [],
110-
data: try! JSONDecoder().decode(T.self, from: JSONSerialization.data(withJSONObject: map, options: []))
110+
data: try! JSONDecoder().decode(T.self, from: JSONSerialization.data(withJSONObject: map["data"] as? [String: Any] ?? map, options: []))
111111
)
112112
}
113113
}

Sources/AppwriteModels/Execution.swift

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import Foundation
22
import JSONCodable
3+
import AppwriteEnums
34

45
/// Execution
56
open class Execution: Codable {
@@ -44,10 +45,10 @@ open class Execution: Codable {
4445
public let deploymentId: String
4546

4647
/// The trigger that caused the function to execute. Possible values can be: `http`, `schedule`, or `event`.
47-
public let trigger: String
48+
public let trigger: AppwriteEnums.ExecutionTrigger
4849

4950
/// The status of the function execution. Possible values can be: `waiting`, `processing`, `completed`, or `failed`.
50-
public let status: String
51+
public let status: AppwriteEnums.ExecutionStatus
5152

5253
/// HTTP request method type.
5354
public let requestMethod: String
@@ -87,8 +88,8 @@ open class Execution: Codable {
8788
permissions: [String],
8889
functionId: String,
8990
deploymentId: String,
90-
trigger: String,
91-
status: String,
91+
trigger: AppwriteEnums.ExecutionTrigger,
92+
status: AppwriteEnums.ExecutionStatus,
9293
requestMethod: String,
9394
requestPath: String,
9495
requestHeaders: [Headers],
@@ -129,8 +130,8 @@ open class Execution: Codable {
129130
self.permissions = try container.decode([String].self, forKey: .permissions)
130131
self.functionId = try container.decode(String.self, forKey: .functionId)
131132
self.deploymentId = try container.decode(String.self, forKey: .deploymentId)
132-
self.trigger = try container.decode(String.self, forKey: .trigger)
133-
self.status = try container.decode(String.self, forKey: .status)
133+
self.trigger = AppwriteEnums.ExecutionTrigger(rawValue: try container.decode(String.self, forKey: .trigger))!
134+
self.status = AppwriteEnums.ExecutionStatus(rawValue: try container.decode(String.self, forKey: .status))!
134135
self.requestMethod = try container.decode(String.self, forKey: .requestMethod)
135136
self.requestPath = try container.decode(String.self, forKey: .requestPath)
136137
self.requestHeaders = try container.decode([Headers].self, forKey: .requestHeaders)
@@ -152,8 +153,8 @@ open class Execution: Codable {
152153
try container.encode(permissions, forKey: .permissions)
153154
try container.encode(functionId, forKey: .functionId)
154155
try container.encode(deploymentId, forKey: .deploymentId)
155-
try container.encode(trigger, forKey: .trigger)
156-
try container.encode(status, forKey: .status)
156+
try container.encode(trigger.rawValue, forKey: .trigger)
157+
try container.encode(status.rawValue, forKey: .status)
157158
try container.encode(requestMethod, forKey: .requestMethod)
158159
try container.encode(requestPath, forKey: .requestPath)
159160
try container.encode(requestHeaders, forKey: .requestHeaders)
@@ -174,8 +175,8 @@ open class Execution: Codable {
174175
"$permissions": permissions as Any,
175176
"functionId": functionId as Any,
176177
"deploymentId": deploymentId as Any,
177-
"trigger": trigger as Any,
178-
"status": status as Any,
178+
"trigger": trigger.rawValue as Any,
179+
"status": status.rawValue as Any,
179180
"requestMethod": requestMethod as Any,
180181
"requestPath": requestPath as Any,
181182
"requestHeaders": requestHeaders.map { $0.toMap() } as Any,
@@ -197,8 +198,8 @@ open class Execution: Codable {
197198
permissions: map["$permissions"] as! [String],
198199
functionId: map["functionId"] as! String,
199200
deploymentId: map["deploymentId"] as! String,
200-
trigger: map["trigger"] as! String,
201-
status: map["status"] as! String,
201+
trigger: ExecutionTrigger(rawValue: map["trigger"] as! String)!,
202+
status: ExecutionStatus(rawValue: map["status"] as! String)!,
202203
requestMethod: map["requestMethod"] as! String,
203204
requestPath: map["requestPath"] as! String,
204205
requestHeaders: (map["requestHeaders"] as! [[String: Any]]).map { Headers.from(map: $0) },

Sources/AppwriteModels/Preferences.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ open class Preferences<T : Codable>: Codable {
3737

3838
public static func from(map: [String: Any] ) -> Preferences {
3939
return Preferences(
40-
data: try! JSONDecoder().decode(T.self, from: JSONSerialization.data(withJSONObject: map, options: []))
40+
data: try! JSONDecoder().decode(T.self, from: JSONSerialization.data(withJSONObject: map["data"] as? [String: Any] ?? map, options: []))
4141
)
4242
}
4343
}

Sources/AppwriteModels/Row.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ open class Row<T : Codable>: Codable {
107107
createdAt: map["$createdAt"] as! String,
108108
updatedAt: map["$updatedAt"] as! String,
109109
permissions: map["$permissions"] as! [String],
110-
data: try! JSONDecoder().decode(T.self, from: JSONSerialization.data(withJSONObject: map, options: []))
110+
data: try! JSONDecoder().decode(T.self, from: JSONSerialization.data(withJSONObject: map["data"] as? [String: Any] ?? map, options: []))
111111
)
112112
}
113113
}

0 commit comments

Comments
 (0)