fix(sync): add x-product-id header and fix pullDelta response decode mismatch
This commit is contained in:
parent
8cd0ea7fa7
commit
48b88d3a29
@ -132,7 +132,8 @@ final class PlatformSyncManager: ObservableObject {
|
|||||||
|
|
||||||
let (data, response) = try await authenticatedRequest(url: url, method: "GET")
|
let (data, response) = try await authenticatedRequest(url: url, method: "GET")
|
||||||
try validateResponse(response)
|
try validateResponse(response)
|
||||||
return try decoder.decode([SyncTimerDTO].self, from: data)
|
let wrapper = try decoder.decode(SyncDeltaResponse.self, from: data)
|
||||||
|
return wrapper.timers
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Push a single timer change to the server
|
/// Push a single timer change to the server
|
||||||
@ -255,6 +256,7 @@ final class PlatformSyncManager: ObservableObject {
|
|||||||
request.httpMethod = method
|
request.httpMethod = method
|
||||||
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
|
request.setValue("application/json", forHTTPHeaderField: "Content-Type")
|
||||||
request.setValue(UUID().uuidString, forHTTPHeaderField: "x-request-id")
|
request.setValue(UUID().uuidString, forHTTPHeaderField: "x-request-id")
|
||||||
|
request.setValue("chronomind", forHTTPHeaderField: "x-product-id")
|
||||||
|
|
||||||
if let token = authToken {
|
if let token = authToken {
|
||||||
request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
|
request.setValue("Bearer \(token)", forHTTPHeaderField: "Authorization")
|
||||||
@ -350,6 +352,11 @@ final class PlatformSyncManager: ObservableObject {
|
|||||||
|
|
||||||
// MARK: - DTOs
|
// MARK: - DTOs
|
||||||
|
|
||||||
|
struct SyncDeltaResponse: Codable {
|
||||||
|
let timers: [SyncTimerDTO]
|
||||||
|
let count: Int
|
||||||
|
}
|
||||||
|
|
||||||
struct SyncTimerDTO: Codable {
|
struct SyncTimerDTO: Codable {
|
||||||
let id: String
|
let id: String
|
||||||
var label: String
|
var label: String
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user