Build Information
Failed to build AnchoredPopup, reference 1.3.1 (f93c51), with Swift 6.2 for macOS (SPM) on 13 Oct 2026 21:57:30 UTC.
Build Command
env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64Build Log
========================================
RunAll
========================================
Builder version: 5.1.2
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/exyte/AnchoredPopup.git
Reference: 1.3.1
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/exyte/AnchoredPopup
* tag 1.3.1 -> FETCH_HEAD
HEAD is now at f93c51e Fix popup during portrait/landscape rotation
Cloned https://github.com/exyte/AnchoredPopup.git
Revision (git rev-parse @):
f93c51e75ff4e5242328ac24c8fb12f1f1e84eda
SUCCESS checkout https://github.com/exyte/AnchoredPopup.git at 1.3.1
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.2
Building package at path: $PWD
https://github.com/exyte/AnchoredPopup.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-26.3.0.app xcrun swift build --arch arm64
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version--3CB7CFEC50E0D141.txt
[3/11] Compiling AnchoredPopup WindowManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:13:27: error: cannot find type 'UIWindow' in scope
11 | final class WindowManager {
12 | static let shared = WindowManager()
13 | var windows: [String: UIWindow] = [:]
| `- error: cannot find type 'UIWindow' in scope
14 |
15 | static func showInNewWindow<Content: View>(id: String, closeOnTapOutside: Bool, isPassthrough: Bool, content: ()->Content) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:15:42: error: 'View' is only available in macOS 10.15 or newer
9 |
10 | @MainActor
11 | final class WindowManager {
| `- note: add '@available' attribute to enclosing class
12 | static let shared = WindowManager()
13 | var windows: [String: UIWindow] = [:]
14 |
15 | static func showInNewWindow<Content: View>(id: String, closeOnTapOutside: Bool, isPassthrough: Bool, content: ()->Content) {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing static method
16 | guard let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene else {
17 | print("No valid scene available")
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:42:28: error: cannot find type 'UIWindow' in scope
40 | }
41 |
42 | class UIPassthroughWindow: UIWindow {
| `- error: cannot find type 'UIWindow' in scope
43 | var id: String
44 | var closeOnTapOutside: Bool
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:48:23: error: cannot find type 'UIWindowScene' in scope
46 | private var needsInitialLayout = true
47 |
48 | init(windowScene: UIWindowScene, id: String, closeOnTapOutside: Bool, isPassthrough: Bool) {
| `- error: cannot find type 'UIWindowScene' in scope
49 | self.id = id
50 | self.closeOnTapOutside = closeOnTapOutside
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:59:70: error: cannot find type 'UIView' in scope
57 | }
58 |
59 | override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
| `- error: cannot find type 'UIView' in scope
60 | guard let vc = self.rootViewController else {
61 | return nil // pass to next window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:59:57: error: cannot find type 'UIEvent' in scope
57 | }
58 |
59 | override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
| `- error: cannot find type 'UIEvent' in scope
60 | guard let vc = self.rootViewController else {
61 | return nil // pass to next window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:16:27: error: cannot find 'UIApplication' in scope
14 |
15 | static func showInNewWindow<Content: View>(id: String, closeOnTapOutside: Bool, isPassthrough: Bool, content: ()->Content) {
16 | guard let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene else {
| `- error: cannot find 'UIApplication' in scope
17 | print("No valid scene available")
18 | return
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:16:74: error: cannot find type 'UIWindowScene' in scope
14 |
15 | static func showInNewWindow<Content: View>(id: String, closeOnTapOutside: Bool, isPassthrough: Bool, content: ()->Content) {
16 | guard let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene else {
| `- error: cannot find type 'UIWindowScene' in scope
17 | print("No valid scene available")
18 | return
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:21:41: error: extra arguments at positions #1, #2, #3, #4 in call
19 | }
20 |
21 | let window = UIPassthroughWindow(windowScene: scene, id: id, closeOnTapOutside: closeOnTapOutside, isPassthrough: isPassthrough)
| `- error: extra arguments at positions #1, #2, #3, #4 in call
22 | window.backgroundColor = .clear
23 | let root = content()
:
53 | }
54 |
55 | required init?(coder: NSCoder) {
| `- note: 'init(coder:)' declared here
56 | fatalError("init(coder:) has not been implemented")
57 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:21:42: error: missing argument for parameter 'coder' in call
19 | }
20 |
21 | let window = UIPassthroughWindow(windowScene: scene, id: id, closeOnTapOutside: closeOnTapOutside, isPassthrough: isPassthrough)
| `- error: missing argument for parameter 'coder' in call
22 | window.backgroundColor = .clear
23 | let root = content()
:
53 | }
54 |
55 | required init?(coder: NSCoder) {
| `- note: 'init(coder:)' declared here
56 | fatalError("init(coder:) has not been implemented")
57 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:22:35: error: cannot infer contextual base in reference to member 'clear'
20 |
21 | let window = UIPassthroughWindow(windowScene: scene, id: id, closeOnTapOutside: closeOnTapOutside, isPassthrough: isPassthrough)
22 | window.backgroundColor = .clear
| `- error: cannot infer contextual base in reference to member 'clear'
23 | let root = content()
24 | .environment(\.anchoredPopupDismiss) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:24:14: error: 'environment' is only available in macOS 10.15 or newer
9 |
10 | @MainActor
11 | final class WindowManager {
| `- note: add '@available' attribute to enclosing class
12 | static let shared = WindowManager()
13 | var windows: [String: UIWindow] = [:]
14 |
15 | static func showInNewWindow<Content: View>(id: String, closeOnTapOutside: Bool, isPassthrough: Bool, content: ()->Content) {
| `- note: add '@available' attribute to enclosing static method
16 | guard let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene else {
17 | print("No valid scene available")
:
22 | window.backgroundColor = .clear
23 | let root = content()
24 | .environment(\.anchoredPopupDismiss) {
| |- error: 'environment' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
25 | AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
26 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:27:26: error: cannot find 'UIHostingController' in scope
25 | AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
26 | }
27 | let controller = UIHostingController(rootView: root)
| `- error: cannot find 'UIHostingController' in scope
28 | controller.view.backgroundColor = .clear
29 | controller.safeAreaRegions = []
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:28:44: error: cannot infer contextual base in reference to member 'clear'
26 | }
27 | let controller = UIHostingController(rootView: root)
28 | controller.view.backgroundColor = .clear
| `- error: cannot infer contextual base in reference to member 'clear'
29 | controller.safeAreaRegions = []
30 | window.rootViewController = controller
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:31:31: error: member 'alert(isPresented:content:)' expects argument of type 'Text'
29 | controller.safeAreaRegions = []
30 | window.rootViewController = controller
31 | window.windowLevel = .alert + 1
| `- error: member 'alert(isPresented:content:)' expects argument of type 'Text'
32 | window.makeKeyAndVisible()
33 | shared.windows[id] = window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:31:39: error: cannot convert value of type 'Int' to expected argument type 'Text'
29 | controller.safeAreaRegions = []
30 | window.rootViewController = controller
31 | window.windowLevel = .alert + 1
| `- error: cannot convert value of type 'Int' to expected argument type 'Text'
32 | window.makeKeyAndVisible()
33 | shared.windows[id] = window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:52:9: error: 'super' cannot be used in class 'UIPassthroughWindow' because it has no superclass
50 | self.closeOnTapOutside = closeOnTapOutside
51 | self.isPassthrough = isPassthrough
52 | super.init(windowScene: windowScene)
| `- error: 'super' cannot be used in class 'UIPassthroughWindow' because it has no superclass
53 | }
54 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:60:29: error: value of type 'UIPassthroughWindow' has no member 'rootViewController'
58 |
59 | override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
60 | guard let vc = self.rootViewController else {
| `- error: value of type 'UIPassthroughWindow' has no member 'rootViewController'
61 | return nil // pass to next window
62 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:87:34: error: 'super' cannot be used in class 'UIPassthroughWindow' because it has no superclass
85 |
86 | // pass tap to this
87 | let farthestDescendent = super.hitTest(point, with: event)
| `- error: 'super' cannot be used in class 'UIPassthroughWindow' because it has no superclass
88 | return farthestDescendent
89 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:77:49: error: call to main actor-isolated instance method 'changeStateForAnimation(for:state:)' in a synchronous nonisolated context [#ActorIsolatedCall]
57 | }
58 |
59 | override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
| `- note: add '@MainActor' to make instance method 'hitTest(_:with:)' part of global actor 'MainActor'
60 | guard let vc = self.rootViewController else {
61 | return nil // pass to next window
:
75 | if isTap && didHitBackground {
76 | if closeOnTapOutside {
77 | AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
| `- error: call to main actor-isolated instance method 'changeStateForAnimation(for:state:)' in a synchronous nonisolated context [#ActorIsolatedCall]
78 | }
79 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:36:10: note: calls to instance method 'changeStateForAnimation(for:state:)' from outside of its actor context are implicitly asynchronous
34 | }
35 |
36 | func changeStateForAnimation(for id: String, state: GrowingViewState) {
| `- note: calls to instance method 'changeStateForAnimation(for:state:)' from outside of its actor context are implicitly asynchronous
37 | if let index = animations.firstIndex(where: { $0.id == id }) {
38 | animations[index].state = state
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:77:42: warning: main actor-isolated static property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
57 | }
58 |
59 | override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
| `- note: add '@MainActor' to make instance method 'hitTest(_:with:)' part of global actor 'MainActor'
60 | guard let vc = self.rootViewController else {
61 | return nil // pass to next window
:
75 | if isTap && didHitBackground {
76 | if closeOnTapOutside {
77 | AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
| `- warning: main actor-isolated static property 'shared' can not be referenced from a nonisolated context; this is an error in the Swift 6 language mode
78 | }
79 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:13:16: note: static property declared here
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
13 | static let shared = AnchoredAnimationManager()
| `- note: static property declared here
14 |
15 | enum GrowingViewState {
[#ActorIsolatedCall]: <https://docs.swift.org/compiler/documentation/diagnostics/actor-isolated-call>
[4/11] Compiling AnchoredPopup TriggerButton.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:13:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct TriggerButton<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | var id: String
12 | var params: PopupParameters
13 | @ViewBuilder var contentBuilder: () -> V
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
14 |
15 | func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:15:41: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct TriggerButton<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | var id: String
12 | var params: PopupParameters
13 | @ViewBuilder var contentBuilder: () -> V
14 |
15 | 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
16 | content
17 | .background(ScreenMetricsReader())
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:10:48: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct TriggerButton<V>: ViewModifier where V: View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing generic struct
11 | var id: String
12 | var params: PopupParameters
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:48:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
48 | @ViewBuilder var contentBuilder: () -> V
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
49 |
50 | @State private var showSheet = false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:50:6: error: 'State' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
48 | @ViewBuilder var contentBuilder: () -> V
49 |
50 | @State private var showSheet = false
| `- error: 'State' is only available in macOS 10.15 or newer
51 |
52 | func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:52:41: error: 'View' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
50 | @State private var showSheet = false
51 |
52 | 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
53 | switch params.displayMode {
54 | case .sheet:
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:85:35: error: 'View' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
87 | AnimatedBackgroundView(id: id, background: params.background)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:45:49: error: 'View' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:17:14: error: instance method 'background(_:ignoresSafeAreaEdges:)' requires that 'ScreenMetricsReader' conform to 'ShapeStyle'
15 | func body(content: Content) -> some View {
16 | content
17 | .background(ScreenMetricsReader())
| `- error: instance method 'background(_:ignoresSafeAreaEdges:)' requires that 'ScreenMetricsReader' conform to 'ShapeStyle'
18 | .overlay {
19 | GeometryReader { geo in
SwiftUI.View.background:2:36: note: where 'S' = 'ScreenMetricsReader'
1 | protocol View {
2 | @inlinable nonisolated public func background<S>(_ style: S, ignoresSafeAreaEdges edges: Edge.Set = .all) -> some View where S : ShapeStyle
| `- note: where 'S' = 'ScreenMetricsReader'
3 | }
4 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:63:18: error: value of type 'some View' has no member 'transparentNonAnimatingFullScreenCover'
61 | }
62 | }
63 | .transparentNonAnimatingFullScreenCover(isPresented: $showSheet, onDismiss: {
| `- error: value of type 'some View' has no member 'transparentNonAnimatingFullScreenCover'
64 | AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .hidden)
65 | }) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:49: error: 'EdgeInsets' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'EdgeInsets' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:86:9: error: 'ZStack' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
| |- error: 'ZStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
87 | AnimatedBackgroundView(id: id, background: params.background)
88 | .simultaneousGesture(
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:88:18: error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
87 | AnimatedBackgroundView(id: id, background: params.background)
88 | .simultaneousGesture(
| |- error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
89 | TapGesture().onEnded {
90 | if params.closeOnTapOutside {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:89:21: error: 'TapGesture' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
87 | AnimatedBackgroundView(id: id, background: params.background)
88 | .simultaneousGesture(
89 | TapGesture().onEnded {
| |- error: 'TapGesture' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
90 | if params.closeOnTapOutside {
91 | // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:89:34: error: 'onEnded' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
87 | AnimatedBackgroundView(id: id, background: params.background)
88 | .simultaneousGesture(
89 | TapGesture().onEnded {
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
90 | if params.closeOnTapOutside {
91 | // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:98:10: error: 'frame(minWidth:idealWidth:maxWidth:minHeight:idealHeight:maxHeight:alignment:)' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
87 | AnimatedBackgroundView(id: id, background: params.background)
:
96 | AnchoredAnimationView(id: id, params: params, contentBuilder: contentBuilder)
97 | }
98 | .frame(maxWidth: .infinity, maxHeight: .infinity)
| |- error: 'frame(minWidth:idealWidth:maxWidth:minHeight:idealHeight:maxHeight:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
99 | .ignoresSafeArea()
100 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:99:10: error: 'ignoresSafeArea(_:edges:)' is only available in macOS 11.0 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
87 | AnimatedBackgroundView(id: id, background: params.background)
:
97 | }
98 | .frame(maxWidth: .infinity, maxHeight: .infinity)
99 | .ignoresSafeArea()
| |- error: 'ignoresSafeArea(_:edges:)' is only available in macOS 11.0 or newer
| `- note: add 'if #available' version check
100 | }
101 | }
[5/11] Compiling AnchoredPopup Utils.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:49: error: 'EdgeInsets' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'EdgeInsets' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:36: error: 'EdgeInsets' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'EdgeInsets' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:6: error: 'Published' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'Published' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:27:6: error: 'Published' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
27 | @Published var contentSize: CGSize = .zero
| `- error: 'Published' is only available in macOS 10.15 or newer
28 | }
29 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:23:35: error: 'ObservableObject' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| | `- error: 'ObservableObject' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:35:31: error: cannot find type 'UIView' in scope
33 | /// across rotation and fold-state changes before any popup picks a display mode.
34 | struct ScreenMetricsReader: UIViewRepresentable {
35 | final class TrackingView: UIView {
| `- error: cannot find type 'UIView' in scope
36 | override func didMoveToWindow() {
37 | super.didMoveToWindow()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:36:23: error: method does not override any method from its superclass
34 | struct ScreenMetricsReader: UIViewRepresentable {
35 | final class TrackingView: UIView {
36 | override func didMoveToWindow() {
| `- error: method does not override any method from its superclass
37 | super.didMoveToWindow()
38 | report()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:41:23: error: method does not override any method from its superclass
39 | }
40 |
41 | override func layoutSubviews() {
| `- error: method does not override any method from its superclass
42 | super.layoutSubviews()
43 | report()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:46:23: error: method does not override any method from its superclass
44 | }
45 |
46 | override func safeAreaInsetsDidChange() {
| `- error: method does not override any method from its superclass
47 | super.safeAreaInsetsDidChange()
48 | report()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:70:30: error: cannot find type 'Context' in scope
68 | }
69 |
70 | func makeUIView(context: Context) -> TrackingView {
| `- error: cannot find type 'Context' in scope
71 | TrackingView()
72 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:74:56: error: cannot find type 'Context' in scope
72 | }
73 |
74 | func updateUIView(_ uiView: TrackingView, context: Context) {}
| `- error: cannot find type 'Context' in scope
75 | }
76 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:34:29: error: cannot find type 'UIViewRepresentable' in scope
32 | /// own layout/safe-area callbacks (not a one-off imperative read), so the values stay correct
33 | /// across rotation and fold-state changes before any popup picks a display mode.
34 | struct ScreenMetricsReader: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
35 | final class TrackingView: UIView {
36 | override func didMoveToWindow() {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:102:6: error: 'State' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
101 |
102 | @State private var animatableOpacity: CGFloat = 0
| `- error: 'State' is only available in macOS 10.15 or newer
103 |
104 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:104:20: error: 'View' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
102 | @State private var animatableOpacity: CGFloat = 0
103 |
104 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
105 | ZStack {
106 | Group {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:154:42: error: cannot find type 'UIView' in scope
152 | /// A special view to handle hit-testing on background parts of popup content
153 | struct PopupHitTestingBackground: UIViewRepresentable {
154 | func makeUIView(context: Context) -> UIView {
| `- error: cannot find type 'UIView' in scope
155 | let view = UIView()
156 | view.backgroundColor = .clear
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:154:30: error: cannot find type 'Context' in scope
152 | /// A special view to handle hit-testing on background parts of popup content
153 | struct PopupHitTestingBackground: UIViewRepresentable {
154 | func makeUIView(context: Context) -> UIView {
| `- error: cannot find type 'Context' in scope
155 | let view = UIView()
156 | view.backgroundColor = .clear
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:161:33: error: cannot find type 'UIView' in scope
159 | }
160 |
161 | func updateUIView(_ uiView: UIView, context: Context) {}
| `- error: cannot find type 'UIView' in scope
162 | }
163 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:161:50: error: cannot find type 'Context' in scope
159 | }
160 |
161 | func updateUIView(_ uiView: UIView, context: Context) {}
| `- error: cannot find type 'Context' in scope
162 | }
163 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:153:35: error: cannot find type 'UIViewRepresentable' in scope
151 |
152 | /// A special view to handle hit-testing on background parts of popup content
153 | struct PopupHitTestingBackground: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
154 | func makeUIView(context: Context) -> UIView {
155 | let view = UIView()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:11:5: error: cannot find 'UIApplication' in scope
9 |
10 | @MainActor func hideKeyboard() {
11 | UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)
| `- error: cannot find 'UIApplication' in scope
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:11:47: error: cannot find 'UIResponder' in scope
9 |
10 | @MainActor func hideKeyboard() {
11 | UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)
| `- error: cannot find 'UIResponder' in scope
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:11:86: error: 'nil' requires a contextual type
9 |
10 | @MainActor func hideKeyboard() {
11 | UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)
| `- error: 'nil' requires a contextual type
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:11:97: error: 'nil' requires a contextual type
9 |
10 | @MainActor func hideKeyboard() {
11 | UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)
| `- error: 'nil' requires a contextual type
12 | }
13 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:11:107: error: 'nil' requires a contextual type
9 |
10 | @MainActor func hideKeyboard() {
11 | UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)
| `- error: 'nil' requires a contextual type
12 | }
13 |
<unknown>:0: error: cannot convert value of type 'KeyPath<AnchoredPopupMetrics, EdgeInsets>' to expected argument type 'ReferenceWritableKeyPath<AnchoredPopupMetrics, EdgeInsets>'
<unknown>:0: error: cannot convert value of type 'KeyPath<AnchoredPopupMetrics, CGSize>' to expected argument type 'ReferenceWritableKeyPath<AnchoredPopupMetrics, CGSize>'
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:37:13: error: 'super' cannot be used in class 'TrackingView' because it has no superclass
35 | final class TrackingView: UIView {
36 | override func didMoveToWindow() {
37 | super.didMoveToWindow()
| `- error: 'super' cannot be used in class 'TrackingView' because it has no superclass
38 | report()
39 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:42:13: error: 'super' cannot be used in class 'TrackingView' because it has no superclass
40 |
41 | override func layoutSubviews() {
42 | super.layoutSubviews()
| `- error: 'super' cannot be used in class 'TrackingView' because it has no superclass
43 | report()
44 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:47:13: error: 'super' cannot be used in class 'TrackingView' because it has no superclass
45 |
46 | override func safeAreaInsetsDidChange() {
47 | super.safeAreaInsetsDidChange()
| `- error: 'super' cannot be used in class 'TrackingView' because it has no superclass
48 | report()
49 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:52:23: error: cannot find 'window' in scope
50 |
51 | private func report() {
52 | guard let window else { return }
| `- error: cannot find 'window' in scope
53 | let size = window.bounds.size
54 | let insets = EdgeInsets(
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:127:18: error: value of type 'PopupHitTestingBackground' has no member 'ignoresSafeArea'
125 |
126 | PopupHitTestingBackground()
127 | .ignoresSafeArea()
| `- error: value of type 'PopupHitTestingBackground' has no member 'ignoresSafeArea'
128 | }
129 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:132:9: error: 'Task' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
129 | }
130 |
131 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
132 | Task { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
133 | withAnimation(.easeInOut(duration: 0.2)) {
134 | if animation.state == .growing {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:132:9: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
129 | }
130 |
131 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
132 | Task { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
133 | withAnimation(.easeInOut(duration: 0.2)) {
134 | if animation.state == .growing {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:133:13: error: 'withAnimation' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
129 | }
130 |
131 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
132 | Task { @MainActor in
133 | withAnimation(.easeInOut(duration: 0.2)) {
| |- error: 'withAnimation' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
134 | if animation.state == .growing {
135 | setDisplayedState()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:133:28: error: 'easeInOut(duration:)' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
129 | }
130 |
131 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
132 | Task { @MainActor in
133 | withAnimation(.easeInOut(duration: 0.2)) {
| |- error: 'easeInOut(duration:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
134 | if animation.state == .growing {
135 | setDisplayedState()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:144:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
141 | }
142 |
143 | private func setHiddenState() {
| `- note: add '@available' attribute to enclosing instance method
144 | animatableOpacity = 0
| |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
145 | }
146 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:148:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
145 | }
146 |
147 | private func setDisplayedState() {
| `- note: add '@available' attribute to enclosing instance method
148 | animatableOpacity = 1
| |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
149 | }
150 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:155:20: error: cannot find 'UIView' in scope
153 | struct PopupHitTestingBackground: UIViewRepresentable {
154 | func makeUIView(context: Context) -> UIView {
155 | let view = UIView()
| `- error: cannot find 'UIView' in scope
156 | view.backgroundColor = .clear
157 | view.isUserInteractionEnabled = false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:156:33: error: cannot infer contextual base in reference to member 'clear'
154 | func makeUIView(context: Context) -> UIView {
155 | let view = UIView()
156 | view.backgroundColor = .clear
| `- error: cannot infer contextual base in reference to member 'clear'
157 | view.isUserInteractionEnabled = false
158 | return view
error: emit-module command failed with exit code 1 (use -v to see invocation)
[6/11] Emitting module AnchoredPopup
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:25:6: error: 'Published' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
23 | }
24 |
25 | @Published var animations: [AnimationItem] = []
| `- error: 'Published' is only available in macOS 10.15 or newer
26 |
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:27:43: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
25 | @Published var animations: [AnimationItem] = []
26 |
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
| `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
29 | private var stateCancellables: [String: AnyCancellable] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:28:43: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
26 |
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
| `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
29 | private var stateCancellables: [String: AnyCancellable] = [:]
30 | private var frameCancellables: [String: AnyCancellable] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:29:45: error: 'AnyCancellable' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
29 | private var stateCancellables: [String: AnyCancellable] = [:]
| `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
30 | private var frameCancellables: [String: AnyCancellable] = [:]
31 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:30:45: error: 'AnyCancellable' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
29 | private var stateCancellables: [String: AnyCancellable] = [:]
30 | private var frameCancellables: [String: AnyCancellable] = [:]
| `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
31 |
32 | static subscript(id: String) -> AnimationItem? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:50:44: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
48 | }
49 |
50 | func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| | `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
51 | if let publisher = statePublishers[id] {
52 | return publisher
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:66:44: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
64 | }
65 |
66 | func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| | `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
67 | if let publisher = framePublishers[id] {
68 | return publisher
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:49: error: 'EdgeInsets' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'EdgeInsets' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:11:6: error: 'ObservedObject' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
| `- error: 'ObservedObject' is only available in macOS 10.15 or newer
12 |
13 | var id: String
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:17:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
15 | var contentBuilder: () -> V
16 |
17 | @State private var animatableOpacity: CGFloat = 0
| `- error: 'State' is only available in macOS 10.15 or newer
18 | @State private var animatableScale: CGSize = .zero
19 | @State private var animatableOffset: CGSize = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:18:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
16 |
17 | @State private var animatableOpacity: CGFloat = 0
18 | @State private var animatableScale: CGSize = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
19 | @State private var animatableOffset: CGSize = .zero
20 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:19:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
17 | @State private var animatableOpacity: CGFloat = 0
18 | @State private var animatableScale: CGSize = .zero
19 | @State private var animatableOffset: CGSize = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
20 |
21 | @State private var triggerButtonFrame: CGRect = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:21:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
19 | @State private var animatableOffset: CGSize = .zero
20 |
21 | @State private var triggerButtonFrame: CGRect = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
22 | @State private var contentSize: CGSize = .zero
23 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:22:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
20 |
21 | @State private var triggerButtonFrame: CGRect = .zero
22 | @State private var contentSize: CGSize = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
23 |
24 | @State private var isAnimating = false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:24:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
22 | @State private var contentSize: CGSize = .zero
23 |
24 | @State private var isAnimating = false
| `- error: 'State' is only available in macOS 10.15 or newer
25 |
26 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:26:20: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:214:18: error: 'UnitPoint' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
211 | }
212 |
213 | private func anchorRelativeBaseOffset(
| `- note: add '@available' attribute to enclosing instance method
214 | point p: UnitPoint,
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
215 | contentWidth cw: CGFloat,
216 | contentHeight ch: CGFloat
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:263:106: error: 'UnitPoint' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
261 | }
262 |
263 | private func autoAnchorPoint(contentWidth cw: CGFloat, contentHeight ch: CGFloat, bounds: CGRect) -> UnitPoint {
| | `- error: 'UnitPoint' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
264 | let candidates: [UnitPoint] = [.topLeading, .topTrailing, .bottomLeading, .bottomTrailing]
265 | let triggerCenter = CGPoint(x: triggerButtonFrame.midX, y: triggerButtonFrame.midY)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:10:48: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:11:29: error: property does not override any property from its superclass
9 |
10 | open class UIBackdropView: UIView {
11 | open override class var layerClass: AnyClass {
| `- error: property does not override any property from its superclass
12 | NSClassFromString("CABackdropLayer") ?? CALayer.self
13 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:10:28: error: cannot find type 'UIView' in scope
8 | import SwiftUI
9 |
10 | open class UIBackdropView: UIView {
| `- error: cannot find type 'UIView' in scope
11 | open override class var layerClass: AnyClass {
12 | NSClassFromString("CABackdropLayer") ?? CALayer.self
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:19:37: error: cannot find type 'Context' in scope
17 | public init() {}
18 |
19 | public func makeUIView(context: Context) -> UIBackdropView {
| `- error: cannot find type 'Context' in scope
20 | UIBackdropView()
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:23:65: error: cannot find type 'Context' in scope
21 | }
22 |
23 | public func updateUIView(_ uiView: UIBackdropView, context: Context) {}
| `- error: cannot find type 'Context' in scope
24 | }
25 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:16:25: error: cannot find type 'UIViewRepresentable' in scope
14 | }
15 |
16 | public struct Backdrop: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
17 | public init() {}
18 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:35:27: error: 'View' is only available in macOS 10.15 or newer
24 | }
25 |
26 | public struct Blur: View {
| `- note: add '@available' attribute to enclosing struct
27 | public var radius: CGFloat
28 | public var opaque: Bool
:
33 | }
34 |
35 | public var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
36 | Backdrop()
37 | .blur(radius: radius, opaque: opaque)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:13:30: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:13:49: error: 'ViewBuilder' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| | `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:13:163: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:17:30: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
19 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:17:49: error: 'ViewBuilder' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| | `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
19 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:17:104: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
19 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:12:18: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:42:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
39 | }
40 |
41 | public enum AnchoredPopupPosition {
| `- note: add '@available' attribute to enclosing enum
42 | case anchorRelative(_ point: UnitPoint, boundsMode: AnchoredPopupBoundsMode = .free) // popup view will be aligned to anchor view at corresponding proportion
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
43 | case auto // similar to `anchorRelative(...)` but auto-picks the best anchor `UnitPoint` to keep the popup within safe area
44 | case screenRelative(_ point: UnitPoint = .center, boundsMode: AnchoredPopupBoundsMode = .screen) // popup view will be aligned relative to the bounds described by `boundsMode`
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:44:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
39 | }
40 |
41 | public enum AnchoredPopupPosition {
| `- note: add '@available' attribute to enclosing enum
42 | case anchorRelative(_ point: UnitPoint, boundsMode: AnchoredPopupBoundsMode = .free) // popup view will be aligned to anchor view at corresponding proportion
43 | case auto // similar to `anchorRelative(...)` but auto-picks the best anchor `UnitPoint` to keep the popup within safe area
44 | case screenRelative(_ point: UnitPoint = .center, boundsMode: AnchoredPopupBoundsMode = .screen) // popup view will be aligned relative to the bounds described by `boundsMode`
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
45 | case absolute(_ point: UnitPoint, position: CGPoint) // popup will be placed at exact screen position, with point specifying which part of popup aligns to that position
46 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:45:28: error: 'UnitPoint' is only available in macOS 10.15 or newer
39 | }
40 |
41 | public enum AnchoredPopupPosition {
| `- note: add '@available' attribute to enclosing enum
42 | case anchorRelative(_ point: UnitPoint, boundsMode: AnchoredPopupBoundsMode = .free) // popup view will be aligned to anchor view at corresponding proportion
43 | case auto // similar to `anchorRelative(...)` but auto-picks the best anchor `UnitPoint` to keep the popup within safe area
44 | case screenRelative(_ point: UnitPoint = .center, boundsMode: AnchoredPopupBoundsMode = .screen) // popup view will be aligned relative to the bounds described by `boundsMode`
45 | case absolute(_ point: UnitPoint, position: CGPoint) // popup will be placed at exact screen position, with point specifying which part of popup aligns to that position
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
46 | }
47 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:50:16: error: 'Color' is only available in macOS 10.15 or newer
46 | }
47 |
48 | public enum AnchoredPopupBackground {
| `- note: add '@available' attribute to enclosing enum
49 | case none
50 | case color(Color)
| `- error: 'Color' is only available in macOS 10.15 or newer
51 | case blur(radius: CGFloat = 6)
52 | case view(AnyView)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:52:15: error: 'AnyView' is only available in macOS 10.15 or newer
46 | }
47 |
48 | public enum AnchoredPopupBackground {
| `- note: add '@available' attribute to enclosing enum
49 | case none
50 | case color(Color)
51 | case blur(radius: CGFloat = 6)
52 | case view(AnyView)
| `- error: 'AnyView' is only available in macOS 10.15 or newer
53 |
54 | // Convenience initializer for `view` that automatically wraps the content in `AnyView`
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:55:26: error: 'View' is only available in macOS 10.15 or newer
46 | }
47 |
48 | public enum AnchoredPopupBackground {
| `- note: add '@available' attribute to enclosing enum
49 | case none
50 | case color(Color)
:
53 |
54 | // Convenience initializer for `view` that automatically wraps the content in `AnyView`
55 | public init<Content: View>(viewBuilder: @escaping () -> Content) {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing initializer
56 | self = .view(AnyView(viewBuilder()))
57 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:70:33: error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
65 | }
66 |
67 | public struct PopupParameters {
| `- note: add '@available' attribute to enclosing struct
68 | var displayMode: DisplayMode = .window
69 | var position: AnchoredPopupPosition = .screenRelative()
70 | var animation: Animation = .easeIn(duration: 0.3)
| `- error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
71 |
72 | /// Should open popup on tap on the anchor view
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:70:20: error: 'Animation' is only available in macOS 10.15 or newer
65 | }
66 |
67 | public struct PopupParameters {
| `- note: add '@available' attribute to enclosing struct
68 | var displayMode: DisplayMode = .window
69 | var position: AnchoredPopupPosition = .screenRelative()
70 | var animation: Animation = .easeIn(duration: 0.3)
| `- error: 'Animation' is only available in macOS 10.15 or newer
71 |
72 | /// Should open popup on tap on the anchor view
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:99:40: error: 'Animation' is only available in macOS 10.15 or newer
65 | }
66 |
67 | public struct PopupParameters {
| `- note: add '@available' attribute to enclosing struct
68 | var displayMode: DisplayMode = .window
69 | var position: AnchoredPopupPosition = .screenRelative()
:
97 |
98 | /// Appear/disappear animation - default is `easeOut`
99 | public func animation(_ animation: Animation) -> PopupParameters {
| | `- error: 'Animation' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
100 | var params = self
101 | params.animation = animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:149:18: error: 'EnvironmentValues' is only available in macOS 10.15 or newer
147 | }
148 |
149 | public extension EnvironmentValues {
| | `- error: 'EnvironmentValues' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing extension
150 | var anchoredPopupDismiss: SendableClosure? {
151 | get { self[AnchoredPopupDismissKey.self] }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:13:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct TriggerButton<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | var id: String
12 | var params: PopupParameters
13 | @ViewBuilder var contentBuilder: () -> V
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
14 |
15 | func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:15:41: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct TriggerButton<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | var id: String
12 | var params: PopupParameters
13 | @ViewBuilder var contentBuilder: () -> V
14 |
15 | 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
16 | content
17 | .background(ScreenMetricsReader())
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:10:48: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct TriggerButton<V>: ViewModifier where V: View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing generic struct
11 | var id: String
12 | var params: PopupParameters
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:48:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
48 | @ViewBuilder var contentBuilder: () -> V
| `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
49 |
50 | @State private var showSheet = false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:50:6: error: 'State' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
48 | @ViewBuilder var contentBuilder: () -> V
49 |
50 | @State private var showSheet = false
| `- error: 'State' is only available in macOS 10.15 or newer
51 |
52 | func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:52:41: error: 'View' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
50 | @State private var showSheet = false
51 |
52 | 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
53 | switch params.displayMode {
54 | case .sheet:
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:85:35: error: 'View' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
:
83 | }
84 |
85 | var popupWithBackground: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
86 | ZStack {
87 | AnimatedBackgroundView(id: id, background: params.background)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/TriggerButton.swift:45:49: error: 'View' is only available in macOS 10.15 or newer
43 | }
44 |
45 | struct PopupPresenter<V>: ViewModifier where V: View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing generic struct
46 | var id: String
47 | var params: PopupParameters
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:36: error: 'EdgeInsets' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'EdgeInsets' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:6: error: 'Published' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'Published' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:27:6: error: 'Published' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
27 | @Published var contentSize: CGSize = .zero
| `- error: 'Published' is only available in macOS 10.15 or newer
28 | }
29 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:23:35: error: 'ObservableObject' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| | `- error: 'ObservableObject' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:35:31: error: cannot find type 'UIView' in scope
33 | /// across rotation and fold-state changes before any popup picks a display mode.
34 | struct ScreenMetricsReader: UIViewRepresentable {
35 | final class TrackingView: UIView {
| `- error: cannot find type 'UIView' in scope
36 | override func didMoveToWindow() {
37 | super.didMoveToWindow()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:36:23: error: method does not override any method from its superclass
34 | struct ScreenMetricsReader: UIViewRepresentable {
35 | final class TrackingView: UIView {
36 | override func didMoveToWindow() {
| `- error: method does not override any method from its superclass
37 | super.didMoveToWindow()
38 | report()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:41:23: error: method does not override any method from its superclass
39 | }
40 |
41 | override func layoutSubviews() {
| `- error: method does not override any method from its superclass
42 | super.layoutSubviews()
43 | report()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:46:23: error: method does not override any method from its superclass
44 | }
45 |
46 | override func safeAreaInsetsDidChange() {
| `- error: method does not override any method from its superclass
47 | super.safeAreaInsetsDidChange()
48 | report()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:70:30: error: cannot find type 'Context' in scope
68 | }
69 |
70 | func makeUIView(context: Context) -> TrackingView {
| `- error: cannot find type 'Context' in scope
71 | TrackingView()
72 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:74:56: error: cannot find type 'Context' in scope
72 | }
73 |
74 | func updateUIView(_ uiView: TrackingView, context: Context) {}
| `- error: cannot find type 'Context' in scope
75 | }
76 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:34:29: error: cannot find type 'UIViewRepresentable' in scope
32 | /// own layout/safe-area callbacks (not a one-off imperative read), so the values stay correct
33 | /// across rotation and fold-state changes before any popup picks a display mode.
34 | struct ScreenMetricsReader: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
35 | final class TrackingView: UIView {
36 | override func didMoveToWindow() {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:102:6: error: 'State' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
101 |
102 | @State private var animatableOpacity: CGFloat = 0
| `- error: 'State' is only available in macOS 10.15 or newer
103 |
104 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:104:20: error: 'View' is only available in macOS 10.15 or newer
96 | // MARK: - AnimatedBackgroundView
97 |
98 | struct AnimatedBackgroundView: View {
| `- note: add '@available' attribute to enclosing struct
99 | var id: String
100 | var background: AnchoredPopupBackground
:
102 | @State private var animatableOpacity: CGFloat = 0
103 |
104 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
105 | ZStack {
106 | Group {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:154:42: error: cannot find type 'UIView' in scope
152 | /// A special view to handle hit-testing on background parts of popup content
153 | struct PopupHitTestingBackground: UIViewRepresentable {
154 | func makeUIView(context: Context) -> UIView {
| `- error: cannot find type 'UIView' in scope
155 | let view = UIView()
156 | view.backgroundColor = .clear
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:154:30: error: cannot find type 'Context' in scope
152 | /// A special view to handle hit-testing on background parts of popup content
153 | struct PopupHitTestingBackground: UIViewRepresentable {
154 | func makeUIView(context: Context) -> UIView {
| `- error: cannot find type 'Context' in scope
155 | let view = UIView()
156 | view.backgroundColor = .clear
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:161:33: error: cannot find type 'UIView' in scope
159 | }
160 |
161 | func updateUIView(_ uiView: UIView, context: Context) {}
| `- error: cannot find type 'UIView' in scope
162 | }
163 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:161:50: error: cannot find type 'Context' in scope
159 | }
160 |
161 | func updateUIView(_ uiView: UIView, context: Context) {}
| `- error: cannot find type 'Context' in scope
162 | }
163 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:153:35: error: cannot find type 'UIViewRepresentable' in scope
151 |
152 | /// A special view to handle hit-testing on background parts of popup content
153 | struct PopupHitTestingBackground: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
154 | func makeUIView(context: Context) -> UIView {
155 | let view = UIView()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:13:27: error: cannot find type 'UIWindow' in scope
11 | final class WindowManager {
12 | static let shared = WindowManager()
13 | var windows: [String: UIWindow] = [:]
| `- error: cannot find type 'UIWindow' in scope
14 |
15 | static func showInNewWindow<Content: View>(id: String, closeOnTapOutside: Bool, isPassthrough: Bool, content: ()->Content) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:15:42: error: 'View' is only available in macOS 10.15 or newer
9 |
10 | @MainActor
11 | final class WindowManager {
| `- note: add '@available' attribute to enclosing class
12 | static let shared = WindowManager()
13 | var windows: [String: UIWindow] = [:]
14 |
15 | static func showInNewWindow<Content: View>(id: String, closeOnTapOutside: Bool, isPassthrough: Bool, content: ()->Content) {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing static method
16 | guard let scene = UIApplication.shared.connectedScenes.first as? UIWindowScene else {
17 | print("No valid scene available")
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:42:28: error: cannot find type 'UIWindow' in scope
40 | }
41 |
42 | class UIPassthroughWindow: UIWindow {
| `- error: cannot find type 'UIWindow' in scope
43 | var id: String
44 | var closeOnTapOutside: Bool
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:48:23: error: cannot find type 'UIWindowScene' in scope
46 | private var needsInitialLayout = true
47 |
48 | init(windowScene: UIWindowScene, id: String, closeOnTapOutside: Bool, isPassthrough: Bool) {
| `- error: cannot find type 'UIWindowScene' in scope
49 | self.id = id
50 | self.closeOnTapOutside = closeOnTapOutside
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:59:70: error: cannot find type 'UIView' in scope
57 | }
58 |
59 | override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
| `- error: cannot find type 'UIView' in scope
60 | guard let vc = self.rootViewController else {
61 | return nil // pass to next window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:59:57: error: cannot find type 'UIEvent' in scope
57 | }
58 |
59 | override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
| `- error: cannot find type 'UIEvent' in scope
60 | guard let vc = self.rootViewController else {
61 | return nil // pass to next window
[7/11] Compiling AnchoredPopup TransparentNonAnimatableFullScreenModifier.swift
[8/11] Compiling AnchoredPopup BlurBackdropView.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:11:29: error: property does not override any property from its superclass
9 |
10 | open class UIBackdropView: UIView {
11 | open override class var layerClass: AnyClass {
| `- error: property does not override any property from its superclass
12 | NSClassFromString("CABackdropLayer") ?? CALayer.self
13 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:10:28: error: cannot find type 'UIView' in scope
8 | import SwiftUI
9 |
10 | open class UIBackdropView: UIView {
| `- error: cannot find type 'UIView' in scope
11 | open override class var layerClass: AnyClass {
12 | NSClassFromString("CABackdropLayer") ?? CALayer.self
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:19:37: error: cannot find type 'Context' in scope
17 | public init() {}
18 |
19 | public func makeUIView(context: Context) -> UIBackdropView {
| `- error: cannot find type 'Context' in scope
20 | UIBackdropView()
21 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:23:65: error: cannot find type 'Context' in scope
21 | }
22 |
23 | public func updateUIView(_ uiView: UIBackdropView, context: Context) {}
| `- error: cannot find type 'Context' in scope
24 | }
25 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:16:25: error: cannot find type 'UIViewRepresentable' in scope
14 | }
15 |
16 | public struct Backdrop: UIViewRepresentable {
| `- error: cannot find type 'UIViewRepresentable' in scope
17 | public init() {}
18 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:35:27: error: 'View' is only available in macOS 10.15 or newer
24 | }
25 |
26 | public struct Blur: View {
| `- note: add '@available' attribute to enclosing struct
27 | public var radius: CGFloat
28 | public var opaque: Bool
:
33 | }
34 |
35 | public var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
36 | Backdrop()
37 | .blur(radius: radius, opaque: opaque)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/BlurBackdropView.swift:37:14: error: value of type 'Backdrop' has no member 'blur'
35 | public var body: some View {
36 | Backdrop()
37 | .blur(radius: radius, opaque: opaque)
| `- error: value of type 'Backdrop' has no member 'blur'
38 | .overlay(Color.gray.opacity(0.3))
39 | }
[9/11] Compiling AnchoredPopup PublicAPI.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:13:30: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:13:49: error: 'ViewBuilder' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| | `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:13:163: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:17:30: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
19 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:17:49: error: 'ViewBuilder' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| | `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
19 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:17:104: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
19 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:12:18: error: 'View' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:42:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
39 | }
40 |
41 | public enum AnchoredPopupPosition {
| `- note: add '@available' attribute to enclosing enum
42 | case anchorRelative(_ point: UnitPoint, boundsMode: AnchoredPopupBoundsMode = .free) // popup view will be aligned to anchor view at corresponding proportion
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
43 | case auto // similar to `anchorRelative(...)` but auto-picks the best anchor `UnitPoint` to keep the popup within safe area
44 | case screenRelative(_ point: UnitPoint = .center, boundsMode: AnchoredPopupBoundsMode = .screen) // popup view will be aligned relative to the bounds described by `boundsMode`
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:44:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
39 | }
40 |
41 | public enum AnchoredPopupPosition {
| `- note: add '@available' attribute to enclosing enum
42 | case anchorRelative(_ point: UnitPoint, boundsMode: AnchoredPopupBoundsMode = .free) // popup view will be aligned to anchor view at corresponding proportion
43 | case auto // similar to `anchorRelative(...)` but auto-picks the best anchor `UnitPoint` to keep the popup within safe area
44 | case screenRelative(_ point: UnitPoint = .center, boundsMode: AnchoredPopupBoundsMode = .screen) // popup view will be aligned relative to the bounds described by `boundsMode`
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
45 | case absolute(_ point: UnitPoint, position: CGPoint) // popup will be placed at exact screen position, with point specifying which part of popup aligns to that position
46 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:45:28: error: 'UnitPoint' is only available in macOS 10.15 or newer
39 | }
40 |
41 | public enum AnchoredPopupPosition {
| `- note: add '@available' attribute to enclosing enum
42 | case anchorRelative(_ point: UnitPoint, boundsMode: AnchoredPopupBoundsMode = .free) // popup view will be aligned to anchor view at corresponding proportion
43 | case auto // similar to `anchorRelative(...)` but auto-picks the best anchor `UnitPoint` to keep the popup within safe area
44 | case screenRelative(_ point: UnitPoint = .center, boundsMode: AnchoredPopupBoundsMode = .screen) // popup view will be aligned relative to the bounds described by `boundsMode`
45 | case absolute(_ point: UnitPoint, position: CGPoint) // popup will be placed at exact screen position, with point specifying which part of popup aligns to that position
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
46 | }
47 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:50:16: error: 'Color' is only available in macOS 10.15 or newer
46 | }
47 |
48 | public enum AnchoredPopupBackground {
| `- note: add '@available' attribute to enclosing enum
49 | case none
50 | case color(Color)
| `- error: 'Color' is only available in macOS 10.15 or newer
51 | case blur(radius: CGFloat = 6)
52 | case view(AnyView)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:52:15: error: 'AnyView' is only available in macOS 10.15 or newer
46 | }
47 |
48 | public enum AnchoredPopupBackground {
| `- note: add '@available' attribute to enclosing enum
49 | case none
50 | case color(Color)
51 | case blur(radius: CGFloat = 6)
52 | case view(AnyView)
| `- error: 'AnyView' is only available in macOS 10.15 or newer
53 |
54 | // Convenience initializer for `view` that automatically wraps the content in `AnyView`
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:55:26: error: 'View' is only available in macOS 10.15 or newer
46 | }
47 |
48 | public enum AnchoredPopupBackground {
| `- note: add '@available' attribute to enclosing enum
49 | case none
50 | case color(Color)
:
53 |
54 | // Convenience initializer for `view` that automatically wraps the content in `AnyView`
55 | public init<Content: View>(viewBuilder: @escaping () -> Content) {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing initializer
56 | self = .view(AnyView(viewBuilder()))
57 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:70:33: error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
65 | }
66 |
67 | public struct PopupParameters {
| `- note: add '@available' attribute to enclosing struct
68 | var displayMode: DisplayMode = .window
69 | var position: AnchoredPopupPosition = .screenRelative()
70 | var animation: Animation = .easeIn(duration: 0.3)
| `- error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
71 |
72 | /// Should open popup on tap on the anchor view
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:70:20: error: 'Animation' is only available in macOS 10.15 or newer
65 | }
66 |
67 | public struct PopupParameters {
| `- note: add '@available' attribute to enclosing struct
68 | var displayMode: DisplayMode = .window
69 | var position: AnchoredPopupPosition = .screenRelative()
70 | var animation: Animation = .easeIn(duration: 0.3)
| `- error: 'Animation' is only available in macOS 10.15 or newer
71 |
72 | /// Should open popup on tap on the anchor view
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:99:40: error: 'Animation' is only available in macOS 10.15 or newer
65 | }
66 |
67 | public struct PopupParameters {
| `- note: add '@available' attribute to enclosing struct
68 | var displayMode: DisplayMode = .window
69 | var position: AnchoredPopupPosition = .screenRelative()
:
97 |
98 | /// Appear/disappear animation - default is `easeOut`
99 | public func animation(_ animation: Animation) -> PopupParameters {
| | `- error: 'Animation' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
100 | var params = self
101 | params.animation = animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:149:18: error: 'EnvironmentValues' is only available in macOS 10.15 or newer
147 | }
148 |
149 | public extension EnvironmentValues {
| | `- error: 'EnvironmentValues' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing extension
150 | var anchoredPopupDismiss: SendableClosure? {
151 | get { self[AnchoredPopupDismissKey.self] }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:14:14: warning: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
| |- warning: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
15 | }
16 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:14:14: error: 'modifier' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
| `- note: add '@available' attribute to enclosing instance method
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
| |- error: 'modifier' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
15 | }
16 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:18:14: warning: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
| |- warning: conformance of 'ModifiedContent<Content, Modifier>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
| `- note: add 'if #available' version check
19 | }
20 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:18:14: error: 'modifier' is only available in macOS 10.15 or newer
10 | // - MARK: Popup creation
11 |
12 | public extension View {
| `- note: add '@available' attribute to enclosing extension
13 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V, customize: @escaping (PopupParameters) -> PopupParameters) -> some View {
14 | self.modifier(TriggerButton(id: id, params: customize(PopupParameters()), contentBuilder: contentBuilder))
15 | }
16 |
17 | func useAsPopupAnchor<V: View>(id: String, @ViewBuilder contentBuilder: @escaping () -> V) -> some View {
| `- note: add '@available' attribute to enclosing instance method
18 | self.modifier(TriggerButton(id: id, params: PopupParameters(), contentBuilder: contentBuilder))
| |- error: 'modifier' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
19 | }
20 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:56:22: error: 'AnyView' is only available in macOS 10.15 or newer
46 | }
47 |
48 | public enum AnchoredPopupBackground {
| `- note: add '@available' attribute to enclosing enum
49 | case none
50 | case color(Color)
:
53 |
54 | // Convenience initializer for `view` that automatically wraps the content in `AnyView`
55 | public init<Content: View>(viewBuilder: @escaping () -> Content) {
| `- note: add '@available' attribute to enclosing initializer
56 | self = .view(AnyView(viewBuilder()))
| |- error: 'AnyView' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
57 | }
58 | }
[10/11] Compiling AnchoredPopup AnchoredAnimationView.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:26:49: error: 'EdgeInsets' is only available in macOS 10.15 or newer
21 | /// and fold-state changes (e.g. on iPhone Duo).
22 | @MainActor
23 | final class AnchoredPopupMetrics: ObservableObject {
| `- note: add '@available' attribute to enclosing class
24 | static let shared = AnchoredPopupMetrics()
25 |
26 | @Published var safeAreaInsets: EdgeInsets = EdgeInsets()
| `- error: 'EdgeInsets' is only available in macOS 10.15 or newer
27 | @Published var contentSize: CGSize = .zero
28 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:11:6: error: 'ObservedObject' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
| `- error: 'ObservedObject' is only available in macOS 10.15 or newer
12 |
13 | var id: String
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:17:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
15 | var contentBuilder: () -> V
16 |
17 | @State private var animatableOpacity: CGFloat = 0
| `- error: 'State' is only available in macOS 10.15 or newer
18 | @State private var animatableScale: CGSize = .zero
19 | @State private var animatableOffset: CGSize = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:18:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
16 |
17 | @State private var animatableOpacity: CGFloat = 0
18 | @State private var animatableScale: CGSize = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
19 | @State private var animatableOffset: CGSize = .zero
20 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:19:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
17 | @State private var animatableOpacity: CGFloat = 0
18 | @State private var animatableScale: CGSize = .zero
19 | @State private var animatableOffset: CGSize = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
20 |
21 | @State private var triggerButtonFrame: CGRect = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:21:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
19 | @State private var animatableOffset: CGSize = .zero
20 |
21 | @State private var triggerButtonFrame: CGRect = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
22 | @State private var contentSize: CGSize = .zero
23 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:22:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
20 |
21 | @State private var triggerButtonFrame: CGRect = .zero
22 | @State private var contentSize: CGSize = .zero
| `- error: 'State' is only available in macOS 10.15 or newer
23 |
24 | @State private var isAnimating = false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:24:6: error: 'State' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
22 | @State private var contentSize: CGSize = .zero
23 |
24 | @State private var isAnimating = false
| `- error: 'State' is only available in macOS 10.15 or newer
25 |
26 | var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:26:20: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:214:18: error: 'UnitPoint' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
211 | }
212 |
213 | private func anchorRelativeBaseOffset(
| `- note: add '@available' attribute to enclosing instance method
214 | point p: UnitPoint,
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
215 | contentWidth cw: CGFloat,
216 | contentHeight ch: CGFloat
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:263:106: error: 'UnitPoint' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
261 | }
262 |
263 | private func autoAnchorPoint(contentWidth cw: CGFloat, contentHeight ch: CGFloat, bounds: CGRect) -> UnitPoint {
| | `- error: 'UnitPoint' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
264 | let candidates: [UnitPoint] = [.topLeading, .topTrailing, .bottomLeading, .bottomTrailing]
265 | let triggerCenter = CGPoint(x: triggerButtonFrame.midX, y: triggerButtonFrame.midY)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:10:48: error: 'View' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| | `- error: 'View' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:27:9: error: 'VStack' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
| |- error: 'VStack' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
28 | contentBuilder()
29 | .overlay(GeometryReader { geo in
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:29:18: error: 'overlay(_:alignment:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
29 | .overlay(GeometryReader { geo in
| |- error: 'overlay(_:alignment:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
30 | Color.clear
31 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:29:26: error: 'GeometryReader' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
29 | .overlay(GeometryReader { geo in
| |- error: 'GeometryReader' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
30 | Color.clear
31 | .onAppear {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:30:21: error: 'Color' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
29 | .overlay(GeometryReader { geo in
30 | Color.clear
| |- error: 'Color' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
31 | .onAppear {
32 | Task { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:30:27: error: 'clear' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
29 | .overlay(GeometryReader { geo in
30 | Color.clear
| |- error: 'clear' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
31 | .onAppear {
32 | Task { @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:31:26: error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
29 | .overlay(GeometryReader { geo in
30 | Color.clear
31 | .onAppear {
| |- error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
32 | Task { @MainActor in
33 | contentSize = geo.size
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:32:29: error: 'Task' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
30 | Color.clear
31 | .onAppear {
32 | Task { @MainActor in
| |- error: 'Task' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
33 | contentSize = geo.size
34 | if let animation = AnchoredAnimationManager.shared.animations.first(where: { $0.id == id }) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:32:29: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
30 | Color.clear
31 | .onAppear {
32 | Task { @MainActor in
| |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
33 | contentSize = geo.size
34 | if let animation = AnchoredAnimationManager.shared.animations.first(where: { $0.id == id }) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:33:33: error: setter for 'contentSize' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
31 | .onAppear {
32 | Task { @MainActor in
33 | contentSize = geo.size
| |- error: setter for 'contentSize' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
34 | if let animation = AnchoredAnimationManager.shared.animations.first(where: { $0.id == id }) {
35 | setupAndLaunchAnimation(animation)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:39:26: error: 'onChange(of:initial:_:)' is only available in macOS 14.0 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
37 | }
38 | }
39 | .onChange(of: geo.size) { _, newSize in
| |- error: 'onChange(of:initial:_:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
40 | contentSize = newSize
41 | refreshDisplayedLayoutIfNeeded()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:40:29: error: setter for 'contentSize' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
38 | }
39 | .onChange(of: geo.size) { _, newSize in
40 | contentSize = newSize
| |- error: setter for 'contentSize' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
41 | refreshDisplayedLayoutIfNeeded()
42 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:44:18: error: 'scaleEffect(_:anchor:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
42 | }
43 | })
44 | .scaleEffect(animatableScale)
| |- error: 'scaleEffect(_:anchor:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | .offset(animatableOffset)
46 | .offset(x: triggerButtonFrame.midX - windowBounds.width / 2,
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:45:18: error: 'offset' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
43 | })
44 | .scaleEffect(animatableScale)
45 | .offset(animatableOffset)
| |- error: 'offset' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
46 | .offset(x: triggerButtonFrame.midX - windowBounds.width / 2,
47 | y: triggerButtonFrame.midY - windowBounds.height / 2)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:46:18: error: 'offset(x:y:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
44 | .scaleEffect(animatableScale)
45 | .offset(animatableOffset)
46 | .offset(x: triggerButtonFrame.midX - windowBounds.width / 2,
| |- error: 'offset(x:y:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
47 | y: triggerButtonFrame.midY - windowBounds.height / 2)
48 | .opacity(animatableOpacity)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:48:18: error: 'opacity' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
46 | .offset(x: triggerButtonFrame.midX - windowBounds.width / 2,
47 | y: triggerButtonFrame.midY - windowBounds.height / 2)
48 | .opacity(animatableOpacity)
| |- error: 'opacity' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
49 | .simultaneousGesture(
50 | TapGesture().onEnded { gesture in
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:49:18: error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
47 | y: triggerButtonFrame.midY - windowBounds.height / 2)
48 | .opacity(animatableOpacity)
49 | .simultaneousGesture(
| |- error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
50 | TapGesture().onEnded { gesture in
51 | if params.closeOnTap {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:50:21: error: 'TapGesture' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
48 | .opacity(animatableOpacity)
49 | .simultaneousGesture(
50 | TapGesture().onEnded { gesture in
| |- error: 'TapGesture' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
51 | if params.closeOnTap {
52 | // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:50:34: error: 'onEnded' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
48 | .opacity(animatableOpacity)
49 | .simultaneousGesture(
50 | TapGesture().onEnded { gesture in
| |- error: 'onEnded' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
51 | if params.closeOnTap {
52 | // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:58:10: error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
56 | )
57 | }
58 | .onReceive(AnchoredAnimationManager.shared.framePublisher(for: id)) { animation in
| |- error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
59 | if let animation, triggerButtonFrame != animation.buttonFrame {
60 | triggerButtonFrame = animation.buttonFrame
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:60:17: error: setter for 'triggerButtonFrame' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
58 | .onReceive(AnchoredAnimationManager.shared.framePublisher(for: id)) { animation in
59 | if let animation, triggerButtonFrame != animation.buttonFrame {
60 | triggerButtonFrame = animation.buttonFrame
| |- error: setter for 'triggerButtonFrame' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
61 | refreshDisplayedLayoutIfNeeded()
62 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:64:10: error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
62 | }
63 | }
64 | .onReceive(AnchoredAnimationManager.shared.statePublisher(for: id)) { animation in
| |- error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
65 | if let animation {
66 | setupAndLaunchAnimation(animation)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:69:10: error: 'onChange(of:initial:_:)' is only available in macOS 14.0 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
67 | }
68 | }
69 | .onChange(of: metrics.contentSize) { _, _ in refreshDisplayedLayoutIfNeeded() }
| |- error: 'onChange(of:initial:_:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
70 | .onChange(of: metrics.safeAreaInsets) { _, _ in refreshDisplayedLayoutIfNeeded() }
71 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:70:10: error: 'onChange(of:initial:_:)' is only available in macOS 14.0 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
24 | @State private var isAnimating = false
25 |
26 | var body: some View {
| `- note: add '@available' attribute to enclosing property
27 | VStack {
28 | contentBuilder()
:
68 | }
69 | .onChange(of: metrics.contentSize) { _, _ in refreshDisplayedLayoutIfNeeded() }
70 | .onChange(of: metrics.safeAreaInsets) { _, _ in refreshDisplayedLayoutIfNeeded() }
| |- error: 'onChange(of:initial:_:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
71 | }
72 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:93:13: error: setter for 'isAnimating' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
82 | }
83 |
84 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
85 | if contentSize == .zero || triggerButtonFrame == .zero { return }
86 |
:
91 | switch animation.state {
92 | case .growing:
93 | isAnimating = true
| |- error: setter for 'isAnimating' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
94 | setHiddenState()
95 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:96:13: error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
82 | }
83 |
84 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
85 | if contentSize == .zero || triggerButtonFrame == .zero { return }
86 |
:
94 | setHiddenState()
95 |
96 | withAnimation(params.animation) {
| |- error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
97 | setDisplayedState()
98 | } completion: {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:104:17: error: setter for 'isAnimating' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
82 | }
83 |
84 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
85 | if contentSize == .zero || triggerButtonFrame == .zero { return }
86 |
:
102 | AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .displayed)
103 | }
104 | isAnimating = false
| |- error: setter for 'isAnimating' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
105 | }
106 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:108:13: error: setter for 'isAnimating' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
82 | }
83 |
84 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
85 | if contentSize == .zero || triggerButtonFrame == .zero { return }
86 |
:
106 |
107 | case .shrinking:
108 | isAnimating = true
| |- error: setter for 'isAnimating' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
109 | withAnimation(params.animation) {
110 | setHiddenState()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:109:13: error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
82 | }
83 |
84 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
85 | if contentSize == .zero || triggerButtonFrame == .zero { return }
86 |
:
107 | case .shrinking:
108 | isAnimating = true
109 | withAnimation(params.animation) {
| |- error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
| `- note: add 'if #available' version check
110 | setHiddenState()
111 | } completion: {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:113:17: error: setter for 'isAnimating' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
82 | }
83 |
84 | private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
| `- note: add '@available' attribute to enclosing instance method
85 | if contentSize == .zero || triggerButtonFrame == .zero { return }
86 |
:
111 | } completion: {
112 | AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .hidden)
113 | isAnimating = false
| |- error: setter for 'isAnimating' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
114 | }
115 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:128:9: error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
125 | }
126 |
127 | private func setHiddenState() {
| `- note: add '@available' attribute to enclosing instance method
128 | animatableOffset = .zero
| |- error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
129 | animatableScale = calculateHiddenScale()
130 | animatableOpacity = 0
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:129:9: error: setter for 'animatableScale' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
125 | }
126 |
127 | private func setHiddenState() {
| `- note: add '@available' attribute to enclosing instance method
128 | animatableOffset = .zero
129 | animatableScale = calculateHiddenScale()
| |- error: setter for 'animatableScale' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
130 | animatableOpacity = 0
131 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:130:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
125 | }
126 |
127 | private func setHiddenState() {
| `- note: add '@available' attribute to enclosing instance method
128 | animatableOffset = .zero
129 | animatableScale = calculateHiddenScale()
130 | animatableOpacity = 0
| |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
131 | }
132 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:134:9: error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
131 | }
132 |
133 | private func setDisplayedState() {
| `- note: add '@available' attribute to enclosing instance method
134 | animatableOffset = calculateDisplayedOffset()
| |- error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
135 | animatableScale = CGSize(width: 1, height: 1)
136 | animatableOpacity = 1
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:135:9: error: setter for 'animatableScale' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
131 | }
132 |
133 | private func setDisplayedState() {
| `- note: add '@available' attribute to enclosing instance method
134 | animatableOffset = calculateDisplayedOffset()
135 | animatableScale = CGSize(width: 1, height: 1)
| |- error: setter for 'animatableScale' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
136 | animatableOpacity = 1
137 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:136:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
131 | }
132 |
133 | private func setDisplayedState() {
| `- note: add '@available' attribute to enclosing instance method
134 | animatableOffset = calculateDisplayedOffset()
135 | animatableScale = CGSize(width: 1, height: 1)
136 | animatableOpacity = 1
| |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
137 | }
138 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:264:26: error: 'UnitPoint' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
261 | }
262 |
263 | private func autoAnchorPoint(contentWidth cw: CGFloat, contentHeight ch: CGFloat, bounds: CGRect) -> UnitPoint {
| `- note: add '@available' attribute to enclosing instance method
264 | let candidates: [UnitPoint] = [.topLeading, .topTrailing, .bottomLeading, .bottomTrailing]
| |- error: 'UnitPoint' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
265 | let triggerCenter = CGPoint(x: triggerButtonFrame.midX, y: triggerButtonFrame.midY)
266 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:271:39: error: 'UnitPoint' is only available in macOS 10.15 or newer
8 | import SwiftUI
9 |
10 | struct AnchoredAnimationView<V>: View where V: View {
| `- note: add '@available' attribute to enclosing generic struct
11 | @ObservedObject private var metrics = AnchoredPopupMetrics.shared
12 |
:
261 | }
262 |
263 | private func autoAnchorPoint(contentWidth cw: CGFloat, contentHeight ch: CGFloat, bounds: CGRect) -> UnitPoint {
| `- note: add '@available' attribute to enclosing instance method
264 | let candidates: [UnitPoint] = [.topLeading, .topTrailing, .bottomLeading, .bottomTrailing]
265 | let triggerCenter = CGPoint(x: triggerButtonFrame.midX, y: triggerButtonFrame.midY)
:
269 | let preferredY: CGFloat = triggerCenter.y < bounds.midY ? 0 : 1
270 |
271 | func overflowScore(for point: UnitPoint) -> CGFloat {
| `- error: 'UnitPoint' is only available in macOS 10.15 or newer
272 | let baseOffset = anchorRelativeBaseOffset(point: point, contentWidth: cw, contentHeight: ch)
273 | let center = CGPoint(x: triggerCenter.x + baseOffset.width, y: triggerCenter.y + baseOffset.height)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:300:39: error: cannot find 'UIEdgeInsets' in scope
298 | // `metrics` is measured live at the app's real window root, so it stays correct across rotation.
299 | let insets = metrics.safeAreaInsets
300 | return windowBounds.inset(by: UIEdgeInsets(top: insets.top, left: insets.leading, bottom: insets.bottom, right: insets.trailing))
| `- error: cannot find 'UIEdgeInsets' in scope
301 | }
302 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationView.swift:300:29: error: value of type 'CGRect' has no member 'inset'
298 | // `metrics` is measured live at the app's real window root, so it stays correct across rotation.
299 | let insets = metrics.safeAreaInsets
300 | return windowBounds.inset(by: UIEdgeInsets(top: insets.top, left: insets.leading, bottom: insets.bottom, right: insets.trailing))
| `- error: value of type 'CGRect' has no member 'inset'
301 | }
302 |
[11/11] Compiling AnchoredPopup AnchoredAnimationManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:25:6: error: 'Published' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
23 | }
24 |
25 | @Published var animations: [AnimationItem] = []
| `- error: 'Published' is only available in macOS 10.15 or newer
26 |
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:27:43: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
25 | @Published var animations: [AnimationItem] = []
26 |
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
| `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
29 | private var stateCancellables: [String: AnyCancellable] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:28:43: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
26 |
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
| `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
29 | private var stateCancellables: [String: AnyCancellable] = [:]
30 | private var frameCancellables: [String: AnyCancellable] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:29:45: error: 'AnyCancellable' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
27 | private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
29 | private var stateCancellables: [String: AnyCancellable] = [:]
| `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
30 | private var frameCancellables: [String: AnyCancellable] = [:]
31 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:30:45: error: 'AnyCancellable' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
28 | private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
29 | private var stateCancellables: [String: AnyCancellable] = [:]
30 | private var frameCancellables: [String: AnyCancellable] = [:]
| `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
31 |
32 | static subscript(id: String) -> AnimationItem? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:50:44: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
48 | }
49 |
50 | func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| | `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
51 | if let publisher = statePublishers[id] {
52 | return publisher
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:66:44: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
64 | }
65 |
66 | func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| | `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
| `- note: add '@available' attribute to enclosing instance method
67 | if let publisher = framePublishers[id] {
68 | return publisher
<unknown>:0: error: cannot convert value of type 'KeyPath<AnchoredAnimationManager, [AnchoredAnimationManager.AnimationItem]>' to expected argument type 'ReferenceWritableKeyPath<AnchoredAnimationManager, [AnchoredAnimationManager.AnimationItem]>'
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:38:13: error: cannot pass as inout because setter for 'animations' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
34 | }
35 |
36 | func changeStateForAnimation(for id: String, state: GrowingViewState) {
| `- note: add '@available' attribute to enclosing instance method
37 | if let index = animations.firstIndex(where: { $0.id == id }) {
38 | animations[index].state = state
| |- error: cannot pass as inout because setter for 'animations' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
39 | }
40 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:44:13: error: cannot pass as inout because setter for 'animations' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
40 | }
41 |
42 | func updateFrame(for id: String, frame: CGRect) {
| `- note: add '@available' attribute to enclosing instance method
43 | if let index = animations.firstIndex(where: { $0.id == id }) {
44 | animations[index].buttonFrame = frame
| |- error: cannot pass as inout because setter for 'animations' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
45 | } else {
46 | animations.append(AnimationItem(id: id, buttonFrame: frame, state: .hidden))
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:46:13: error: cannot pass as inout because setter for 'animations' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
40 | }
41 |
42 | func updateFrame(for id: String, frame: CGRect) {
| `- note: add '@available' attribute to enclosing instance method
43 | if let index = animations.firstIndex(where: { $0.id == id }) {
44 | animations[index].buttonFrame = frame
45 | } else {
46 | animations.append(AnimationItem(id: id, buttonFrame: frame, state: .hidden))
| |- error: cannot pass as inout because setter for 'animations' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
47 | }
48 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:55:23: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
48 | }
49 |
50 | func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
51 | if let publisher = statePublishers[id] {
52 | return publisher
53 | }
54 |
55 | let subject = CurrentValueSubject<AnimationItem?, Never>(nil)
| |- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
56 |
57 | stateCancellables[id] = $animations
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:58:14: error: 'compactMap' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
48 | }
49 |
50 | func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
51 | if let publisher = statePublishers[id] {
52 | return publisher
:
56 |
57 | stateCancellables[id] = $animations
58 | .compactMap { animations in animations.first { $0.id == id } }
| |- error: 'compactMap' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
59 | .removeDuplicates { $0.state == $1.state }
60 | .sink { subject.send($0) }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:59:14: error: 'removeDuplicates(by:)' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
48 | }
49 |
50 | func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
51 | if let publisher = statePublishers[id] {
52 | return publisher
:
57 | stateCancellables[id] = $animations
58 | .compactMap { animations in animations.first { $0.id == id } }
59 | .removeDuplicates { $0.state == $1.state }
| |- error: 'removeDuplicates(by:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
60 | .sink { subject.send($0) }
61 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:60:14: error: 'sink(receiveValue:)' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
48 | }
49 |
50 | func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
51 | if let publisher = statePublishers[id] {
52 | return publisher
:
58 | .compactMap { animations in animations.first { $0.id == id } }
59 | .removeDuplicates { $0.state == $1.state }
60 | .sink { subject.send($0) }
| |- error: 'sink(receiveValue:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
61 |
62 | statePublishers[id] = subject
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:71:23: error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
64 | }
65 |
66 | func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
67 | if let publisher = framePublishers[id] {
68 | return publisher
69 | }
70 |
71 | let subject = CurrentValueSubject<AnimationItem?, Never>(nil)
| |- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
72 |
73 | frameCancellables[id] = $animations
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:74:14: error: 'compactMap' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
64 | }
65 |
66 | func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
67 | if let publisher = framePublishers[id] {
68 | return publisher
:
72 |
73 | frameCancellables[id] = $animations
74 | .compactMap { animations in animations.first { $0.id == id } }
| |- error: 'compactMap' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
75 | .removeDuplicates { $0.buttonFrame == $1.buttonFrame }
76 | .sink { subject.send($0) }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:75:14: error: 'removeDuplicates(by:)' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
64 | }
65 |
66 | func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
67 | if let publisher = framePublishers[id] {
68 | return publisher
:
73 | frameCancellables[id] = $animations
74 | .compactMap { animations in animations.first { $0.id == id } }
75 | .removeDuplicates { $0.buttonFrame == $1.buttonFrame }
| |- error: 'removeDuplicates(by:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
76 | .sink { subject.send($0) }
77 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:76:14: error: 'sink(receiveValue:)' is only available in macOS 10.15 or newer
10 | /// this manager stores states for all the paired growing/shrinking animations
11 | @MainActor
12 | class AnchoredAnimationManager: ObservableObject {
| `- note: add '@available' attribute to enclosing class
13 | static let shared = AnchoredAnimationManager()
14 |
:
64 | }
65 |
66 | func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
| `- note: add '@available' attribute to enclosing instance method
67 | if let publisher = framePublishers[id] {
68 | return publisher
:
74 | .compactMap { animations in animations.first { $0.id == id } }
75 | .removeDuplicates { $0.buttonFrame == $1.buttonFrame }
76 | .sink { subject.send($0) }
| |- error: 'sink(receiveValue:)' is only available in macOS 10.15 or newer
| `- note: add 'if #available' version check
77 |
78 | framePublishers[id] = subject
BUILD FAILURE 6.2 macosSpm