22 lines
343 B
Swift
22 lines
343 B
Swift
import Foundation
|
|
|
|
protocol AppRouting {
|
|
func route(to route: Route)
|
|
}
|
|
|
|
final class AppRouter: ObservableObject {
|
|
@Published private(set) var route: Route = .loading
|
|
}
|
|
|
|
extension AppRouter: AppRouting {
|
|
func route(to route: Route) {
|
|
self.route = route
|
|
}
|
|
}
|
|
|
|
enum Route: Equatable {
|
|
case loading
|
|
case serverList
|
|
case roomList(Server)
|
|
}
|