diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7ef8e47a..cd0888ae 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 364acdb2..5068da19 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 a968c04c..6bed714c 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 39a4ea20..8935b4d4 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 49e50a7f..66b7dd46 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 aa8a591a..1303f55e 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 e8b7ceb9..b1c2626d 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 7ee07098..f2a6580f 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 fbc171dd..891b306f 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 052b6137..ad465f69 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 fe752533..e21a8dbd 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 abc4e2fe..4712ba85 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 4b20e03a..3968ff7b 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 92f3ffd7..10623953 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 9e995750..2a1e7323 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 2e122a9a..53925c3e 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 e623746f..a3ae9f6c 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 3684e6b6..70c28f9d 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 2aa80ed0..c14eee91 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 27a11975..cecb6071 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 d31872ab..19fe700e 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 9e14d88d..e76bbff5 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 c6baff58..47973905 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 6704be0a..c24cabb6 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 44ee0c23..26182bfe 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 26ee12bf..846cdefb 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 94e8e72b..389e4fac 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 f44064b3..970b392f 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 a16304e5..6750e4d3 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 2a7079e2..388a8c5e 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 7ad1ff04..be513511 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 991fff35..54a99bd8 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 2f28ab4c..1ef12137 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 d6a79677..b7301e43 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 c449c7f4..bb8a29d4 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 ce7129ce..02ba40f4 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 f8d330c4..53366f35 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 cb7619bc..f9feea88 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 24fd0e26..22db93bd 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 34e283b8..c0b7a0e5 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 40e6dd1b..5db0fed0 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 7e0ed43c..3108905c 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 eaada897..2e8c5bcf 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 4baee5ff..a439069a 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 d97ffcc8..e8d54b3d 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 7abc2ac6..f6635df1 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 d76a453c..70cc88c7 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 c8924a2d..8e5cb0fb 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 d5f9fe43..9c0b3f99 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 ee7844ab..ac17b97a 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 2788a36e..bab5bb91 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 be50449c..8143ae35 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 02c99a66..8eed8665 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 86c3941d..08c2cbed 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 b0d4291f..86f58aa9 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 2bd514ec..fcd4cf8e 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 90e5391c..f155f258 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 1bf05618..83abf809 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 7421cdb8..07a2527b 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 1af71c1e..237812e9 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 ca9708ee..b3227df3 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 2a212277..0fa485b2 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 de4d9faa..a333a94c 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 6fc8a7be..1294d80f 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 dd99a535..35f021eb 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 d8d895b2..0297fadc 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 b386da0e..563d95db 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 6394809f..e95c6f7c 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 efb6f379..8dafe2fd 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 0f15739b..6f28505f 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 a412deb8..a0698154 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 0afebe89..aad000d9 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 6b3b599e..22a87262 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 2985301c..b170db52 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 58292972..a60bd6f0 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 1ce8b62b..0e5aceef 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 34671fbe..f895a182 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 0180db30..a5ffd787 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 d44f0d10..22ebd547 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 47ebe17c..3d9de670 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 9f243c88..9564e6af 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 8caca175..8bd0ce65 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 9397d67c..5f85aac5 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 21499c86..63a9ceb6 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 b2bd1eb5..438fa719 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 caf8aa41..71d18158 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 025bcaf3..ef66aaea 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 5480b091..30d7f223 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 0045e08d..e48995c1 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 3fc1d209..a6127556 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 7c6ac4f6..e849bcef 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 91891c36..64371431 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 84db4b09..70f2d917 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 02e2ce52..1b7a63f6 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 da56ca3f..d012b30a 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 3832c506..b0785a66 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 7817ca94..890124db 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 2e2b4922..dd6232cf 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 6b44d4cc..d03140d1 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 ee7e77e0..cd122502 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 e7f177a2..99972faf 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 05277a3b..56deb095 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 c46aa24f..2f195621 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 b4275198..ef820761 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 ffeebe0d..eae5de8f 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 ade16513..884d444e 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 6f953b93..ebe8787f 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])