11import SwiftUI
22@_implementationOnly @_spi ( Advanced) import SwiftUIIntrospect
33
4- // MARK: iOS 16
5-
6- public struct NavigationSplitViewColumns : OptionSet {
7- @available ( iOS, introduced: 16 , deprecated, message: " Use 'navigationTransition' modifier instead " )
8- public static let sidebar = Self ( rawValue: 1 )
9- @available ( iOS, introduced: 16 , deprecated, message: " Use 'navigationTransition' modifier instead " )
10- public static let content = Self ( rawValue: 1 << 1 )
11- @available ( iOS, introduced: 16 , deprecated, message: " Use 'navigationTransition' modifier instead " )
12- public static let detail = Self ( rawValue: 1 << 2 )
13-
14- @available ( iOS, introduced: 16 , deprecated, message: " Use 'navigationTransition' modifier instead " )
15- public static let compact = Self ( rawValue: 1 << 3 )
16-
17- @available ( iOS, introduced: 16 , deprecated, message: " Use 'navigationTransition' modifier instead " )
18- public static let all : Self = [ compact, sidebar, content, detail]
19-
20- public let rawValue : Int8
21-
22- public init ( rawValue: Int8 ) {
23- self . rawValue = rawValue
24- }
25- }
26-
27- extension View {
28- @available ( iOS, introduced: 16 , deprecated, renamed: " navigationTransition " )
29- @ViewBuilder
30- public func navigationSplitViewTransition(
31- _ transition: AnyNavigationTransition ,
32- forColumns columns: NavigationSplitViewColumns ,
33- interactivity: AnyNavigationTransition . Interactivity = . default
34- ) -> some View {
35- self . navigationTransition ( transition, interactivity: interactivity)
36- }
37-
38- @available ( iOS, introduced: 16 , deprecated, renamed: " navigationTransition " )
39- @ViewBuilder
40- public func navigationStackTransition(
41- _ transition: AnyNavigationTransition ,
42- interactivity: AnyNavigationTransition . Interactivity = . default
43- ) -> some View {
44- self . navigationTransition ( transition, interactivity: interactivity)
45- }
46- }
47-
484extension View {
495 @ViewBuilder
506 public func navigationTransition(
@@ -60,43 +16,3 @@ extension View {
6016 }
6117 }
6218}
63-
64- // MARK: - Pre-iOS 16
65-
66- @available ( iOS, introduced: 13 , deprecated, message: " Use 'navigationTransition' instead " )
67- public struct NavigationViewColumns : OptionSet {
68- @available ( iOS, introduced: 13 , deprecated, message: " Use 'navigationTransition' instead " )
69- public static let sidebar = Self ( rawValue: 1 )
70- @available ( iOS, introduced: 13 , deprecated, message: " Use 'navigationTransition' instead " )
71- public static let detail = Self ( rawValue: 1 << 1 )
72-
73- @available ( iOS, introduced: 13 , deprecated, message: " Use 'navigationTransition' instead " )
74- public static let all : Self = [ sidebar, detail]
75-
76- public let rawValue : Int8
77-
78- public init ( rawValue: Int8 ) {
79- self . rawValue = rawValue
80- }
81- }
82-
83- extension View {
84- @available ( iOS, introduced: 13 , deprecated, renamed: " navigationTransition " )
85- @ViewBuilder
86- public func navigationViewColumnTransition(
87- _ transition: AnyNavigationTransition ,
88- forColumns columns: NavigationViewColumns ,
89- interactivity: AnyNavigationTransition . Interactivity = . default
90- ) -> some View {
91- self . navigationTransition ( transition, interactivity: interactivity)
92- }
93-
94- @available ( iOS, introduced: 13 , deprecated, renamed: " navigationTransition " )
95- @ViewBuilder
96- public func navigationViewStackTransition(
97- _ transition: AnyNavigationTransition ,
98- interactivity: AnyNavigationTransition . Interactivity = . default
99- ) -> some View {
100- self . navigationTransition ( transition, interactivity: interactivity)
101- }
102- }
0 commit comments