gitbay/Views/Repos/RepoRoute.swift

v1.14.1
gitbay-ios/gitbay/Views/Repos/RepoRoute.swift history · blame · raw

47 lines · 1561 bytes

 1import Foundation
 2
 3/// Navigation destinations for the repo stack. Values, so navigation is
 4/// testable and deep-linkable later.
 5nonisolated enum RepoRoute: Hashable {
 6    case repo(String)
 7    case tree(repo: String, directory: String, ref: String?)
 8    /// `line` opens the file scrolled to that line and marks it.
 9    case file(repo: String, path: String, ref: String?, line: Int? = nil)
10    case log(repo: String, ref: String?, path: String?)
11    case settings(repo: String)
12    case grep(repo: String)
13    /// `query` opens with that search run, for a name defined more than once.
14    case symbols(repo: String, query: String? = nil)
15    case blame(repo: String, path: String, ref: String?)
16    case refs(repo: String)
17    case compare(repo: String, defaultBranch: String?)
18    case milestones(repo: String)
19    case labels(repo: String)
20    case wiki(repo: String)
21    case wikiPage(repo: String, page: String)
22    case commit(repo: String, sha: String)
23    case bookmarks
24    case savedQueries
25    case queryResults(name: String)
26    case webhooks(repo: String)
27    case webhookDeliveries(repo: String)
28    case buildSecrets(repo: String)
29    case deployKeys(repo: String)
30    case mirrors(repo: String)
31    case pageDomains(repo: String)
32    case profile(String)
33    case account
34    case tokens
35    case webSessions
36    case addAccount
37    case notifications
38    case admin
39    case adminUsers
40    case adminUser(String)
41    case adminStats
42    case adminAudit
43    case adminRunners
44    case adminInbound
45    case adminRepos
46    case adminOrgLimits
47}