IOS updates
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
import Foundation
|
||||
|
||||
struct SonarServer: Codable, Identifiable, Hashable {
|
||||
var id = UUID()
|
||||
var name: String
|
||||
var baseURL: String
|
||||
}
|
||||
|
||||
struct Project: Codable, Identifiable, Hashable {
|
||||
var id: String { key }
|
||||
let key: String
|
||||
let name: String
|
||||
let qualifier: String?
|
||||
let visibility: String?
|
||||
let lastAnalysisDate: String?
|
||||
}
|
||||
|
||||
struct ProjectsResponse: Codable {
|
||||
let components: [Project]
|
||||
let paging: Paging?
|
||||
}
|
||||
|
||||
struct Paging: Codable { let pageIndex: Int?; let pageSize: Int?; let total: Int? }
|
||||
|
||||
struct Measure: Codable, Hashable { let metric: String; let value: String?; let bestValue: Bool? }
|
||||
struct MeasuresComponent: Codable { let key: String; let name: String; let measures: [Measure] }
|
||||
struct MeasuresResponse: Codable { let component: MeasuresComponent }
|
||||
|
||||
struct QualityGateResponse: Codable { let projectStatus: ProjectStatus }
|
||||
struct ProjectStatus: Codable { let status: String; let conditions: [GateCondition]? }
|
||||
struct GateCondition: Codable, Hashable {
|
||||
let status: String
|
||||
let metricKey: String
|
||||
let comparator: String?
|
||||
let errorThreshold: String?
|
||||
let actualValue: String?
|
||||
}
|
||||
|
||||
struct Issue: Codable, Identifiable, Hashable {
|
||||
var id: String { key }
|
||||
let key: String
|
||||
let rule: String?
|
||||
let severity: String?
|
||||
let component: String?
|
||||
let project: String?
|
||||
let line: Int?
|
||||
let message: String?
|
||||
let type: String?
|
||||
let status: String?
|
||||
let creationDate: String?
|
||||
let effort: String?
|
||||
}
|
||||
|
||||
struct IssuesResponse: Codable { let total: Int?; let p: Int?; let ps: Int?; let issues: [Issue] }
|
||||
|
||||
struct ServerStatusResponse: Codable { let id: String?; let version: String?; let status: String? }
|
||||
|
||||
struct ProjectSnapshot: Identifiable {
|
||||
var id: String { project.key }
|
||||
let project: Project
|
||||
var measures: [String: String] = [:]
|
||||
var qualityGate: String = "UNKNOWN"
|
||||
}
|
||||
|
||||
struct TokenGenerateResponse: Codable {
|
||||
let login: String?
|
||||
let name: String?
|
||||
let token: String
|
||||
let createdAt: String?
|
||||
let type: String?
|
||||
}
|
||||
|
||||
struct CreatedProjectCredentials: Identifiable {
|
||||
let id = UUID()
|
||||
let projectKey: String
|
||||
let projectName: String
|
||||
let tokenName: String
|
||||
let token: String
|
||||
let serverURL: String
|
||||
}
|
||||
Reference in New Issue
Block a user