2022-11-29 10:46:02 +00:00
|
|
|
import SwiftUI
|
|
|
|
import Timeline
|
|
|
|
import Account
|
|
|
|
import Routeur
|
2022-12-18 19:30:19 +00:00
|
|
|
import Status
|
2022-12-20 08:37:07 +00:00
|
|
|
import DesignSystem
|
2022-11-29 10:46:02 +00:00
|
|
|
|
|
|
|
extension View {
|
|
|
|
func withAppRouteur() -> some View {
|
|
|
|
self.navigationDestination(for: RouteurDestinations.self) { destination in
|
|
|
|
switch destination {
|
|
|
|
case let .accountDetail(id):
|
2022-11-29 11:18:06 +00:00
|
|
|
AccountDetailView(accountId: id)
|
2022-12-17 12:37:46 +00:00
|
|
|
case let .accountDetailWithAccount(account):
|
|
|
|
AccountDetailView(account: account)
|
2022-11-29 10:46:02 +00:00
|
|
|
case let .statusDetail(id):
|
|
|
|
StatusDetailView(statusId: id)
|
2022-12-20 14:37:51 +00:00
|
|
|
case let .hashTag(tag):
|
|
|
|
TimelineView(timeline: .hashtag(tag: tag))
|
2022-11-29 10:46:02 +00:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2022-12-20 08:37:07 +00:00
|
|
|
|
|
|
|
func withSheetDestinations(sheetDestinations: Binding<SheetDestinations?>) -> some View {
|
|
|
|
self.sheet(item: sheetDestinations) { destination in
|
|
|
|
switch destination {
|
|
|
|
case let .imageDetail(url):
|
|
|
|
ImageSheetView(url: url)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2022-11-29 10:46:02 +00:00
|
|
|
}
|