mirror of
https://github.com/hanzoai/swift-sdk.git
synced 2026-10-30 18:20:19 +00:00
The forge tree held the package scaffolding and none of the generated sources — 2,435 files of APIs, Models and Infrastructure, including BaseAPI, were simply absent, so anything depending on this copy had a package that compiled to nothing usable. Generated from the current API document rather than reconciled with the other copy: a client is a function of the spec, so regenerating answers "which history wins" without anyone having to choose. .spec-lock records which document, so the next reader can tell.
41 lines
1.6 KiB
Swift
41 lines
1.6 KiB
Swift
//
|
|
// CollabPayload.swift
|
|
//
|
|
// Generated by openapi-generator
|
|
// https://openapi-generator.tech
|
|
//
|
|
|
|
import Foundation
|
|
|
|
public struct CollabPayload: Sendable, Codable, ParameterConvertible, Hashable {
|
|
|
|
/** Content maps a document field to its ProseMirror markup JSON. */
|
|
public var content: [String: String]?
|
|
/** Source is the blob ref a getContent reads the snapshot from. Absent means there is no snapshot to read, which answers empty content. */
|
|
public var source: String?
|
|
/** Updates carries, per field, a base64 Y.js state update encoding the SAME markup — the front computes it (markupToYDoc → encodeStateAsUpdate) so a createContent seeds the live-editing lane's update log, not just the snapshot blob. Without it a dialog-created description is invisible in the collaborative editor, which replays the ydoc log, never the snapshot. */
|
|
public var updates: [String: String]?
|
|
|
|
public init(content: [String: String]? = nil, source: String? = nil, updates: [String: String]? = nil) {
|
|
self.content = content
|
|
self.source = source
|
|
self.updates = updates
|
|
}
|
|
|
|
public enum CodingKeys: String, CodingKey, CaseIterable {
|
|
case content
|
|
case source
|
|
case updates
|
|
}
|
|
|
|
// Encodable protocol methods
|
|
|
|
public func encode(to encoder: Encoder) throws {
|
|
var container = encoder.container(keyedBy: CodingKeys.self)
|
|
try container.encodeIfPresent(content, forKey: .content)
|
|
try container.encodeIfPresent(source, forKey: .source)
|
|
try container.encodeIfPresent(updates, forKey: .updates)
|
|
}
|
|
}
|
|
|