import Foundation /// Navigation destinations for the repo stack. Values, so navigation is /// testable and deep-linkable later. nonisolated enum RepoRoute: Hashable { case repo(String) case tree(repo: String, directory: String, ref: String?) /// `line` opens the file scrolled to that line and marks it. case file(repo: String, path: String, ref: String?, line: Int? = nil) case log(repo: String, ref: String?, path: String?) case settings(repo: String) case grep(repo: String) /// `query` opens with that search run, for a name defined more than once. case symbols(repo: String, query: String? = nil) case blame(repo: String, path: String, ref: String?) case refs(repo: String) case compare(repo: String, defaultBranch: String?) case milestones(repo: String) case labels(repo: String) case wiki(repo: String) case wikiPage(repo: String, page: String) case commit(repo: String, sha: String) case bookmarks case savedQueries case queryResults(name: String) case webhooks(repo: String) case webhookDeliveries(repo: String) case profile(String) case account case addAccount case notifications case admin case adminUsers }