field_ios

In-the-field app for Radroots on iOS
git clone https://radroots.dev/git/field_ios.git
Log | Files | Refs | README | LICENSE

TeraRevisionRuntimeClient.swift (1348B)


      1 import Foundation
      2 
      3 extension TeraRuntimeClient {
      4   func saveRevisionIntent(
      5     requestID: String,
      6     target: TeraRevisionTarget,
      7     replacement: TeraAddRuntimeInput
      8   ) async throws -> TeraRevisionStatus {
      9     try await addOperation("runtime.add.revision.save") { backend in
     10       try await backend.saveRevisionIntent(requestID: requestID, target: target, replacement: replacement)
     11     }
     12   }
     13 
     14   func revisionSourceForm(card: TeraTodayCard, sourceDraftID: String) async throws -> TeraAddForm {
     15     try await addOperation("runtime.add.revision.source") { backend in
     16       try await backend.revisionSourceForm(card: card, sourceDraftID: sourceDraftID)
     17     }
     18   }
     19 
     20   func revisionStatus(operationID: String) async throws -> TeraRevisionStatus {
     21     try await addOperation("runtime.add.revision.status") { backend in
     22       try await backend.revisionStatus(operationID: operationID)
     23     }
     24   }
     25 
     26   func advanceRevision(operationID: String) async throws -> TeraRevisionStatus {
     27     try await addOperation("runtime.add.revision.advance") { backend in
     28       try await backend.advanceRevision(operationID: operationID)
     29     }
     30   }
     31 
     32   func cancelRevision(operationID: String) async throws -> TeraRevisionStatus {
     33     try await addOperation("runtime.add.revision.cancel") { backend in
     34       try await backend.cancelRevision(operationID: operationID)
     35     }
     36   }
     37 }