diff options
Diffstat (limited to 'Hutch/Models/Todo.swift')
| -rw-r--r-- | Hutch/Models/Todo.swift | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/Hutch/Models/Todo.swift b/Hutch/Models/Todo.swift index 8a2b06c..129d4bf 100644 --- a/Hutch/Models/Todo.swift +++ b/Hutch/Models/Todo.swift @@ -81,6 +81,55 @@ struct TicketLabel: Codable, Sendable, Identifiable, Hashable { let foregroundColor: String } +// MARK: - Tracker ACL + +struct TrackerACLPermissions: Codable, Sendable, Hashable { + let browse: Bool + let submit: Bool + let comment: Bool + let edit: Bool + let triage: Bool +} + +struct TrackerACL: Codable, Sendable, Identifiable, Hashable { + let id: Int + let created: Date + let entity: Entity + let browse: Bool + let submit: Bool + let comment: Bool + let edit: Bool + let triage: Bool + + var permissions: TrackerACLPermissions { + TrackerACLPermissions( + browse: browse, + submit: submit, + comment: comment, + edit: edit, + triage: triage + ) + } +} + +struct DefaultTrackerACL: Codable, Sendable, Hashable { + let browse: Bool + let submit: Bool + let comment: Bool + let edit: Bool + let triage: Bool + + var permissions: TrackerACLPermissions { + TrackerACLPermissions( + browse: browse, + submit: submit, + comment: comment, + edit: edit, + triage: triage + ) + } +} + // MARK: - Tracker /// A bug tracker from todo.sr.ht. |
