summaryrefslogtreecommitdiff
path: root/Hutch/Models
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-04-12 19:58:20 -0500
committerChristian Cleberg <[email protected]>2026-04-12 19:58:20 -0500
commit9cd99c3e1c7e2620c34bfd9e78931e3b2b63aa8a (patch)
treebf7a249bec3b9aba18176e6139d690c9bf384ab5 /Hutch/Models
parent1354f2464180ece6d13296a543a964ddf6d2d393 (diff)
downloadhutch-9cd99c3e1c7e2620c34bfd9e78931e3b2b63aa8a.tar.gz
hutch-9cd99c3e1c7e2620c34bfd9e78931e3b2b63aa8a.tar.bz2
hutch-9cd99c3e1c7e2620c34bfd9e78931e3b2b63aa8a.zip
feat: add projects list, detail view, and home pinning
Implements: https://todo.sr.ht/~ccleberg/hutch/26 Implements: https://todo.sr.ht/~ccleberg/hutch/27 Implements: https://todo.sr.ht/~ccleberg/hutch/28
Diffstat (limited to 'Hutch/Models')
-rw-r--r--Hutch/Models/Project.swift27
1 files changed, 27 insertions, 0 deletions
diff --git a/Hutch/Models/Project.swift b/Hutch/Models/Project.swift
index 2cd8e00..54c0318 100644
--- a/Hutch/Models/Project.swift
+++ b/Hutch/Models/Project.swift
@@ -69,6 +69,33 @@ struct Project: Identifiable, Hashable, Sendable {
let mailingLists: [MailingList]
let sources: [SourceRepo]
let trackers: [Tracker]
+ let isFullyLoaded: Bool
+
+ init(
+ id: String,
+ name: String,
+ description: String?,
+ website: String?,
+ visibility: Visibility,
+ tags: [String],
+ updated: Date,
+ mailingLists: [MailingList],
+ sources: [SourceRepo],
+ trackers: [Tracker],
+ isFullyLoaded: Bool = true
+ ) {
+ self.id = id
+ self.name = name
+ self.description = description
+ self.website = website
+ self.visibility = visibility
+ self.tags = tags
+ self.updated = updated
+ self.mailingLists = mailingLists
+ self.sources = sources
+ self.trackers = trackers
+ self.isFullyLoaded = isFullyLoaded
+ }
var resourceSummary: String? {
let parts = [