diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7ef8e47a8..cd0888aea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -62,6 +62,10 @@ jobs: runtime: iOS 18.2 os: macos-14 xcode: 16.2 + # - platform: [iOS, 26] + # runtime: iOS 26.0 + # os: macos-15 + # xcode: 26.0 - platform: [tvOS, 15] runtime: tvOS 15.4 @@ -80,6 +84,10 @@ jobs: runtime: tvOS 18.2 os: macos-14 xcode: 16.2 + # - platform: [tvOS, 26] + # runtime: tvOS 26.0 + # os: macos-15 + # xcode: 26.0 - platform: [watchOS, 8] runtime: watchOS 8.5 @@ -98,6 +106,10 @@ jobs: runtime: watchOS 11.2 os: macos-14 xcode: 16.2 + # - platform: [watchOS, 26] + # runtime: watchOS 26.0 + # os: macos-15 + # xcode: 26.0 - platform: [macOS, 13] runtime: macOS 13 @@ -111,6 +123,10 @@ jobs: runtime: macOS 15 os: macos-15 xcode: 16.2 + # - platform: [macOS, 26] + # runtime: macOS 26.0 + # os: macos-15 + # xcode: 26.0 - platform: [visionOS, 1] runtime: visionOS 1.2 @@ -120,6 +136,10 @@ jobs: runtime: visionOS 2.5 os: macos-15 xcode: 16.4 + # - platform: [visionOS, 26] + # runtime: visionOS 26.0 + # os: macos-15 + # xcode: 26.0 steps: - name: Git Checkout uses: actions/checkout@v4 diff --git a/Examples/Showcase/Showcase/AppView.swift b/Examples/Showcase/Showcase/AppView.swift index 364acdb2c..5068da195 100644 --- a/Examples/Showcase/Showcase/AppView.swift +++ b/Examples/Showcase/Showcase/AppView.swift @@ -7,12 +7,12 @@ struct AppView: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .window, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { window in window.backgroundColor = .brown } #elseif os(macOS) - .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { window in + .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { window in window.backgroundColor = .lightGray } #endif @@ -46,7 +46,7 @@ struct ContentView: View { .tag(5) } #if os(iOS) || os(tvOS) - .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { tabBarController in + .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { tabBarController in tabBarController.tabBar.layer.backgroundColor = UIColor.green.cgColor } #elseif os(macOS) @@ -83,16 +83,16 @@ struct ListShowcase: View { Text("Item 2") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { tableView in + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { tableView in tableView.backgroundView = UIView() tableView.backgroundColor = .cyan } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { collectionView in + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { collectionView in collectionView.backgroundView = UIView() collectionView.subviews.dropFirst(1).first?.backgroundColor = .cyan } #elseif os(macOS) - .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { tableView in + .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { tableView in tableView.backgroundColor = .cyan } #endif @@ -108,16 +108,16 @@ struct ListShowcase: View { Text("Item 1") Text("Item 2") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor) { tableView in + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor) { tableView in tableView.backgroundView = UIView() tableView.backgroundColor = .cyan } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { collectionView in + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { collectionView in collectionView.backgroundView = UIView() collectionView.subviews.dropFirst(1).first?.backgroundColor = .cyan } #elseif os(macOS) - .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor) { tableView in + .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor) { tableView in tableView.backgroundColor = .cyan } #endif @@ -150,12 +150,12 @@ struct ScrollViewShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .scrollView, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { scrollView in scrollView.layer.backgroundColor = UIColor.cyan.cgColor } #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { scrollView in + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { scrollView in scrollView.drawsBackground = true scrollView.backgroundColor = .cyan } @@ -171,13 +171,13 @@ struct ScrollViewShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .scrollView, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor ) { scrollView in scrollView.layer.backgroundColor = UIColor.cyan.cgColor } #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor) { scrollView in + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor) { scrollView in scrollView.drawsBackground = true scrollView.backgroundColor = .cyan } @@ -207,13 +207,13 @@ struct NavigationShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .navigationView(style: .stack), - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { navigationController in navigationController.navigationBar.backgroundColor = .cyan } .introspect( .navigationView(style: .columns), - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { splitViewController in #if os(visionOS) splitViewController.preferredDisplayMode = .oneBesideSecondary @@ -221,12 +221,12 @@ struct NavigationShowcase: View { splitViewController.preferredDisplayMode = .oneOverSecondary #endif } - .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { navigationController in + .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { navigationController in navigationController.navigationBar.backgroundColor = .cyan } .introspect( .searchField, - on: .iOS(.v15, .v16, .v17, .v18), .tvOS(.v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v15, .v16, .v17, .v18, .v26), .tvOS(.v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { searchBar in searchBar.backgroundColor = .red #if os(iOS) @@ -251,12 +251,12 @@ struct PresentationShowcase: View { #if os(iOS) || os(tvOS) .introspect( .sheet, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26) ) { presentationController in presentationController.containerView?.backgroundColor = .red.withAlphaComponent(0.75) } #elseif os(visionOS) - .introspect(.sheet, on: .visionOS(.v1, .v2)) { sheetPresentationController in + .introspect(.sheet, on: .visionOS(.v1, .v2, .v26)) { sheetPresentationController in sheetPresentationController.containerView?.backgroundColor = .red.withAlphaComponent(0.75) } #endif @@ -269,7 +269,7 @@ struct PresentationShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .fullScreenCover, - on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { presentationController in presentationController.containerView?.backgroundColor = .red.withAlphaComponent(0.75) } @@ -284,7 +284,7 @@ struct PresentationShowcase: View { .padding() .introspect( .popover, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { presentationController in presentationController.containerView?.backgroundColor = .red.withAlphaComponent(0.75) } @@ -305,12 +305,12 @@ struct GenericViewShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .view, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { view in view.backgroundColor = .cyan } #elseif os(macOS) - .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { view in + .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { view in view.layer?.backgroundColor = NSColor.cyan.cgColor } #endif @@ -320,12 +320,12 @@ struct GenericViewShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .view, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { view in view.backgroundColor = .yellow } #elseif os(macOS) - .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { view in + .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { view in view.layer?.backgroundColor = NSColor.yellow.cgColor } #endif @@ -334,12 +334,12 @@ struct GenericViewShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .view, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { view in view.backgroundColor = .blue } #elseif os(macOS) - .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { view in + .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { view in view.layer?.backgroundColor = NSColor.blue.cgColor } #endif @@ -348,12 +348,12 @@ struct GenericViewShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .view, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { view in view.backgroundColor = .red } #elseif os(macOS) - .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { view in + .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { view in view.layer?.backgroundColor = NSColor.red.cgColor } #endif @@ -375,12 +375,12 @@ struct SimpleElementsShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .textField, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { textField in textField.backgroundColor = .red } #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { textField in + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { textField in textField.backgroundColor = .red } #endif @@ -390,12 +390,12 @@ struct SimpleElementsShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .textField, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { textField in textField.backgroundColor = .green } #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { textField in + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { textField in textField.backgroundColor = .green } #endif @@ -408,12 +408,12 @@ struct SimpleElementsShowcase: View { #if os(iOS) .introspect( .toggle, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26) ) { toggle in toggle.backgroundColor = .red } #elseif os(macOS) - .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { toggle in + .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { toggle in toggle.layer?.backgroundColor = NSColor.red.cgColor } #endif @@ -422,12 +422,12 @@ struct SimpleElementsShowcase: View { #if os(iOS) .introspect( .toggle, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26) ) { toggle in toggle.backgroundColor = .green } #elseif os(macOS) - .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { toggle in + .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { toggle in toggle.layer?.backgroundColor = NSColor.green.cgColor } #endif @@ -436,22 +436,22 @@ struct SimpleElementsShowcase: View { HStack { Slider(value: $sliderValue, in: 0...100) #if os(iOS) - .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { slider in + .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { slider in slider.backgroundColor = .red } #elseif os(macOS) - .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { slider in + .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { slider in slider.layer?.backgroundColor = NSColor.red.cgColor } #endif Slider(value: $sliderValue, in: 0...100) #if os(iOS) - .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { slider in + .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { slider in slider.backgroundColor = .green } #elseif os(macOS) - .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { slider in + .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { slider in slider.layer?.backgroundColor = NSColor.green.cgColor } #endif @@ -462,11 +462,11 @@ struct SimpleElementsShowcase: View { Text("Stepper Red") } #if os(iOS) - .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { stepper in + .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { stepper in stepper.backgroundColor = .red } #elseif os(macOS) - .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { stepper in + .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { stepper in stepper.layer?.backgroundColor = NSColor.red.cgColor } #endif @@ -475,11 +475,11 @@ struct SimpleElementsShowcase: View { Text("Stepper Green") } #if os(iOS) - .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { stepper in + .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { stepper in stepper.backgroundColor = .green } #elseif os(macOS) - .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { stepper in + .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { stepper in stepper.layer?.backgroundColor = NSColor.green.cgColor } #endif @@ -491,11 +491,11 @@ struct SimpleElementsShowcase: View { Text("DatePicker Red") } #if os(iOS) || os(visionOS) - .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2)) { datePicker in + .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { datePicker in datePicker.backgroundColor = .red } #elseif os(macOS) - .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { datePicker in + .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { datePicker in datePicker.layer?.backgroundColor = NSColor.red.cgColor } #endif @@ -512,12 +512,12 @@ struct SimpleElementsShowcase: View { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .picker(style: .segmented), - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2) + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26) ) { datePicker in datePicker.backgroundColor = .red } #elseif os(macOS) - .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { datePicker in + .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { datePicker in datePicker.layer?.backgroundColor = NSColor.red.cgColor } #endif diff --git a/README.md b/README.md index a968c04c4..6bed714c3 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ For instance, when introspecting a `ScrollView`... ScrollView { Text("Item 1") } -.introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { scrollView in +.introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { scrollView in // do something with UIScrollView } ``` @@ -38,7 +38,7 @@ By default, the `.introspect` modifier acts directly on its _receiver_. This mea ```swift ScrollView { Text("Item 1") - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor) { scrollView in + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor) { scrollView in // do something with UIScrollView } } @@ -157,7 +157,7 @@ List { tableView.backgroundView = UIView() tableView.backgroundColor = .cyan } -.introspect(.list, on: .iOS(.v16, .v17, .v18)) { collectionView in +.introspect(.list, on: .iOS(.v16, .v17, .v18, .v26)) { collectionView in collectionView.backgroundView = UIView() collectionView.subviews.dropFirst(1).first?.backgroundColor = .cyan } @@ -169,7 +169,7 @@ List { ScrollView { Text("Item") } -.introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { scrollView in +.introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { scrollView in scrollView.backgroundColor = .red } ``` @@ -181,7 +181,7 @@ NavigationView { Text("Item") } .navigationViewStyle(.stack) -.introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { navigationController in +.introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { navigationController in navigationController.navigationBar.backgroundColor = .cyan } ``` @@ -190,7 +190,7 @@ NavigationView { ```swift TextField("Text Field", text: <#Binding#>) - .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { textField in + .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { textField in textField.backgroundColor = .red } ``` @@ -290,7 +290,7 @@ struct ContentView: View { ScrollView { // ... } - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { scrollView in + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { scrollView in self.scrollView = scrollView } } diff --git a/Sources/Introspect.swift b/Sources/Introspect.swift index 39a4ea209..8935b4d46 100644 --- a/Sources/Introspect.swift +++ b/Sources/Introspect.swift @@ -34,7 +34,7 @@ extension View { /// /// var body: some View { /// TextField("Placeholder", text: $text) - /// .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { + /// .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITextField /// } /// } diff --git a/Sources/PlatformVersion.swift b/Sources/PlatformVersion.swift index 49e50a7f8..66b7dd464 100644 --- a/Sources/PlatformVersion.swift +++ b/Sources/PlatformVersion.swift @@ -122,6 +122,20 @@ extension iOSVersion { return nil #endif } + + public static let v26 = iOSVersion { + #if os(iOS) + if #available(iOS 27, *) { + return .past + } + if #available(iOS 26, *) { + return .current + } + return .future + #else + return nil + #endif + } } public struct tvOSVersion: PlatformVersion { @@ -192,7 +206,7 @@ extension tvOSVersion { } public static let v17 = tvOSVersion { -#if os(tvOS) + #if os(tvOS) if #available(tvOS 18, *) { return .past } @@ -200,9 +214,9 @@ extension tvOSVersion { return .current } return .future -#else + #else return nil -#endif + #endif } public static let v18 = tvOSVersion { @@ -218,6 +232,20 @@ extension tvOSVersion { return nil #endif } + + public static let v26 = tvOSVersion { + #if os(tvOS) + if #available(tvOS 27, *) { + return .past + } + if #available(tvOS 26, *) { + return .current + } + return .future + #else + return nil + #endif + } } public struct macOSVersion: PlatformVersion { @@ -328,6 +356,20 @@ extension macOSVersion { return nil #endif } + + public static let v26 = macOSVersion { + #if os(macOS) + if #available(macOS 27, *) { + return .past + } + if #available(macOS 26, *) { + return .current + } + return .future + #else + return nil + #endif + } } public struct visionOSVersion: PlatformVersion { @@ -368,5 +410,19 @@ extension visionOSVersion { return nil #endif } + + public static let v26 = visionOSVersion { + #if os(visionOS) + if #available(visionOS 27, *) { + return .past + } + if #available(visionOS 26, *) { + return .current + } + return .future + #else + return nil + #endif + } } #endif diff --git a/Sources/ViewTypes/Button.swift b/Sources/ViewTypes/Button.swift index aa8a591aa..1303f55ee 100644 --- a/Sources/ViewTypes/Button.swift +++ b/Sources/ViewTypes/Button.swift @@ -17,7 +17,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// Button("Action", action: {}) -/// .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSButton /// } /// } @@ -42,6 +42,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ColorPicker.swift b/Sources/ViewTypes/ColorPicker.swift index e8b7ceb96..b1c2626d5 100644 --- a/Sources/ViewTypes/ColorPicker.swift +++ b/Sources/ViewTypes/ColorPicker.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// ColorPicker("Pick a color", selection: $color) -/// .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIColorPicker /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// /// var body: some View { /// ColorPicker("Pick a color", selection: $color) -/// .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSColorPicker /// } /// } @@ -45,7 +45,7 @@ import SwiftUI /// /// var body: some View { /// ColorPicker("Pick a color", selection: $color) -/// .introspect(.colorPicker, on: .visionOS(.v1, .v2)) { +/// .introspect(.colorPicker, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIColorPicker /// } /// } @@ -68,12 +68,14 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } @available(iOS 14, *) extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) @available(macOS 11, *) @@ -85,6 +87,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/DatePicker.swift b/Sources/ViewTypes/DatePicker.swift index 7ee070988..f2a6580f4 100644 --- a/Sources/ViewTypes/DatePicker.swift +++ b/Sources/ViewTypes/DatePicker.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// DatePicker("Pick a date", selection: $date) -/// .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -28,7 +28,7 @@ import SwiftUI /// /// var body: some View { /// DatePicker("Pick a date", selection: $date) -/// .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSDatePicker /// } /// } @@ -43,7 +43,7 @@ import SwiftUI /// /// var body: some View { /// DatePicker("Pick a date", selection: $date) -/// .introspect(.datePicker, on: .visionOS(.v1, .v2)) { +/// .introspect(.datePicker, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -64,11 +64,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -78,6 +80,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/DatePickerWithCompactStyle.swift b/Sources/ViewTypes/DatePickerWithCompactStyle.swift index fbc171dd4..891b306fa 100644 --- a/Sources/ViewTypes/DatePickerWithCompactStyle.swift +++ b/Sources/ViewTypes/DatePickerWithCompactStyle.swift @@ -12,7 +12,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.compact) -/// .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -32,7 +32,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.compact) -/// .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSDatePicker /// } /// } @@ -48,7 +48,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.compact) -/// .introspect(.datePicker(style: .compact), on: .visionOS(.v1, .v2)) { +/// .introspect(.datePicker(style: .compact), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -74,11 +74,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) && !targetEnvironment(macCatalyst) extension macOSViewVersion { @@ -90,6 +92,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/DatePickerWithFieldStyle.swift b/Sources/ViewTypes/DatePickerWithFieldStyle.swift index 052b61370..ad465f690 100644 --- a/Sources/ViewTypes/DatePickerWithFieldStyle.swift +++ b/Sources/ViewTypes/DatePickerWithFieldStyle.swift @@ -20,7 +20,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.field) -/// .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSDatePicker /// } /// } @@ -49,6 +49,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/DatePickerWithGraphicalStyle.swift b/Sources/ViewTypes/DatePickerWithGraphicalStyle.swift index fe7525339..e21a8dbde 100644 --- a/Sources/ViewTypes/DatePickerWithGraphicalStyle.swift +++ b/Sources/ViewTypes/DatePickerWithGraphicalStyle.swift @@ -12,7 +12,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.graphical) -/// .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -32,7 +32,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.graphical) -/// .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSDatePicker /// } /// } @@ -48,7 +48,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.graphical) -/// .introspect(.datePicker(style: .graphical), on: .visionOS(.v1, .v2)) { +/// .introspect(.datePicker(style: .graphical), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -74,11 +74,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) && !targetEnvironment(macCatalyst) extension macOSViewVersion { @@ -88,6 +90,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/DatePickerWithStepperFieldStyle.swift b/Sources/ViewTypes/DatePickerWithStepperFieldStyle.swift index abc4e2fed..4712ba85f 100644 --- a/Sources/ViewTypes/DatePickerWithStepperFieldStyle.swift +++ b/Sources/ViewTypes/DatePickerWithStepperFieldStyle.swift @@ -20,7 +20,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.stepperField) -/// .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSDatePicker /// } /// } @@ -49,6 +49,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/DatePickerWithWheelStyle.swift b/Sources/ViewTypes/DatePickerWithWheelStyle.swift index 4b20e03a1..3968ff7b1 100644 --- a/Sources/ViewTypes/DatePickerWithWheelStyle.swift +++ b/Sources/ViewTypes/DatePickerWithWheelStyle.swift @@ -12,7 +12,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.wheel) -/// .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -36,7 +36,7 @@ import SwiftUI /// var body: some View { /// DatePicker("Pick a date", selection: $date) /// .datePickerStyle(.wheel) -/// .introspect(.datePicker(style: .wheel), on: .visionOS(.v1, .v2)) { +/// .introspect(.datePicker(style: .wheel), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIDatePicker /// } /// } @@ -61,11 +61,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Form.swift b/Sources/ViewTypes/Form.swift index 92f3ffd70..106239537 100644 --- a/Sources/ViewTypes/Form.swift +++ b/Sources/ViewTypes/Form.swift @@ -16,7 +16,7 @@ import SwiftUI /// .introspect(.form, on: .iOS(.v13, .v14, .v15)) { /// print(type(of: $0)) // UITableView /// } -/// .introspect(.form, on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.form, on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -33,7 +33,7 @@ import SwiftUI /// Text("Item 2") /// Text("Item 3") /// } -/// .introspect(.form, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.form, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITableView /// } /// } @@ -54,7 +54,7 @@ import SwiftUI /// Text("Item 2") /// Text("Item 3") /// } -/// .introspect(.form, on: .visionOS(.v1, .v2)) { +/// .introspect(.form, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -78,6 +78,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -87,11 +88,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/FormWithGroupedStyle.swift b/Sources/ViewTypes/FormWithGroupedStyle.swift index 9e995750d..2a1e7323c 100644 --- a/Sources/ViewTypes/FormWithGroupedStyle.swift +++ b/Sources/ViewTypes/FormWithGroupedStyle.swift @@ -14,7 +14,7 @@ import SwiftUI /// Text("Item 3") /// } /// .formStyle(.grouped) -/// .introspect(.form(style: .grouped), on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.form(style: .grouped), on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -32,7 +32,7 @@ import SwiftUI /// Text("Item 3") /// } /// .formStyle(.grouped) -/// .introspect(.form(style: .grouped), on: .tvOS(.v16, .v17, .v18)) { +/// .introspect(.form(style: .grouped), on: .tvOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITableView /// } /// } @@ -50,7 +50,7 @@ import SwiftUI /// Text("Item 3") /// } /// .formStyle(.grouped) -/// .introspect(.form(style: .grouped), on: .macOS(.v13, .v14, .v15)) { +/// .introspect(.form(style: .grouped), on: .macOS(.v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSScrollView /// } /// } @@ -68,7 +68,7 @@ import SwiftUI /// Text("Item 3") /// } /// .formStyle(.grouped) -/// .introspect(.form(style: .grouped), on: .visionOS(.v1, .v2)) { +/// .introspect(.form(style: .grouped), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -98,6 +98,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -110,11 +111,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -127,6 +130,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/FullScreenCover.swift b/Sources/ViewTypes/FullScreenCover.swift index 2e122a9aa..53925c3e5 100644 --- a/Sources/ViewTypes/FullScreenCover.swift +++ b/Sources/ViewTypes/FullScreenCover.swift @@ -13,7 +13,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .fullScreenCover(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.fullScreenCover, on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.fullScreenCover, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPresentationController /// } /// } @@ -31,7 +31,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .fullScreenCover(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.fullScreenCover, on: .tvOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.fullScreenCover, on: .tvOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPresentationController /// } /// } @@ -53,7 +53,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .fullScreenCover(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.fullScreenCover, on: .visionOS(.v1, .v2)) { +/// .introspect(.fullScreenCover, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIPresentationController /// } /// } @@ -78,6 +78,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.presentationController }) @@ -92,6 +93,7 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.presentationController }) @@ -101,6 +103,7 @@ extension tvOSViewVersion { extension visionOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.presentationController }) diff --git a/Sources/ViewTypes/List.swift b/Sources/ViewTypes/List.swift index e623746f3..a3ae9f6c0 100644 --- a/Sources/ViewTypes/List.swift +++ b/Sources/ViewTypes/List.swift @@ -16,7 +16,7 @@ import SwiftUI /// .introspect(.list, on: .iOS(.v13, .v14, .v15)) { /// print(type(of: $0)) // UITableView /// } -/// .introspect(.list, on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -33,7 +33,7 @@ import SwiftUI /// Text("Item 2") /// Text("Item 3") /// } -/// .introspect(.list, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.list, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITableView /// } /// } @@ -50,7 +50,7 @@ import SwiftUI /// Text("Item 2") /// Text("Item 3") /// } -/// .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTableView /// } /// } @@ -67,7 +67,7 @@ import SwiftUI /// Text("Item 2") /// Text("Item 3") /// } -/// .introspect(.list, on: .visionOS(.v1, .v2)) { +/// .introspect(.list, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -95,6 +95,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -104,11 +105,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -118,6 +121,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ListCell.swift b/Sources/ViewTypes/ListCell.swift index 3684e6b67..70c28f9dc 100644 --- a/Sources/ViewTypes/ListCell.swift +++ b/Sources/ViewTypes/ListCell.swift @@ -14,7 +14,7 @@ import SwiftUI /// .introspect(.listCell, on: .iOS(.v13, .v14, .v15)) { /// print(type(of: $0)) // UITableViewCell /// } -/// .introspect(.listCell, on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.listCell, on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionViewCell /// } /// } @@ -31,7 +31,7 @@ import SwiftUI /// List { /// ForEach(1...3, id: \.self) { int in /// Text("Item \(int)") -/// .introspect(.listCell, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.listCell, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITableViewCell /// } /// } @@ -48,7 +48,7 @@ import SwiftUI /// List { /// ForEach(1...3, id: \.self) { int in /// Text("Item \(int)") -/// .introspect(.listCell, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.listCell, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTableCellView /// } /// } @@ -65,7 +65,7 @@ import SwiftUI /// List { /// ForEach(1...3, id: \.self) { int in /// Text("Item \(int)") -/// .introspect(.listCell, on: .visionOS(.v1, .v2)) { +/// .introspect(.listCell, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionViewCell /// } /// } @@ -92,6 +92,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -101,11 +102,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -115,6 +118,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ListWithBorderedStyle.swift b/Sources/ViewTypes/ListWithBorderedStyle.swift index 2aa80ed0b..c14eee917 100644 --- a/Sources/ViewTypes/ListWithBorderedStyle.swift +++ b/Sources/ViewTypes/ListWithBorderedStyle.swift @@ -22,7 +22,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.bordered) -/// .introspect(.list(style: .bordered), on: .macOS(.v12, .v13, .v14, .v15)) { +/// .introspect(.list(style: .bordered), on: .macOS(.v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTableView /// } /// } @@ -53,6 +53,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ListWithGroupedStyle.swift b/Sources/ViewTypes/ListWithGroupedStyle.swift index 27a11975e..cecb60713 100644 --- a/Sources/ViewTypes/ListWithGroupedStyle.swift +++ b/Sources/ViewTypes/ListWithGroupedStyle.swift @@ -17,7 +17,7 @@ import SwiftUI /// .introspect(.list(style: .grouped), on: .iOS(.v13, .v14, .v15)) { /// print(type(of: $0)) // UITableView /// } -/// .introspect(.list(style: .grouped), on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.list(style: .grouped), on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -35,7 +35,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.grouped) -/// .introspect(.list(style: .grouped), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.list(style: .grouped), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITableView /// } /// } @@ -57,7 +57,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.grouped) -/// .introspect(.list(style: .grouped), on: .visionOS(.v1, .v2)) { +/// .introspect(.list(style: .grouped), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -85,6 +85,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -94,11 +95,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ListWithInsetGroupedStyle.swift b/Sources/ViewTypes/ListWithInsetGroupedStyle.swift index d31872ab9..19fe700e8 100644 --- a/Sources/ViewTypes/ListWithInsetGroupedStyle.swift +++ b/Sources/ViewTypes/ListWithInsetGroupedStyle.swift @@ -17,7 +17,7 @@ import SwiftUI /// .introspect(.list(style: .insetGrouped), on: .iOS(.v14, .v15)) { /// print(type(of: $0)) // UITableView /// } -/// .introspect(.list(style: .insetGrouped), on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.list(style: .insetGrouped), on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -43,7 +43,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.insetGrouped) -/// .introspect(.list(style: .insetGrouped), on: .visionOS(.v1, .v2)) { +/// .introspect(.list(style: .insetGrouped), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -72,11 +72,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ListWithInsetStyle.swift b/Sources/ViewTypes/ListWithInsetStyle.swift index 9e14d88dd..e76bbff52 100644 --- a/Sources/ViewTypes/ListWithInsetStyle.swift +++ b/Sources/ViewTypes/ListWithInsetStyle.swift @@ -17,7 +17,7 @@ import SwiftUI /// .introspect(.list(style: .inset), on: .iOS(.v14, .v15)) { /// print(type(of: $0)) // UITableView /// } -/// .introspect(.list(style: .inset), on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.list(style: .inset), on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -39,7 +39,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.inset) -/// .introspect(.list(style: .inset), on: .macOS(.v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.list(style: .inset), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTableView /// } /// } @@ -57,7 +57,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.inset) -/// .introspect(.list(style: .inset), on: .visionOS(.v1, .v2)) { +/// .introspect(.list(style: .inset), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -86,11 +86,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -101,6 +103,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ListWithSidebarStyle.swift b/Sources/ViewTypes/ListWithSidebarStyle.swift index c6baff582..47973905a 100644 --- a/Sources/ViewTypes/ListWithSidebarStyle.swift +++ b/Sources/ViewTypes/ListWithSidebarStyle.swift @@ -17,7 +17,7 @@ import SwiftUI /// .introspect(.list(style: .sidebar), on: .iOS(.v14, .v15)) { /// print(type(of: $0)) // UITableView /// } -/// .introspect(.list(style: .sidebar), on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.list(style: .sidebar), on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -39,7 +39,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.sidebar) -/// .introspect(.list(style: .sidebar), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.list(style: .sidebar), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTableView /// } /// } @@ -57,7 +57,7 @@ import SwiftUI /// Text("Item 3") /// } /// .listStyle(.sidebar) -/// .introspect(.list(style: .sidebar), on: .visionOS(.v1, .v2)) { +/// .introspect(.list(style: .sidebar), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -86,11 +86,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -100,6 +102,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Map.swift b/Sources/ViewTypes/Map.swift index 6704be0af..c24cabb68 100644 --- a/Sources/ViewTypes/Map.swift +++ b/Sources/ViewTypes/Map.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// Map(coordinateRegion: $region) -/// .introspect(.map, on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.map, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // MKMapView /// } /// } @@ -26,7 +26,7 @@ import SwiftUI /// /// var body: some View { /// Map(coordinateRegion: $region) -/// .introspect(.map, on: .tvOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.map, on: .tvOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // MKMapView /// } /// } @@ -41,7 +41,7 @@ import SwiftUI /// /// var body: some View { /// Map(coordinateRegion: $region) -/// .introspect(.map, on: .macOS(.v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.map, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // MKMapView /// } /// } @@ -56,7 +56,7 @@ import SwiftUI /// /// var body: some View { /// Map(coordinateRegion: $region) -/// .introspect(.map, on: .visionOS(.v1, .v2)) { +/// .introspect(.map, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // MKMapView /// } /// } @@ -79,6 +79,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -89,6 +90,7 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension macOSViewVersion { @@ -99,11 +101,13 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/NavigationSplitView.swift b/Sources/ViewTypes/NavigationSplitView.swift index 44ee0c233..26182bfee 100644 --- a/Sources/ViewTypes/NavigationSplitView.swift +++ b/Sources/ViewTypes/NavigationSplitView.swift @@ -13,7 +13,7 @@ import SwiftUI /// } detail: { /// Text("Detail") /// } -/// .introspect(.navigationSplitView, on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.navigationSplitView, on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISplitViewController /// } /// } @@ -47,7 +47,7 @@ import SwiftUI /// } detail: { /// Text("Detail") /// } -/// .introspect(.navigationSplitView, on: .macOS(.v13, .v14, .v15)) { +/// .introspect(.navigationSplitView, on: .macOS(.v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSSplitView /// } /// } @@ -64,7 +64,7 @@ import SwiftUI /// } detail: { /// Text("Detail") /// } -/// .introspect(.navigationSplitView, on: .visionOS(.v1, .v2)) { +/// .introspect(.navigationSplitView, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UISplitViewController /// } /// } @@ -88,6 +88,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.splitViewController } @@ -106,6 +107,8 @@ extension tvOSViewVersion { public static let v17 = Self(for: .v17, selector: selector) @available(*, unavailable, message: "NavigationSplitView isn't backed by UIKit since tvOS 18") public static let v18 = Self.unavailable() + @available(*, unavailable, message: "NavigationSplitView isn't backed by UIKit since tvOS 18") + public static let v26 = Self.unavailable() private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.navigationController } @@ -115,6 +118,7 @@ extension tvOSViewVersion { extension visionOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.splitViewController } @@ -132,6 +136,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/NavigationStack.swift b/Sources/ViewTypes/NavigationStack.swift index 26ee12bf2..846cdefb2 100644 --- a/Sources/ViewTypes/NavigationStack.swift +++ b/Sources/ViewTypes/NavigationStack.swift @@ -11,7 +11,7 @@ import SwiftUI /// NavigationStack { /// Text("Root") /// } -/// .introspect(.navigationStack, on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.navigationStack, on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -26,7 +26,7 @@ import SwiftUI /// NavigationStack { /// Text("Root") /// } -/// .introspect(.navigationStack, on: .tvOS(.v16, .v17, .v18)) { +/// .introspect(.navigationStack, on: .tvOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -45,7 +45,7 @@ import SwiftUI /// NavigationStack { /// Text("Root") /// } -/// .introspect(.navigationStack, on: .visionOS(.v1, .v2)) { +/// .introspect(.navigationStack, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -69,6 +69,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.navigationController } @@ -86,6 +87,7 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.navigationController } @@ -95,6 +97,7 @@ extension tvOSViewVersion { extension visionOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.navigationController } diff --git a/Sources/ViewTypes/NavigationViewWithColumnsStyle.swift b/Sources/ViewTypes/NavigationViewWithColumnsStyle.swift index 94e8e72b0..389e4fac3 100644 --- a/Sources/ViewTypes/NavigationViewWithColumnsStyle.swift +++ b/Sources/ViewTypes/NavigationViewWithColumnsStyle.swift @@ -12,7 +12,7 @@ import SwiftUI /// Text("Root") /// } /// .navigationViewStyle(DoubleColumnNavigationViewStyle()) -/// .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISplitViewController /// } /// } @@ -28,7 +28,7 @@ import SwiftUI /// Text("Root") /// } /// .navigationViewStyle(DoubleColumnNavigationViewStyle()) -/// .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -44,7 +44,7 @@ import SwiftUI /// Text("Root") /// } /// .navigationViewStyle(DoubleColumnNavigationViewStyle()) -/// .introspect(.navigationView(style: .columns), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.navigationView(style: .columns), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSSplitView /// } /// } @@ -60,7 +60,7 @@ import SwiftUI /// Text("Root") /// } /// .navigationViewStyle(DoubleColumnNavigationViewStyle()) -/// .introspect(.navigationView(style: .columns), on: .visionOS(.v1, .v2)) { +/// .introspect(.navigationView(style: .columns), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UISplitViewController /// } /// } @@ -84,6 +84,7 @@ extension iOSViewVersion { .default.withAncestorSelector { $0.splitViewController } @@ -97,6 +98,7 @@ extension tvOSViewVersion { .default.withAncestorSelector { $0.navigationController } @@ -106,6 +108,7 @@ extension tvOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.splitViewController } @@ -119,6 +122,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/NavigationViewWithStackStyle.swift b/Sources/ViewTypes/NavigationViewWithStackStyle.swift index f44064b34..970b392ff 100644 --- a/Sources/ViewTypes/NavigationViewWithStackStyle.swift +++ b/Sources/ViewTypes/NavigationViewWithStackStyle.swift @@ -12,7 +12,7 @@ import SwiftUI /// Text("Root") /// } /// .navigationViewStyle(.stack) -/// .introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -28,7 +28,7 @@ import SwiftUI /// Text("Root") /// } /// .navigationViewStyle(.stack) -/// .introspect(.navigationView(style: .stack), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.navigationView(style: .stack), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -48,7 +48,7 @@ import SwiftUI /// Text("Root") /// } /// .navigationViewStyle(.stack) -/// .introspect(.navigationView(style: .stack), on: .visionOS(.v1, .v2)) { +/// .introspect(.navigationView(style: .stack), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -72,6 +72,7 @@ extension iOSViewVersion { .default.withAncestorSelector { $0.navigationController } @@ -85,6 +86,7 @@ extension tvOSViewVersion { .default.withAncestorSelector { $0.navigationController } @@ -94,6 +96,7 @@ extension tvOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .default.withAncestorSelector { $0.navigationController } diff --git a/Sources/ViewTypes/PageControl.swift b/Sources/ViewTypes/PageControl.swift index a16304e5a..6750e4d3e 100644 --- a/Sources/ViewTypes/PageControl.swift +++ b/Sources/ViewTypes/PageControl.swift @@ -13,7 +13,7 @@ import SwiftUI /// Text("Page 2").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.blue) /// } /// .tabViewStyle(.page(indexDisplayMode: .always)) -/// .introspect(.pageControl, on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.pageControl, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPageControl /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// Text("Page 2").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.blue) /// } /// .tabViewStyle(.page(indexDisplayMode: .always)) -/// .introspect(.pageControl, on: .tvOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.pageControl, on: .tvOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPageControl /// } /// } @@ -51,7 +51,7 @@ import SwiftUI /// Text("Page 2").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.blue) /// } /// .tabViewStyle(.page(indexDisplayMode: .always)) -/// .introspect(.pageControl, on: .visionOS(.v1, .v2)) { +/// .introspect(.pageControl, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIPageControl /// } /// } @@ -72,6 +72,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -82,11 +83,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/PickerWithMenuStyle.swift b/Sources/ViewTypes/PickerWithMenuStyle.swift index 2a7079e2b..388a8c5e2 100644 --- a/Sources/ViewTypes/PickerWithMenuStyle.swift +++ b/Sources/ViewTypes/PickerWithMenuStyle.swift @@ -24,7 +24,7 @@ import SwiftUI /// Text("3").tag("3") /// } /// .pickerStyle(.menu) -/// .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSPopUpButton /// } /// } @@ -54,6 +54,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/PickerWithSegmentedStyle.swift b/Sources/ViewTypes/PickerWithSegmentedStyle.swift index 7ad1ff045..be513511a 100644 --- a/Sources/ViewTypes/PickerWithSegmentedStyle.swift +++ b/Sources/ViewTypes/PickerWithSegmentedStyle.swift @@ -16,7 +16,7 @@ import SwiftUI /// Text("3").tag("3") /// } /// .pickerStyle(.segmented) -/// .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISegmentedControl /// } /// } @@ -36,7 +36,7 @@ import SwiftUI /// Text("3").tag("3") /// } /// .pickerStyle(.segmented) -/// .introspect(.picker(style: .segmented), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.picker(style: .segmented), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISegmentedControl /// } /// } @@ -56,7 +56,7 @@ import SwiftUI /// Text("3").tag("3") /// } /// .pickerStyle(.segmented) -/// .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSSegmentedControl /// } /// } @@ -76,7 +76,7 @@ import SwiftUI /// Text("3").tag("3") /// } /// .pickerStyle(.segmented) -/// .introspect(.picker(style: .segmented), on: .visionOS(.v1, .v2)) { +/// .introspect(.picker(style: .segmented), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UISegmentedControl /// } /// } @@ -100,6 +100,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -109,11 +110,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -123,6 +126,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/PickerWithWheelStyle.swift b/Sources/ViewTypes/PickerWithWheelStyle.swift index 991fff35b..54a99bd87 100644 --- a/Sources/ViewTypes/PickerWithWheelStyle.swift +++ b/Sources/ViewTypes/PickerWithWheelStyle.swift @@ -16,7 +16,7 @@ import SwiftUI /// Text("3").tag("3") /// } /// .pickerStyle(.wheel) -/// .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPickerView /// } /// } @@ -44,7 +44,7 @@ import SwiftUI /// Text("3").tag("3") /// } /// .pickerStyle(.wheel) -/// .introspect(.picker(style: .wheel), on: .visionOS(.v1, .v2)) { +/// .introspect(.picker(style: .wheel), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIPickerView /// } /// } @@ -69,11 +69,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Popover.swift b/Sources/ViewTypes/Popover.swift index 2f28ab4c8..1ef12137c 100644 --- a/Sources/ViewTypes/Popover.swift +++ b/Sources/ViewTypes/Popover.swift @@ -13,7 +13,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .popover(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.popover, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.popover, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPopoverPresentationController /// } /// } @@ -39,7 +39,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .popover(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.popover, on: .visionOS(.v1, .v2)) { +/// .introspect(.popover, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIPopoverPresentationController /// } /// } @@ -63,6 +63,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.popoverPresentationController }) @@ -72,6 +73,7 @@ extension iOSViewVersion { extension visionOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.popoverPresentationController }) diff --git a/Sources/ViewTypes/ProgressViewWithCircularStyle.swift b/Sources/ViewTypes/ProgressViewWithCircularStyle.swift index d6a79677b..b7301e43f 100644 --- a/Sources/ViewTypes/ProgressViewWithCircularStyle.swift +++ b/Sources/ViewTypes/ProgressViewWithCircularStyle.swift @@ -10,7 +10,7 @@ import SwiftUI /// var body: some View { /// ProgressView(value: 0.5) /// .progressViewStyle(.circular) -/// .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIActivityIndicatorView /// } /// } @@ -24,7 +24,7 @@ import SwiftUI /// var body: some View { /// ProgressView(value: 0.5) /// .progressViewStyle(.circular) -/// .introspect(.progressView(style: .circular), on: .tvOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.progressView(style: .circular), on: .tvOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIActivityIndicatorView /// } /// } @@ -38,7 +38,7 @@ import SwiftUI /// var body: some View { /// ProgressView(value: 0.5) /// .progressViewStyle(.circular) -/// .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSProgressIndicator /// } /// } @@ -52,7 +52,7 @@ import SwiftUI /// var body: some View { /// ProgressView(value: 0.5) /// .progressViewStyle(.circular) -/// .introspect(.progressView(style: .circular), on: .visionOS(.v1, .v2)) { +/// .introspect(.progressView(style: .circular), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIActivityIndicatorView /// } /// } @@ -77,6 +77,7 @@ extension iOSViewVersion { @@ -87,11 +88,13 @@ extension tvOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -102,6 +105,7 @@ extension macOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -87,11 +88,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -102,6 +105,7 @@ extension macOSViewVersion public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ScrollView.swift b/Sources/ViewTypes/ScrollView.swift index c449c7f43..bb8a29d49 100644 --- a/Sources/ViewTypes/ScrollView.swift +++ b/Sources/ViewTypes/ScrollView.swift @@ -11,7 +11,7 @@ import SwiftUI /// ScrollView { /// Text("Item") /// } -/// .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIScrollView /// } /// } @@ -26,7 +26,7 @@ import SwiftUI /// ScrollView { /// Text("Item") /// } -/// .introspect(.scrollView, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.scrollView, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIScrollView /// } /// } @@ -41,7 +41,7 @@ import SwiftUI /// ScrollView { /// Text("Item") /// } -/// .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSScrollView /// } /// } @@ -56,7 +56,7 @@ import SwiftUI /// ScrollView { /// Text("Item") /// } -/// .introspect(.scrollView, on: .visionOS(.v1, .v2)) { +/// .introspect(.scrollView, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIScrollView /// } /// } @@ -76,6 +76,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -85,11 +86,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -99,6 +102,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/SearchField.swift b/Sources/ViewTypes/SearchField.swift index ce7129ce1..02ba40f44 100644 --- a/Sources/ViewTypes/SearchField.swift +++ b/Sources/ViewTypes/SearchField.swift @@ -15,7 +15,7 @@ import SwiftUI /// .searchable(text: $searchTerm) /// } /// .navigationViewStyle(.stack) -/// .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18)) { +/// .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISearchBar /// } /// } @@ -34,7 +34,7 @@ import SwiftUI /// .searchable(text: $searchTerm) /// } /// .navigationViewStyle(.stack) -/// .introspect(.searchField, on: .tvOS(.v15, .v16, .v17, .v18)) { +/// .introspect(.searchField, on: .tvOS(.v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISearchBar /// } /// } @@ -57,7 +57,7 @@ import SwiftUI /// .searchable(text: $searchTerm) /// } /// .navigationViewStyle(.stack) -/// .introspect(.searchField, on: .visionOS(.v1, .v2)) { +/// .introspect(.searchField, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UISearchBar /// } /// } @@ -79,6 +79,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UINavigationController.self) { @@ -96,6 +97,7 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UINavigationController.self) { @@ -107,6 +109,7 @@ extension tvOSViewVersion { extension visionOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UINavigationController.self) { diff --git a/Sources/ViewTypes/SecureField.swift b/Sources/ViewTypes/SecureField.swift index f8d330c40..53366f353 100644 --- a/Sources/ViewTypes/SecureField.swift +++ b/Sources/ViewTypes/SecureField.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// SecureField("Secure Field", text: $text) -/// .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISecureField /// } /// } @@ -26,7 +26,7 @@ import SwiftUI /// /// var body: some View { /// SecureField("Secure Field", text: $text) -/// .introspect(.secureField, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.secureField, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISecureField /// } /// } @@ -41,7 +41,7 @@ import SwiftUI /// /// var body: some View { /// SecureField("Secure Field", text: $text) -/// .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSSecureField /// } /// } @@ -56,7 +56,7 @@ import SwiftUI /// /// var body: some View { /// SecureField("Secure Field", text: $text) -/// .introspect(.secureField, on: .visionOS(.v1, .v2)) { +/// .introspect(.secureField, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UISecureField /// } /// } @@ -76,6 +76,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -85,11 +86,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -99,6 +102,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Sheet.swift b/Sources/ViewTypes/Sheet.swift index cb7619bcf..f9feea882 100644 --- a/Sources/ViewTypes/Sheet.swift +++ b/Sources/ViewTypes/Sheet.swift @@ -13,7 +13,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .sheet(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.sheet, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.sheet, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPresentationController /// } /// } @@ -31,7 +31,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .sheet(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.sheet, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.sheet, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIPresentationController /// } /// } @@ -53,7 +53,7 @@ import SwiftUI /// Button("Present", action: { isPresented = true }) /// .sheet(isPresented: $isPresented) { /// Button("Dismiss", action: { isPresented = false }) -/// .introspect(.sheet, on: .visionOS(.v1, .v2)) { +/// .introspect(.sheet, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UISheetPresentationController /// } /// } @@ -77,6 +77,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.presentationController }) @@ -94,6 +95,8 @@ extension iOSViewVersion { public static let v17 = Self(for: .v17, selector: selector) @_disfavoredOverload public static let v18 = Self(for: .v18, selector: selector) + @_disfavoredOverload + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.sheetPresentationController }) @@ -104,6 +107,7 @@ extension iOSViewVersion { extension visionOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.sheetPresentationController }) @@ -118,6 +122,7 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIViewController.self, selector: { $0.presentationController }) diff --git a/Sources/ViewTypes/SignInWithAppleButton.swift b/Sources/ViewTypes/SignInWithAppleButton.swift index 24fd0e26f..22db93bd8 100644 --- a/Sources/ViewTypes/SignInWithAppleButton.swift +++ b/Sources/ViewTypes/SignInWithAppleButton.swift @@ -13,7 +13,7 @@ import SwiftUI /// } onCompletion: { result in /// // do something with result /// } -/// .introspect(.signInWithAppleButton, on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.signInWithAppleButton, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // ASAuthorizationAppleIDButton /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// } onCompletion: { result in /// // do something with result /// } -/// .introspect(.signInWithAppleButton, on: .tvOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.signInWithAppleButton, on: .tvOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // ASAuthorizationAppleIDButton /// } /// } @@ -47,7 +47,7 @@ import SwiftUI /// } onCompletion: { result in /// // do something with result /// } -/// .introspect(.signInWithAppleButton, on: .macOS(.v11, .v12, .v13, .v14, .v15),) { +/// .introspect(.signInWithAppleButton, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26),) { /// print(type(of: $0)) // ASAuthorizationAppleIDButton /// } /// } @@ -64,7 +64,7 @@ import SwiftUI /// } onCompletion: { result in /// // do something with result /// } -/// .introspect(.signInWithAppleButton, on: .visionOS(.v1, .v2)) { +/// .introspect(.signInWithAppleButton, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // ASAuthorizationAppleIDButton /// } /// } diff --git a/Sources/ViewTypes/Slider.swift b/Sources/ViewTypes/Slider.swift index 34e283b8d..c0b7a0e56 100644 --- a/Sources/ViewTypes/Slider.swift +++ b/Sources/ViewTypes/Slider.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// Slider(value: $selection, in: 0...1) -/// .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISlider /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// /// var body: some View { /// Slider(value: $selection, in: 0...1) -/// .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSSlider /// } /// } @@ -55,6 +55,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -64,6 +65,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Stepper.swift b/Sources/ViewTypes/Stepper.swift index 40e6dd1bd..5db0fed0f 100644 --- a/Sources/ViewTypes/Stepper.swift +++ b/Sources/ViewTypes/Stepper.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// Stepper("Select a number", value: $selection, in: 0...10) -/// .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIStepper /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// /// var body: some View { /// Stepper("Select a number", value: $selection, in: 0...10) -/// .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSStepper /// } /// } @@ -55,6 +55,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -64,6 +65,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/TabView.swift b/Sources/ViewTypes/TabView.swift index 7e0ed43c6..3108905cc 100644 --- a/Sources/ViewTypes/TabView.swift +++ b/Sources/ViewTypes/TabView.swift @@ -12,7 +12,7 @@ import SwiftUI /// Text("Tab 1").tabItem { Text("Tab 1") } /// Text("Tab 2").tabItem { Text("Tab 2") } /// } -/// .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITabBarController /// } /// } @@ -28,7 +28,7 @@ import SwiftUI /// Text("Tab 1").tabItem { Text("Tab 1") } /// Text("Tab 2").tabItem { Text("Tab 2") } /// } -/// .introspect(.tabView, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.tabView, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITabBarController /// } /// } @@ -69,6 +69,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) @MainActor private static var selector: IntrospectionSelector { @@ -83,6 +84,7 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) @MainActor private static var selector: IntrospectionSelector { @@ -98,6 +100,8 @@ extension macOSViewVersion { public static let v14 = Self(for: .v14) @available(*, unavailable, message: "TabView is no longer backed by NSTabView starting macOS 15") public static let v15 = Self.unavailable() + @available(*, unavailable, message: "TabView is no longer backed by NSTabView starting macOS 15") + public static let v26 = Self.unavailable() } #endif #endif diff --git a/Sources/ViewTypes/TabViewWithPageStyle.swift b/Sources/ViewTypes/TabViewWithPageStyle.swift index eaada897c..2e8c5bcf3 100644 --- a/Sources/ViewTypes/TabViewWithPageStyle.swift +++ b/Sources/ViewTypes/TabViewWithPageStyle.swift @@ -13,7 +13,7 @@ import SwiftUI /// Text("Page 2").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.blue) /// } /// .tabViewStyle(.page(indexDisplayMode: .always)) -/// .introspect(.tabView(style: .page), on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.tabView(style: .page), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// Text("Page 2").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.blue) /// } /// .tabViewStyle(.page(indexDisplayMode: .always)) -/// .introspect(.tabView(style: .page), on: .tvOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.tabView(style: .page), on: .tvOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -51,7 +51,7 @@ import SwiftUI /// Text("Page 2").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.blue) /// } /// .tabViewStyle(.page(indexDisplayMode: .always)) -/// .introspect(.tabView(style: .page), on: .visionOS(.v1, .v2)) { +/// .introspect(.tabView(style: .page), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -77,6 +77,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -87,11 +88,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Table.swift b/Sources/ViewTypes/Table.swift index 4baee5ff7..a439069ad 100644 --- a/Sources/ViewTypes/Table.swift +++ b/Sources/ViewTypes/Table.swift @@ -28,7 +28,7 @@ import SwiftUI /// TableRow(Purchase(price: 50)) /// TableRow(Purchase(price: 75)) /// } -/// .introspect(.table, on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.table, on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -64,7 +64,7 @@ import SwiftUI /// TableRow(Purchase(price: 50)) /// TableRow(Purchase(price: 75)) /// } -/// .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15)) { +/// .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTableView /// } /// } @@ -96,7 +96,7 @@ import SwiftUI /// TableRow(Purchase(price: 50)) /// TableRow(Purchase(price: 75)) /// } -/// .introspect(.table, on: .visionOS(.v1, .v2)) { +/// .introspect(.table, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UICollectionView /// } /// } @@ -120,11 +120,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -136,6 +138,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/TextEditor.swift b/Sources/ViewTypes/TextEditor.swift index d97ffcc88..e8d54b3d9 100644 --- a/Sources/ViewTypes/TextEditor.swift +++ b/Sources/ViewTypes/TextEditor.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// TextEditor(text: $text) -/// .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITextView /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// /// var body: some View { /// TextEditor(text: $text) -/// .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTextView /// } /// } @@ -45,7 +45,7 @@ import SwiftUI /// /// var body: some View { /// TextEditor(text: $text) -/// .introspect(.textEditor, on: .visionOS(.v1, .v2)) { +/// .introspect(.textEditor, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UITextView /// } /// } @@ -67,11 +67,13 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -82,6 +84,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/TextField.swift b/Sources/ViewTypes/TextField.swift index 7abc2ac6c..f6635df15 100644 --- a/Sources/ViewTypes/TextField.swift +++ b/Sources/ViewTypes/TextField.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text) -/// .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITextField /// } /// } @@ -26,7 +26,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text) -/// .introspect(.textField, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.textField, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITextField /// } /// } @@ -41,7 +41,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text) -/// .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTextField /// } /// } @@ -56,7 +56,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text) -/// .introspect(.textField, on: .visionOS(.v1, .v2)) { +/// .introspect(.textField, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UITextField /// } /// } @@ -76,6 +76,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -85,11 +86,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -99,6 +102,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/TextFieldWithVerticalAxis.swift b/Sources/ViewTypes/TextFieldWithVerticalAxis.swift index d76a453c2..70cc88c72 100644 --- a/Sources/ViewTypes/TextFieldWithVerticalAxis.swift +++ b/Sources/ViewTypes/TextFieldWithVerticalAxis.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text, axis: .vertical) -/// .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18)) { +/// .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITextView /// } /// } @@ -26,7 +26,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text, axis: .vertical) -/// .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18)) { +/// .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UITextField /// } /// } @@ -41,7 +41,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text, axis: .vertical) -/// .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15)) { +/// .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSTextField /// } /// } @@ -56,7 +56,7 @@ import SwiftUI /// /// var body: some View { /// TextField("Text Field", text: $text, axis: .vertical) -/// .introspect(.textField(axis: .vertical), on: .visionOS(.v1, .v2)) { +/// .introspect(.textField(axis: .vertical), on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UITextView /// } /// } @@ -86,6 +86,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -99,11 +100,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -117,6 +120,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Toggle.swift b/Sources/ViewTypes/Toggle.swift index c8924a2d7..8e5cb0fbd 100644 --- a/Sources/ViewTypes/Toggle.swift +++ b/Sources/ViewTypes/Toggle.swift @@ -11,7 +11,7 @@ import SwiftUI /// /// var body: some View { /// Toggle("Toggle", isOn: $isOn) -/// .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISwitch /// } /// } @@ -30,7 +30,7 @@ import SwiftUI /// /// var body: some View { /// Toggle("Toggle", isOn: $isOn) -/// .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSButton /// } /// } @@ -55,6 +55,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -64,6 +65,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ToggleWithButtonStyle.swift b/Sources/ViewTypes/ToggleWithButtonStyle.swift index d5f9fe43f..9c0b3f991 100644 --- a/Sources/ViewTypes/ToggleWithButtonStyle.swift +++ b/Sources/ViewTypes/ToggleWithButtonStyle.swift @@ -20,7 +20,7 @@ import SwiftUI /// var body: some View { /// Toggle("Toggle", isOn: $isOn) /// .toggleStyle(.button) -/// .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15)) { +/// .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSButton /// } /// } @@ -51,6 +51,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ToggleWithCheckboxStyle.swift b/Sources/ViewTypes/ToggleWithCheckboxStyle.swift index ee7844aba..ac17b97a2 100644 --- a/Sources/ViewTypes/ToggleWithCheckboxStyle.swift +++ b/Sources/ViewTypes/ToggleWithCheckboxStyle.swift @@ -20,7 +20,7 @@ import SwiftUI /// var body: some View { /// Toggle("Checkbox", isOn: $isOn) /// .toggleStyle(.checkbox) -/// .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSButton /// } /// } @@ -49,6 +49,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ToggleWithSwitchStyle.swift b/Sources/ViewTypes/ToggleWithSwitchStyle.swift index 2788a36e7..bab5bb91e 100644 --- a/Sources/ViewTypes/ToggleWithSwitchStyle.swift +++ b/Sources/ViewTypes/ToggleWithSwitchStyle.swift @@ -12,7 +12,7 @@ import SwiftUI /// var body: some View { /// Toggle("Switch", isOn: $isOn) /// .toggleStyle(.switch) -/// .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UISwitch /// } /// } @@ -32,7 +32,7 @@ import SwiftUI /// var body: some View { /// Toggle("Switch", isOn: $isOn) /// .toggleStyle(.switch) -/// .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSSwitch /// } /// } @@ -61,6 +61,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -70,6 +71,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/VideoPlayer.swift b/Sources/ViewTypes/VideoPlayer.swift index be50449c3..8143ae35f 100644 --- a/Sources/ViewTypes/VideoPlayer.swift +++ b/Sources/ViewTypes/VideoPlayer.swift @@ -9,7 +9,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// VideoPlayer(player: AVPlayer(url: URL(string: "https://bit.ly/swswift")!)) -/// .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // AVPlayerViewController /// } /// } @@ -22,7 +22,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// VideoPlayer(player: AVPlayer(url: URL(string: "https://bit.ly/swswift")!)) -/// .introspect(.videoPlayer, on: .tvOS(.v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.videoPlayer, on: .tvOS(.v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // AVPlayerViewController /// } /// } @@ -35,7 +35,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// VideoPlayer(player: AVPlayer(url: URL(string: "https://bit.ly/swswift")!)) -/// .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // AVPlayerView /// } /// } @@ -48,7 +48,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// VideoPlayer(player: AVPlayer(url: URL(string: "https://bit.ly/swswift")!)) -/// .introspect(.videoPlayer, on: .visionOS(.v1, .v2)) { +/// .introspect(.videoPlayer, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // AVPlayerViewController /// } /// } @@ -72,6 +72,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -82,11 +83,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -97,6 +100,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/View.swift b/Sources/ViewTypes/View.swift index 02c99a664..8eed86655 100644 --- a/Sources/ViewTypes/View.swift +++ b/Sources/ViewTypes/View.swift @@ -12,7 +12,7 @@ import SwiftUI /// Image(systemName: "scribble") /// Text("Some text") /// } -/// .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // some subclass of UIView /// } /// } @@ -28,7 +28,7 @@ import SwiftUI /// Image(systemName: "scribble") /// Text("Some text") /// } -/// .introspect(.view, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.view, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // some subclass of UIView /// } /// } @@ -44,7 +44,7 @@ import SwiftUI /// Image(systemName: "scribble") /// Text("Some text") /// } -/// .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // some subclass of NSView /// } /// } @@ -60,7 +60,7 @@ import SwiftUI /// Image(systemName: "scribble") /// Text("Some text") /// } -/// .introspect(.view, on: .visionOS(.v1, .v2)) { +/// .introspect(.view, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // some subclass of UIView /// } /// } @@ -80,6 +80,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -89,11 +90,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #elseif canImport(AppKit) extension macOSViewVersion { @@ -103,6 +106,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13) public static let v14 = Self(for: .v14) public static let v15 = Self(for: .v15) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/ViewController.swift b/Sources/ViewTypes/ViewController.swift index 86c3941d1..08c2cbed3 100644 --- a/Sources/ViewTypes/ViewController.swift +++ b/Sources/ViewTypes/ViewController.swift @@ -11,12 +11,12 @@ import SwiftUI /// var body: some View { /// NavigationView { /// Text("Root").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.red) -/// .introspect(.viewController, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.viewController, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // some subclass of UIHostingController /// } /// } /// .navigationViewStyle(.stack) -/// .introspect(.viewController, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.viewController, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -30,12 +30,12 @@ import SwiftUI /// var body: some View { /// NavigationView { /// Text("Root").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.red) -/// .introspect(.viewController, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.viewController, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // some subclass of UIHostingController /// } /// } /// .navigationViewStyle(.stack) -/// .introspect(.viewController, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.viewController, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -53,12 +53,12 @@ import SwiftUI /// var body: some View { /// NavigationView { /// Text("Root").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.red) -/// .introspect(.viewController, on: .visionOS(.v1, .v2)) { +/// .introspect(.viewController, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // some subclass of UIHostingController /// } /// } /// .navigationViewStyle(.stack) -/// .introspect(.viewController, on: .visionOS(.v1, .v2)) { +/// .introspect(.viewController, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UINavigationController /// } /// } @@ -80,6 +80,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension tvOSViewVersion { @@ -89,11 +90,13 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16) public static let v17 = Self(for: .v17) public static let v18 = Self(for: .v18) + public static let v26 = Self(for: .v26) } extension visionOSViewVersion { public static let v1 = Self(for: .v1) public static let v2 = Self(for: .v2) + public static let v26 = Self(for: .v26) } #endif #endif diff --git a/Sources/ViewTypes/Window.swift b/Sources/ViewTypes/Window.swift index b0d4291fb..86f58aa90 100644 --- a/Sources/ViewTypes/Window.swift +++ b/Sources/ViewTypes/Window.swift @@ -9,7 +9,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// Text("Content") -/// .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIWindow /// } /// } @@ -22,7 +22,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// Text("Content") -/// .introspect(.window, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { +/// .introspect(.window, on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { /// print(type(of: $0)) // UIWindow /// } /// } @@ -35,7 +35,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// Text("Content") -/// .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { +/// .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { /// print(type(of: $0)) // NSWindow /// } /// } @@ -48,7 +48,7 @@ import SwiftUI /// struct ContentView: View { /// var body: some View { /// Text("Content") -/// .introspect(.window, on: .visionOS(.v1, .v2)) { +/// .introspect(.window, on: .visionOS(.v1, .v2, .v26)) { /// print(type(of: $0)) // UIWindow /// } /// } @@ -68,6 +68,7 @@ extension iOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIView.self, selector: { $0.window }) @@ -81,6 +82,7 @@ extension tvOSViewVersion { public static let v16 = Self(for: .v16, selector: selector) public static let v17 = Self(for: .v17, selector: selector) public static let v18 = Self(for: .v18, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIView.self, selector: { $0.window }) @@ -90,6 +92,7 @@ extension tvOSViewVersion { extension visionOSViewVersion { public static let v1 = Self(for: .v1, selector: selector) public static let v2 = Self(for: .v2, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(UIView.self, selector: { $0.window }) @@ -103,6 +106,7 @@ extension macOSViewVersion { public static let v13 = Self(for: .v13, selector: selector) public static let v14 = Self(for: .v14, selector: selector) public static let v15 = Self(for: .v15, selector: selector) + public static let v26 = Self(for: .v26, selector: selector) private static var selector: IntrospectionSelector { .from(NSView.self, selector: { $0.window }) diff --git a/Tests/Tests/PlatformVersionTests.swift b/Tests/Tests/PlatformVersionTests.swift index 2bd514ece..fcd4cf8ec 100644 --- a/Tests/Tests/PlatformVersionTests.swift +++ b/Tests/Tests/PlatformVersionTests.swift @@ -4,7 +4,15 @@ import XCTest final class PlatformVersionTests: XCTestCase { func test_iOS_isCurrent() { #if os(iOS) - if #available(iOS 18, *) { + if #available(iOS 26, *) { + XCTAssertEqual(iOSVersion.v26.isCurrent, true) + XCTAssertEqual(iOSVersion.v18.isCurrent, false) + XCTAssertEqual(iOSVersion.v17.isCurrent, false) + XCTAssertEqual(iOSVersion.v16.isCurrent, false) + XCTAssertEqual(iOSVersion.v15.isCurrent, false) + XCTAssertEqual(iOSVersion.v14.isCurrent, false) + XCTAssertEqual(iOSVersion.v13.isCurrent, false) + } else if #available(iOS 18, *) { XCTAssertEqual(iOSVersion.v18.isCurrent, true) XCTAssertEqual(iOSVersion.v17.isCurrent, false) XCTAssertEqual(iOSVersion.v16.isCurrent, false) @@ -48,6 +56,7 @@ final class PlatformVersionTests: XCTestCase { XCTAssertEqual(iOSVersion.v13.isCurrent, true) } #else + XCTAssertEqual(iOSVersion.v26.isCurrent, false) XCTAssertEqual(iOSVersion.v18.isCurrent, false) XCTAssertEqual(iOSVersion.v17.isCurrent, false) XCTAssertEqual(iOSVersion.v16.isCurrent, false) @@ -59,7 +68,15 @@ final class PlatformVersionTests: XCTestCase { func test_iOS_isCurrentOrPast() { #if os(iOS) - if #available(iOS 18, *) { + if #available(iOS 26, *) { + XCTAssertEqual(iOSVersion.v26.isCurrentOrPast, true) + XCTAssertEqual(iOSVersion.v18.isCurrentOrPast, true) + XCTAssertEqual(iOSVersion.v17.isCurrentOrPast, true) + XCTAssertEqual(iOSVersion.v16.isCurrentOrPast, true) + XCTAssertEqual(iOSVersion.v15.isCurrentOrPast, true) + XCTAssertEqual(iOSVersion.v14.isCurrentOrPast, true) + XCTAssertEqual(iOSVersion.v13.isCurrentOrPast, true) + } else if #available(iOS 18, *) { XCTAssertEqual(iOSVersion.v18.isCurrentOrPast, true) XCTAssertEqual(iOSVersion.v17.isCurrentOrPast, true) XCTAssertEqual(iOSVersion.v16.isCurrentOrPast, true) @@ -103,6 +120,7 @@ final class PlatformVersionTests: XCTestCase { XCTAssertEqual(iOSVersion.v13.isCurrentOrPast, true) } #else + XCTAssertEqual(iOSVersion.v26.isCurrentOrPast, false) XCTAssertEqual(iOSVersion.v18.isCurrentOrPast, false) XCTAssertEqual(iOSVersion.v17.isCurrentOrPast, false) XCTAssertEqual(iOSVersion.v16.isCurrentOrPast, false) @@ -114,7 +132,15 @@ final class PlatformVersionTests: XCTestCase { func test_macOS_isCurrent() { #if os(macOS) - if #available(macOS 15, *) { + if #available(macOS 26, *) { + XCTAssertEqual(macOSVersion.v26.isCurrent, true) + XCTAssertEqual(macOSVersion.v15.isCurrent, false) + XCTAssertEqual(macOSVersion.v14.isCurrent, false) + XCTAssertEqual(macOSVersion.v13.isCurrent, false) + XCTAssertEqual(macOSVersion.v12.isCurrent, false) + XCTAssertEqual(macOSVersion.v11.isCurrent, false) + XCTAssertEqual(macOSVersion.v10_15.isCurrent, false) + } else if #available(macOS 15, *) { XCTAssertEqual(macOSVersion.v15.isCurrent, true) XCTAssertEqual(macOSVersion.v14.isCurrent, false) XCTAssertEqual(macOSVersion.v13.isCurrent, false) @@ -158,6 +184,7 @@ final class PlatformVersionTests: XCTestCase { XCTAssertEqual(macOSVersion.v10_15.isCurrent, true) } #else + XCTAssertEqual(macOSVersion.v26.isCurrent, false) XCTAssertEqual(macOSVersion.v15.isCurrent, false) XCTAssertEqual(macOSVersion.v14.isCurrent, false) XCTAssertEqual(macOSVersion.v13.isCurrent, false) @@ -169,7 +196,15 @@ final class PlatformVersionTests: XCTestCase { func test_macOS_isCurrentOrPast() { #if os(macOS) - if #available(macOS 15, *) { + if #available(macOS 26, *) { + XCTAssertEqual(macOSVersion.v26.isCurrentOrPast, true) + XCTAssertEqual(macOSVersion.v15.isCurrentOrPast, true) + XCTAssertEqual(macOSVersion.v14.isCurrentOrPast, true) + XCTAssertEqual(macOSVersion.v13.isCurrentOrPast, true) + XCTAssertEqual(macOSVersion.v12.isCurrentOrPast, true) + XCTAssertEqual(macOSVersion.v11.isCurrentOrPast, true) + XCTAssertEqual(macOSVersion.v10_15.isCurrentOrPast, true) + } else if #available(macOS 15, *) { XCTAssertEqual(macOSVersion.v15.isCurrentOrPast, true) XCTAssertEqual(macOSVersion.v14.isCurrentOrPast, true) XCTAssertEqual(macOSVersion.v13.isCurrentOrPast, true) @@ -213,6 +248,7 @@ final class PlatformVersionTests: XCTestCase { XCTAssertEqual(macOSVersion.v10_15.isCurrentOrPast, true) } #else + XCTAssertEqual(macOSVersion.v26.isCurrentOrPast, false) XCTAssertEqual(macOSVersion.v15.isCurrentOrPast, false) XCTAssertEqual(macOSVersion.v14.isCurrentOrPast, false) XCTAssertEqual(macOSVersion.v13.isCurrentOrPast, false) @@ -224,7 +260,15 @@ final class PlatformVersionTests: XCTestCase { func test_tvOS_isCurrent() { #if os(tvOS) - if #available(tvOS 18, *) { + if #available(tvOS 26, *) { + XCTAssertEqual(tvOSVersion.v26.isCurrent, true) + XCTAssertEqual(tvOSVersion.v18.isCurrent, false) + XCTAssertEqual(tvOSVersion.v17.isCurrent, false) + XCTAssertEqual(tvOSVersion.v16.isCurrent, false) + XCTAssertEqual(tvOSVersion.v15.isCurrent, false) + XCTAssertEqual(tvOSVersion.v14.isCurrent, false) + XCTAssertEqual(tvOSVersion.v13.isCurrent, false) + } else if #available(tvOS 18, *) { XCTAssertEqual(tvOSVersion.v18.isCurrent, true) XCTAssertEqual(tvOSVersion.v17.isCurrent, false) XCTAssertEqual(tvOSVersion.v16.isCurrent, false) @@ -269,6 +313,7 @@ final class PlatformVersionTests: XCTestCase { XCTAssertEqual(tvOSVersion.v13.isCurrent, true) } #else + XCTAssertEqual(tvOSVersion.v26.isCurrent, false) XCTAssertEqual(tvOSVersion.v18.isCurrent, false) XCTAssertEqual(tvOSVersion.v17.isCurrent, false) XCTAssertEqual(tvOSVersion.v16.isCurrent, false) @@ -280,7 +325,15 @@ final class PlatformVersionTests: XCTestCase { func test_tvOS_isCurrentOrPast() { #if os(tvOS) - if #available(tvOS 18, *) { + if #available(tvOS 26, *) { + XCTAssertEqual(tvOSVersion.v26.isCurrentOrPast, true) + XCTAssertEqual(tvOSVersion.v18.isCurrentOrPast, true) + XCTAssertEqual(tvOSVersion.v17.isCurrentOrPast, true) + XCTAssertEqual(tvOSVersion.v16.isCurrentOrPast, true) + XCTAssertEqual(tvOSVersion.v15.isCurrentOrPast, true) + XCTAssertEqual(tvOSVersion.v14.isCurrentOrPast, true) + XCTAssertEqual(tvOSVersion.v13.isCurrentOrPast, true) + } else if #available(tvOS 18, *) { XCTAssertEqual(tvOSVersion.v18.isCurrentOrPast, true) XCTAssertEqual(tvOSVersion.v17.isCurrentOrPast, true) XCTAssertEqual(tvOSVersion.v16.isCurrentOrPast, true) @@ -324,6 +377,7 @@ final class PlatformVersionTests: XCTestCase { XCTAssertEqual(tvOSVersion.v13.isCurrentOrPast, true) } #else + XCTAssertEqual(tvOSVersion.v26.isCurrentOrPast, false) XCTAssertEqual(tvOSVersion.v18.isCurrentOrPast, false) XCTAssertEqual(tvOSVersion.v17.isCurrentOrPast, false) XCTAssertEqual(tvOSVersion.v16.isCurrentOrPast, false) @@ -332,4 +386,48 @@ final class PlatformVersionTests: XCTestCase { XCTAssertEqual(tvOSVersion.v13.isCurrentOrPast, false) #endif } + + func test_visionOS_isCurrent() { + #if os(visionOS) + if #available(visionOS 26, *) { + XCTAssertEqual(visionOSVersion.v26.isCurrent, true) + XCTAssertEqual(visionOSVersion.v2.isCurrent, false) + XCTAssertEqual(visionOSVersion.v1.isCurrent, false) + } else if #available(visionOS 2, *) { + XCTAssertEqual(visionOSVersion.v26.isCurrent, false) + XCTAssertEqual(visionOSVersion.v2.isCurrent, true) + XCTAssertEqual(visionOSVersion.v1.isCurrent, false) + } else if #available(visionOS 1, *) { + XCTAssertEqual(visionOSVersion.v26.isCurrent, false) + XCTAssertEqual(visionOSVersion.v2.isCurrent, false) + XCTAssertEqual(visionOSVersion.v1.isCurrent, true) + } + #else + XCTAssertEqual(visionOSVersion.v26.isCurrent, false) + XCTAssertEqual(visionOSVersion.v2.isCurrent, false) + XCTAssertEqual(visionOSVersion.v1.isCurrent, false) + #endif + } + + func test_visionOS_isCurrentOrPast() { + #if os(visionOS) + if #available(visionOS 26, *) { + XCTAssertEqual(visionOSVersion.v26.isCurrentOrPast, true) + XCTAssertEqual(visionOSVersion.v2.isCurrentOrPast, true) + XCTAssertEqual(visionOSVersion.v1.isCurrentOrPast, true) + } else if #available(visionOS 2, *) { + XCTAssertEqual(visionOSVersion.v26.isCurrentOrPast, false) + XCTAssertEqual(visionOSVersion.v2.isCurrentOrPast, true) + XCTAssertEqual(visionOSVersion.v1.isCurrentOrPast, true) + } else if #available(visionOS 1, *) { + XCTAssertEqual(visionOSVersion.v26.isCurrentOrPast, false) + XCTAssertEqual(visionOSVersion.v2.isCurrentOrPast, false) + XCTAssertEqual(visionOSVersion.v1.isCurrentOrPast, true) + } + #else + XCTAssertEqual(visionOSVersion.v26.isCurrentOrPast, false) + XCTAssertEqual(visionOSVersion.v2.isCurrentOrPast, false) + XCTAssertEqual(visionOSVersion.v1.isCurrentOrPast, false) + #endif + } } diff --git a/Tests/Tests/ViewTypes/ButtonTests.swift b/Tests/Tests/ViewTypes/ButtonTests.swift index 90e5391c5..f155f258d 100644 --- a/Tests/Tests/ViewTypes/ButtonTests.swift +++ b/Tests/Tests/ViewTypes/ButtonTests.swift @@ -20,24 +20,24 @@ final class ButtonTests: XCTestCase { Button("Button 0", action: {}) .buttonStyle(.bordered) #if os(macOS) - .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif Button("Button 1", action: {}) .buttonStyle(.borderless) #if os(macOS) - .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif Button("Button 2", action: {}) .buttonStyle(.link) #if os(macOS) - .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif Button("Button 3", action: {}) #if os(macOS) - .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy3) + .introspect(.button, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy3) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ColorPickerTests.swift b/Tests/Tests/ViewTypes/ColorPickerTests.swift index 1bf05618a..83abf8095 100644 --- a/Tests/Tests/ViewTypes/ColorPickerTests.swift +++ b/Tests/Tests/ViewTypes/ColorPickerTests.swift @@ -27,23 +27,23 @@ final class ColorPickerTests: XCTestCase { VStack { ColorPicker("", selection: .constant(PlatformColor.red.cgColor)) #if os(iOS) || os(visionOS) - .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif ColorPicker("", selection: .constant(PlatformColor.green.cgColor)) #if os(iOS) || os(visionOS) - .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif ColorPicker("", selection: .constant(PlatformColor.blue.cgColor)) #if os(iOS) || os(visionOS) - .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.colorPicker, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.colorPicker, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/DatePickerTests.swift b/Tests/Tests/ViewTypes/DatePickerTests.swift index 7421cdb83..07a2527ba 100644 --- a/Tests/Tests/ViewTypes/DatePickerTests.swift +++ b/Tests/Tests/ViewTypes/DatePickerTests.swift @@ -24,25 +24,25 @@ final class DatePickerTests: XCTestCase { VStack { DatePicker("", selection: .constant(date0)) #if os(iOS) || os(visionOS) - .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) DatePicker("", selection: .constant(date1)) #if os(iOS) || os(visionOS) - .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) DatePicker("", selection: .constant(date2)) #if os(iOS) || os(visionOS) - .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.datePicker, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.datePicker, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/DatePickerWithCompactFieldStyleTests.swift b/Tests/Tests/ViewTypes/DatePickerWithCompactFieldStyleTests.swift index 1af71c1eb..237812e97 100644 --- a/Tests/Tests/ViewTypes/DatePickerWithCompactFieldStyleTests.swift +++ b/Tests/Tests/ViewTypes/DatePickerWithCompactFieldStyleTests.swift @@ -30,27 +30,27 @@ final class DatePickerWithCompactStyleTests: XCTestCase { DatePicker("", selection: .constant(date0)) .datePickerStyle(.compact) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) DatePicker("", selection: .constant(date1)) .datePickerStyle(.compact) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) DatePicker("", selection: .constant(date2)) .datePickerStyle(.compact) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.datePicker(style: .compact), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.datePicker(style: .compact), on: .macOS(.v10_15_4, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/DatePickerWithFieldStyleTests.swift b/Tests/Tests/ViewTypes/DatePickerWithFieldStyleTests.swift index ca9708ee7..b3227df3b 100644 --- a/Tests/Tests/ViewTypes/DatePickerWithFieldStyleTests.swift +++ b/Tests/Tests/ViewTypes/DatePickerWithFieldStyleTests.swift @@ -23,21 +23,21 @@ final class DatePickerWithFieldStyleTests: XCTestCase { DatePicker("", selection: .constant(date0)) .datePickerStyle(.field) #if os(macOS) - .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) DatePicker("", selection: .constant(date1)) .datePickerStyle(.field) #if os(macOS) - .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) DatePicker("", selection: .constant(date2)) .datePickerStyle(.field) #if os(macOS) - .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.datePicker(style: .field), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/DatePickerWithGraphicalStyleTests.swift b/Tests/Tests/ViewTypes/DatePickerWithGraphicalStyleTests.swift index 2a2122773..0fa485b25 100644 --- a/Tests/Tests/ViewTypes/DatePickerWithGraphicalStyleTests.swift +++ b/Tests/Tests/ViewTypes/DatePickerWithGraphicalStyleTests.swift @@ -30,27 +30,27 @@ final class DatePickerWithGraphicalStyleTests: XCTestCase { DatePicker("", selection: .constant(date0)) .datePickerStyle(.graphical) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) DatePicker("", selection: .constant(date1)) .datePickerStyle(.graphical) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) DatePicker("", selection: .constant(date2)) .datePickerStyle(.graphical) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.datePicker(style: .graphical), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.datePicker(style: .graphical), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/DatePickerWithStepperFieldStyleTests.swift b/Tests/Tests/ViewTypes/DatePickerWithStepperFieldStyleTests.swift index de4d9faa8..a333a94c3 100644 --- a/Tests/Tests/ViewTypes/DatePickerWithStepperFieldStyleTests.swift +++ b/Tests/Tests/ViewTypes/DatePickerWithStepperFieldStyleTests.swift @@ -23,21 +23,21 @@ final class DatePickerWithStepperFieldStyleTests: XCTestCase { DatePicker("", selection: .constant(date0)) .datePickerStyle(.stepperField) #if os(macOS) - .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) DatePicker("", selection: .constant(date1)) .datePickerStyle(.stepperField) #if os(macOS) - .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) DatePicker("", selection: .constant(date2)) .datePickerStyle(.stepperField) #if os(macOS) - .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.datePicker(style: .stepperField), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/DatePickerWithWheelStyleTests.swift b/Tests/Tests/ViewTypes/DatePickerWithWheelStyleTests.swift index 6fc8a7bee..1294d80f0 100644 --- a/Tests/Tests/ViewTypes/DatePickerWithWheelStyleTests.swift +++ b/Tests/Tests/ViewTypes/DatePickerWithWheelStyleTests.swift @@ -23,21 +23,21 @@ final class DatePickerWithWheelStyleTests: XCTestCase { DatePicker("", selection: .constant(date0)) .datePickerStyle(.wheel) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #endif .cornerRadius(8) DatePicker("", selection: .constant(date1)) .datePickerStyle(.wheel) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #endif .cornerRadius(8) DatePicker("", selection: .constant(date2)) .datePickerStyle(.wheel) #if os(iOS) || os(visionOS) - .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.datePicker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/FormTests.swift b/Tests/Tests/ViewTypes/FormTests.swift index dd99a5355..35f021ebe 100644 --- a/Tests/Tests/ViewTypes/FormTests.swift +++ b/Tests/Tests/ViewTypes/FormTests.swift @@ -21,15 +21,15 @@ final class FormTests: XCTestCase { Text("Item 1") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.form, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy0($0) } - .introspect(.form, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.form, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy0($0) } + .introspect(.form, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #endif Form { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.form, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor) { spy1($0) } - .introspect(.form, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.form, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor) { spy1($0) } + .introspect(.form, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #endif } } diff --git a/Tests/Tests/ViewTypes/FormWithGroupedStyleTests.swift b/Tests/Tests/ViewTypes/FormWithGroupedStyleTests.swift index d8d895b25..0297fadc3 100644 --- a/Tests/Tests/ViewTypes/FormWithGroupedStyleTests.swift +++ b/Tests/Tests/ViewTypes/FormWithGroupedStyleTests.swift @@ -26,19 +26,19 @@ final class FormWithGroupedStyleTests: XCTestCase { } .formStyle(.grouped) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.form(style: .grouped), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } - .introspect(.form(style: .grouped), on: .tvOS(.v16, .v17, .v18)) { spy0($0) } + .introspect(.form(style: .grouped), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } + .introspect(.form(style: .grouped), on: .tvOS(.v16, .v17, .v18, .v26)) { spy0($0) } #elseif os(macOS) - .introspect(.form(style: .grouped), on: .macOS(.v13, .v14, .v15)) { spy0($0) } + .introspect(.form(style: .grouped), on: .macOS(.v13, .v14, .v15, .v26)) { spy0($0) } #endif Form { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.form(style: .grouped), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } - .introspect(.form(style: .grouped), on: .tvOS(.v16, .v17, .v18), scope: .ancestor) { spy1($0) } + .introspect(.form(style: .grouped), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } + .introspect(.form(style: .grouped), on: .tvOS(.v16, .v17, .v18, .v26), scope: .ancestor) { spy1($0) } #elseif os(macOS) - .introspect(.form(style: .grouped), on: .macOS(.v13, .v14, .v15), scope: .ancestor) { spy1($0) } + .introspect(.form(style: .grouped), on: .macOS(.v13, .v14, .v15, .v26), scope: .ancestor) { spy1($0) } #endif } .formStyle(.grouped) diff --git a/Tests/Tests/ViewTypes/FullScreenCoverTests.swift b/Tests/Tests/ViewTypes/FullScreenCoverTests.swift index b386da0e1..563d95db1 100644 --- a/Tests/Tests/ViewTypes/FullScreenCoverTests.swift +++ b/Tests/Tests/ViewTypes/FullScreenCoverTests.swift @@ -20,7 +20,7 @@ final class FullScreenCoverTests: XCTestCase { #if os(iOS) || os(tvOS) || os(visionOS) .introspect( .fullScreenCover, - on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), + on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0 ) #endif diff --git a/Tests/Tests/ViewTypes/ListCellTests.swift b/Tests/Tests/ViewTypes/ListCellTests.swift index 6394809f3..e95c6f7ca 100644 --- a/Tests/Tests/ViewTypes/ListCellTests.swift +++ b/Tests/Tests/ViewTypes/ListCellTests.swift @@ -17,10 +17,10 @@ final class ListCellTests: XCTestCase { List { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.listCell, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy($0) } - .introspect(.listCell, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy($0) } + .introspect(.listCell, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy($0) } + .introspect(.listCell, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy($0) } #elseif os(macOS) - .introspect(.listCell, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { spy($0) } + .introspect(.listCell, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { spy($0) } #endif } } @@ -33,10 +33,10 @@ final class ListCellTests: XCTestCase { List { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.listCell, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy($0) } - .introspect(.listCell, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy($0) } + .introspect(.listCell, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy($0) } + .introspect(.listCell, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy($0) } #elseif os(macOS) - .introspect(.listCell, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { spy($0) } + .introspect(.listCell, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { spy($0) } #endif .clipped() .clipShape(RoundedRectangle(cornerRadius: 20.0)) diff --git a/Tests/Tests/ViewTypes/ListTests.swift b/Tests/Tests/ViewTypes/ListTests.swift index efb6f3796..8dafe2fd9 100644 --- a/Tests/Tests/ViewTypes/ListTests.swift +++ b/Tests/Tests/ViewTypes/ListTests.swift @@ -20,19 +20,19 @@ final class ListTests: XCTestCase { Text("Item 1") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy0($0) } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy0($0) } + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #elseif os(macOS) - .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { spy0($0) } + .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { spy0($0) } #endif List { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor) { spy1($0) } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor) { spy1($0) } + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #elseif os(macOS) - .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor) { spy1($0) } + .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor) { spy1($0) } #endif } } @@ -54,13 +54,13 @@ final class ListTests: XCTestCase { Text("Item 1") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy1($0) } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy1($0) } + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy1($0) } + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy1($0) } #endif } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy0($0) } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy0($0) } + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #endif } extraAssertions: { XCTAssert($0[safe: 0] !== $0[safe: 1]) @@ -78,10 +78,10 @@ final class ListTests: XCTestCase { Text("Item 1") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy0($0) } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy0($0) } + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #elseif os(macOS) - .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { spy0($0) } + .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { spy0($0) } #endif .clipped() .clipShape(RoundedRectangle(cornerRadius: 20.0)) @@ -90,10 +90,10 @@ final class ListTests: XCTestCase { List { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor) { spy1($0) } - .introspect(.list, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.list, on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor) { spy1($0) } + .introspect(.list, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #elseif os(macOS) - .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor) { spy1($0) } + .introspect(.list, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor) { spy1($0) } #endif } } diff --git a/Tests/Tests/ViewTypes/ListWithBorderedStyleTests.swift b/Tests/Tests/ViewTypes/ListWithBorderedStyleTests.swift index 0f15739b4..6f28505f7 100644 --- a/Tests/Tests/ViewTypes/ListWithBorderedStyleTests.swift +++ b/Tests/Tests/ViewTypes/ListWithBorderedStyleTests.swift @@ -25,13 +25,13 @@ final class ListWithBorderedStyleTests: XCTestCase { } .listStyle(.bordered) #if os(macOS) - .introspect(.list(style: .bordered), on: .macOS(.v12, .v13, .v14, .v15)) { spy0($0) } + .introspect(.list(style: .bordered), on: .macOS(.v12, .v13, .v14, .v15, .v26)) { spy0($0) } #endif List { Text("Item 1") #if os(macOS) - .introspect(.list(style: .bordered), on: .macOS(.v12, .v13, .v14, .v15), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .bordered), on: .macOS(.v12, .v13, .v14, .v15, .v26), scope: .ancestor) { spy1($0) } #endif } .listStyle(.bordered) diff --git a/Tests/Tests/ViewTypes/ListWithGroupedStyleTests.swift b/Tests/Tests/ViewTypes/ListWithGroupedStyleTests.swift index a412deb8f..a06981548 100644 --- a/Tests/Tests/ViewTypes/ListWithGroupedStyleTests.swift +++ b/Tests/Tests/ViewTypes/ListWithGroupedStyleTests.swift @@ -20,15 +20,15 @@ final class ListWithGroupedStyleTests: XCTestCase { } .listStyle(.grouped) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list(style: .grouped), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy0($0) } - .introspect(.list(style: .grouped), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list(style: .grouped), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy0($0) } + .introspect(.list(style: .grouped), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #endif List { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list(style: .grouped), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor) { spy1($0) } - .introspect(.list(style: .grouped), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .grouped), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .grouped), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #endif } .listStyle(.grouped) diff --git a/Tests/Tests/ViewTypes/ListWithInsetGroupedStyleTests.swift b/Tests/Tests/ViewTypes/ListWithInsetGroupedStyleTests.swift index 0afebe89c..aad000d9a 100644 --- a/Tests/Tests/ViewTypes/ListWithInsetGroupedStyleTests.swift +++ b/Tests/Tests/ViewTypes/ListWithInsetGroupedStyleTests.swift @@ -26,14 +26,14 @@ final class ListWithInsetGroupedStyleTests: XCTestCase { .listStyle(.insetGrouped) #if os(iOS) || os(visionOS) .introspect(.list(style: .insetGrouped), on: .iOS(.v14, .v15)) { spy0($0) } - .introspect(.list(style: .insetGrouped), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list(style: .insetGrouped), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #endif List { Text("Item 1") #if os(iOS) || os(visionOS) .introspect(.list(style: .insetGrouped), on: .iOS(.v14, .v15), scope: .ancestor) { spy1($0) } - .introspect(.list(style: .insetGrouped), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .insetGrouped), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #endif } .listStyle(.insetGrouped) diff --git a/Tests/Tests/ViewTypes/ListWithInsetStyleTests.swift b/Tests/Tests/ViewTypes/ListWithInsetStyleTests.swift index 6b3b599e0..22a87262c 100644 --- a/Tests/Tests/ViewTypes/ListWithInsetStyleTests.swift +++ b/Tests/Tests/ViewTypes/ListWithInsetStyleTests.swift @@ -28,18 +28,18 @@ final class ListWithInsetStyleTests: XCTestCase { .listStyle(.inset) #if os(iOS) || os(visionOS) .introspect(.list(style: .inset), on: .iOS(.v14, .v15)) { spy0($0) } - .introspect(.list(style: .inset), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list(style: .inset), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #elseif os(macOS) - .introspect(.list(style: .inset), on: .macOS(.v11, .v12, .v13, .v14, .v15)) { spy0($0) } + .introspect(.list(style: .inset), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26)) { spy0($0) } #endif List { Text("Item 1") #if os(iOS) || os(visionOS) .introspect(.list(style: .inset), on: .iOS(.v14, .v15), scope: .ancestor) { spy1($0) } - .introspect(.list(style: .inset), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .inset), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #elseif os(macOS) - .introspect(.list(style: .inset), on: .macOS(.v11, .v12, .v13, .v14, .v15), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .inset), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor) { spy1($0) } #endif } .listStyle(.inset) diff --git a/Tests/Tests/ViewTypes/ListWithPlainStyleTests.swift b/Tests/Tests/ViewTypes/ListWithPlainStyleTests.swift index 2985301cd..b170db52c 100644 --- a/Tests/Tests/ViewTypes/ListWithPlainStyleTests.swift +++ b/Tests/Tests/ViewTypes/ListWithPlainStyleTests.swift @@ -21,19 +21,19 @@ final class ListWithPlainStyleTests: XCTestCase { } .listStyle(.plain) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list(style: .plain), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18)) { spy0($0) } - .introspect(.list(style: .plain), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list(style: .plain), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { spy0($0) } + .introspect(.list(style: .plain), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #elseif os(macOS) - .introspect(.list(style: .plain), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { spy0($0) } + .introspect(.list(style: .plain), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { spy0($0) } #endif List { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.list(style: .plain), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor) { spy1($0) } - .introspect(.list(style: .plain), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .plain), on: .iOS(.v13, .v14, .v15), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .plain), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #elseif os(macOS) - .introspect(.list(style: .plain), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .plain), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor) { spy1($0) } #endif } .listStyle(.plain) diff --git a/Tests/Tests/ViewTypes/ListWithSidebarStyleTests.swift b/Tests/Tests/ViewTypes/ListWithSidebarStyleTests.swift index 58292972a..a60bd6f0e 100644 --- a/Tests/Tests/ViewTypes/ListWithSidebarStyleTests.swift +++ b/Tests/Tests/ViewTypes/ListWithSidebarStyleTests.swift @@ -28,18 +28,18 @@ final class ListWithSidebarStyleTests: XCTestCase { .listStyle(.sidebar) #if os(iOS) || os(visionOS) .introspect(.list(style: .sidebar), on: .iOS(.v14, .v15)) { spy0($0) } - .introspect(.list(style: .sidebar), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2)) { spy0($0) } + .introspect(.list(style: .sidebar), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26)) { spy0($0) } #elseif os(macOS) - .introspect(.list(style: .sidebar), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15)) { spy0($0) } + .introspect(.list(style: .sidebar), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26)) { spy0($0) } #endif List { Text("Item 1") #if os(iOS) || os(visionOS) .introspect(.list(style: .sidebar), on: .iOS(.v14, .v15), scope: .ancestor) { spy1($0) } - .introspect(.list(style: .sidebar), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .sidebar), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor) { spy1($0) } #elseif os(macOS) - .introspect(.list(style: .sidebar), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor) { spy1($0) } + .introspect(.list(style: .sidebar), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor) { spy1($0) } #endif } .listStyle(.sidebar) diff --git a/Tests/Tests/ViewTypes/MapTests.swift b/Tests/Tests/ViewTypes/MapTests.swift index 1ce8b62bb..0e5aceef3 100644 --- a/Tests/Tests/ViewTypes/MapTests.swift +++ b/Tests/Tests/ViewTypes/MapTests.swift @@ -25,21 +25,21 @@ final class MapTests: XCTestCase { Map(coordinateRegion: region) .introspect( .map, - on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .macOS(.v11, .v12, .v13, .v14, .v15), .visionOS(.v1, .v2), + on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .macOS(.v11, .v12, .v13, .v14, .v15, .v26), .visionOS(.v1, .v2, .v26), customize: spy0 ) Map(coordinateRegion: region) .introspect( .map, - on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .macOS(.v11, .v12, .v13, .v14, .v15), .visionOS(.v1, .v2), + on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .macOS(.v11, .v12, .v13, .v14, .v15, .v26), .visionOS(.v1, .v2, .v26), customize: spy1 ) Map(coordinateRegion: region) .introspect( .map, - on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .macOS(.v11, .v12, .v13, .v14, .v15), .visionOS(.v1, .v2), + on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .macOS(.v11, .v12, .v13, .v14, .v15, .v26), .visionOS(.v1, .v2, .v26), customize: spy2 ) } diff --git a/Tests/Tests/ViewTypes/NavigationSplitViewTests.swift b/Tests/Tests/ViewTypes/NavigationSplitViewTests.swift index 34671fbe6..f895a1823 100644 --- a/Tests/Tests/ViewTypes/NavigationSplitViewTests.swift +++ b/Tests/Tests/ViewTypes/NavigationSplitViewTests.swift @@ -36,11 +36,11 @@ final class NavigationSplitViewTests: XCTestCase { } } #if os(iOS) || os(visionOS) - .introspect(.navigationSplitView, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.navigationSplitView, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy) #elseif os(tvOS) .introspect(.navigationSplitView, on: .tvOS(.v16, .v17), customize: spy) #elseif os(macOS) - .introspect(.navigationSplitView, on: .macOS(.v13, .v14, .v15), customize: spy) + .introspect(.navigationSplitView, on: .macOS(.v13, .v14, .v15, .v26), customize: spy) #endif } } @@ -62,11 +62,11 @@ final class NavigationSplitViewTests: XCTestCase { Color.red Text("Sidebar") #if os(iOS) || os(visionOS) - .introspect(.navigationSplitView, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy) + .introspect(.navigationSplitView, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy) #elseif os(tvOS) .introspect(.navigationSplitView, on: .tvOS(.v16, .v17), scope: .ancestor, customize: spy) #elseif os(macOS) - .introspect(.navigationSplitView, on: .macOS(.v13, .v14, .v15), scope: .ancestor, customize: spy) + .introspect(.navigationSplitView, on: .macOS(.v13, .v14, .v15, .v26), scope: .ancestor, customize: spy) #endif } } detail: { diff --git a/Tests/Tests/ViewTypes/NavigationStackTests.swift b/Tests/Tests/ViewTypes/NavigationStackTests.swift index 0180db30b..a5ffd787e 100644 --- a/Tests/Tests/ViewTypes/NavigationStackTests.swift +++ b/Tests/Tests/ViewTypes/NavigationStackTests.swift @@ -25,7 +25,7 @@ final class NavigationStackTests: XCTestCase { } } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.navigationStack, on: .iOS(.v16, .v17, .v18), .tvOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.navigationStack, on: .iOS(.v16, .v17, .v18, .v26), .tvOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy) #endif } } @@ -43,7 +43,7 @@ final class NavigationStackTests: XCTestCase { Color.red Text("Something") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.navigationStack, on: .iOS(.v16, .v17, .v18), .tvOS(.v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy) + .introspect(.navigationStack, on: .iOS(.v16, .v17, .v18, .v26), .tvOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy) #endif } } diff --git a/Tests/Tests/ViewTypes/NavigationViewWithColumnsStyleTests.swift b/Tests/Tests/ViewTypes/NavigationViewWithColumnsStyleTests.swift index d44f0d10a..22ebd547e 100644 --- a/Tests/Tests/ViewTypes/NavigationViewWithColumnsStyleTests.swift +++ b/Tests/Tests/ViewTypes/NavigationViewWithColumnsStyleTests.swift @@ -24,11 +24,11 @@ final class NavigationViewWithColumnsStyleTests: XCTestCase { } .navigationViewStyle(DoubleColumnNavigationViewStyle()) #if os(iOS) || os(visionOS) - .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy) #elseif os(tvOS) - .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy) + .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy) #elseif os(macOS) - .introspect(.navigationView(style: .columns), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy) + .introspect(.navigationView(style: .columns), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy) #endif } } @@ -42,18 +42,18 @@ final class NavigationViewWithColumnsStyleTests: XCTestCase { Color.red Text("Something") #if os(iOS) || os(visionOS) - .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy) + .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy) #elseif os(tvOS) - .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor, customize: spy) + .introspect(.navigationView(style: .columns), on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor, customize: spy) #elseif os(macOS) - .introspect(.navigationView(style: .columns), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor, customize: spy) + .introspect(.navigationView(style: .columns), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor, customize: spy) #endif } } .navigationViewStyle(DoubleColumnNavigationViewStyle()) #if os(iOS) // NB: this is necessary for ancestor introspection to work, because initially on iPad the "Customized" text isn't shown as it's hidden in the sidebar. This is why ancestor introspection is discouraged for most situations and it's opt-in. - .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { + .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { $0.preferredDisplayMode = .oneOverSecondary } #endif diff --git a/Tests/Tests/ViewTypes/NavigationViewWithStackStyleTests.swift b/Tests/Tests/ViewTypes/NavigationViewWithStackStyleTests.swift index 47ebe17c3..3d9de6700 100644 --- a/Tests/Tests/ViewTypes/NavigationViewWithStackStyleTests.swift +++ b/Tests/Tests/ViewTypes/NavigationViewWithStackStyleTests.swift @@ -21,7 +21,7 @@ final class NavigationViewWithStackStyleTests: XCTestCase { } .navigationViewStyle(.stack) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy) #endif } } @@ -35,7 +35,7 @@ final class NavigationViewWithStackStyleTests: XCTestCase { Color.red Text("Something") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy) + .introspect(.navigationView(style: .stack), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy) #endif } } diff --git a/Tests/Tests/ViewTypes/PageControlTests.swift b/Tests/Tests/ViewTypes/PageControlTests.swift index 9f243c886..9564e6afc 100644 --- a/Tests/Tests/ViewTypes/PageControlTests.swift +++ b/Tests/Tests/ViewTypes/PageControlTests.swift @@ -24,7 +24,7 @@ final class PageControlTests: XCTestCase { } .tabViewStyle(.page(indexDisplayMode: .always)) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.pageControl, on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.pageControl, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy) #endif } } diff --git a/Tests/Tests/ViewTypes/PickerWithMenuStyleTests.swift b/Tests/Tests/ViewTypes/PickerWithMenuStyleTests.swift index 8caca1758..8bd0ce65d 100644 --- a/Tests/Tests/ViewTypes/PickerWithMenuStyleTests.swift +++ b/Tests/Tests/ViewTypes/PickerWithMenuStyleTests.swift @@ -21,7 +21,7 @@ final class PickerWithMenuStyleTests: XCTestCase { } .pickerStyle(.menu) #if os(macOS) - .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) @@ -31,7 +31,7 @@ final class PickerWithMenuStyleTests: XCTestCase { } .pickerStyle(.menu) #if os(macOS) - .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) @@ -42,7 +42,7 @@ final class PickerWithMenuStyleTests: XCTestCase { } .pickerStyle(.menu) #if os(macOS) - .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.picker(style: .menu), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/PickerWithSegmentedStyleTests.swift b/Tests/Tests/ViewTypes/PickerWithSegmentedStyleTests.swift index 9397d67cf..5f85aac50 100644 --- a/Tests/Tests/ViewTypes/PickerWithSegmentedStyleTests.swift +++ b/Tests/Tests/ViewTypes/PickerWithSegmentedStyleTests.swift @@ -22,9 +22,9 @@ final class PickerWithSegmentedStyleTests: XCTestCase { } .pickerStyle(.segmented) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) @@ -34,9 +34,9 @@ final class PickerWithSegmentedStyleTests: XCTestCase { } .pickerStyle(.segmented) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) @@ -47,9 +47,9 @@ final class PickerWithSegmentedStyleTests: XCTestCase { } .pickerStyle(.segmented) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.picker(style: .segmented), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.picker(style: .segmented), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/PickerWithWheelStyleTests.swift b/Tests/Tests/ViewTypes/PickerWithWheelStyleTests.swift index 21499c86e..63a9ceb6a 100644 --- a/Tests/Tests/ViewTypes/PickerWithWheelStyleTests.swift +++ b/Tests/Tests/ViewTypes/PickerWithWheelStyleTests.swift @@ -21,7 +21,7 @@ final class PickerWithWheelStyleTests: XCTestCase { } .pickerStyle(.wheel) #if os(iOS) || os(visionOS) - .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #endif .cornerRadius(8) @@ -31,7 +31,7 @@ final class PickerWithWheelStyleTests: XCTestCase { } .pickerStyle(.wheel) #if os(iOS) || os(visionOS) - .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #endif .cornerRadius(8) @@ -42,7 +42,7 @@ final class PickerWithWheelStyleTests: XCTestCase { } .pickerStyle(.wheel) #if os(iOS) || os(visionOS) - .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.picker(style: .wheel), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/PopoverTests.swift b/Tests/Tests/ViewTypes/PopoverTests.swift index b2bd1eb5a..438fa7192 100644 --- a/Tests/Tests/ViewTypes/PopoverTests.swift +++ b/Tests/Tests/ViewTypes/PopoverTests.swift @@ -14,7 +14,7 @@ final class PopoverTests: XCTestCase { Text("Popover") .introspect( .popover, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0 ) } diff --git a/Tests/Tests/ViewTypes/ProgressViewWithCircularStyleTests.swift b/Tests/Tests/ViewTypes/ProgressViewWithCircularStyleTests.swift index caf8aa41c..71d181584 100644 --- a/Tests/Tests/ViewTypes/ProgressViewWithCircularStyleTests.swift +++ b/Tests/Tests/ViewTypes/ProgressViewWithCircularStyleTests.swift @@ -24,25 +24,25 @@ final class ProgressViewWithCircularStyleTests: XCTestCase { ProgressView(value: 0.25) .progressViewStyle(.circular) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif ProgressView(value: 0.5) .progressViewStyle(.circular) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif ProgressView(value: 0.75) .progressViewStyle(.circular) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.progressView(style: .circular), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.progressView(style: .circular), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ProgressViewWithLinearStyleTests.swift b/Tests/Tests/ViewTypes/ProgressViewWithLinearStyleTests.swift index 025bcaf39..ef66aaea5 100644 --- a/Tests/Tests/ViewTypes/ProgressViewWithLinearStyleTests.swift +++ b/Tests/Tests/ViewTypes/ProgressViewWithLinearStyleTests.swift @@ -24,25 +24,25 @@ final class ProgressViewWithLinearStyleTests: XCTestCase { ProgressView(value: 0.25) .progressViewStyle(.linear) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.progressView(style: .linear), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.progressView(style: .linear), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.progressView(style: .linear), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.progressView(style: .linear), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif ProgressView(value: 0.5) .progressViewStyle(.linear) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.progressView(style: .linear), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.progressView(style: .linear), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.progressView(style: .linear), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.progressView(style: .linear), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif ProgressView(value: 0.75) .progressViewStyle(.linear) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.progressView(style: .linear), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.progressView(style: .linear), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.progressView(style: .linear), on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.progressView(style: .linear), on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ScrollViewTests.swift b/Tests/Tests/ViewTypes/ScrollViewTests.swift index 5480b0917..30d7f2238 100644 --- a/Tests/Tests/ViewTypes/ScrollViewTests.swift +++ b/Tests/Tests/ViewTypes/ScrollViewTests.swift @@ -20,17 +20,17 @@ final class ScrollViewTests: XCTestCase { Text("Item 1") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif ScrollView(showsIndicators: true) { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy1) + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy1) #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor, customize: spy1) + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor, customize: spy1) #endif } } @@ -62,15 +62,15 @@ final class ScrollViewTests: XCTestCase { Text("Item 1") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif } extraAssertions: { #if canImport(UIKit) @@ -98,9 +98,9 @@ final class ScrollViewTests: XCTestCase { Text("Item 1") } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .clipped() .clipShape(RoundedRectangle(cornerRadius: 20.0)) @@ -109,9 +109,9 @@ final class ScrollViewTests: XCTestCase { ScrollView(showsIndicators: true) { Text("Item 1") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy1) + .introspect(.scrollView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy1) #elseif os(macOS) - .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), scope: .ancestor, customize: spy1) + .introspect(.scrollView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), scope: .ancestor, customize: spy1) #endif } } diff --git a/Tests/Tests/ViewTypes/SearchFieldTests.swift b/Tests/Tests/ViewTypes/SearchFieldTests.swift index 0045e08d7..e48995c18 100644 --- a/Tests/Tests/ViewTypes/SearchFieldTests.swift +++ b/Tests/Tests/ViewTypes/SearchFieldTests.swift @@ -24,7 +24,7 @@ final class SearchFieldTests: XCTestCase { } .navigationViewStyle(.stack) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18), .tvOS(.v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18, .v26), .tvOS(.v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy) #endif } } @@ -41,7 +41,7 @@ final class SearchFieldTests: XCTestCase { Text("Customized") .searchable(text: .constant("")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18), .tvOS(.v15, .v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy) + .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18, .v26), .tvOS(.v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy) #endif } .navigationViewStyle(.stack) @@ -52,6 +52,9 @@ final class SearchFieldTests: XCTestCase { guard #available(iOS 15, tvOS 15, *) else { throw XCTSkip() } + guard #unavailable(visionOS 26) else { // TODO: verify this + throw XCTSkip() + } XCTAssertViewIntrospection(of: PlatformSearchField.self) { spies in let spy = spies[0] @@ -62,11 +65,11 @@ final class SearchFieldTests: XCTestCase { } .navigationViewStyle(DoubleColumnNavigationViewStyle()) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18), .tvOS(.v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18, .v26), .tvOS(.v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2), customize: spy) #endif #if os(iOS) // NB: this is necessary for introspection to work, because on iPad the search field is in the sidebar, which is initially hidden. - .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { + .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { $0.preferredDisplayMode = .oneOverSecondary } #endif @@ -85,13 +88,13 @@ final class SearchFieldTests: XCTestCase { Text("Customized") .searchable(text: .constant("")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18), .tvOS(.v15, .v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy) + .introspect(.searchField, on: .iOS(.v15, .v16, .v17, .v18, .v26), .tvOS(.v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy) #endif } .navigationViewStyle(DoubleColumnNavigationViewStyle()) #if os(iOS) // NB: this is necessary for introspection to work, because on iPad the search field is in the sidebar, which is initially hidden. - .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18)) { + .introspect(.navigationView(style: .columns), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26)) { $0.preferredDisplayMode = .oneOverSecondary } #endif diff --git a/Tests/Tests/ViewTypes/SecureFieldTests.swift b/Tests/Tests/ViewTypes/SecureFieldTests.swift index 3fc1d209c..a6127556c 100644 --- a/Tests/Tests/ViewTypes/SecureFieldTests.swift +++ b/Tests/Tests/ViewTypes/SecureFieldTests.swift @@ -19,25 +19,25 @@ final class SecureFieldTests: XCTestCase { VStack { SecureField("", text: .constant("Secure Field 0")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) SecureField("", text: .constant("Secure Field 1")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) SecureField("", text: .constant("Secure Field 2")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { @@ -62,23 +62,23 @@ final class SecureFieldTests: XCTestCase { List { SecureField("", text: .constant("Secure Field 0")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif SecureField("", text: .constant("Secure Field 1")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif SecureField("", text: .constant("Secure Field 2")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.secureField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.secureField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/SheetTests.swift b/Tests/Tests/ViewTypes/SheetTests.swift index 7c6ac4f6c..e849bcef7 100644 --- a/Tests/Tests/ViewTypes/SheetTests.swift +++ b/Tests/Tests/ViewTypes/SheetTests.swift @@ -15,7 +15,7 @@ final class SheetTests: XCTestCase { Text("Sheet") .introspect( .sheet, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy0 ) } @@ -35,7 +35,7 @@ final class SheetTests: XCTestCase { Text("Sheet") .introspect( .sheet, - on: .iOS(.v15, .v16, .v17, .v18), + on: .iOS(.v15, .v16, .v17, .v18, .v26), customize: spy0 ) } @@ -51,7 +51,7 @@ final class SheetTests: XCTestCase { Text("Content") .introspect( .sheet, - on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), + on: .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy0 ) } @@ -67,7 +67,7 @@ final class SheetTests: XCTestCase { Text("Sheet") .introspect( .sheet, - on: .visionOS(.v1, .v2), + on: .visionOS(.v1, .v2, .v26), customize: spy0 ) } diff --git a/Tests/Tests/ViewTypes/SliderTests.swift b/Tests/Tests/ViewTypes/SliderTests.swift index 91891c36c..64371431c 100644 --- a/Tests/Tests/ViewTypes/SliderTests.swift +++ b/Tests/Tests/ViewTypes/SliderTests.swift @@ -20,25 +20,25 @@ final class SliderTests: XCTestCase { VStack { Slider(value: .constant(0.2), in: 0...1) #if os(iOS) - .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy0) + .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy0) #elseif os(macOS) - .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) Slider(value: .constant(0.5), in: 0...1) #if os(iOS) - .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy1) + .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy1) #elseif os(macOS) - .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) Slider(value: .constant(0.8), in: 0...1) #if os(iOS) - .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy2) + .introspect(.slider, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy2) #elseif os(macOS) - .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.slider, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/StepperTests.swift b/Tests/Tests/ViewTypes/StepperTests.swift index 84db4b09b..70f2d9178 100644 --- a/Tests/Tests/ViewTypes/StepperTests.swift +++ b/Tests/Tests/ViewTypes/StepperTests.swift @@ -20,25 +20,25 @@ final class StepperTests: XCTestCase { VStack { Stepper("", value: .constant(0), in: 0...10) #if os(iOS) - .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy0) + .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy0) #elseif os(macOS) - .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) Stepper("", value: .constant(0), in: 0...10) #if os(iOS) - .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy1) + .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy1) #elseif os(macOS) - .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) Stepper("", value: .constant(0), in: 0...10) #if os(iOS) - .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy2) + .introspect(.stepper, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy2) #elseif os(macOS) - .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.stepper, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/TabViewTests.swift b/Tests/Tests/ViewTypes/TabViewTests.swift index 02e2ce529..1b7a63f60 100644 --- a/Tests/Tests/ViewTypes/TabViewTests.swift +++ b/Tests/Tests/ViewTypes/TabViewTests.swift @@ -26,7 +26,7 @@ final class TabViewTests: XCTestCase { } } #if os(iOS) || os(tvOS) - .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy) + .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy) #elseif os(macOS) .introspect(.tabView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14), customize: spy) #endif @@ -46,7 +46,7 @@ final class TabViewTests: XCTestCase { Color.red Text("Something") #if os(iOS) || os(tvOS) - .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), scope: .ancestor, customize: spy) + .introspect(.tabView, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), scope: .ancestor, customize: spy) #elseif os(macOS) .introspect(.tabView, on: .macOS(.v10_15, .v11, .v12, .v13, .v14), scope: .ancestor, customize: spy) #endif diff --git a/Tests/Tests/ViewTypes/TabViewWithPageStyleTests.swift b/Tests/Tests/ViewTypes/TabViewWithPageStyleTests.swift index da56ca3f7..d012b30ad 100644 --- a/Tests/Tests/ViewTypes/TabViewWithPageStyleTests.swift +++ b/Tests/Tests/ViewTypes/TabViewWithPageStyleTests.swift @@ -24,7 +24,7 @@ final class TabViewWithPageStyleTests: XCTestCase { } .tabViewStyle(.page) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.tabView(style: .page), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy) + .introspect(.tabView(style: .page), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy) #endif } } @@ -40,7 +40,7 @@ final class TabViewWithPageStyleTests: XCTestCase { TabView { Text("Page 1").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.red) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.tabView(style: .page), on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), scope: .ancestor, customize: spy) + .introspect(.tabView(style: .page), on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), scope: .ancestor, customize: spy) #endif Text("Page 2").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.blue) } diff --git a/Tests/Tests/ViewTypes/TableTests.swift b/Tests/Tests/ViewTypes/TableTests.swift index 3832c5069..b0785a660 100644 --- a/Tests/Tests/ViewTypes/TableTests.swift +++ b/Tests/Tests/ViewTypes/TableTests.swift @@ -25,23 +25,23 @@ final class TableTests: XCTestCase { VStack { TipTable() #if os(iOS) || os(visionOS) - .introspect(.table, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.table, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy0) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy0) #endif TipTable() #if os(iOS) || os(visionOS) - .introspect(.table, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.table, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy1) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy1) #endif TipTable() #if os(iOS) || os(visionOS) - .introspect(.table, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.table, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy2) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } @@ -61,25 +61,25 @@ final class TableTests: XCTestCase { TipTable() .tableStyle(.inset) #if os(iOS) || os(visionOS) - .introspect(.table, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.table, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy0) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy0) #endif TipTable() .tableStyle(.inset) #if os(iOS) || os(visionOS) - .introspect(.table, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.table, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy1) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy1) #endif TipTable() .tableStyle(.inset) #if os(iOS) || os(visionOS) - .introspect(.table, on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.table, on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy2) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } @@ -100,19 +100,19 @@ final class TableTests: XCTestCase { TipTable() .tableStyle(.bordered) #if os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy0) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy0) #endif TipTable() .tableStyle(.bordered) #if os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy1) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy1) #endif TipTable() .tableStyle(.bordered) #if os(macOS) - .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15), customize: spy2) + .introspect(.table, on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } diff --git a/Tests/Tests/ViewTypes/TextEditorTests.swift b/Tests/Tests/ViewTypes/TextEditorTests.swift index 7817ca949..890124db3 100644 --- a/Tests/Tests/ViewTypes/TextEditorTests.swift +++ b/Tests/Tests/ViewTypes/TextEditorTests.swift @@ -25,25 +25,25 @@ final class TextEditorTests: XCTestCase { VStack { TextEditor(text: .constant("Text Field 0")) #if os(iOS) || os(visionOS) - .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) TextEditor(text: .constant("Text Field 1")) #if os(iOS) || os(visionOS) - .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) TextEditor(text: .constant("Text Field 2")) #if os(iOS) || os(visionOS) - .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.textEditor, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.textEditor, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/TextFieldTests.swift b/Tests/Tests/ViewTypes/TextFieldTests.swift index 2e2b49227..dd6232cfe 100644 --- a/Tests/Tests/ViewTypes/TextFieldTests.swift +++ b/Tests/Tests/ViewTypes/TextFieldTests.swift @@ -19,25 +19,25 @@ final class TextFieldTests: XCTestCase { VStack { TextField("", text: .constant("Text Field 0")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) TextField("", text: .constant("Text Field 1")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) TextField("", text: .constant("Text Field 2")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { @@ -62,23 +62,23 @@ final class TextFieldTests: XCTestCase { List { TextField("", text: .constant("Text Field 0")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif TextField("", text: .constant("Text Field 1")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif TextField("", text: .constant("Text Field 2")) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.textField, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.textField, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/TextFieldWithVerticalAxisTests.swift b/Tests/Tests/ViewTypes/TextFieldWithVerticalAxisTests.swift index 6b44d4ccc..d03140d1a 100644 --- a/Tests/Tests/ViewTypes/TextFieldWithVerticalAxisTests.swift +++ b/Tests/Tests/ViewTypes/TextFieldWithVerticalAxisTests.swift @@ -26,31 +26,31 @@ final class TextFieldWithVerticalAxisTests: XCTestCase { VStack { TextField("", text: .constant("Text Field 1"), axis: .vertical) #if os(iOS) || os(visionOS) - .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(tvOS) - .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18), customize: spy0) + .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18, .v26), customize: spy0) #elseif os(macOS) - .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15), customize: spy0) + .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15, .v26), customize: spy0) #endif .cornerRadius(8) TextField("", text: .constant("Text Field 2"), axis: .vertical) #if os(iOS) || os(visionOS) - .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(tvOS) - .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18), customize: spy1) + .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18, .v26), customize: spy1) #elseif os(macOS) - .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15), customize: spy1) + .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15, .v26), customize: spy1) #endif .cornerRadius(8) TextField("", text: .constant("Text Field 3"), axis: .vertical) #if os(iOS) || os(visionOS) - .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.textField(axis: .vertical), on: .iOS(.v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(tvOS) - .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18), customize: spy2) + .introspect(.textField(axis: .vertical), on: .tvOS(.v16, .v17, .v18, .v26), customize: spy2) #elseif os(macOS) - .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15), customize: spy2) + .introspect(.textField(axis: .vertical), on: .macOS(.v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ToggleTests.swift b/Tests/Tests/ViewTypes/ToggleTests.swift index ee7e77e08..cd122502e 100644 --- a/Tests/Tests/ViewTypes/ToggleTests.swift +++ b/Tests/Tests/ViewTypes/ToggleTests.swift @@ -20,23 +20,23 @@ final class ToggleTests: XCTestCase { VStack { Toggle("", isOn: .constant(true)) #if os(iOS) - .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy0) + .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy0) #elseif os(macOS) - .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif Toggle("", isOn: .constant(false)) #if os(iOS) - .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy1) + .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy1) #elseif os(macOS) - .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif Toggle("", isOn: .constant(true)) #if os(iOS) - .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy2) + .introspect(.toggle, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy2) #elseif os(macOS) - .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.toggle, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ToggleWithButtonStyleTests.swift b/Tests/Tests/ViewTypes/ToggleWithButtonStyleTests.swift index e7f177a2f..99972faf7 100644 --- a/Tests/Tests/ViewTypes/ToggleWithButtonStyleTests.swift +++ b/Tests/Tests/ViewTypes/ToggleWithButtonStyleTests.swift @@ -24,19 +24,19 @@ final class ToggleWithButtonStyleTests: XCTestCase { Toggle("", isOn: .constant(true)) .toggleStyle(.button) #if os(macOS) - .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15), customize: spy0) + .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy0) #endif Toggle("", isOn: .constant(false)) .toggleStyle(.button) #if os(macOS) - .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15), customize: spy1) + .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy1) #endif Toggle("", isOn: .constant(true)) .toggleStyle(.button) #if os(macOS) - .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15), customize: spy2) + .introspect(.toggle(style: .button), on: .macOS(.v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ToggleWithCheckboxStyleTests.swift b/Tests/Tests/ViewTypes/ToggleWithCheckboxStyleTests.swift index 05277a3bb..56deb0950 100644 --- a/Tests/Tests/ViewTypes/ToggleWithCheckboxStyleTests.swift +++ b/Tests/Tests/ViewTypes/ToggleWithCheckboxStyleTests.swift @@ -19,19 +19,19 @@ final class ToggleWithCheckboxStyleTests: XCTestCase { Toggle("", isOn: .constant(true)) .toggleStyle(.checkbox) #if os(macOS) - .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif Toggle("", isOn: .constant(false)) .toggleStyle(.checkbox) #if os(macOS) - .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif Toggle("", isOn: .constant(true)) .toggleStyle(.checkbox) #if os(macOS) - .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.toggle(style: .checkbox), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ToggleWithSwitchStyleTests.swift b/Tests/Tests/ViewTypes/ToggleWithSwitchStyleTests.swift index c46aa24f0..2f1956216 100644 --- a/Tests/Tests/ViewTypes/ToggleWithSwitchStyleTests.swift +++ b/Tests/Tests/ViewTypes/ToggleWithSwitchStyleTests.swift @@ -21,25 +21,25 @@ final class ToggleWithSwitchStyleTests: XCTestCase { Toggle("", isOn: .constant(true)) .toggleStyle(.switch) #if os(iOS) - .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy0) + .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy0) #elseif os(macOS) - .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif Toggle("", isOn: .constant(false)) .toggleStyle(.switch) #if os(iOS) - .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy1) + .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy1) #elseif os(macOS) - .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif Toggle("", isOn: .constant(true)) .toggleStyle(.switch) #if os(iOS) - .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), customize: spy2) + .introspect(.toggle(style: .switch), on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), customize: spy2) #elseif os(macOS) - .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.toggle(style: .switch), on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/VideoPlayerTests.swift b/Tests/Tests/ViewTypes/VideoPlayerTests.swift index b4275198d..ef8207613 100644 --- a/Tests/Tests/ViewTypes/VideoPlayerTests.swift +++ b/Tests/Tests/ViewTypes/VideoPlayerTests.swift @@ -30,23 +30,23 @@ final class VideoPlayerTests: XCTestCase { VStack { VideoPlayer(player: AVPlayer(url: videoURL0)) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif VideoPlayer(player: AVPlayer(url: videoURL1)) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif VideoPlayer(player: AVPlayer(url: videoURL2)) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18), .tvOS(.v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.videoPlayer, on: .iOS(.v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.videoPlayer, on: .macOS(.v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ViewControllerTests.swift b/Tests/Tests/ViewTypes/ViewControllerTests.swift index ffeebe0d1..eae5de8f3 100644 --- a/Tests/Tests/ViewTypes/ViewControllerTests.swift +++ b/Tests/Tests/ViewTypes/ViewControllerTests.swift @@ -16,7 +16,7 @@ final class ViewControllerTests: XCTestCase { Text("Root").frame(maxWidth: .infinity, maxHeight: .infinity).background(Color.red) .introspect( .viewController, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2 ) } @@ -27,13 +27,13 @@ final class ViewControllerTests: XCTestCase { } .introspect( .viewController, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1 ) } .introspect( .viewController, - on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), + on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0 ) } extraAssertions: { diff --git a/Tests/Tests/ViewTypes/ViewTests.swift b/Tests/Tests/ViewTypes/ViewTests.swift index ade165130..884d444ef 100644 --- a/Tests/Tests/ViewTypes/ViewTests.swift +++ b/Tests/Tests/ViewTypes/ViewTests.swift @@ -13,23 +13,23 @@ final class ViewTests: XCTestCase { VStack(spacing: 10) { Image(systemName: "scribble").resizable().frame(height: 30) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif Text("Text").frame(height: 40) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif } .padding(10) #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.view, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.view, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } extraAssertions: { XCTAssertEqual($0[safe: 0]?.frame.height, 30) diff --git a/Tests/Tests/ViewTypes/WindowTests.swift b/Tests/Tests/ViewTypes/WindowTests.swift index 6f953b93a..ebe8787f7 100644 --- a/Tests/Tests/ViewTypes/WindowTests.swift +++ b/Tests/Tests/ViewTypes/WindowTests.swift @@ -19,22 +19,22 @@ final class WindowTests: XCTestCase { VStack { Image(systemName: "scribble") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy0) + .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy0) #elseif os(macOS) - .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy0) + .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy0) #endif Text("Text") #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy1) + .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy1) #elseif os(macOS) - .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy1) + .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy1) #endif } #if os(iOS) || os(tvOS) || os(visionOS) - .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18), .visionOS(.v1, .v2), customize: spy2) + .introspect(.window, on: .iOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .tvOS(.v13, .v14, .v15, .v16, .v17, .v18, .v26), .visionOS(.v1, .v2, .v26), customize: spy2) #elseif os(macOS) - .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15), customize: spy2) + .introspect(.window, on: .macOS(.v10_15, .v11, .v12, .v13, .v14, .v15, .v26), customize: spy2) #endif } extraAssertions: { XCTAssertIdentical($0[safe: 0], $0[safe: 1])