2021-09-01 02:47:50 +05:30
|
|
|
import Foundation
|
|
|
|
import SwiftUI
|
|
|
|
|
|
|
|
private struct InNavigationViewKey: EnvironmentKey {
|
|
|
|
static let defaultValue = false
|
|
|
|
}
|
|
|
|
|
2021-09-19 02:06:42 +05:30
|
|
|
private struct HorizontalCellsKey: EnvironmentKey {
|
|
|
|
static let defaultValue = false
|
|
|
|
}
|
|
|
|
|
2021-09-19 18:12:47 +05:30
|
|
|
enum NavigationStyle {
|
|
|
|
case tab, sidebar
|
|
|
|
}
|
|
|
|
|
|
|
|
private struct NavigationStyleKey: EnvironmentKey {
|
|
|
|
static let defaultValue = NavigationStyle.tab
|
|
|
|
}
|
|
|
|
|
2021-09-01 02:47:50 +05:30
|
|
|
extension EnvironmentValues {
|
|
|
|
var inNavigationView: Bool {
|
|
|
|
get { self[InNavigationViewKey.self] }
|
|
|
|
set { self[InNavigationViewKey.self] = newValue }
|
|
|
|
}
|
2021-09-19 02:06:42 +05:30
|
|
|
|
|
|
|
var horizontalCells: Bool {
|
|
|
|
get { self[HorizontalCellsKey.self] }
|
|
|
|
set { self[HorizontalCellsKey.self] = newValue }
|
|
|
|
}
|
2021-09-19 18:12:47 +05:30
|
|
|
|
|
|
|
var navigationStyle: NavigationStyle {
|
|
|
|
get { self[NavigationStyleKey.self] }
|
|
|
|
set { self[NavigationStyleKey.self] = newValue }
|
|
|
|
}
|
2021-09-01 02:47:50 +05:30
|
|
|
}
|