Build Information
Failed to build Undertow, reference 1.0.3 (4968e6), with Swift 6.1 for macOS (SPM) on 15 Aug 2026 03:41:59 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64Build Log
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:106:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
104 | content.whiteNoiseEffect(time: time)
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:87:108: error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| | |- error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
| | `- note: add 'if #available' version check
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
[31/32] Compiling Undertow EffectSourceViewModifier.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:12:2: error: 'Observable()' is only available in macOS 14.0 or newer
10 | /// A shared observable store that holds target masks reported by `.effectTarget()`
11 | /// descendants.
12 | @Observable
| `- error: 'Observable()' is only available in macOS 14.0 or newer
13 | final class MaskStore {
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:16:5: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
+--- macro expansion @Observable ------------------------------------
|1 | @ObservationTracked
| | `- error: 'ObservationTracked()' is only available in macOS 14.0 or newer
+--------------------------------------------------------------------
17 | }
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:12:2: error: 'Observable()' is only available in macOS 14.0 or newer
10 | /// A shared observable store that holds target masks reported by `.effectTarget()`
11 | /// descendants.
12 | @Observable
| `- error: 'Observable()' is only available in macOS 14.0 or newer
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:17:1: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
17 | }
+--- macro expansion @Observable ------------------------------------
| 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
| | `- error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
| 2 |
| 3 | internal nonisolated func access<Member>(
+--------------------------------------------------------------------
18 |
macro expansion @ObservationTracked:3:11: error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:16:42: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
+--- macro expansion @ObservationTracked ----------------------------
|1 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
|2 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
|3 | @ObservationIgnored private var _targetMasks: Set<TargetMask> = []
| | `- error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
+--------------------------------------------------------------------
17 | }
18 |
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:17:1: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
17 | }
+--- macro expansion @Observable ------------------------------------
| 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
| | `- error: 'ObservationRegistrar' is only available in macOS 14.0 or newer
| 2 |
| 3 | internal nonisolated func access<Member>(
+--------------------------------------------------------------------
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:12:2: error: 'Observable()' is only available in macOS 14.0 or newer
10 | /// A shared observable store that holds target masks reported by `.effectTarget()`
11 | /// descendants.
12 | @Observable
| `- error: 'Observable()' is only available in macOS 14.0 or newer
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:26:41: error: 'now' is only available in macOS 12 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
24 | /// configurations (e.g. `.water`) — see `effectLayer(content:boundingRect:)`. Unused, and
25 | /// costs nothing, for static configurations.
26 | @State private var startTime = Date.now
| `- error: 'now' is only available in macOS 12 or newer
27 |
28 | private var targetMasks: Set<TargetMask> {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:21:6: error: 'Environment' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
19 |
20 | /// The shared mask store distributed by the nearest ancestor `.effectCoordinator()`.
21 | @Environment(\.maskStore) private var store
| `- error: 'Environment' is only available in macOS 10.15 or newer
22 |
23 | /// The moment this modifier's view was created, used as the zero point for time-based
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:26:6: error: 'State' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
24 | /// configurations (e.g. `.water`) — see `effectLayer(content:boundingRect:)`. Unused, and
25 | /// costs nothing, for static configurations.
26 | @State private var startTime = Date.now
| `- error: 'State' is only available in macOS 10.15 or newer
27 |
28 | private var targetMasks: Set<TargetMask> {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:32:41: error: 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:65:78: error: 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:64:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
62 | /// this pipeline, so adding another animated case later doesn't need its own frame source.
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:87:103: error: 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:86:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
84 | /// - time: Elapsed seconds since `startTime`, for time-based configurations. Ignored by
85 | /// static ones.
86 | @ViewBuilder
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:33:9: error: 'GeometryReader' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
| |- error: 'GeometryReader' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:33:24: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:34:49: error: 'frame(in:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
| |- error: 'frame(in:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
36 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:37:13: error: 'ZStack' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
36 |
37 | ZStack {
| |- error: 'ZStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | content
39 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:37:20: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
36 |
37 | ZStack {
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | content
39 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:43:22: error: 'mask' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
41 | content: content,
42 | boundingRect: boundingRect)
43 | .mask(
| |- error: 'mask' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:44:25: error: 'ZStack' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
42 | boundingRect: boundingRect)
43 | .mask(
44 | ZStack {
| |- error: 'ZStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:44:25: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
42 | boundingRect: boundingRect)
43 | .mask(
44 | ZStack {
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:45:29: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
43 | .mask(
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:45:29: error: 'ForEach' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
43 | .mask(
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
| |- error: 'ForEach' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:45:29: error: 'init(_:id:content:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
43 | .mask(
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
| |- error: 'init(_:id:content:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:46:33: error: 'RoundedRectangle' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
| |- error: 'RoundedRectangle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
47 | .frame(width: mask.frame.width, height: mask.frame.height)
48 | .position(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:47:38: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
48 | .position(
49 | x: mask.frame.midX - contentOrigin.x,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:48:38: error: 'position(x:y:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
48 | .position(
| |- error: 'position(x:y:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
49 | x: mask.frame.midX - contentOrigin.x,
50 | y: mask.frame.midY - contentOrigin.y
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:44:32: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
42 | boundingRect: boundingRect)
43 | .mask(
44 | ZStack {
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:54:26: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
52 | }
53 | }
54 | .frame(width: contentGeometry.size.width, height: contentGeometry.size.height, alignment: .topLeading)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
55 | )
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:54:116: error: 'topLeading' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
52 | }
53 | }
54 | .frame(width: contentGeometry.size.width, height: contentGeometry.size.height, alignment: .topLeading)
| |- error: 'topLeading' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
55 | )
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:13: error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:13: error: 'TimelineView' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: 'TimelineView' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:13: error: 'init(_:content:)' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: 'init(_:content:)' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:27: error: 'animation' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: 'animation' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:71:37: error: 'distance(to:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
:
69 | to: content,
70 | boundingRect: boundingRect,
71 | time: startTime.distance(to: timeline.date)
| |- error: 'distance(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
72 | )
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:66:38: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
67 | TimelineView(.animation) { timeline in
68 | appliedEffect(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:66:38: error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
| |- error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
67 | TimelineView(.animation) { timeline in
68 | appliedEffect(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:74:16: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
:
72 | )
73 | }
74 | } else {
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
75 | appliedEffect(to: content, boundingRect: boundingRect, time: 0)
76 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:65:83: error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| | |- error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
| | `- note: add 'if #available' version check
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:106:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
104 | content.whiteNoiseEffect(time: time)
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:87:108: error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| | |- error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
| | `- note: add 'if #available' version check
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
[32/32] Compiling Undertow EffectTargetFramePreferenceKey.swift
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:12:2: error: 'Observable()' is only available in macOS 14.0 or newer
10 | /// A shared observable store that holds target masks reported by `.effectTarget()`
11 | /// descendants.
12 | @Observable
| `- error: 'Observable()' is only available in macOS 14.0 or newer
13 | final class MaskStore {
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
macro expansion @Observable:1:2: error: 'ObservationTracked()' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:16:5: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
+--- macro expansion @Observable ------------------------------------
|1 | @ObservationTracked
| | `- error: 'ObservationTracked()' is only available in macOS 14.0 or newer
+--------------------------------------------------------------------
17 | }
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:12:2: error: 'Observable()' is only available in macOS 14.0 or newer
10 | /// A shared observable store that holds target masks reported by `.effectTarget()`
11 | /// descendants.
12 | @Observable
| `- error: 'Observable()' is only available in macOS 14.0 or newer
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
macro expansion @Observable:1:2: error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:17:1: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
17 | }
+--- macro expansion @Observable ------------------------------------
| 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
| | `- error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
| 2 |
| 3 | internal nonisolated func access<Member>(
+--------------------------------------------------------------------
18 |
macro expansion @ObservationTracked:3:11: error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:16:42: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
+--- macro expansion @ObservationTracked ----------------------------
|1 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
|2 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
|3 | @ObservationIgnored private var _targetMasks: Set<TargetMask> = []
| | `- error: 'ObservationIgnored()' is only available in macOS 14.0 or newer
+--------------------------------------------------------------------
17 | }
18 |
macro expansion @Observable:1:70: error: 'ObservationRegistrar' is only available in macOS 14.0 or newer
`- /Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:17:1: note: expanded code originates here
11 | /// descendants.
12 | @Observable
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
16 | var targetMasks: Set<TargetMask> = []
17 | }
+--- macro expansion @Observable ------------------------------------
| 1 | @ObservationIgnored private let _$observationRegistrar = Observation.ObservationRegistrar()
| | `- error: 'ObservationRegistrar' is only available in macOS 14.0 or newer
| 2 |
| 3 | internal nonisolated func access<Member>(
+--------------------------------------------------------------------
18 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectCoordinator/MaskStore.swift:12:2: error: 'Observable()' is only available in macOS 14.0 or newer
10 | /// A shared observable store that holds target masks reported by `.effectTarget()`
11 | /// descendants.
12 | @Observable
| `- error: 'Observable()' is only available in macOS 14.0 or newer
13 | final class MaskStore {
| `- note: add @available attribute to enclosing class
14 | /// Masks reported by all `.effectTarget()` targets. Collected via standard SwiftUI
15 | /// `PreferenceKey` propagation (`EffectTargetFramePreferenceKey`).
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:26:41: error: 'now' is only available in macOS 12 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
24 | /// configurations (e.g. `.water`) — see `effectLayer(content:boundingRect:)`. Unused, and
25 | /// costs nothing, for static configurations.
26 | @State private var startTime = Date.now
| `- error: 'now' is only available in macOS 12 or newer
27 |
28 | private var targetMasks: Set<TargetMask> {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:21:6: error: 'Environment' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
19 |
20 | /// The shared mask store distributed by the nearest ancestor `.effectCoordinator()`.
21 | @Environment(\.maskStore) private var store
| `- error: 'Environment' is only available in macOS 10.15 or newer
22 |
23 | /// The moment this modifier's view was created, used as the zero point for time-based
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:26:6: error: 'State' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
24 | /// configurations (e.g. `.water`) — see `effectLayer(content:boundingRect:)`. Unused, and
25 | /// costs nothing, for static configurations.
26 | @State private var startTime = Date.now
| `- error: 'State' is only available in macOS 10.15 or newer
27 |
28 | private var targetMasks: Set<TargetMask> {
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:32:41: error: 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:65:78: error: 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:64:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
62 | /// this pipeline, so adding another animated case later doesn't need its own frame source.
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:87:103: error: 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:86:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
84 | /// - time: Elapsed seconds since `startTime`, for time-based configurations. Ignored by
85 | /// static ones.
86 | @ViewBuilder
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:33:9: error: 'GeometryReader' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
| |- error: 'GeometryReader' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:33:24: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:34:49: error: 'frame(in:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
| |- error: 'frame(in:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
36 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:37:13: error: 'ZStack' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
36 |
37 | ZStack {
| |- error: 'ZStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | content
39 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:37:20: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
35 | let boundingRect = CGRect(origin: .zero, size: contentGeometry.size)
36 |
37 | ZStack {
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
38 | content
39 |
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:43:22: error: 'mask' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
41 | content: content,
42 | boundingRect: boundingRect)
43 | .mask(
| |- error: 'mask' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:44:25: error: 'ZStack' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
42 | boundingRect: boundingRect)
43 | .mask(
44 | ZStack {
| |- error: 'ZStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:44:25: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
42 | boundingRect: boundingRect)
43 | .mask(
44 | ZStack {
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:45:29: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
43 | .mask(
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:45:29: error: 'ForEach' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
43 | .mask(
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
| |- error: 'ForEach' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:45:29: error: 'init(_:id:content:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
43 | .mask(
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
| |- error: 'init(_:id:content:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:46:33: error: 'RoundedRectangle' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
44 | ZStack {
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
| |- error: 'RoundedRectangle' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
47 | .frame(width: mask.frame.width, height: mask.frame.height)
48 | .position(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:47:38: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
48 | .position(
49 | x: mask.frame.midX - contentOrigin.x,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:48:38: error: 'position(x:y:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
47 | .frame(width: mask.frame.width, height: mask.frame.height)
48 | .position(
| |- error: 'position(x:y:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
49 | x: mask.frame.midX - contentOrigin.x,
50 | y: mask.frame.midY - contentOrigin.y
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:44:32: error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
42 | boundingRect: boundingRect)
43 | .mask(
44 | ZStack {
| |- error: conformance of 'ForEach<Data, ID, Content>' to 'View' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | ForEach(Array(targetMasks), id: \.self) { mask in
46 | RoundedRectangle(cornerRadius: mask.cornerRadius)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:54:26: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
52 | }
53 | }
54 | .frame(width: contentGeometry.size.width, height: contentGeometry.size.height, alignment: .topLeading)
| |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
55 | )
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:54:116: error: 'topLeading' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
30 | }
31 |
32 | func body(content: Content) -> some View {
| `- note: add @available attribute to enclosing instance method
33 | GeometryReader { contentGeometry in
34 | let contentOrigin = contentGeometry.frame(in: .global).origin
:
52 | }
53 | }
54 | .frame(width: contentGeometry.size.width, height: contentGeometry.size.height, alignment: .topLeading)
| |- error: 'topLeading' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
55 | )
56 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:13: error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:13: error: 'TimelineView' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: 'TimelineView' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:13: error: 'init(_:content:)' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: 'init(_:content:)' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:67:27: error: 'animation' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
| |- error: 'animation' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
68 | appliedEffect(
69 | to: content,
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:71:37: error: 'distance(to:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
:
69 | to: content,
70 | boundingRect: boundingRect,
71 | time: startTime.distance(to: timeline.date)
| |- error: 'distance(to:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
72 | )
73 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:66:38: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
67 | TimelineView(.animation) { timeline in
68 | appliedEffect(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:66:38: error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
| |- error: conformance of 'TimelineView<Schedule, Content>' to 'View' is only available in macOS 12.0 or newer
| `- note: add 'if #available' version check
67 | TimelineView(.animation) { timeline in
68 | appliedEffect(
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:74:16: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
:
72 | )
73 | }
74 | } else {
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
75 | appliedEffect(to: content, boundingRect: boundingRect, time: 0)
76 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:65:83: error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
63 | /// Static configurations render once per SwiftUI update, same as before this existed.
64 | @ViewBuilder
65 | private func effectLayer(content: Content, boundingRect: CGRect) -> some View {
| | |- error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
| | `- note: add 'if #available' version check
| `- note: add @available attribute to enclosing instance method
66 | if configuration.isTimeBased {
67 | TimelineView(.animation) { timeline in
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:90:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:92:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
90 | content.invertedEffect()
91 | case let .gaussianBlur(radius, maxSamples):
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:94:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
92 | content.gaussianBlurEffect(radius: radius, boundingRect: boundingRect, maxSamples: maxSamples)
93 | case let .colorPlanes(offset):
94 | content.colorPlanesEffect(offset: offset)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:96:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
94 | content.colorPlanesEffect(offset: offset)
95 | case let .emboss(strength):
96 | content.embossEffect(strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:98:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
96 | content.embossEffect(strength: strength)
97 | case let .water(speed, strength, frequency):
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:100:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
98 | content.waterEffect(size: boundingRect.size, time: time, speed: speed, strength: strength, frequency: frequency)
99 | case let .wave(speed, smoothing, strength):
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:102:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
100 | content.waveEffect(time: time, speed: speed, smoothing: smoothing, strength: strength)
101 | case let .shimmer(animationDuration, gradientWidth, maxLightness, direction, angle):
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:104:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
102 | content.shimmerEffect(size: boundingRect.size, time: time, animationDuration: animationDuration, gradientWidth: gradientWidth, maxLightness: maxLightness, direction: direction, angle: angle)
103 | case .whiteNoise:
104 | content.whiteNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:106:13: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
:
104 | content.whiteNoiseEffect(time: time)
105 | case .rainbowNoise:
106 | content.rainbowNoiseEffect(time: time)
| |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
107 | }
108 | }
/Users/admin/builder/spi-builder-workspace/Sources/Undertow/EffectSource/EffectSourceViewModifier.swift:87:108: error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
14 | /// the collected target masks. Because the wrapping `GeometryReader` has no intrinsic size,
15 | /// apply any `.frame(...)` that sizes the scrolled content *after* this modifier, not before.
16 | struct EffectSourceViewModifier: ViewModifier {
| `- note: add @available attribute to enclosing struct
17 | /// Which effect to apply.
18 | let configuration: Effect
:
85 | /// static ones.
86 | @ViewBuilder
87 | private func appliedEffect(to content: Content, boundingRect: CGRect, time: TimeInterval) -> some View {
| | |- error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
| | `- note: add 'if #available' version check
| `- note: add @available attribute to enclosing instance method
88 | switch configuration {
89 | case .invert:
BUILD FAILURE 6.1 macosSpm