The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build AnchoredPopup, reference main (43fc3d), with Swift 6.1 for macOS (SPM) on 1 May 2025 04:18:37 UTC.

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64

Build Log

 41 | class UIPassthroughWindow: UIWindow {
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
    |                                                                      `- error: cannot find type 'UIView' in scope
 44 |         if let vc = self.rootViewController {
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:43:57: error: cannot find type 'UIEvent' in scope
 41 | class UIPassthroughWindow: UIWindow {
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
    |                                                         `- error: cannot find type 'UIEvent' in scope
 44 |         if let vc = self.rootViewController {
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:54:70: error: cannot find type 'UIView' in scope
 52 |     }
 53 |
 54 |     private func isTouchInsideSubview(point: CGPoint, vc: UIView) -> UIView? {
    |                                                                      `- error: cannot find type 'UIView' in scope
 55 |         for subview in vc.subviews {
 56 |             if subview.frame.contains(point) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:54:59: error: cannot find type 'UIView' in scope
 52 |     }
 53 |
 54 |     private func isTouchInsideSubview(point: CGPoint, vc: UIView) -> UIView? {
    |                                                           `- error: cannot find type 'UIView' in scope
 55 |         for subview in vc.subviews {
 56 |             if subview.frame.contains(point) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:64:39: error: cannot find type 'UIHostingController' in scope
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |                                       `- error: cannot find type 'UIHostingController' in scope
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:66:47: error: cannot find type 'UITouch' in scope
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 67 |         // Check if any touch is inside one of the subviews, if so, ignore it
 68 |         if !isTouchInsideSubview(touches) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:66:69: error: cannot find type 'UIEvent' in scope
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 67 |         // Check if any touch is inside one of the subviews, if so, ignore it
 68 |         if !isTouchInsideSubview(touches) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:74:47: error: cannot find type 'UITouch' in scope
 72 |     }
 73 |
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:74:69: error: cannot find type 'UIEvent' in scope
 72 |     }
 73 |
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:80:47: error: cannot find type 'UITouch' in scope
 78 |     }
 79 |
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:80:69: error: cannot find type 'UIEvent' in scope
 78 |     }
 79 |
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:86:51: error: cannot find type 'UITouch' in scope
 84 |     }
 85 |
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                   `- error: cannot find type 'UITouch' in scope
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:86:73: error: cannot find type 'UIEvent' in scope
 84 |     }
 85 |
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                         `- error: cannot find type 'UIEvent' in scope
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:93:54: error: cannot find type 'UITouch' in scope
 91 |
 92 |     // Helper function to determine if any touch is inside a subview
 93 |     private func isTouchInsideSubview(_ touches: Set<UITouch>) -> Bool {
    |                                                      `- error: cannot find type 'UITouch' in scope
 94 |         guard let touch = touches.first else {
 95 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:64:32: error: 'View' is only available in macOS 10.15 or newer
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |       |                        `- error: 'View' is only available in macOS 10.15 or newer
    |       `- note: add @available attribute to enclosing generic class
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:16:21: error: cannot find 'UIApplication' in scope
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:68: error: cannot find type 'UIWindowScene' in scope
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:80: error: cannot find 'UIWindow' in scope
 19 | 		}
 20 |
 21 |         let window = isPassthrough ? UIPassthroughWindow(windowScene: scene) : UIWindow(windowScene: scene)
    |                                                                                `- error: cannot find 'UIWindow' in scope
 22 |         window.backgroundColor = .clear
 23 |         let root = content()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:21:71: error: argument passed to call that takes no arguments
 19 | 		}
 20 |
 21 |         let window = isPassthrough ? UIPassthroughWindow(windowScene: scene) : UIWindow(windowScene: scene)
    |                                                                       `- error: argument passed to call that takes no arguments
 22 |         window.backgroundColor = .clear
 23 |         let root = content()
/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 = isPassthrough ? UIPassthroughWindow(windowScene: scene) : UIWindow(windowScene: scene)
 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/AnchoredAnimationManager.swift:35:36: 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 |
    :
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
    |                                    `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
 36 |
 37 |     static subscript(id: String) -> AnimationItem? {
/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 |     private var windows: [String: UIWindow] = [:]
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:76: error: cannot find 'UIHostingController' in scope
 25 |                 AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
 26 |             }
 27 |         let controller = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
    |                                                                            `- error: cannot find 'UIHostingController' in scope
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:27:68: error: argument passed to call that takes no arguments
 25 |                 AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
 26 |             }
 27 |         let controller = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
    |                                                                    `- error: argument passed to call that takes no arguments
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:27:42: error: generic parameter 'Content' could not be inferred
 25 |                 AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
 26 |             }
 27 |         let controller = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
    |                                          |- error: generic parameter 'Content' could not be inferred
    |                                          `- note: explicitly specify the generic arguments to fix this issue
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
    :
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |                       `- note: 'Content' declared as parameter to type 'UIPassthroughVC'
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
/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 = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
 28 |         controller.view.backgroundColor = .clear
    |                                            `- error: cannot infer contextual base in reference to member 'clear'
 29 |         window.rootViewController = controller
 30 | 		window.windowLevel = .alert + 1
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:30:25: error: member 'alert(isPresented:content:)' expects argument of type 'Text'
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
 30 | 		window.windowLevel = .alert + 1
    |                         `- error: member 'alert(isPresented:content:)' expects argument of type 'Text'
 31 | 		window.makeKeyAndVisible()
 32 |         shared.windows[id] = window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:30:33: error: cannot convert value of type 'Int' to expected argument type 'Text'
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
 30 | 		window.windowLevel = .alert + 1
    |                                 `- error: cannot convert value of type 'Int' to expected argument type 'Text'
 31 | 		window.makeKeyAndVisible()
 32 |         shared.windows[id] = window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:44:26: error: value of type 'UIPassthroughWindow' has no member 'rootViewController'
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
 44 |         if let vc = self.rootViewController {
    |                          `- error: value of type 'UIPassthroughWindow' has no member 'rootViewController'
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
 46 |             if let _ = isTouchInsideSubview(point: point, vc: vc.view) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:70:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 68 |         if !isTouchInsideSubview(touches) {
 69 |             // If touch is not inside any subview, pass the touch to the next responder
 70 |             super.touchesBegan(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 71 |         }
 72 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:76:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:82:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 83 |         }
 84 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:88:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 89 |         }
 90 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:98:53: error: value of type 'UIPassthroughVC<Content>' has no member 'view'
 96 |         }
 97 |
 98 |         let touchLocation = touch.location(in: self.view)
    |                                                     `- error: value of type 'UIPassthroughVC<Content>' has no member 'view'
 99 |
100 |         // Iterate over all subviews to check if the touch is inside any of them
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:101:29: error: value of type 'UIPassthroughVC<Content>' has no member 'view'
 99 |
100 |         // Iterate over all subviews to check if the touch is inside any of them
101 |         for subview in self.view.subviews {
    |                             `- error: value of type 'UIPassthroughVC<Content>' has no member 'view'
102 |             if subview.frame.contains(touchLocation) {
103 |                 return true
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-2F0A5646E1D333AE.txt
[2/8] Compiling AnchoredPopup WindowManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:13:35: error: cannot find type 'UIWindow' in scope
 11 | final class WindowManager {
 12 | 	static let shared = WindowManager()
 13 |     private var windows: [String: UIWindow] = [:]
    |                                   `- error: cannot find type 'UIWindow' in scope
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, isPassthrough: Bool, content: ()->Content) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:15:40: 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 |     private var windows: [String: UIWindow] = [:]
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:41:28: error: cannot find type 'UIWindow' in scope
 39 | }
 40 |
 41 | class UIPassthroughWindow: UIWindow {
    |                            `- error: cannot find type 'UIWindow' in scope
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:43:70: error: cannot find type 'UIView' in scope
 41 | class UIPassthroughWindow: UIWindow {
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
    |                                                                      `- error: cannot find type 'UIView' in scope
 44 |         if let vc = self.rootViewController {
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:43:57: error: cannot find type 'UIEvent' in scope
 41 | class UIPassthroughWindow: UIWindow {
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
    |                                                         `- error: cannot find type 'UIEvent' in scope
 44 |         if let vc = self.rootViewController {
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:54:70: error: cannot find type 'UIView' in scope
 52 |     }
 53 |
 54 |     private func isTouchInsideSubview(point: CGPoint, vc: UIView) -> UIView? {
    |                                                                      `- error: cannot find type 'UIView' in scope
 55 |         for subview in vc.subviews {
 56 |             if subview.frame.contains(point) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:54:59: error: cannot find type 'UIView' in scope
 52 |     }
 53 |
 54 |     private func isTouchInsideSubview(point: CGPoint, vc: UIView) -> UIView? {
    |                                                           `- error: cannot find type 'UIView' in scope
 55 |         for subview in vc.subviews {
 56 |             if subview.frame.contains(point) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:64:39: error: cannot find type 'UIHostingController' in scope
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |                                       `- error: cannot find type 'UIHostingController' in scope
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:66:47: error: cannot find type 'UITouch' in scope
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 67 |         // Check if any touch is inside one of the subviews, if so, ignore it
 68 |         if !isTouchInsideSubview(touches) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:66:69: error: cannot find type 'UIEvent' in scope
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 67 |         // Check if any touch is inside one of the subviews, if so, ignore it
 68 |         if !isTouchInsideSubview(touches) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:74:47: error: cannot find type 'UITouch' in scope
 72 |     }
 73 |
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:74:69: error: cannot find type 'UIEvent' in scope
 72 |     }
 73 |
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:80:47: error: cannot find type 'UITouch' in scope
 78 |     }
 79 |
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:80:69: error: cannot find type 'UIEvent' in scope
 78 |     }
 79 |
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:86:51: error: cannot find type 'UITouch' in scope
 84 |     }
 85 |
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                   `- error: cannot find type 'UITouch' in scope
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:86:73: error: cannot find type 'UIEvent' in scope
 84 |     }
 85 |
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                         `- error: cannot find type 'UIEvent' in scope
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:93:54: error: cannot find type 'UITouch' in scope
 91 |
 92 |     // Helper function to determine if any touch is inside a subview
 93 |     private func isTouchInsideSubview(_ touches: Set<UITouch>) -> Bool {
    |                                                      `- error: cannot find type 'UITouch' in scope
 94 |         guard let touch = touches.first else {
 95 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:64:32: error: 'View' is only available in macOS 10.15 or newer
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |       |                        `- error: 'View' is only available in macOS 10.15 or newer
    |       `- note: add @available attribute to enclosing generic class
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:16:21: error: cannot find 'UIApplication' in scope
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:68: error: cannot find type 'UIWindowScene' in scope
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:80: error: cannot find 'UIWindow' in scope
 19 | 		}
 20 |
 21 |         let window = isPassthrough ? UIPassthroughWindow(windowScene: scene) : UIWindow(windowScene: scene)
    |                                                                                `- error: cannot find 'UIWindow' in scope
 22 |         window.backgroundColor = .clear
 23 |         let root = content()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:21:71: error: argument passed to call that takes no arguments
 19 | 		}
 20 |
 21 |         let window = isPassthrough ? UIPassthroughWindow(windowScene: scene) : UIWindow(windowScene: scene)
    |                                                                       `- error: argument passed to call that takes no arguments
 22 |         window.backgroundColor = .clear
 23 |         let root = content()
/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 = isPassthrough ? UIPassthroughWindow(windowScene: scene) : UIWindow(windowScene: scene)
 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/AnchoredAnimationManager.swift:35:36: 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 |
    :
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
    |                                    `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
 36 |
 37 |     static subscript(id: String) -> AnimationItem? {
/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 |     private var windows: [String: UIWindow] = [:]
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:76: error: cannot find 'UIHostingController' in scope
 25 |                 AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
 26 |             }
 27 |         let controller = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
    |                                                                            `- error: cannot find 'UIHostingController' in scope
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:27:68: error: argument passed to call that takes no arguments
 25 |                 AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
 26 |             }
 27 |         let controller = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
    |                                                                    `- error: argument passed to call that takes no arguments
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:27:42: error: generic parameter 'Content' could not be inferred
 25 |                 AnchoredAnimationManager.shared.changeStateForAnimation(for: id, state: .shrinking)
 26 |             }
 27 |         let controller = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
    |                                          |- error: generic parameter 'Content' could not be inferred
    |                                          `- note: explicitly specify the generic arguments to fix this issue
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
    :
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |                       `- note: 'Content' declared as parameter to type 'UIPassthroughVC'
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
/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 = isPassthrough ? UIPassthroughVC(rootView: root) : UIHostingController(rootView: root)
 28 |         controller.view.backgroundColor = .clear
    |                                            `- error: cannot infer contextual base in reference to member 'clear'
 29 |         window.rootViewController = controller
 30 | 		window.windowLevel = .alert + 1
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:30:25: error: member 'alert(isPresented:content:)' expects argument of type 'Text'
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
 30 | 		window.windowLevel = .alert + 1
    |                         `- error: member 'alert(isPresented:content:)' expects argument of type 'Text'
 31 | 		window.makeKeyAndVisible()
 32 |         shared.windows[id] = window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:30:33: error: cannot convert value of type 'Int' to expected argument type 'Text'
 28 |         controller.view.backgroundColor = .clear
 29 |         window.rootViewController = controller
 30 | 		window.windowLevel = .alert + 1
    |                                 `- error: cannot convert value of type 'Int' to expected argument type 'Text'
 31 | 		window.makeKeyAndVisible()
 32 |         shared.windows[id] = window
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:44:26: error: value of type 'UIPassthroughWindow' has no member 'rootViewController'
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
 44 |         if let vc = self.rootViewController {
    |                          `- error: value of type 'UIPassthroughWindow' has no member 'rootViewController'
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
 46 |             if let _ = isTouchInsideSubview(point: point, vc: vc.view) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:70:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 68 |         if !isTouchInsideSubview(touches) {
 69 |             // If touch is not inside any subview, pass the touch to the next responder
 70 |             super.touchesBegan(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 71 |         }
 72 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:76:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 77 |         }
 78 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:82:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 83 |         }
 84 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:88:13: error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
    |             `- error: 'super' cannot be used in class 'UIPassthroughVC' because it has no superclass
 89 |         }
 90 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:98:53: error: value of type 'UIPassthroughVC<Content>' has no member 'view'
 96 |         }
 97 |
 98 |         let touchLocation = touch.location(in: self.view)
    |                                                     `- error: value of type 'UIPassthroughVC<Content>' has no member 'view'
 99 |
100 |         // Iterate over all subviews to check if the touch is inside any of them
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:101:29: error: value of type 'UIPassthroughVC<Content>' has no member 'view'
 99 |
100 |         // Iterate over all subviews to check if the touch is inside any of them
101 |         for subview in self.view.subviews {
    |                             `- error: value of type 'UIPassthroughVC<Content>' has no member 'view'
102 |             if subview.frame.contains(touchLocation) {
103 |                 return true
[3/8] Compiling AnchoredPopup AnchoredPopup.swift
[4/8] 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 |     }
39 | }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[5/8] 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:36:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
 33 | // - MARK: Customization parameters
 34 |
 35 | public enum AnchoredPopupPosition {
    |             `- note: add @available attribute to enclosing enum
 36 |     case anchorRelative(_ point: UnitPoint) // popup view will be aligned to anchor view at corresponding proportion
    |                                  `- error: 'UnitPoint' is only available in macOS 10.15 or newer
 37 |     case screenRelative(_ point: UnitPoint = .center) // popup view will be aligned to whole screen
 38 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:37:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
 33 | // - MARK: Customization parameters
 34 |
 35 | public enum AnchoredPopupPosition {
    |             `- note: add @available attribute to enclosing enum
 36 |     case anchorRelative(_ point: UnitPoint) // popup view will be aligned to anchor view at corresponding proportion
 37 |     case screenRelative(_ point: UnitPoint = .center) // popup view will be aligned to whole screen
    |                                  `- error: 'UnitPoint' is only available in macOS 10.15 or newer
 38 | }
 39 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:42:16: error: 'Color' is only available in macOS 10.15 or newer
 38 | }
 39 |
 40 | public enum AnchoredPopupBackground {
    |             `- note: add @available attribute to enclosing enum
 41 |     case none
 42 |     case color(Color)
    |                `- error: 'Color' is only available in macOS 10.15 or newer
 43 |     case blur(radius: CGFloat = 6)
 44 |     case view(AnyView)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:44:15: error: 'AnyView' is only available in macOS 10.15 or newer
 38 | }
 39 |
 40 | public enum AnchoredPopupBackground {
    |             `- note: add @available attribute to enclosing enum
 41 |     case none
 42 |     case color(Color)
 43 |     case blur(radius: CGFloat = 6)
 44 |     case view(AnyView)
    |               `- error: 'AnyView' is only available in macOS 10.15 or newer
 45 |
 46 |     // Convenience initializer for `view` that automatically wraps the content in `AnyView`
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:47:26: error: 'View' is only available in macOS 10.15 or newer
 38 | }
 39 |
 40 | public enum AnchoredPopupBackground {
    |             `- note: add @available attribute to enclosing enum
 41 |     case none
 42 |     case color(Color)
    :
 45 |
 46 |     // Convenience initializer for `view` that automatically wraps the content in `AnyView`
 47 |     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
 48 |         self = .view(AnyView(viewBuilder()))
 49 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:54:33: error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
 50 | }
 51 |
 52 | public struct PopupParameters {
    |               `- note: add @available attribute to enclosing struct
 53 |     var position: AnchoredPopupPosition = .screenRelative()
 54 |     var animation: Animation = .easeIn(duration: 0.3)
    |                                 `- error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
 55 |
 56 |     /// Should close on tap anywhere inside the popup
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:54:20: error: 'Animation' is only available in macOS 10.15 or newer
 50 | }
 51 |
 52 | public struct PopupParameters {
    |               `- note: add @available attribute to enclosing struct
 53 |     var position: AnchoredPopupPosition = .screenRelative()
 54 |     var animation: Animation = .easeIn(duration: 0.3)
    |                    `- error: 'Animation' is only available in macOS 10.15 or newer
 55 |
 56 |     /// Should close on tap anywhere inside the popup
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:74:40: error: 'Animation' is only available in macOS 10.15 or newer
 50 | }
 51 |
 52 | public struct PopupParameters {
    |               `- note: add @available attribute to enclosing struct
 53 |     var position: AnchoredPopupPosition = .screenRelative()
 54 |     var animation: Animation = .easeIn(duration: 0.3)
    :
 72 |
 73 |     /// Appear/disappear animation - default is `easeOut`
 74 |     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
 75 |         var params = self
 76 |         params.animation = animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:117:18: error: 'EnvironmentValues' is only available in macOS 10.15 or newer
115 | }
116 |
117 | public extension EnvironmentValues {
    |        |         `- error: 'EnvironmentValues' is only available in macOS 10.15 or newer
    |        `- note: add @available attribute to enclosing extension
118 |     var anchoredPopupDismiss: SendableClosure? {
119 |         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/AnchoredAnimationManager.swift:35:36: 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 |
    :
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
    |                                    `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
 36 |
 37 |     static subscript(id: String) -> AnimationItem? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:48:22: error: 'AnyView' is only available in macOS 10.15 or newer
 38 | }
 39 |
 40 | public enum AnchoredPopupBackground {
    |             `- note: add @available attribute to enclosing enum
 41 |     case none
 42 |     case color(Color)
    :
 45 |
 46 |     // Convenience initializer for `view` that automatically wraps the content in `AnyView`
 47 |     public init<Content: View>(viewBuilder: @escaping () -> Content) {
    |            `- note: add @available attribute to enclosing initializer
 48 |         self = .view(AnyView(viewBuilder()))
    |                      |- error: 'AnyView' is only available in macOS 10.15 or newer
    |                      `- note: add 'if #available' version check
 49 |     }
 50 | }
[6/8] Compiling AnchoredPopup Utils.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:35:6: error: 'Binding' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
    |      `- error: 'Binding' is only available in macOS 10.15 or newer
 36 |     var background: AnchoredPopupBackground
 37 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:38:6: error: 'State' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
 37 |
 38 |     @State private var animatableOpacity: CGFloat = 0
    |      `- error: 'State' is only available in macOS 10.15 or newer
 39 |
 40 |     var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:40:20: error: 'View' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         |          `- error: 'View' is only available in macOS 10.15 or newer
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
/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 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:35:36: 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 |
    :
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
    |                                    `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
 36 |
 37 |     static subscript(id: String) -> AnimationItem? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:41:9: error: 'Group' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
    |         |- error: 'Group' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
 42 |             switch background {
 43 |             case .none:
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:41:9: error: 'init(content:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
    |         |- error: 'init(content:)' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
 42 |             switch background {
 43 |             case .none:
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:44:17: error: 'EmptyView' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
 43 |             case .none:
 44 |                 EmptyView()
    |                 |- error: 'EmptyView' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 45 |             case .color(let color):
 46 |                 color
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:44:17: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
 43 |             case .none:
 44 |                 EmptyView()
    |                 |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 45 |             case .color(let color):
 46 |                 color
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:44:17: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
 43 |             case .none:
 44 |                 EmptyView()
    |                 |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 45 |             case .color(let color):
 46 |                 color
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:46:17: warning: conformance of 'Color' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 44 |                 EmptyView()
 45 |             case .color(let color):
 46 |                 color
    |                 |- warning: conformance of 'Color' 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
 47 |             case .blur(let radius):
 48 |                 Blur(radius: radius)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:46:17: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 44 |                 EmptyView()
 45 |             case .color(let color):
 46 |                 color
    |                 |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 47 |             case .blur(let radius):
 48 |                 Blur(radius: radius)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:46:17: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 44 |                 EmptyView()
 45 |             case .color(let color):
 46 |                 color
    |                 |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 47 |             case .blur(let radius):
 48 |                 Blur(radius: radius)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:46:17: warning: conformance of 'Color' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 44 |                 EmptyView()
 45 |             case .color(let color):
 46 |                 color
    |                 |- warning: conformance of 'Color' 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
 47 |             case .blur(let radius):
 48 |                 Blur(radius: radius)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:48:17: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 46 |                 color
 47 |             case .blur(let radius):
 48 |                 Blur(radius: radius)
    |                 |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 49 |             case .view(let anyView):
 50 |                 anyView
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:48:17: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 46 |                 color
 47 |             case .blur(let radius):
 48 |                 Blur(radius: radius)
    |                 |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 49 |             case .view(let anyView):
 50 |                 anyView
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:50:17: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 48 |                 Blur(radius: radius)
 49 |             case .view(let anyView):
 50 |                 anyView
    |                 |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 51 |             }
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:50:17: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 48 |                 Blur(radius: radius)
 49 |             case .view(let anyView):
 50 |                 anyView
    |                 |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
 51 |             }
 52 |         }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:41:15: warning: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer; this is an error in the Swift 6 language mode
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
    |               |- warning: conformance of '_ConditionalContent<TrueContent, FalseContent>' 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
 42 |             switch background {
 43 |             case .none:
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:53:10: error: 'ignoresSafeArea(_:edges:)' is only available in macOS 11.0 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 51 |             }
 52 |         }
 53 |         .ignoresSafeArea()
    |          |- error: 'ignoresSafeArea(_:edges:)' is only available in macOS 11.0 or newer
    |          `- note: add 'if #available' version check
 54 |         .opacity(animatableOpacity)
 55 |         .onReceive(AnchoredAnimationManager.shared.statePublisher(for: id)) { animation in
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:54:10: error: 'opacity' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 52 |         }
 53 |         .ignoresSafeArea()
 54 |         .opacity(animatableOpacity)
    |          |- error: 'opacity' is only available in macOS 10.15 or newer
    |          `- note: add 'if #available' version check
 55 |         .onReceive(AnchoredAnimationManager.shared.statePublisher(for: id)) { animation in
 56 |             if let animation {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:55:10: error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
    :
 53 |         .ignoresSafeArea()
 54 |         .opacity(animatableOpacity)
 55 |         .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
 56 |             if let animation {
 57 |                 setupAndLaunchAnimation(animation)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:64:13: error: 'withAnimation' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 60 |     }
 61 |
 62 |     private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
    |                  `- note: add @available attribute to enclosing instance method
 63 |         DispatchQueue.main.async {
 64 |             withAnimation(.easeInOut(duration: 0.2)) {
    |             |- error: 'withAnimation' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 65 |                 if animation.state == .growing {
 66 |                     setDisplayedState()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:64:28: error: 'easeInOut(duration:)' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 60 |     }
 61 |
 62 |     private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
    |                  `- note: add @available attribute to enclosing instance method
 63 |         DispatchQueue.main.async {
 64 |             withAnimation(.easeInOut(duration: 0.2)) {
    |                            |- error: 'easeInOut(duration:)' is only available in macOS 10.15 or newer
    |                            `- note: add 'if #available' version check
 65 |                 if animation.state == .growing {
 66 |                     setDisplayedState()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:75:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 72 |     }
 73 |
 74 |     private func setHiddenState() {
    |                  `- note: add @available attribute to enclosing instance method
 75 |         animatableOpacity = 0
    |         |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
 76 |     }
 77 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:79:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 76 |     }
 77 |
 78 |     private func setDisplayedState() {
    |                  `- note: add @available attribute to enclosing instance method
 79 |         animatableOpacity = 1
    |         |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
 80 |     }
 81 | }
[7/8] Compiling AnchoredPopup AnchoredAnimationManager.swift
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:35:36: 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 |
    :
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
    |                                    `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
 36 |
 37 |     static subscript(id: String) -> AnimationItem? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:31: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 |
    :
 29 |     }
 30 |
 31 |     @Published var animations: [AnimationItem] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 32 |
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:33: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 |
    :
 31 |     @Published var animations: [AnimationItem] = []
 32 |
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
    |                                           `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:34: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 |
    :
 32 |
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
    |                                           `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
 35 |     private var cancellables = Set<AnyCancellable>()
 36 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:55: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 |
    :
 53 |     }
 54 |
 55 |     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
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:96: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 |
    :
 94 |     }
 95 |
 96 |     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
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:139:6: error: 'State' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
    |      `- error: 'State' is only available in macOS 10.15 or newer
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:141:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
    |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
142 |
143 |     @State private var cancellable: AnyCancellable?
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:143:37: error: 'AnyCancellable' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
142 |
143 |     @State private var cancellable: AnyCancellable?
    |                                     `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
144 |
145 |     func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:143:6: error: 'State' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
142 |
143 |     @State private var cancellable: AnyCancellable?
    |      `- error: 'State' is only available in macOS 10.15 or newer
144 |
145 |     func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:145:41: error: 'View' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     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
146 |         content
147 |             .overlay {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:138:48: error: 'View' is only available in macOS 10.15 or newer
136 | }
137 |
138 | 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
139 |     @State var id: String
140 |     var params: PopupParameters
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:196:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
194 |     var contentBuilder: () -> V
195 |
196 |     @State private var animatableOpacity: CGFloat = 0
    |      `- error: 'State' is only available in macOS 10.15 or newer
197 |     @State private var animatableScale: CGSize = .zero
198 |     @State private var animatableOffset: CGSize = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:197:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
195 |
196 |     @State private var animatableOpacity: CGFloat = 0
197 |     @State private var animatableScale: CGSize = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
198 |     @State private var animatableOffset: CGSize = .zero
199 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:198:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
196 |     @State private var animatableOpacity: CGFloat = 0
197 |     @State private var animatableScale: CGSize = .zero
198 |     @State private var animatableOffset: CGSize = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
199 |
200 |     @State private var triggerButtonFrame: IntRect = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:200:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
198 |     @State private var animatableOffset: CGSize = .zero
199 |
200 |     @State private var triggerButtonFrame: IntRect = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
201 |     @State private var contentSize: IntSize = .zero
202 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:201:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
199 |
200 |     @State private var triggerButtonFrame: IntRect = .zero
201 |     @State private var contentSize: IntSize = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
202 |
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:203:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
201 |     @State private var contentSize: IntSize = .zero
202 |
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
    |      `- error: 'State' is only available in macOS 10.15 or newer
204 |
205 |     var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:205:20: error: 'View' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         |          `- error: 'View' is only available in macOS 10.15 or newer
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
<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:191:60: error: 'View' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate 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
192 |     var id: String
193 |     var params: PopupParameters
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:43: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 |
    :
 39 |     }
 40 |
 41 |     func changeStateForAnimation(for id: String, state: GrowingViewState) {
    |          `- note: add @available attribute to enclosing instance method
 42 |         if let index = animations.firstIndex(where: { $0.id == id }) {
 43 |             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
 44 |         }
 45 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:49: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 |
    :
 45 |     }
 46 |
 47 |    func updateFrame(for id: String, frame: CGRect) {
    |         `- note: add @available attribute to enclosing instance method
 48 |         if let index = animations.firstIndex(where: { $0.id == id }) {
 49 |             animations[index].buttonFrame = frame.toIntRect()
    |             |- error: cannot pass as inout because setter for 'animations' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 50 |         } else {
 51 |             animations.append(AnimationItem(id: id, buttonFrame: frame.toIntRect(), state: .hidden))
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:51: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 |
    :
 45 |     }
 46 |
 47 |    func updateFrame(for id: String, frame: CGRect) {
    |         `- note: add @available attribute to enclosing instance method
 48 |         if let index = animations.firstIndex(where: { $0.id == id }) {
 49 |             animations[index].buttonFrame = frame.toIntRect()
 50 |         } else {
 51 |             animations.append(AnimationItem(id: id, buttonFrame: frame.toIntRect(), 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
 52 |         }
 53 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:64: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 |
    :
 53 |     }
 54 |
 55 |     func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
    :
 62 |
 63 |         // Create a CurrentValueSubject to hold the current value
 64 |         let subject = CurrentValueSubject<AnimationItem?, Never>(nil)
    |                       |- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
    |                       `- note: add 'if #available' version check
 65 |
 66 |         // Generate the publisher and handle state changes
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:68:14: error: 'map' 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 |
    :
 53 |     }
 54 |
 55 |     func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
    :
 66 |         // Generate the publisher and handle state changes
 67 |         $animations
 68 |             .map { animations in
    |              |- error: 'map' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 69 |                 animations.first { $0.id == id }
 70 |             }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:71: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 |
    :
 53 |     }
 54 |
 55 |     func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
    :
 69 |                 animations.first { $0.id == id }
 70 |             }
 71 |             .compactMap { $0 }
    |              |- error: 'compactMap' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 72 |             .filter { newItem in
 73 |                 if let last = lastValue {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:72:14: error: 'filter' 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 |
    :
 53 |     }
 54 |
 55 |     func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
    :
 70 |             }
 71 |             .compactMap { $0 }
 72 |             .filter { newItem in
    |              |- error: 'filter' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 73 |                 if let last = lastValue {
 74 |                     // Only emit if the item has changed from the last value
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:86: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 |
    :
 53 |     }
 54 |
 55 |     func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
    :
 84 |                 }
 85 |             }
 86 |             .sink { newItem in
    |              |- error: 'sink(receiveValue:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 87 |                 // Emit the value to the CurrentValueSubject
 88 |                 subject.send(newItem)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:90:14: error: 'store(in:)' 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 |
    :
 53 |     }
 54 |
 55 |     func statePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
    :
 88 |                 subject.send(newItem)
 89 |             }
 90 |             .store(in: &cancellables)
    |              |- error: 'store(in:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
 91 |
 92 |         statePublishers[id] = subject
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:105: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 |
    :
 94 |     }
 95 |
 96 |     func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
    :
103 |
104 |         // Create a CurrentValueSubject to hold the current value
105 |         let subject = CurrentValueSubject<AnimationItem?, Never>(nil)
    |                       |- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
    |                       `- note: add 'if #available' version check
106 |
107 |         // Generate the publisher and handle state changes
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:109:14: error: 'map' 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 |
    :
 94 |     }
 95 |
 96 |     func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
    :
107 |         // Generate the publisher and handle state changes
108 |         $animations
109 |             .map { animations in
    |              |- error: 'map' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
110 |                 animations.first { $0.id == id }
111 |             }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:112: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 |
    :
 94 |     }
 95 |
 96 |     func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
    :
110 |                 animations.first { $0.id == id }
111 |             }
112 |             .compactMap { $0 }
    |              |- error: 'compactMap' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
113 |             .filter { newItem in
114 |                 if let last = lastValue {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:113:14: error: 'filter' 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 |
    :
 94 |     }
 95 |
 96 |     func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
    :
111 |             }
112 |             .compactMap { $0 }
113 |             .filter { newItem in
    |              |- error: 'filter' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
114 |                 if let last = lastValue {
115 |                     // Only emit if the item has changed from the last value
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:127: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 |
    :
 94 |     }
 95 |
 96 |     func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
    :
125 |                 }
126 |             }
127 |             .sink { newItem in
    |              |- error: 'sink(receiveValue:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
128 |                 // Emit the value to the CurrentValueSubject
129 |                 subject.send(newItem)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:131:14: error: 'store(in:)' 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 |
    :
 94 |     }
 95 |
 96 |     func framePublisher(for id: String) -> CurrentValueSubject<AnimationItem?, Never> {
    |          `- note: add @available attribute to enclosing instance method
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
    :
129 |                 subject.send(newItem)
130 |             }
131 |             .store(in: &cancellables)
    |              |- error: 'store(in:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
132 |
133 |         framePublishers[id] = subject
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:147:14: error: 'overlay(alignment:content:)' is only available in macOS 12.0 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    |              |- error: 'overlay(alignment:content:)' is only available in macOS 12.0 or newer
    |              `- note: add 'if #available' version check
148 |                 GeometryReader { geo in
149 |                     Color.clear
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:148:17: error: 'GeometryReader' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
148 |                 GeometryReader { geo in
    |                 |- error: 'GeometryReader' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
149 |                     Color.clear
150 |                         .preference(key: ButtonFramePreferenceKey.self, value: ButtonFrameInfo(id: id, frame: geo.frame(in: .global)))
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:149:21: error: 'Color' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
148 |                 GeometryReader { geo in
149 |                     Color.clear
    |                     |- error: 'Color' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
150 |                         .preference(key: ButtonFramePreferenceKey.self, value: ButtonFrameInfo(id: id, frame: geo.frame(in: .global)))
151 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:149:27: error: 'clear' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
148 |                 GeometryReader { geo in
149 |                     Color.clear
    |                           |- error: 'clear' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
150 |                         .preference(key: ButtonFramePreferenceKey.self, value: ButtonFrameInfo(id: id, frame: geo.frame(in: .global)))
151 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:150:26: error: 'preference(key:value:)' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
148 |                 GeometryReader { geo in
149 |                     Color.clear
150 |                         .preference(key: ButtonFramePreferenceKey.self, value: ButtonFrameInfo(id: id, frame: geo.frame(in: .global)))
    |                          |- error: 'preference(key:value:)' is only available in macOS 10.15 or newer
    |                          `- note: add 'if #available' version check
151 |                 }
152 |             }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:150:115: error: 'frame(in:)' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
148 |                 GeometryReader { geo in
149 |                     Color.clear
150 |                         .preference(key: ButtonFramePreferenceKey.self, value: ButtonFrameInfo(id: id, frame: geo.frame(in: .global)))
    |                                                                                                                   |- error: 'frame(in:)' is only available in macOS 10.15 or newer
    |                                                                                                                   `- note: add 'if #available' version check
151 |                 }
152 |             }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:153:14: error: 'onPreferenceChange(_:perform:)' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
151 |                 }
152 |             }
153 |             .onPreferenceChange(ButtonFramePreferenceKey.self) { value in
    |              |- error: 'onPreferenceChange(_:perform:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
154 |                 DispatchQueue.main.async {
155 |                     if id == value.id {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:160:14: error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
158 |                 }
159 |             }
160 |             .simultaneousGesture(
    |              |- error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
    |              `- note: add 'if #available' version check
161 |                 TapGesture().onEnded { gesture in
162 |                     // trigger displaying animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:161:17: error: 'TapGesture' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
159 |             }
160 |             .simultaneousGesture(
161 |                 TapGesture().onEnded { gesture in
    |                 |- error: 'TapGesture' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
162 |                     // trigger displaying animation
163 |                     hideKeyboard()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:161:30: error: 'onEnded' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
159 |             }
160 |             .simultaneousGesture(
161 |                 TapGesture().onEnded { gesture in
    |                              |- error: 'onEnded' is only available in macOS 10.15 or newer
    |                              `- note: add 'if #available' version check
162 |                     // trigger displaying animation
163 |                     hideKeyboard()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:167:14: error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
165 |                 }
166 |             )
167 |             .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
168 |                 if animation?.state == .growing {
169 |                     WindowManager.openNewWindow(id: id, isPassthrough: params.isPassthrough) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:170:25: error: 'ZStack' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
168 |                 if animation?.state == .growing {
169 |                     WindowManager.openNewWindow(id: id, isPassthrough: params.isPassthrough) {
170 |                         ZStack {
    |                         |- error: 'ZStack' is only available in macOS 10.15 or newer
    |                         `- note: add 'if #available' version check
171 |                             AnimatedBackgroundView(id: $id, background: params.background)
172 |                                 .simultaneousGesture(
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:172:34: error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
170 |                         ZStack {
171 |                             AnimatedBackgroundView(id: $id, background: params.background)
172 |                                 .simultaneousGesture(
    |                                  |- error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
    |                                  `- note: add 'if #available' version check
173 |                                     TapGesture().onEnded {
174 |                                         if params.closeOnTapOutside {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:173:37: error: 'TapGesture' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
171 |                             AnimatedBackgroundView(id: $id, background: params.background)
172 |                                 .simultaneousGesture(
173 |                                     TapGesture().onEnded {
    |                                     |- error: 'TapGesture' is only available in macOS 10.15 or newer
    |                                     `- note: add 'if #available' version check
174 |                                         if params.closeOnTapOutside {
175 |                                             // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:173:50: error: 'onEnded' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     func body(content: Content) -> some View {
    |          `- note: add @available attribute to enclosing instance method
146 |         content
147 |             .overlay {
    :
171 |                             AnimatedBackgroundView(id: $id, background: params.background)
172 |                                 .simultaneousGesture(
173 |                                     TapGesture().onEnded {
    |                                                  |- error: 'onEnded' is only available in macOS 10.15 or newer
    |                                                  `- note: add 'if #available' version check
174 |                                         if params.closeOnTapOutside {
175 |                                             // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:206:9: error: 'VStack' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
    |         |- error: 'VStack' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
207 |             contentBuilder()
208 |                 .overlay(GeometryReader { geo in
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:208:18: error: 'overlay(_:alignment:)' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
208 |                 .overlay(GeometryReader { geo in
    |                  |- error: 'overlay(_:alignment:)' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
209 |                     Color.clear.onAppear {
210 |                         DispatchQueue.main.async {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:208:26: error: 'GeometryReader' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
208 |                 .overlay(GeometryReader { geo in
    |                          |- error: 'GeometryReader' is only available in macOS 10.15 or newer
    |                          `- note: add 'if #available' version check
209 |                     Color.clear.onAppear {
210 |                         DispatchQueue.main.async {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:209:21: error: 'Color' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
208 |                 .overlay(GeometryReader { geo in
209 |                     Color.clear.onAppear {
    |                     |- error: 'Color' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
210 |                         DispatchQueue.main.async {
211 |                             contentSize = geo.size.toIntSize()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:209:27: error: 'clear' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
208 |                 .overlay(GeometryReader { geo in
209 |                     Color.clear.onAppear {
    |                           |- error: 'clear' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
210 |                         DispatchQueue.main.async {
211 |                             contentSize = geo.size.toIntSize()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:209:33: error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
208 |                 .overlay(GeometryReader { geo in
209 |                     Color.clear.onAppear {
    |                                 |- error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
    |                                 `- note: add 'if #available' version check
210 |                         DispatchQueue.main.async {
211 |                             contentSize = geo.size.toIntSize()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:211:29: error: setter for 'contentSize' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
209 |                     Color.clear.onAppear {
210 |                         DispatchQueue.main.async {
211 |                             contentSize = geo.size.toIntSize()
    |                             |- error: setter for 'contentSize' is only available in macOS 10.15 or newer
    |                             `- note: add 'if #available' version check
212 |                             if let animation = AnchoredAnimationManager.shared.animations.first(where: { $0.id == id }) {
213 |                                 setupAndLaunchAnimation(animation)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:218:18: error: 'scaleEffect(_:anchor:)' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
216 |                     }
217 |                 })
218 |                 .scaleEffect(animatableScale)
    |                  |- error: 'scaleEffect(_:anchor:)' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
219 |                 .offset(animatableOffset)
220 |                 .position(x: triggerButtonFrame.floatMidX, y: triggerButtonFrame.floatMidY)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:219:18: error: 'offset' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
217 |                 })
218 |                 .scaleEffect(animatableScale)
219 |                 .offset(animatableOffset)
    |                  |- error: 'offset' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
220 |                 .position(x: triggerButtonFrame.floatMidX, y: triggerButtonFrame.floatMidY)
221 |                 .opacity(animatableOpacity)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:220:18: error: 'position(x:y:)' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
218 |                 .scaleEffect(animatableScale)
219 |                 .offset(animatableOffset)
220 |                 .position(x: triggerButtonFrame.floatMidX, y: triggerButtonFrame.floatMidY)
    |                  |- error: 'position(x:y:)' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
221 |                 .opacity(animatableOpacity)
222 |                 .ignoresSafeArea()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:221:18: error: 'opacity' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
219 |                 .offset(animatableOffset)
220 |                 .position(x: triggerButtonFrame.floatMidX, y: triggerButtonFrame.floatMidY)
221 |                 .opacity(animatableOpacity)
    |                  |- error: 'opacity' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
222 |                 .ignoresSafeArea()
223 |                 .simultaneousGesture(
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:222:18: error: 'ignoresSafeArea(_:edges:)' is only available in macOS 11.0 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
220 |                 .position(x: triggerButtonFrame.floatMidX, y: triggerButtonFrame.floatMidY)
221 |                 .opacity(animatableOpacity)
222 |                 .ignoresSafeArea()
    |                  |- error: 'ignoresSafeArea(_:edges:)' is only available in macOS 11.0 or newer
    |                  `- note: add 'if #available' version check
223 |                 .simultaneousGesture(
224 |                     TapGesture().onEnded { gesture in
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:223:18: error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
221 |                 .opacity(animatableOpacity)
222 |                 .ignoresSafeArea()
223 |                 .simultaneousGesture(
    |                  |- error: 'simultaneousGesture(_:including:)' is only available in macOS 10.15 or newer
    |                  `- note: add 'if #available' version check
224 |                     TapGesture().onEnded { gesture in
225 |                         if params.closeOnTap {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:224:21: error: 'TapGesture' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
222 |                 .ignoresSafeArea()
223 |                 .simultaneousGesture(
224 |                     TapGesture().onEnded { gesture in
    |                     |- error: 'TapGesture' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
225 |                         if params.closeOnTap {
226 |                             // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:224:34: error: 'onEnded' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
222 |                 .ignoresSafeArea()
223 |                 .simultaneousGesture(
224 |                     TapGesture().onEnded { gesture in
    |                                  |- error: 'onEnded' is only available in macOS 10.15 or newer
    |                                  `- note: add 'if #available' version check
225 |                         if params.closeOnTap {
226 |                             // trigger hiding animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:232:10: error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
230 |                 )
231 |         }
232 |         .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
233 |             if let animation, triggerButtonFrame == .zero {
234 |                 triggerButtonFrame = animation.buttonFrame
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:234:17: error: setter for 'triggerButtonFrame' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
232 |         .onReceive(AnchoredAnimationManager.shared.framePublisher(for: id)) { animation in
233 |             if let animation, triggerButtonFrame == .zero {
234 |                 triggerButtonFrame = animation.buttonFrame
    |                 |- error: setter for 'triggerButtonFrame' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
235 |             }
236 |         }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:237:10: error: 'onReceive(_:perform:)' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
    :
235 |             }
236 |         }
237 |         .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
238 |             if let animation {
239 |                 setupAndLaunchAnimation(animation)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:253:21: error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
242 |     }
243 |
244 |     private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
    |                  `- note: add @available attribute to enclosing instance method
245 |         if contentSize == .zero || triggerButtonFrame == .zero { return }
246 |
    :
251 |
252 |                 if #available(iOS 17.0, *) {
253 |                     withAnimation(params.animation) {
    |                     |- error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
    |                     `- note: add 'if #available' version check
254 |                         setDisplayedState()
255 |                     } completion: {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:270:21: error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
242 |     }
243 |
244 |     private func setupAndLaunchAnimation(_ animation: AnchoredAnimationManager.AnimationItem) {
    |                  `- note: add @available attribute to enclosing instance method
245 |         if contentSize == .zero || triggerButtonFrame == .zero { return }
246 |
    :
268 |             } else if animation.state == .shrinking {
269 |                 if #available(iOS 17.0, *) {
270 |                     withAnimation(params.animation) {
    |                     |- error: 'withAnimation(_:completionCriteria:_:completion:)' is only available in macOS 14.0 or newer
    |                     `- note: add 'if #available' version check
271 |                         setHiddenState()
272 |                     } completion: {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:292:9: error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
289 |     }
290 |
291 |     private func setHiddenState() {
    |                  `- note: add @available attribute to enclosing instance method
292 |         animatableOffset = .zero
    |         |- error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
293 |         animatableScale = calculateHiddenScale()
294 |         animatableOpacity = 0
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:293:9: error: setter for 'animatableScale' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
289 |     }
290 |
291 |     private func setHiddenState() {
    |                  `- note: add @available attribute to enclosing instance method
292 |         animatableOffset = .zero
293 |         animatableScale = calculateHiddenScale()
    |         |- error: setter for 'animatableScale' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
294 |         animatableOpacity = 0
295 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:294:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
289 |     }
290 |
291 |     private func setHiddenState() {
    |                  `- note: add @available attribute to enclosing instance method
292 |         animatableOffset = .zero
293 |         animatableScale = calculateHiddenScale()
294 |         animatableOpacity = 0
    |         |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
295 |     }
296 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:298:9: error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
295 |     }
296 |
297 |     private func setDisplayedState() {
    |                  `- note: add @available attribute to enclosing instance method
298 |         animatableOffset = calculateDisplayedOffset()
    |         |- error: setter for 'animatableOffset' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
299 |         animatableScale = CGSize(width: 1, height: 1)
300 |         animatableOpacity = 1
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:299:9: error: setter for 'animatableScale' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
295 |     }
296 |
297 |     private func setDisplayedState() {
    |                  `- note: add @available attribute to enclosing instance method
298 |         animatableOffset = calculateDisplayedOffset()
299 |         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
300 |         animatableOpacity = 1
301 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:300:9: error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
295 |     }
296 |
297 |     private func setDisplayedState() {
    |                  `- note: add @available attribute to enclosing instance method
298 |         animatableOffset = calculateDisplayedOffset()
299 |         animatableScale = CGSize(width: 1, height: 1)
300 |         animatableOpacity = 1
    |         |- error: setter for 'animatableOpacity' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
301 |     }
302 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:337:22: error: cannot find 'UIScreen' in scope
335 |             let tx = triggerButtonFrame.floatMidX
336 |             let ty = triggerButtonFrame.floatMidY
337 |             let sw = UIScreen.main.bounds.width
    |                      `- error: cannot find 'UIScreen' in scope
338 |             let sh = UIScreen.main.bounds.height
339 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:338:22: error: cannot find 'UIScreen' in scope
336 |             let ty = triggerButtonFrame.floatMidY
337 |             let sw = UIScreen.main.bounds.width
338 |             let sh = UIScreen.main.bounds.height
    |                      `- error: cannot find 'UIScreen' in scope
339 |
340 |             // normalization: (0, 1) -> (1, -1)
[8/8] Emitting module AnchoredPopup
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:35:36: 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 |
    :
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
    |                                    `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
 36 |
 37 |     static subscript(id: String) -> AnimationItem? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:31: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 |
    :
 29 |     }
 30 |
 31 |     @Published var animations: [AnimationItem] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 32 |
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:33: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 |
    :
 31 |     @Published var animations: [AnimationItem] = []
 32 |
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
    |                                           `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 35 |     private var cancellables = Set<AnyCancellable>()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:34: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 |
    :
 32 |
 33 |     private var statePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
 34 |     private var framePublishers: [String: CurrentValueSubject<AnimationItem?, Never>] = [:]
    |                                           `- error: 'CurrentValueSubject' is only available in macOS 10.15 or newer
 35 |     private var cancellables = Set<AnyCancellable>()
 36 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:55: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 |
    :
 53 |     }
 54 |
 55 |     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
 56 |         if let publisher = statePublishers[id] {
 57 |             return publisher
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:96: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 |
    :
 94 |     }
 95 |
 96 |     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
 97 |         if let publisher = framePublishers[id] {
 98 |             return publisher
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:139:6: error: 'State' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
    |      `- error: 'State' is only available in macOS 10.15 or newer
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:141:6: error: 'ViewBuilder' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
    |      `- error: 'ViewBuilder' is only available in macOS 10.15 or newer
142 |
143 |     @State private var cancellable: AnyCancellable?
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:143:37: error: 'AnyCancellable' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
142 |
143 |     @State private var cancellable: AnyCancellable?
    |                                     `- error: 'AnyCancellable' is only available in macOS 10.15 or newer
144 |
145 |     func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:143:6: error: 'State' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
141 |     @ViewBuilder var contentBuilder: () -> V
142 |
143 |     @State private var cancellable: AnyCancellable?
    |      `- error: 'State' is only available in macOS 10.15 or newer
144 |
145 |     func body(content: Content) -> some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:145:41: error: 'View' is only available in macOS 10.15 or newer
136 | }
137 |
138 | struct TriggerButton<V>: ViewModifier where V: View {
    |        `- note: add @available attribute to enclosing generic struct
139 |     @State var id: String
140 |     var params: PopupParameters
    :
143 |     @State private var cancellable: AnyCancellable?
144 |
145 |     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
146 |         content
147 |             .overlay {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:138:48: error: 'View' is only available in macOS 10.15 or newer
136 | }
137 |
138 | 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
139 |     @State var id: String
140 |     var params: PopupParameters
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:196:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
194 |     var contentBuilder: () -> V
195 |
196 |     @State private var animatableOpacity: CGFloat = 0
    |      `- error: 'State' is only available in macOS 10.15 or newer
197 |     @State private var animatableScale: CGSize = .zero
198 |     @State private var animatableOffset: CGSize = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:197:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
195 |
196 |     @State private var animatableOpacity: CGFloat = 0
197 |     @State private var animatableScale: CGSize = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
198 |     @State private var animatableOffset: CGSize = .zero
199 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:198:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
196 |     @State private var animatableOpacity: CGFloat = 0
197 |     @State private var animatableScale: CGSize = .zero
198 |     @State private var animatableOffset: CGSize = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
199 |
200 |     @State private var triggerButtonFrame: IntRect = .zero
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:200:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
198 |     @State private var animatableOffset: CGSize = .zero
199 |
200 |     @State private var triggerButtonFrame: IntRect = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
201 |     @State private var contentSize: IntSize = .zero
202 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:201:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
199 |
200 |     @State private var triggerButtonFrame: IntRect = .zero
201 |     @State private var contentSize: IntSize = .zero
    |      `- error: 'State' is only available in macOS 10.15 or newer
202 |
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:203:6: error: 'State' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
201 |     @State private var contentSize: IntSize = .zero
202 |
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
    |      `- error: 'State' is only available in macOS 10.15 or newer
204 |
205 |     var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:205:20: error: 'View' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate struct AnchoredAnimationView<V>: View where V: View {
    |                    `- note: add @available attribute to enclosing generic struct
192 |     var id: String
193 |     var params: PopupParameters
    :
203 |     @State private var semaphore = DispatchSemaphore(value: 1)
204 |
205 |     var body: some View {
    |         |          `- error: 'View' is only available in macOS 10.15 or newer
    |         `- note: add @available attribute to enclosing property
206 |         VStack {
207 |             contentBuilder()
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/AnchoredAnimationManager.swift:191:60: error: 'View' is only available in macOS 10.15 or newer
189 |
190 | @MainActor
191 | fileprivate 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
192 |     var id: String
193 |     var params: PopupParameters
/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:36:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
 33 | // - MARK: Customization parameters
 34 |
 35 | public enum AnchoredPopupPosition {
    |             `- note: add @available attribute to enclosing enum
 36 |     case anchorRelative(_ point: UnitPoint) // popup view will be aligned to anchor view at corresponding proportion
    |                                  `- error: 'UnitPoint' is only available in macOS 10.15 or newer
 37 |     case screenRelative(_ point: UnitPoint = .center) // popup view will be aligned to whole screen
 38 | }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:37:34: error: 'UnitPoint' is only available in macOS 10.15 or newer
 33 | // - MARK: Customization parameters
 34 |
 35 | public enum AnchoredPopupPosition {
    |             `- note: add @available attribute to enclosing enum
 36 |     case anchorRelative(_ point: UnitPoint) // popup view will be aligned to anchor view at corresponding proportion
 37 |     case screenRelative(_ point: UnitPoint = .center) // popup view will be aligned to whole screen
    |                                  `- error: 'UnitPoint' is only available in macOS 10.15 or newer
 38 | }
 39 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:42:16: error: 'Color' is only available in macOS 10.15 or newer
 38 | }
 39 |
 40 | public enum AnchoredPopupBackground {
    |             `- note: add @available attribute to enclosing enum
 41 |     case none
 42 |     case color(Color)
    |                `- error: 'Color' is only available in macOS 10.15 or newer
 43 |     case blur(radius: CGFloat = 6)
 44 |     case view(AnyView)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:44:15: error: 'AnyView' is only available in macOS 10.15 or newer
 38 | }
 39 |
 40 | public enum AnchoredPopupBackground {
    |             `- note: add @available attribute to enclosing enum
 41 |     case none
 42 |     case color(Color)
 43 |     case blur(radius: CGFloat = 6)
 44 |     case view(AnyView)
    |               `- error: 'AnyView' is only available in macOS 10.15 or newer
 45 |
 46 |     // Convenience initializer for `view` that automatically wraps the content in `AnyView`
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:47:26: error: 'View' is only available in macOS 10.15 or newer
 38 | }
 39 |
 40 | public enum AnchoredPopupBackground {
    |             `- note: add @available attribute to enclosing enum
 41 |     case none
 42 |     case color(Color)
    :
 45 |
 46 |     // Convenience initializer for `view` that automatically wraps the content in `AnyView`
 47 |     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
 48 |         self = .view(AnyView(viewBuilder()))
 49 |     }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:54:33: error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
 50 | }
 51 |
 52 | public struct PopupParameters {
    |               `- note: add @available attribute to enclosing struct
 53 |     var position: AnchoredPopupPosition = .screenRelative()
 54 |     var animation: Animation = .easeIn(duration: 0.3)
    |                                 `- error: 'easeIn(duration:)' is only available in macOS 10.15 or newer
 55 |
 56 |     /// Should close on tap anywhere inside the popup
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:54:20: error: 'Animation' is only available in macOS 10.15 or newer
 50 | }
 51 |
 52 | public struct PopupParameters {
    |               `- note: add @available attribute to enclosing struct
 53 |     var position: AnchoredPopupPosition = .screenRelative()
 54 |     var animation: Animation = .easeIn(duration: 0.3)
    |                    `- error: 'Animation' is only available in macOS 10.15 or newer
 55 |
 56 |     /// Should close on tap anywhere inside the popup
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:74:40: error: 'Animation' is only available in macOS 10.15 or newer
 50 | }
 51 |
 52 | public struct PopupParameters {
    |               `- note: add @available attribute to enclosing struct
 53 |     var position: AnchoredPopupPosition = .screenRelative()
 54 |     var animation: Animation = .easeIn(duration: 0.3)
    :
 72 |
 73 |     /// Appear/disappear animation - default is `easeOut`
 74 |     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
 75 |         var params = self
 76 |         params.animation = animation
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/PublicAPI.swift:117:18: error: 'EnvironmentValues' is only available in macOS 10.15 or newer
115 | }
116 |
117 | public extension EnvironmentValues {
    |        |         `- error: 'EnvironmentValues' is only available in macOS 10.15 or newer
    |        `- note: add @available attribute to enclosing extension
118 |     var anchoredPopupDismiss: SendableClosure? {
119 |         get { self[AnchoredPopupDismissKey.self] }
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:35:6: error: 'Binding' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
    |      `- error: 'Binding' is only available in macOS 10.15 or newer
 36 |     var background: AnchoredPopupBackground
 37 |
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:38:6: error: 'State' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
 37 |
 38 |     @State private var animatableOpacity: CGFloat = 0
    |      `- error: 'State' is only available in macOS 10.15 or newer
 39 |
 40 |     var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/Utils.swift:40:20: error: 'View' is only available in macOS 10.15 or newer
 32 | // MARK: - AnimatedBackgroundView
 33 |
 34 | struct AnimatedBackgroundView: View {
    |        `- note: add @available attribute to enclosing struct
 35 |     @Binding var id: String
 36 |     var background: AnchoredPopupBackground
    :
 38 |     @State private var animatableOpacity: CGFloat = 0
 39 |
 40 |     var body: some View {
    |         |          `- error: 'View' is only available in macOS 10.15 or newer
    |         `- note: add @available attribute to enclosing property
 41 |         Group {
 42 |             switch background {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:13:35: error: cannot find type 'UIWindow' in scope
 11 | final class WindowManager {
 12 | 	static let shared = WindowManager()
 13 |     private var windows: [String: UIWindow] = [:]
    |                                   `- error: cannot find type 'UIWindow' in scope
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, isPassthrough: Bool, content: ()->Content) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:15:40: 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 |     private var windows: [String: UIWindow] = [:]
 14 |
 15 |     static func openNewWindow<Content: View>(id: String, 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:41:28: error: cannot find type 'UIWindow' in scope
 39 | }
 40 |
 41 | class UIPassthroughWindow: UIWindow {
    |                            `- error: cannot find type 'UIWindow' in scope
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:43:70: error: cannot find type 'UIView' in scope
 41 | class UIPassthroughWindow: UIWindow {
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
    |                                                                      `- error: cannot find type 'UIView' in scope
 44 |         if let vc = self.rootViewController {
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:43:57: error: cannot find type 'UIEvent' in scope
 41 | class UIPassthroughWindow: UIWindow {
 42 |
 43 |     override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
    |                                                         `- error: cannot find type 'UIEvent' in scope
 44 |         if let vc = self.rootViewController {
 45 |             vc.view.layoutSubviews() // otherwise the frame is as if the popup is still outside the screen
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:54:70: error: cannot find type 'UIView' in scope
 52 |     }
 53 |
 54 |     private func isTouchInsideSubview(point: CGPoint, vc: UIView) -> UIView? {
    |                                                                      `- error: cannot find type 'UIView' in scope
 55 |         for subview in vc.subviews {
 56 |             if subview.frame.contains(point) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:54:59: error: cannot find type 'UIView' in scope
 52 |     }
 53 |
 54 |     private func isTouchInsideSubview(point: CGPoint, vc: UIView) -> UIView? {
    |                                                           `- error: cannot find type 'UIView' in scope
 55 |         for subview in vc.subviews {
 56 |             if subview.frame.contains(point) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:64:39: error: cannot find type 'UIHostingController' in scope
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |                                       `- error: cannot find type 'UIHostingController' in scope
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:66:47: error: cannot find type 'UITouch' in scope
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 67 |         // Check if any touch is inside one of the subviews, if so, ignore it
 68 |         if !isTouchInsideSubview(touches) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:66:69: error: cannot find type 'UIEvent' in scope
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 67 |         // Check if any touch is inside one of the subviews, if so, ignore it
 68 |         if !isTouchInsideSubview(touches) {
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:74:47: error: cannot find type 'UITouch' in scope
 72 |     }
 73 |
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:74:69: error: cannot find type 'UIEvent' in scope
 72 |     }
 73 |
 74 |     override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 75 |         if !isTouchInsideSubview(touches) {
 76 |             super.touchesMoved(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:80:47: error: cannot find type 'UITouch' in scope
 78 |     }
 79 |
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                               `- error: cannot find type 'UITouch' in scope
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:80:69: error: cannot find type 'UIEvent' in scope
 78 |     }
 79 |
 80 |     override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                     `- error: cannot find type 'UIEvent' in scope
 81 |         if !isTouchInsideSubview(touches) {
 82 |             super.touchesEnded(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:86:51: error: cannot find type 'UITouch' in scope
 84 |     }
 85 |
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                   `- error: cannot find type 'UITouch' in scope
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:86:73: error: cannot find type 'UIEvent' in scope
 84 |     }
 85 |
 86 |     override func touchesCancelled(_ touches: Set<UITouch>, with event: UIEvent?) {
    |                                                                         `- error: cannot find type 'UIEvent' in scope
 87 |         if !isTouchInsideSubview(touches) {
 88 |             super.touchesCancelled(touches, with: event)
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:93:54: error: cannot find type 'UITouch' in scope
 91 |
 92 |     // Helper function to determine if any touch is inside a subview
 93 |     private func isTouchInsideSubview(_ touches: Set<UITouch>) -> Bool {
    |                                                      `- error: cannot find type 'UITouch' in scope
 94 |         guard let touch = touches.first else {
 95 |             return false
/Users/admin/builder/spi-builder-workspace/Sources/AnchoredPopup/WindowManager.swift:64:32: error: 'View' is only available in macOS 10.15 or newer
 62 | }
 63 |
 64 | class UIPassthroughVC<Content: View>: UIHostingController<Content> {
    |       |                        `- error: 'View' is only available in macOS 10.15 or newer
    |       `- note: add @available attribute to enclosing generic class
 65 |
 66 |     override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
BUILD FAILURE 6.1 macosSpm