The Swift Package Index logo.Swift Package Index

Build Information

Failed to build IosIapStore, reference main (d115b2), with Swift 6.3 for macOS (SPM) on 15 Apr 2026 10:32:18 UTC.

Build Command

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

Build Log

 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
   :
60 |         .cornerRadius(12)
61 |         .overlay(
62 |             RoundedRectangle(cornerRadius: 12)
   |             |- error: 'RoundedRectangle' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
63 |                 .stroke(isSelected ? Color.blue : Color.gray.opacity(0.5), lineWidth: 1)
64 |         )
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:63:18: error: 'stroke(_:lineWidth:antialiased:)' is only available in macOS 14.0 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
   :
61 |         .overlay(
62 |             RoundedRectangle(cornerRadius: 12)
63 |                 .stroke(isSelected ? Color.blue : Color.gray.opacity(0.5), lineWidth: 1)
   |                  |- error: 'stroke(_:lineWidth:antialiased:)' is only available in macOS 14.0 or newer
   |                  `- note: add 'if #available' version check
64 |         )
65 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:63:38: error: 'Color' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
   :
61 |         .overlay(
62 |             RoundedRectangle(cornerRadius: 12)
63 |                 .stroke(isSelected ? Color.blue : Color.gray.opacity(0.5), lineWidth: 1)
   |                                      |- error: 'Color' is only available in macOS 10.15 or newer
   |                                      `- note: add 'if #available' version check
64 |         )
65 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:63:44: error: 'blue' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
   :
61 |         .overlay(
62 |             RoundedRectangle(cornerRadius: 12)
63 |                 .stroke(isSelected ? Color.blue : Color.gray.opacity(0.5), lineWidth: 1)
   |                                            |- error: 'blue' is only available in macOS 10.15 or newer
   |                                            `- note: add 'if #available' version check
64 |         )
65 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:63:51: error: 'Color' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
   :
61 |         .overlay(
62 |             RoundedRectangle(cornerRadius: 12)
63 |                 .stroke(isSelected ? Color.blue : Color.gray.opacity(0.5), lineWidth: 1)
   |                                                   |- error: 'Color' is only available in macOS 10.15 or newer
   |                                                   `- note: add 'if #available' version check
64 |         )
65 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:63:57: error: 'gray' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
   :
61 |         .overlay(
62 |             RoundedRectangle(cornerRadius: 12)
63 |                 .stroke(isSelected ? Color.blue : Color.gray.opacity(0.5), lineWidth: 1)
   |                                                         |- error: 'gray' is only available in macOS 10.15 or newer
   |                                                         `- note: add 'if #available' version check
64 |         )
65 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:63:62: error: 'opacity' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
   :
61 |         .overlay(
62 |             RoundedRectangle(cornerRadius: 12)
63 |                 .stroke(isSelected ? Color.blue : Color.gray.opacity(0.5), lineWidth: 1)
   |                                                              |- error: 'opacity' is only available in macOS 10.15 or newer
   |                                                              `- note: add 'if #available' version check
64 |         )
65 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:70:9: error: 'ZStack' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
   |         |- error: 'ZStack' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:70:16: error: conformance of 'Color' to 'ShapeStyle' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
   |                |- error: conformance of 'Color' to 'ShapeStyle' is only available in macOS 10.15 or newer
   |                `- note: add 'if #available' version check
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:70:16: error: conformance of 'Color' to 'ShapeStyle' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
   |                |- error: conformance of 'Color' to 'ShapeStyle' is only available in macOS 10.15 or newer
   |                `- note: add 'if #available' version check
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:71:13: error: 'Circle' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   |             |- error: 'Circle' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:72:18: error: 'stroke(_:lineWidth:antialiased:)' is only available in macOS 14.0 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
   |                  |- error: 'stroke(_:lineWidth:antialiased:)' is only available in macOS 14.0 or newer
   |                  `- note: add 'if #available' version check
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
74 |                 .frame(width: 24, height: 24)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:72:38: error: 'Color' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
   |                                      |- error: 'Color' is only available in macOS 10.15 or newer
   |                                      `- note: add 'if #available' version check
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
74 |                 .frame(width: 24, height: 24)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:72:44: error: 'blue' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
   |                                            |- error: 'blue' is only available in macOS 10.15 or newer
   |                                            `- note: add 'if #available' version check
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
74 |                 .frame(width: 24, height: 24)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:72:51: error: 'Color' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
   |                                                   |- error: 'Color' is only available in macOS 10.15 or newer
   |                                                   `- note: add 'if #available' version check
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
74 |                 .frame(width: 24, height: 24)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:72:57: error: 'gray' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
   |                                                         |- error: 'gray' is only available in macOS 10.15 or newer
   |                                                         `- note: add 'if #available' version check
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
74 |                 .frame(width: 24, height: 24)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:73:18: error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
   |                  |- error: 'background(_:alignment:)' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
74 |                 .frame(width: 24, height: 24)
75 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:73:29: error: 'Circle' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
   |                             |- error: 'Circle' is only available in macOS 10.15 or newer
   |                             `- note: add 'if #available' version check
74 |                 .frame(width: 24, height: 24)
75 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:73:38: error: 'fill(_:style:)' is only available in macOS 14.0 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
   |                                      |- error: 'fill(_:style:)' is only available in macOS 14.0 or newer
   |                                      `- note: add 'if #available' version check
74 |                 .frame(width: 24, height: 24)
75 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:73:56: error: 'Color' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
   |                                                        |- error: 'Color' is only available in macOS 10.15 or newer
   |                                                        `- note: add 'if #available' version check
74 |                 .frame(width: 24, height: 24)
75 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:73:62: error: 'blue' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
   |                                                              |- error: 'blue' is only available in macOS 10.15 or newer
   |                                                              `- note: add 'if #available' version check
74 |                 .frame(width: 24, height: 24)
75 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:73:69: error: 'Color' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
   |                                                                     |- error: 'Color' is only available in macOS 10.15 or newer
   |                                                                     `- note: add 'if #available' version check
74 |                 .frame(width: 24, height: 24)
75 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:73:75: error: 'clear' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
   |                                                                           |- error: 'clear' is only available in macOS 10.15 or newer
   |                                                                           `- note: add 'if #available' version check
74 |                 .frame(width: 24, height: 24)
75 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:74:18: error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
73 |                 .background(Circle().fill(isSelected ? Color.blue : Color.clear))
74 |                 .frame(width: 24, height: 24)
   |                  |- error: 'frame(width:height:alignment:)' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
75 |
76 |             if isSelected {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:77:17: error: 'Image' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
75 |
76 |             if isSelected {
77 |                 Image(systemName: "checkmark")
   |                 |- error: 'Image' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
78 |                     .foregroundColor(.white)
79 |                     .font(.system(size: 14, weight: .bold))
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:77:17: error: 'init(systemName:)' is only available in macOS 11.0 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
75 |
76 |             if isSelected {
77 |                 Image(systemName: "checkmark")
   |                 |- error: 'init(systemName:)' is only available in macOS 11.0 or newer
   |                 `- note: add 'if #available' version check
78 |                     .foregroundColor(.white)
79 |                     .font(.system(size: 14, weight: .bold))
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:78:22: error: 'foregroundColor' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
76 |             if isSelected {
77 |                 Image(systemName: "checkmark")
78 |                     .foregroundColor(.white)
   |                      |- error: 'foregroundColor' is only available in macOS 10.15 or newer
   |                      `- note: add 'if #available' version check
79 |                     .font(.system(size: 14, weight: .bold))
80 |             }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:78:39: error: 'white' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
76 |             if isSelected {
77 |                 Image(systemName: "checkmark")
78 |                     .foregroundColor(.white)
   |                                       |- error: 'white' is only available in macOS 10.15 or newer
   |                                       `- note: add 'if #available' version check
79 |                     .font(.system(size: 14, weight: .bold))
80 |             }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:79:22: error: 'font' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
77 |                 Image(systemName: "checkmark")
78 |                     .foregroundColor(.white)
79 |                     .font(.system(size: 14, weight: .bold))
   |                      |- error: 'font' is only available in macOS 10.15 or newer
   |                      `- note: add 'if #available' version check
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:79:28: error: 'system(size:weight:design:)' is only available in macOS 13.0 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
77 |                 Image(systemName: "checkmark")
78 |                     .foregroundColor(.white)
79 |                     .font(.system(size: 14, weight: .bold))
   |                            |- error: 'system(size:weight:design:)' is only available in macOS 13.0 or newer
   |                            `- note: add 'if #available' version check
80 |             }
81 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:76:27: error: 'buildIf' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
74 |                 .frame(width: 24, height: 24)
75 |
76 |             if isSelected {
   |                           |- error: 'buildIf' is only available in macOS 10.15 or newer
   |                           `- note: add 'if #available' version check
77 |                 Image(systemName: "checkmark")
78 |                     .foregroundColor(.white)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:80:13: error: 'buildIf' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
   :
78 |                     .foregroundColor(.white)
79 |                     .font(.system(size: 14, weight: .bold))
80 |             }
   |             |- error: 'buildIf' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
81 |         }
82 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:70:16: error: conformance of 'Optional<Wrapped>' to 'View' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
   |                |- error: conformance of 'Optional<Wrapped>' to 'View' is only available in macOS 10.15 or newer
   |                `- note: add 'if #available' version check
71 |             Circle()
72 |                 .stroke(isSelected ? Color.blue : Color.gray, lineWidth: 2)
[6/13] Compiling IosIapStore StoreContent.swift
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:11:6: error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
   |      `- error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
12 |     @EnvironmentObject var store: RootStore
13 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:11:6: error: 'AppStorage' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
   |      `- error: 'AppStorage' is only available in macOS 11.0 or newer
12 |     @EnvironmentObject var store: RootStore
13 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:12:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
12 |     @EnvironmentObject var store: RootStore
   |      `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
13 |
14 |     var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:14:20: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
12 |     @EnvironmentObject var store: RootStore
13 |
14 |     var body: some View {
   |         |          `- error: 'View' is only available in macOS 10.15 or newer
   |         `- note: add '@available' attribute to enclosing property
15 |         ZStack {
16 |             VStack {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:37:36: error: 'View' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 |                  `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:24:24: error: type 'ImageResource' has no member 'coin'
22 |                     cancelButton
23 |                 }
24 |                 Image(.coin)
   |                        `- error: type 'ImageResource' has no member 'coin'
25 |                     .resizable()
26 |                     .scaledToFit()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:38:9: error: 'Button' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
   |         |- error: 'Button' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
39 |             store.openSubscriptionSettings()
40 |         }) {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:41:13: error: 'Text' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
40 |         }) {
41 |             Text("Go To Subscriptions")
   |             |- error: 'Text' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
42 |                 .font(.title3)
43 |                 .fontWeight(.bold)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:42:18: error: 'font' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
40 |         }) {
41 |             Text("Go To Subscriptions")
42 |                 .font(.title3)
   |                  |- error: 'font' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
43 |                 .fontWeight(.bold)
44 |                 .foregroundColor(.white)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:42:24: error: 'title3' is only available in macOS 11.0 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
40 |         }) {
41 |             Text("Go To Subscriptions")
42 |                 .font(.title3)
   |                        |- error: 'title3' is only available in macOS 11.0 or newer
   |                        `- note: add 'if #available' version check
43 |                 .fontWeight(.bold)
44 |                 .foregroundColor(.white)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:43:18: error: 'fontWeight' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
41 |             Text("Go To Subscriptions")
42 |                 .font(.title3)
43 |                 .fontWeight(.bold)
   |                  |- error: 'fontWeight' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
44 |                 .foregroundColor(.white)
45 |                 .frame(maxWidth: .infinity)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:44:18: error: 'foregroundColor' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
42 |                 .font(.title3)
43 |                 .fontWeight(.bold)
44 |                 .foregroundColor(.white)
   |                  |- error: 'foregroundColor' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
45 |                 .frame(maxWidth: .infinity)
46 |                 .padding(.vertical, 12)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:44:35: error: 'white' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
42 |                 .font(.title3)
43 |                 .fontWeight(.bold)
44 |                 .foregroundColor(.white)
   |                                   |- error: 'white' is only available in macOS 10.15 or newer
   |                                   `- note: add 'if #available' version check
45 |                 .frame(maxWidth: .infinity)
46 |                 .padding(.vertical, 12)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:45:18: error: 'frame(minWidth:idealWidth:maxWidth:minHeight:idealHeight:maxHeight:alignment:)' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
43 |                 .fontWeight(.bold)
44 |                 .foregroundColor(.white)
45 |                 .frame(maxWidth: .infinity)
   |                  |- error: 'frame(minWidth:idealWidth:maxWidth:minHeight:idealHeight:maxHeight:alignment:)' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
46 |                 .padding(.vertical, 12)
47 |                 .background(.red)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:46:18: error: 'padding' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
44 |                 .foregroundColor(.white)
45 |                 .frame(maxWidth: .infinity)
46 |                 .padding(.vertical, 12)
   |                  |- error: 'padding' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
47 |                 .background(.red)
48 |                 .cornerRadius(10)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:47:18: error: 'background(_:ignoresSafeAreaEdges:)' is only available in macOS 12.0 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
45 |                 .frame(maxWidth: .infinity)
46 |                 .padding(.vertical, 12)
47 |                 .background(.red)
   |                  |- error: 'background(_:ignoresSafeAreaEdges:)' is only available in macOS 12.0 or newer
   |                  `- note: add 'if #available' version check
48 |                 .cornerRadius(10)
49 |                 .shadow(color: .gray.opacity(0.4), radius: 4, x: 0, y: 2)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:47:30: error: 'red' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
45 |                 .frame(maxWidth: .infinity)
46 |                 .padding(.vertical, 12)
47 |                 .background(.red)
   |                              |- error: 'red' is only available in macOS 10.15 or newer
   |                              `- note: add 'if #available' version check
48 |                 .cornerRadius(10)
49 |                 .shadow(color: .gray.opacity(0.4), radius: 4, x: 0, y: 2)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:48:18: error: 'cornerRadius(_:antialiased:)' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
46 |                 .padding(.vertical, 12)
47 |                 .background(.red)
48 |                 .cornerRadius(10)
   |                  |- error: 'cornerRadius(_:antialiased:)' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
49 |                 .shadow(color: .gray.opacity(0.4), radius: 4, x: 0, y: 2)
50 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:49:18: error: 'shadow(color:radius:x:y:)' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
47 |                 .background(.red)
48 |                 .cornerRadius(10)
49 |                 .shadow(color: .gray.opacity(0.4), radius: 4, x: 0, y: 2)
   |                  |- error: 'shadow(color:radius:x:y:)' is only available in macOS 10.15 or newer
   |                  `- note: add 'if #available' version check
50 |         }
51 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:49:33: error: 'gray' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
47 |                 .background(.red)
48 |                 .cornerRadius(10)
49 |                 .shadow(color: .gray.opacity(0.4), radius: 4, x: 0, y: 2)
   |                                 |- error: 'gray' is only available in macOS 10.15 or newer
   |                                 `- note: add 'if #available' version check
50 |         }
51 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:49:38: error: 'opacity' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
   :
47 |                 .background(.red)
48 |                 .cornerRadius(10)
49 |                 .shadow(color: .gray.opacity(0.4), radius: 4, x: 0, y: 2)
   |                                      |- error: 'opacity' is only available in macOS 10.15 or newer
   |                                      `- note: add 'if #available' version check
50 |         }
51 |     }
[7/13] Compiling IosIapStore RootStoreView.swift
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:12:6: error: 'State' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
   |      `- error: 'State' is only available in macOS 10.15 or newer
13 |     @StateObject private var store: RootStore
14 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:13:6: error: 'StateObject' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
13 |     @StateObject private var store: RootStore
   |      `- error: 'StateObject' is only available in macOS 11.0 or newer
14 |
15 |     public init(
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:24:27: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
   :
22 |     }
23 |
24 |     public var body: some View {
   |                |          `- error: 'View' is only available in macOS 10.15 or newer
   |                `- note: add '@available' attribute to enclosing property
25 |         ZStack {
26 |             paymentContent
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:38:34: error: 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 |                `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:52:38: error: 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 |                    `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:20:18: error: 'StateObject' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
13 |     @StateObject private var store: RootStore
14 |
15 |     public init(
   |            `- note: add '@available' attribute to enclosing initializer
16 |         userId: String,
17 |         apiKey: String
18 |     ) {
19 |         self.apiKey = apiKey
20 |         _store = StateObject(wrappedValue: RootStore(userId: userId, apiKey: apiKey))
   |                  |- error: 'StateObject' is only available in macOS 11.0 or newer
   |                  `- note: add 'if #available' version check
21 |
22 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:25:9: error: 'ZStack' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
   :
22 |     }
23 |
24 |     public var body: some View {
   |                `- note: add '@available' attribute to enclosing property
25 |         ZStack {
   |         |- error: 'ZStack' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
26 |             paymentContent
27 |             errorToast
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:29:10: error: 'onChange(of:perform:)' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
   :
22 |     }
23 |
24 |     public var body: some View {
   |                `- note: add '@available' attribute to enclosing property
25 |         ZStack {
26 |             paymentContent
27 |             errorToast
28 |         }
29 |         .onChange(of: store.errorMessage) { newValue in
   |          |- error: 'onChange(of:perform:)' is only available in macOS 11.0 or newer
   |          `- note: add 'if #available' version check
30 |             if newValue != nil {
31 |                 showToastForLimitedTime()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:39:9: error: conformance of 'Group<Content>' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
   |         |- error: conformance of 'Group<Content>' to 'View' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:39:9: error: 'Group' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
   |         |- error: 'Group' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:39:9: error: 'init(content:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
   |         |- error: 'init(content:)' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:41:17: error: 'VStack' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
   |                 |- error: 'VStack' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
42 |                     Spacer()
43 |                     ToastView(message: message)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:42:21: error: conformance of 'Spacer' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
42 |                     Spacer()
   |                     |- error: conformance of 'Spacer' to 'View' is only available in macOS 10.15 or newer
   |                     `- note: add 'if #available' version check
43 |                     ToastView(message: message)
44 |                         .padding(.bottom, 50)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:42:21: error: 'Spacer' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
42 |                     Spacer()
   |                     |- error: 'Spacer' is only available in macOS 10.15 or newer
   |                     `- note: add 'if #available' version check
43 |                     ToastView(message: message)
44 |                         .padding(.bottom, 50)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:44:26: error: 'padding' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   :
42 |                     Spacer()
43 |                     ToastView(message: message)
44 |                         .padding(.bottom, 50)
   |                          |- error: 'padding' is only available in macOS 10.15 or newer
   |                          `- note: add 'if #available' version check
45 |                         .transition(.move(edge: .bottom).combined(with: .opacity))
46 |                         .zIndex(1)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:45:26: error: 'transition' is only available in macOS 14.0 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   :
43 |                     ToastView(message: message)
44 |                         .padding(.bottom, 50)
45 |                         .transition(.move(edge: .bottom).combined(with: .opacity))
   |                          |- error: 'transition' is only available in macOS 14.0 or newer
   |                          `- note: add 'if #available' version check
46 |                         .zIndex(1)
47 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:45:38: error: 'move(edge:)' is only available in macOS 14.0 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   :
43 |                     ToastView(message: message)
44 |                         .padding(.bottom, 50)
45 |                         .transition(.move(edge: .bottom).combined(with: .opacity))
   |                                      |- error: 'move(edge:)' is only available in macOS 14.0 or newer
   |                                      `- note: add 'if #available' version check
46 |                         .zIndex(1)
47 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:45:58: error: 'combined(with:)' is only available in macOS 14.0 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   :
43 |                     ToastView(message: message)
44 |                         .padding(.bottom, 50)
45 |                         .transition(.move(edge: .bottom).combined(with: .opacity))
   |                                                          |- error: 'combined(with:)' is only available in macOS 14.0 or newer
   |                                                          `- note: add 'if #available' version check
46 |                         .zIndex(1)
47 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:45:74: error: 'opacity' is only available in macOS 14.0 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   :
43 |                     ToastView(message: message)
44 |                         .padding(.bottom, 50)
45 |                         .transition(.move(edge: .bottom).combined(with: .opacity))
   |                                                                          |- error: 'opacity' is only available in macOS 14.0 or newer
   |                                                                          `- note: add 'if #available' version check
46 |                         .zIndex(1)
47 |                 }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:46:26: error: 'zIndex' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   :
44 |                         .padding(.bottom, 50)
45 |                         .transition(.move(edge: .bottom).combined(with: .opacity))
46 |                         .zIndex(1)
   |                          |- error: 'zIndex' is only available in macOS 10.15 or newer
   |                          `- note: add 'if #available' version check
47 |                 }
48 |             }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:41:24: error: conformance of 'Spacer' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
   |                        |- error: conformance of 'Spacer' to 'View' is only available in macOS 10.15 or newer
   |                        `- note: add 'if #available' version check
42 |                     Spacer()
43 |                     ToastView(message: message)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:40:60: error: 'buildIf' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   |                                                            |- error: 'buildIf' is only available in macOS 10.15 or newer
   |                                                            `- note: add 'if #available' version check
41 |                 VStack {
42 |                     Spacer()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:48:13: error: 'buildIf' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
   :
46 |                         .zIndex(1)
47 |                 }
48 |             }
   |             |- error: 'buildIf' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
49 |         }
50 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:39:15: error: conformance of 'Optional<Wrapped>' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
   |               |- error: conformance of 'Optional<Wrapped>' to 'View' is only available in macOS 10.15 or newer
   |               `- note: add 'if #available' version check
40 |             if showToast, let message = store.errorMessage {
41 |                 VStack {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:11:6: error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
   |      `- error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
12 |     @EnvironmentObject var store: RootStore
13 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:53:9: error: 'VStack' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
   |         |- error: 'VStack' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
54 |             StoreContent()
55 |             if store.isLoading {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:53:16: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
   |                |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
   |                `- note: add 'if #available' version check
54 |             StoreContent()
55 |             if store.isLoading {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:53:16: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
   |                |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
   |                `- note: add 'if #available' version check
54 |             StoreContent()
55 |             if store.isLoading {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:53:16: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
   |                |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
   |                `- note: add 'if #available' version check
54 |             StoreContent()
55 |             if store.isLoading {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:56:17: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
56 |                 ProgressView("Loading Plans...")
   |                 |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
57 |             } else if store.availableProducts.count != 0 {
58 |                 ProductListView()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:56:17: error: 'ProgressView' is only available in macOS 11.0 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
56 |                 ProgressView("Loading Plans...")
   |                 |- error: 'ProgressView' is only available in macOS 11.0 or newer
   |                 `- note: add 'if #available' version check
57 |             } else if store.availableProducts.count != 0 {
58 |                 ProductListView()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:56:17: error: 'init(_:)' is only available in macOS 11.0 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
56 |                 ProgressView("Loading Plans...")
   |                 |- error: 'init(_:)' is only available in macOS 11.0 or newer
   |                 `- note: add 'if #available' version check
57 |             } else if store.availableProducts.count != 0 {
58 |                 ProductListView()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:56:30: error: 'LocalizedStringKey' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
56 |                 ProgressView("Loading Plans...")
   |                              |- error: 'LocalizedStringKey' is only available in macOS 10.15 or newer
   |                              `- note: add 'if #available' version check
57 |             } else if store.availableProducts.count != 0 {
58 |                 ProductListView()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:55:32: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
   |                                |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
   |                                `- note: add 'if #available' version check
56 |                 ProgressView("Loading Plans...")
57 |             } else if store.availableProducts.count != 0 {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:55:32: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
   |                                |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
   |                                `- note: add 'if #available' version check
56 |                 ProgressView("Loading Plans...")
57 |             } else if store.availableProducts.count != 0 {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:55:32: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
   |                                |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
   |                                `- note: add 'if #available' version check
56 |                 ProgressView("Loading Plans...")
57 |             } else if store.availableProducts.count != 0 {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:57:58: error: 'buildEither(first:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
56 |                 ProgressView("Loading Plans...")
57 |             } else if store.availableProducts.count != 0 {
   |                                                          |- error: 'buildEither(first:)' is only available in macOS 10.15 or newer
   |                                                          `- note: add 'if #available' version check
58 |                 ProductListView()
59 |             } else {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:57:58: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
55 |             if store.isLoading {
56 |                 ProgressView("Loading Plans...")
57 |             } else if store.availableProducts.count != 0 {
   |                                                          |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
   |                                                          `- note: add 'if #available' version check
58 |                 ProductListView()
59 |             } else {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:60:17: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
58 |                 ProductListView()
59 |             } else {
60 |                 Text("No Products available at this time!")
   |                 |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
61 |             }
62 |             PurchaseButtonView()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:60:17: error: 'Text' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
58 |                 ProductListView()
59 |             } else {
60 |                 Text("No Products available at this time!")
   |                 |- error: 'Text' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
61 |             }
62 |             PurchaseButtonView()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:59:20: error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
57 |             } else if store.availableProducts.count != 0 {
58 |                 ProductListView()
59 |             } else {
   |                    |- error: conformance of 'Text' to 'View' is only available in macOS 10.15 or newer
   |                    `- note: add 'if #available' version check
60 |                 Text("No Products available at this time!")
61 |             }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:59:20: error: 'buildEither(second:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
57 |             } else if store.availableProducts.count != 0 {
58 |                 ProductListView()
59 |             } else {
   |                    |- error: 'buildEither(second:)' is only available in macOS 10.15 or newer
   |                    `- note: add 'if #available' version check
60 |                 Text("No Products available at this time!")
61 |             }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:53:16: error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
   |                |- error: conformance of '_ConditionalContent<TrueContent, FalseContent>' to 'View' is only available in macOS 10.15 or newer
   |                `- note: add 'if #available' version check
54 |             StoreContent()
55 |             if store.isLoading {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:64:10: error: 'environmentObject' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
62 |             PurchaseButtonView()
63 |         }
64 |         .environmentObject(store)
   |          |- error: 'environmentObject' is only available in macOS 10.15 or newer
   |          `- note: add 'if #available' version check
65 |         .onAppear {
66 |             Task{ @MainActor in
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:65:10: error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
63 |         }
64 |         .environmentObject(store)
65 |         .onAppear {
   |          |- error: 'onAppear(perform:)' is only available in macOS 10.15 or newer
   |          `- note: add 'if #available' version check
66 |             Task{ @MainActor in
67 |                 await store.fetchSubscriptionPlans(apiKey: apiKey)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:66:13: error: 'Task' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
64 |         .environmentObject(store)
65 |         .onAppear {
66 |             Task{ @MainActor in
   |             |- error: 'Task' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
67 |                 await store.fetchSubscriptionPlans(apiKey: apiKey)
68 |                 await store.fetchStoreProducts()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:66:13: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
64 |         .environmentObject(store)
65 |         .onAppear {
66 |             Task{ @MainActor in
   |             |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
67 |                 await store.fetchSubscriptionPlans(apiKey: apiKey)
68 |                 await store.fetchStoreProducts()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:72:10: error: 'padding' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
   :
70 |             }
71 |         }
72 |         .padding()
   |          |- error: 'padding' is only available in macOS 10.15 or newer
   |          `- note: add 'if #available' version check
73 |     }
74 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:76:9: error: 'withAnimation' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
   |         |- error: 'withAnimation' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
77 |             showToast = true
78 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:77:13: error: setter for 'showToast' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
   |             |- error: setter for 'showToast' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
78 |         }
79 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:80:9: error: 'Task' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
78 |         }
79 |
80 |         Task {
   |         |- error: 'Task' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
81 |             try await Task.sleep(nanoseconds: 3 * 1_000_000_000) // 3 seconds
82 |             withAnimation {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:80:9: error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
78 |         }
79 |
80 |         Task {
   |         |- error: 'init(name:priority:operation:)' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
81 |             try await Task.sleep(nanoseconds: 3 * 1_000_000_000) // 3 seconds
82 |             withAnimation {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:81:23: error: 'Task' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
   :
79 |
80 |         Task {
81 |             try await Task.sleep(nanoseconds: 3 * 1_000_000_000) // 3 seconds
   |                       |- error: 'Task' is only available in macOS 10.15 or newer
   |                       `- note: add 'if #available' version check
82 |             withAnimation {
83 |                 showToast = false
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:81:28: error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
   :
79 |
80 |         Task {
81 |             try await Task.sleep(nanoseconds: 3 * 1_000_000_000) // 3 seconds
   |                            |- error: 'sleep(nanoseconds:)' is only available in macOS 10.15 or newer
   |                            `- note: add 'if #available' version check
82 |             withAnimation {
83 |                 showToast = false
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:82:13: error: 'withAnimation' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
   :
80 |         Task {
81 |             try await Task.sleep(nanoseconds: 3 * 1_000_000_000) // 3 seconds
82 |             withAnimation {
   |             |- error: 'withAnimation' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
83 |                 showToast = false
84 |             }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:83:17: error: setter for 'showToast' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
   :
81 |             try await Task.sleep(nanoseconds: 3 * 1_000_000_000) // 3 seconds
82 |             withAnimation {
83 |                 showToast = false
   |                 |- error: setter for 'showToast' is only available in macOS 10.15 or newer
   |                 `- note: add 'if #available' version check
84 |             }
85 |             store.errorMessage = nil
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:85:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
73 |     }
74 |
75 |     private func showToastForLimitedTime() {
   |                  `- note: add '@available' attribute to enclosing instance method
76 |         withAnimation {
77 |             showToast = true
   :
83 |                 showToast = false
84 |             }
85 |             store.errorMessage = nil
   |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
   |             `- note: add 'if #available' version check
86 |         }
87 |     }
error: emit-module command failed with exit code 1 (use -v to see invocation)
[8/14] Compiling IosIapStore SubscriptionPlan.swift
[9/14] Compiling IosIapStore TransactionDetails.swift
[10/14] Emitting module IosIapStore
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:16:34: error: 'Transaction' is only available in macOS 12.0 or newer
 14 | }
 15 |
 16 | typealias Transaction = StoreKit.Transaction
    |           |                      `- error: 'Transaction' is only available in macOS 12.0 or newer
    |           `- note: add '@available' attribute to enclosing type alias
 17 | typealias RenewalInfo = StoreKit.Product.SubscriptionInfo.RenewalInfo
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:17:34: error: 'Product' is only available in macOS 12.0 or newer
 15 |
 16 | typealias Transaction = StoreKit.Transaction
 17 | typealias RenewalInfo = StoreKit.Product.SubscriptionInfo.RenewalInfo
    |           |                      `- error: 'Product' is only available in macOS 12.0 or newer
    |           `- note: add '@available' attribute to enclosing type alias
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:18:35: error: 'Product' is only available in macOS 12.0 or newer
 16 | typealias Transaction = StoreKit.Transaction
 17 | typealias RenewalInfo = StoreKit.Product.SubscriptionInfo.RenewalInfo
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
    |           |                       `- error: 'Product' is only available in macOS 12.0 or newer
    |           `- note: add '@available' attribute to enclosing type alias
 19 |
 20 | class RootStore: ObservableObject {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:21:6: error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
    |      `- error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:21:6: error: 'AppStorage' is only available in macOS 11.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
    |      `- error: 'AppStorage' is only available in macOS 11.0 or newer
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:22:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:23:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:24:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:25:49: error: 'Product' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
    |                                                 `- error: 'Product' is only available in macOS 12.0 or newer
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:25:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:26:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:27:58: error: 'Product' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
    |                                                          `- error: 'Product' is only available in macOS 12.0 or newer
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:27:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:28:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 29 |     @Published private(set) var productIds: [String] = []
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:29:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
 31 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:30:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 31 |
 32 |     var updateListenerTask: Task<Void, Error>? = nil
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:32:29: error: 'Task' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
 31 |
 32 |     var updateListenerTask: Task<Void, Error>? = nil
    |                             `- error: 'Task' is only available in macOS 10.15 or newer
 33 |
 34 |     let sk2Store = SKProductStore()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:202:37: error: 'Task' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
200 |     }
201 |
202 |     func listenForTransactions() -> Task<Void, Error> {
    |          |                          `- error: 'Task' is only available in macOS 10.15 or newer
    |          `- note: add '@available' attribute to enclosing instance method
203 |         return Task.detached {
204 |             for await result in Transaction.updates {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:20:18: error: 'ObservableObject' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       |          `- error: 'ObservableObject' is only available in macOS 10.15 or newer
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:14:79: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
 14 |     func fetchProductsFromAppStore(for productIds: [String]) async throws -> [Product] {
    |          |                                                                    `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 15 |         if(productIds.isEmpty) {
 16 |             throw StoreError.noProducts
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:30:35: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
 28 |     }
 29 |
 30 |     func sortByPrice(_ products: [Product]) -> [Product] {
    |          |                        `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 31 |         products.sorted(by: {return $0.price < $1.price})
 32 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:30:49: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
 28 |     }
 29 |
 30 |     func sortByPrice(_ products: [Product]) -> [Product] {
    |          |                                      `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 31 |         products.sorted(by: {return $0.price < $1.price})
 32 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:100:92: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
 98 |     }
 99 |
100 |     func getSubscriptionGroupIdentifier(for transaction: Transaction, from storeProducts: [Product]) -> String? {
    |          |                                                                                 `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
101 |         if let product = storeProducts.first(where: { $0.id == transaction.productID }) {
102 |             return product.subscription?.subscriptionGroupID
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:107:38: error: 'VerificationResult' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
105 |     }
106 |
107 |     func checkVerified<T> (_ result: VerificationResult<T>) throws -> T {
    |          |                           `- error: 'VerificationResult' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
108 |         switch result {
109 |         case .unverified:
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:116:71: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
114 |     }
115 |
116 |     func getStoreProduct(with productId: String, from storeProducts: [Product]) -> Product? {
    |          |                                                            `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
117 |         return storeProducts.first(where: { $0.id == productId })
118 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:116:84: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
114 |     }
115 |
116 |     func getStoreProduct(with productId: String, from storeProducts: [Product]) -> Product? {
    |          |                                                                         `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
117 |         return storeProducts.first(where: { $0.id == productId })
118 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:11:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
   |      `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
12 |
13 |     var product: SubscriptionPlan
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:21:20: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListItemView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
19 |     }
20 |
21 |     var body: some View {
   |         |          `- error: 'View' is only available in macOS 10.15 or newer
   |         `- note: add '@available' attribute to enclosing property
22 |         HStack{
23 |             VStack(alignment: .leading, spacing: 10) {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListItemView.swift:69:35: error: 'View' is only available in macOS 10.15 or newer
66 | }
67 |
68 | extension ProductListItemView {
   | `- note: add '@available' attribute to enclosing extension
69 |     private var radioButton: some View {
   |                 |                 `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
70 |         ZStack {
71 |             Circle()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListView.swift:11:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
   |      `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
12 |     var body: some View {
13 |         ScrollView(.vertical, showsIndicators: false){
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ProductListView.swift:12:20: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ProductListView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |     var body: some View {
   |         |          `- error: 'View' is only available in macOS 10.15 or newer
   |         `- note: add '@available' attribute to enclosing property
13 |         ScrollView(.vertical, showsIndicators: false){
14 |             VStack(spacing: 20) {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/PurchaseButtonView.swift:11:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct PurchaseButtonView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
   |      `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
12 |
13 |     func getRecurringDescriptionText() -> String {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/PurchaseButtonView.swift:19:20: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct PurchaseButtonView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @EnvironmentObject var store: RootStore
12 |
   :
17 |         return ""
18 |     }
19 |     var body: some View {
   |         |          `- error: 'View' is only available in macOS 10.15 or newer
   |         `- note: add '@available' attribute to enclosing property
20 |         VStack(spacing: 8) {
21 |             recurringText
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/PurchaseButtonView.swift:28:38: error: 'View' is only available in macOS 10.15 or newer
25 | }
26 |
27 | extension PurchaseButtonView {
   | `- note: add '@available' attribute to enclosing extension
28 |     private var purchaseButton: some View {
   |                 |                    `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
29 |         Button(action: {
30 |             if let selectedPlan = store.selectedProduct {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/PurchaseButtonView.swift:49:37: error: 'View' is only available in macOS 10.15 or newer
25 | }
26 |
27 | extension PurchaseButtonView {
   | `- note: add '@available' attribute to enclosing extension
28 |     private var purchaseButton: some View {
29 |         Button(action: {
   :
47 |     }
48 |
49 |     private var recurringText: some View {
   |                 |                   `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
50 |         Text(getRecurringDescriptionText())
51 |             .font(.footnote)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:12:6: error: 'State' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
   |      `- error: 'State' is only available in macOS 10.15 or newer
13 |     @StateObject private var store: RootStore
14 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:13:6: error: 'StateObject' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
13 |     @StateObject private var store: RootStore
   |      `- error: 'StateObject' is only available in macOS 11.0 or newer
14 |
15 |     public init(
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:24:27: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | public struct RootStoreView: View {
   |               `- note: add '@available' attribute to enclosing struct
11 |     private let apiKey: String
12 |     @State private var showToast: Bool = false
   :
22 |     }
23 |
24 |     public var body: some View {
   |                |          `- error: 'View' is only available in macOS 10.15 or newer
   |                `- note: add '@available' attribute to enclosing property
25 |         ZStack {
26 |             paymentContent
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:38:34: error: 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
   |                 |                `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
39 |         Group {
40 |             if showToast, let message = store.errorMessage {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/RootStoreView.swift:52:38: error: 'View' is only available in macOS 10.15 or newer
35 | }
36 |
37 | extension RootStoreView {
   | `- note: add '@available' attribute to enclosing extension
38 |     private var errorToast: some View {
39 |         Group {
   :
50 |     }
51 |
52 |     private var paymentContent: some View {
   |                 |                    `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
53 |         VStack {
54 |             StoreContent()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:11:6: error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
   |      `- error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
12 |     @EnvironmentObject var store: RootStore
13 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:11:6: error: 'AppStorage' is only available in macOS 11.0 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
   |      `- error: 'AppStorage' is only available in macOS 11.0 or newer
12 |     @EnvironmentObject var store: RootStore
13 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:12:6: error: 'EnvironmentObject' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
12 |     @EnvironmentObject var store: RootStore
   |      `- error: 'EnvironmentObject' is only available in macOS 10.15 or newer
13 |
14 |     var body: some View {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:14:20: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct StoreContent: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     @AppStorage("subscribed") private var subscribed: Bool = false
12 |     @EnvironmentObject var store: RootStore
13 |
14 |     var body: some View {
   |         |          `- error: 'View' is only available in macOS 10.15 or newer
   |         `- note: add '@available' attribute to enclosing property
15 |         ZStack {
16 |             VStack {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/StoreContent.swift:37:36: error: 'View' is only available in macOS 10.15 or newer
34 | }
35 |
36 | extension StoreContent {
   | `- note: add '@available' attribute to enclosing extension
37 |     private var cancelButton: some View {
   |                 |                  `- error: 'View' is only available in macOS 10.15 or newer
   |                 `- note: add '@available' attribute to enclosing property
38 |         Button(action: {
39 |             store.openSubscriptionSettings()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:13:20: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         |          `- error: 'View' is only available in macOS 10.15 or newer
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
[11/14] Compiling IosIapStore RootStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:16:34: error: 'Transaction' is only available in macOS 12.0 or newer
 14 | }
 15 |
 16 | typealias Transaction = StoreKit.Transaction
    |           |                      `- error: 'Transaction' is only available in macOS 12.0 or newer
    |           `- note: add '@available' attribute to enclosing type alias
 17 | typealias RenewalInfo = StoreKit.Product.SubscriptionInfo.RenewalInfo
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:17:34: error: 'Product' is only available in macOS 12.0 or newer
 15 |
 16 | typealias Transaction = StoreKit.Transaction
 17 | typealias RenewalInfo = StoreKit.Product.SubscriptionInfo.RenewalInfo
    |           |                      `- error: 'Product' is only available in macOS 12.0 or newer
    |           `- note: add '@available' attribute to enclosing type alias
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:18:35: error: 'Product' is only available in macOS 12.0 or newer
 16 | typealias Transaction = StoreKit.Transaction
 17 | typealias RenewalInfo = StoreKit.Product.SubscriptionInfo.RenewalInfo
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
    |           |                       `- error: 'Product' is only available in macOS 12.0 or newer
    |           `- note: add '@available' attribute to enclosing type alias
 19 |
 20 | class RootStore: ObservableObject {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:21:6: error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
    |      `- error: 'init(wrappedValue:_:store:)' is only available in macOS 11.0 or newer
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:21:6: error: 'AppStorage' is only available in macOS 11.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
    |      `- error: 'AppStorage' is only available in macOS 11.0 or newer
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:22:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:23:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:24:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:25:49: error: 'Product' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
    |                                                 `- error: 'Product' is only available in macOS 12.0 or newer
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:25:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
 23 |     @Published var isLoading = true
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:26:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 24 |     @Published var errorMessage: String?
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:27:58: error: 'Product' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
    |                                                          `- error: 'Product' is only available in macOS 12.0 or newer
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:27:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 25 |     @Published private(set) var storeProducts: [Product] = []
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:28:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 26 |     @Published var selectedProduct: SubscriptionPlan?
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 29 |     @Published private(set) var productIds: [String] = []
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:29:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 27 |     @Published private(set) var purchasedSubscriptions: [Product] = []
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
 31 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:30:6: error: 'Published' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 28 |     @Published private(set) var availableProducts: [SubscriptionPlan] = []
 29 |     @Published private(set) var productIds: [String] = []
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
    |      `- error: 'Published' is only available in macOS 10.15 or newer
 31 |
 32 |     var updateListenerTask: Task<Void, Error>? = nil
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:32:29: error: 'Task' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 30 |     @Published private(set) var subscriptionGroupStatus: RenewalState?
 31 |
 32 |     var updateListenerTask: Task<Void, Error>? = nil
    |                             `- error: 'Task' is only available in macOS 10.15 or newer
 33 |
 34 |     let sk2Store = SKProductStore()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:202:37: error: 'Task' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
200 |     }
201 |
202 |     func listenForTransactions() -> Task<Void, Error> {
    |          |                          `- error: 'Task' is only available in macOS 10.15 or newer
    |          `- note: add '@available' attribute to enclosing instance method
203 |         return Task.detached {
204 |             for await result in Transaction.updates {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:20:18: error: 'ObservableObject' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       |          `- error: 'ObservableObject' is only available in macOS 10.15 or newer
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, [SubscriptionPlan]> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, [SubscriptionPlan]>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, Bool> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, Bool>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, String?> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, String?>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, [Product]> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, [Product]>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, SubscriptionPlan?> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, SubscriptionPlan?>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, [Product]> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, [Product]>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, [SubscriptionPlan]> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, [SubscriptionPlan]>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, [String]> & Sendable' to expected argument type 'ReferenceWritableKeyPath<RootStore, [String]>'
<unknown>:0: error: cannot convert value of type 'any KeyPath<RootStore, RenewalState?> & Sendable' (aka 'any KeyPath<RootStore, Optional<Product.SubscriptionInfo.RenewalState>> & Sendable') to expected argument type 'ReferenceWritableKeyPath<RootStore, RenewalState?>' (aka 'ReferenceWritableKeyPath<RootStore, Optional<Product.SubscriptionInfo.RenewalState>>')
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:42:20: error: 'SHA256' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 38 |     let apiKey: String
 39 |
 40 |     private var uuid : UUID {
    |                 `- note: add '@available' attribute to enclosing property
 41 |         let data = Data(userId.utf8)
 42 |         let hash = SHA256.hash(data: data)
    |                    |- error: 'SHA256' is only available in macOS 10.15 or newer
    |                    `- note: add 'if #available' version check
 43 |         let hashBytes = Array(hash)
 44 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:42:27: error: 'hash(data:)' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 38 |     let apiKey: String
 39 |
 40 |     private var uuid : UUID {
    |                 `- note: add '@available' attribute to enclosing property
 41 |         let data = Data(userId.utf8)
 42 |         let hash = SHA256.hash(data: data)
    |                           |- error: 'hash(data:)' is only available in macOS 10.15 or newer
    |                           `- note: add 'if #available' version check
 43 |         let hashBytes = Array(hash)
 44 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:43:25: error: conformance of 'SHA256Digest' to 'Sequence' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 38 |     let apiKey: String
 39 |
 40 |     private var uuid : UUID {
    |                 `- note: add '@available' attribute to enclosing property
 41 |         let data = Data(userId.utf8)
 42 |         let hash = SHA256.hash(data: data)
 43 |         let hashBytes = Array(hash)
    |                         |- error: conformance of 'SHA256Digest' to 'Sequence' is only available in macOS 10.15 or newer
    |                         `- note: add 'if #available' version check
 44 |
 45 |         return UUID(uuid: (
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:60:29: error: 'cancel()' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 58 |     }
 59 |     deinit {
 60 |         updateListenerTask?.cancel()
    |                             |- error: 'cancel()' is only available in macOS 10.15 or newer
    |                             `- note: add 'if #available' version check
 61 |     }
 62 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:65:9: error: setter for 'availableProducts' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 62 |
 63 |     @MainActor
 64 |     private func updateAvaiableProducts() {
    |                  `- note: add '@available' attribute to enclosing instance method
 65 |         availableProducts = apiSubscriptionPlans.filter { plan in
    |         |- error: setter for 'availableProducts' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
 66 |             storeProducts.contains { $0.id == plan.productId }
 67 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:71:9: error: setter for 'productIds' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 68 |     }
 69 |     @MainActor
 70 |     private func updateProductIds() {
    |                  `- note: add '@available' attribute to enclosing instance method
 71 |         productIds = apiSubscriptionPlans.map { $0.productId };
    |         |- error: setter for 'productIds' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
 72 |     }
 73 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:78:13: error: setter for 'apiSubscriptionPlans' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 74 |
 75 |     @MainActor
 76 |     func fetchSubscriptionPlans(apiKey: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
 77 |         do {
 78 |             self.apiSubscriptionPlans = try await subscriptionPlanService.loadSubscriptionPlans(apiKey: apiKey)
    |             |- error: setter for 'apiSubscriptionPlans' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 79 |             self.updateProductIds();
 80 |         } catch {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:81:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 74 |
 75 |     @MainActor
 76 |     func fetchSubscriptionPlans(apiKey: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
 77 |         do {
 78 |             self.apiSubscriptionPlans = try await subscriptionPlanService.loadSubscriptionPlans(apiKey: apiKey)
 79 |             self.updateProductIds();
 80 |         } catch {
 81 |             self.errorMessage = "Failed to load subscription plans: \(error.localizedDescription)"
    |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 82 |             self.isLoading = false
 83 |             print("fetchSubscriptionPlans - \(error)")
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:82:13: error: setter for 'isLoading' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 74 |
 75 |     @MainActor
 76 |     func fetchSubscriptionPlans(apiKey: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
 77 |         do {
 78 |             self.apiSubscriptionPlans = try await subscriptionPlanService.loadSubscriptionPlans(apiKey: apiKey)
    :
 80 |         } catch {
 81 |             self.errorMessage = "Failed to load subscription plans: \(error.localizedDescription)"
 82 |             self.isLoading = false
    |             |- error: setter for 'isLoading' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 83 |             print("fetchSubscriptionPlans - \(error)")
 84 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:90:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
    |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 91 |             self.isLoading = false
 92 |             return
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:91:13: error: setter for 'isLoading' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
 91 |             self.isLoading = false
    |             |- error: setter for 'isLoading' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 92 |             return
 93 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:97:13: error: setter for 'storeProducts' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
    :
 95 |         do {
 96 |             let sk2Products = try await sk2Store.fetchProductsFromAppStore(for: productIds)
 97 |             storeProducts = sk2Products
    |             |- error: setter for 'storeProducts' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
 98 |             self.updateAvaiableProducts();
 99 |             self.isLoading = false
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:99:13: error: setter for 'isLoading' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
    :
 97 |             storeProducts = sk2Products
 98 |             self.updateAvaiableProducts();
 99 |             self.isLoading = false
    |             |- error: setter for 'isLoading' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
100 |         } catch StoreError.noProductsInStore {
101 |             let errMsg = "Got 0 products in App store."
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:102:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
    :
100 |         } catch StoreError.noProductsInStore {
101 |             let errMsg = "Got 0 products in App store."
102 |             errorMessage = errMsg
    |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
103 |             self.isLoading = false
104 |         } catch {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:103:13: error: setter for 'isLoading' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
    :
101 |             let errMsg = "Got 0 products in App store."
102 |             errorMessage = errMsg
103 |             self.isLoading = false
    |             |- error: setter for 'isLoading' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
104 |         } catch {
105 |             let errMsg = "Failed to fetch App Store products: \(error.localizedDescription)"
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:106:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
    :
104 |         } catch {
105 |             let errMsg = "Failed to fetch App Store products: \(error.localizedDescription)"
106 |             errorMessage = errMsg
    |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
107 |             print("fetchStoreProducts - \(error)")
108 |             self.isLoading = false
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:108:13: error: setter for 'isLoading' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
 86 |
 87 |     @MainActor
 88 |     func fetchStoreProducts() async {
    |          `- note: add '@available' attribute to enclosing instance method
 89 |         if(productIds.isEmpty) {
 90 |             errorMessage = "No Products Ids available."
    :
106 |             errorMessage = errMsg
107 |             print("fetchStoreProducts - \(error)")
108 |             self.isLoading = false
    |             |- error: setter for 'isLoading' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
109 |         }
110 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:115:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
111 |
112 |     @MainActor
113 |     func purchaseProduct(with productId: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
114 |         guard let product = storeProducts.first(where: { $0.id == productId }) else {
115 |             errorMessage = "Product not found in App Store"
    |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
116 |             return
117 |         }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:119:44: error: 'purchase(options:)' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
111 |
112 |     @MainActor
113 |     func purchaseProduct(with productId: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
114 |         guard let product = storeProducts.first(where: { $0.id == productId }) else {
115 |             errorMessage = "Product not found in App Store"
    :
117 |         }
118 |         do {
119 |             let result = try await product.purchase(options: [.appAccountToken(uuid)])
    |                                            |- error: 'purchase(options:)' is only available in macOS 12.0 or newer
    |                                            `- note: add 'if #available' version check
120 |             switch result {
121 |             case .success(let verification):
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:129:17: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
111 |
112 |     @MainActor
113 |     func purchaseProduct(with productId: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
114 |         guard let product = storeProducts.first(where: { $0.id == productId }) else {
115 |             errorMessage = "Product not found in App Store"
    :
127 |
128 |                 await transaction.finish()
129 |                 errorMessage = nil
    |                 |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
130 |             case .userCancelled:
131 |                 errorMessage = "User cancelled the purchase"
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:131:17: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
111 |
112 |     @MainActor
113 |     func purchaseProduct(with productId: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
114 |         guard let product = storeProducts.first(where: { $0.id == productId }) else {
115 |             errorMessage = "Product not found in App Store"
    :
129 |                 errorMessage = nil
130 |             case .userCancelled:
131 |                 errorMessage = "User cancelled the purchase"
    |                 |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
132 |
133 |             case .pending:
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:134:17: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
111 |
112 |     @MainActor
113 |     func purchaseProduct(with productId: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
114 |         guard let product = storeProducts.first(where: { $0.id == productId }) else {
115 |             errorMessage = "Product not found in App Store"
    :
132 |
133 |             case .pending:
134 |                 errorMessage = "Purchase is pending"
    |                 |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
135 |
136 |             default:
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:137:17: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
111 |
112 |     @MainActor
113 |     func purchaseProduct(with productId: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
114 |         guard let product = storeProducts.first(where: { $0.id == productId }) else {
115 |             errorMessage = "Product not found in App Store"
    :
135 |
136 |             default:
137 |                 errorMessage = "Unknown purchase result"
    |                 |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
138 |
139 |             }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:141:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
111 |
112 |     @MainActor
113 |     func purchaseProduct(with productId: String) async {
    |          `- note: add '@available' attribute to enclosing instance method
114 |         guard let product = storeProducts.first(where: { $0.id == productId }) else {
115 |             errorMessage = "Product not found in App Store"
    :
139 |             }
140 |         } catch {
141 |             errorMessage = "Purchase failed: \(error.localizedDescription)"
    |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
142 |         }
143 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:148:29: error: 'Product' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
145 |
146 |     @MainActor
147 |     func updateCustomerProductStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
148 |         var purchasedSubs: [Product] = []
    |                             |- error: 'Product' is only available in macOS 12.0 or newer
    |                             `- note: add 'if #available' version check
149 |
150 |         var latestTransactions: [String: Transaction] = [:]
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:152:41: error: 'currentEntitlements' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
145 |
146 |     @MainActor
147 |     func updateCustomerProductStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
148 |         var purchasedSubs: [Product] = []
149 |
150 |         var latestTransactions: [String: Transaction] = [:]
151 |
152 |         for await result in Transaction.currentEntitlements {
    |                                         |- error: 'currentEntitlements' is only available in macOS 12.0 or newer
    |                                         `- note: add 'if #available' version check
153 |             do{
154 |                 let transaction = try sk2Store.checkVerified(result)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:169:17: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
145 |
146 |     @MainActor
147 |     func updateCustomerProductStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
148 |         var purchasedSubs: [Product] = []
149 |
    :
167 |                 }
168 |             } catch {
169 |                 errorMessage = "Could not find products. \(error.localizedDescription)"
    |                 |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |                 `- note: add 'if #available' version check
170 |             }
171 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:179:9: error: setter for 'purchasedSubscriptions' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
145 |
146 |     @MainActor
147 |     func updateCustomerProductStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
148 |         var purchasedSubs: [Product] = []
149 |
    :
177 |         }
178 |
179 |         self.purchasedSubscriptions = purchasedSubs
    |         |- error: setter for 'purchasedSubscriptions' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
180 |
181 |         subscriptionGroupStatus = try? await storeProducts.first?.subscription?.status.first?.state
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:181:9: error: setter for 'subscriptionGroupStatus' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
145 |
146 |     @MainActor
147 |     func updateCustomerProductStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
148 |         var purchasedSubs: [Product] = []
149 |
    :
179 |         self.purchasedSubscriptions = purchasedSubs
180 |
181 |         subscriptionGroupStatus = try? await storeProducts.first?.subscription?.status.first?.state
    |         |- error: setter for 'subscriptionGroupStatus' is only available in macOS 10.15 or newer
    |         `- note: add 'if #available' version check
182 |         await updateSubscriptionStatus()
183 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:181:81: error: 'status' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
145 |
146 |     @MainActor
147 |     func updateCustomerProductStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
148 |         var purchasedSubs: [Product] = []
149 |
    :
179 |         self.purchasedSubscriptions = purchasedSubs
180 |
181 |         subscriptionGroupStatus = try? await storeProducts.first?.subscription?.status.first?.state
    |                                                                                 |- error: 'status' is only available in macOS 12.0 or newer
    |                                                                                 `- note: add 'if #available' version check
182 |         await updateSubscriptionStatus()
183 |
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:189:13: error: setter for 'isSubscribed' is only available in macOS 11.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
185 |
186 |     @MainActor
187 |     func updateSubscriptionStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
188 |         if subscriptionGroupStatus == .subscribed || subscriptionGroupStatus == .inGracePeriod {
189 |             isSubscribed = true
    |             |- error: setter for 'isSubscribed' is only available in macOS 11.0 or newer
    |             `- note: add 'if #available' version check
190 |         } else {
191 |             isSubscribed = false
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:191:13: error: setter for 'isSubscribed' is only available in macOS 11.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
185 |
186 |     @MainActor
187 |     func updateSubscriptionStatus() async {
    |          `- note: add '@available' attribute to enclosing instance method
188 |         if subscriptionGroupStatus == .subscribed || subscriptionGroupStatus == .inGracePeriod {
189 |             isSubscribed = true
190 |         } else {
191 |             isSubscribed = false
    |             |- error: setter for 'isSubscribed' is only available in macOS 11.0 or newer
    |             `- note: add 'if #available' version check
192 |         }
193 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:197:43: error: conformance of 'Product' to 'Equatable' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
193 |     }
194 |
195 |     func isProductPurchased(with productId: String) -> Bool {
    |          `- note: add '@available' attribute to enclosing instance method
196 |         if let product = storeProducts.first(where: {$0.id == productId}) {
197 |             return purchasedSubscriptions.contains(product)
    |                                           |- error: conformance of 'Product' to 'Equatable' is only available in macOS 12.0 or newer
    |                                           `- note: add 'if #available' version check
198 |         }
199 |         return false
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:203:16: error: 'Task' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
200 |     }
201 |
202 |     func listenForTransactions() -> Task<Void, Error> {
    |          `- note: add '@available' attribute to enclosing instance method
203 |         return Task.detached {
    |                |- error: 'Task' is only available in macOS 10.15 or newer
    |                `- note: add 'if #available' version check
204 |             for await result in Transaction.updates {
205 |                 do {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:203:21: error: 'detached(name:priority:operation:)' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
200 |     }
201 |
202 |     func listenForTransactions() -> Task<Void, Error> {
    |          `- note: add '@available' attribute to enclosing instance method
203 |         return Task.detached {
    |                     |- error: 'detached(name:priority:operation:)' is only available in macOS 10.15 or newer
    |                     `- note: add 'if #available' version check
204 |             for await result in Transaction.updates {
205 |                 do {
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:204:45: error: 'updates' is only available in macOS 12.0 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
200 |     }
201 |
202 |     func listenForTransactions() -> Task<Void, Error> {
    |          `- note: add '@available' attribute to enclosing instance method
203 |         return Task.detached {
204 |             for await result in Transaction.updates {
    |                                             |- error: 'updates' is only available in macOS 12.0 or newer
    |                                             `- note: add 'if #available' version check
205 |                 do {
206 |                     let transaction = try result.payloadValue
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:232:13: error: cannot find 'UIApplication' in scope
230 |     func openSubscriptionSettings() {
231 |         if let appStoreSubscriptionURL = URL(string: "https://apps.apple.com/account/subscriptions") {
232 |             UIApplication.shared.open(appStoreSubscriptionURL, options: [:], completionHandler: nil)
    |             `- error: cannot find 'UIApplication' in scope
233 |         } else {
234 |             errorMessage = "Failed to open subscriptions."
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:232:97: error: 'nil' requires a contextual type
230 |     func openSubscriptionSettings() {
231 |         if let appStoreSubscriptionURL = URL(string: "https://apps.apple.com/account/subscriptions") {
232 |             UIApplication.shared.open(appStoreSubscriptionURL, options: [:], completionHandler: nil)
    |                                                                                                 `- error: 'nil' requires a contextual type
233 |         } else {
234 |             errorMessage = "Failed to open subscriptions."
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/RootStore.swift:234:13: error: setter for 'errorMessage' is only available in macOS 10.15 or newer
 18 | typealias RenewalState = StoreKit.Product.SubscriptionInfo.RenewalState
 19 |
 20 | class RootStore: ObservableObject {
    |       `- note: add '@available' attribute to enclosing class
 21 |     @AppStorage("subscribed") private var isSubscribed: Bool = false
 22 |     @Published var apiSubscriptionPlans: [SubscriptionPlan] = []
    :
228 |
229 |     @MainActor
230 |     func openSubscriptionSettings() {
    |          `- note: add '@available' attribute to enclosing instance method
231 |         if let appStoreSubscriptionURL = URL(string: "https://apps.apple.com/account/subscriptions") {
232 |             UIApplication.shared.open(appStoreSubscriptionURL, options: [:], completionHandler: nil)
233 |         } else {
234 |             errorMessage = "Failed to open subscriptions."
    |             |- error: setter for 'errorMessage' is only available in macOS 10.15 or newer
    |             `- note: add 'if #available' version check
235 |         }
236 |     }
[12/14] Compiling IosIapStore SubscriptionPlanService.swift
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Services/SubscriptionPlanService.swift:16:57: error: 'data(for:delegate:)' is only available in macOS 12.0 or newer
 8 | import Foundation
 9 |
10 | struct SubscriptionPlanService {
   |        `- note: add '@available' attribute to enclosing struct
11 |     func loadSubscriptionPlans(apiKey: String) async throws -> [SubscriptionPlan] {
   |          `- note: add '@available' attribute to enclosing instance method
12 |         do {
13 |             let url = URL(string: "https://05052a84-35de-4a87-ae64-2b32a9188b68.mock.pstmn.io/productDetails")!
14 |             var request = URLRequest(url: url)
15 |             request.setValue(apiKey, forHTTPHeaderField: "Authorization")
16 |             let (data, _) = try await URLSession.shared.data(for: request)
   |                                                         |- error: 'data(for:delegate:)' is only available in macOS 12.0 or newer
   |                                                         `- note: add 'if #available' version check
17 |             let plans = try JSONDecoder().decode([SubscriptionPlan].self, from: data)
18 |             return plans
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Services/SubscriptionPlanService.swift:45:51: error: 'data(for:delegate:)' is only available in macOS 12.0 or newer
 8 | import Foundation
 9 |
10 | struct SubscriptionPlanService {
   |        `- note: add '@available' attribute to enclosing struct
11 |     func loadSubscriptionPlans(apiKey: String) async throws -> [SubscriptionPlan] {
12 |         do {
   :
22 |     }
23 |
24 |     func sendVerifiedCheck(transaction: TransactionDetails, apiKey: String) async throws {
   |          `- note: add '@available' attribute to enclosing instance method
25 |         let urlString = "https://05052a84-35de-4a87-ae64-2b32a9188b68.mock.pstmn.io/transaction"
26 |         let url = URL(string: urlString)
   :
43 |                 // Set the HTTP body to the encoded JSON
44 |                 request.httpBody = jsonData
45 |                 let (data, _) = try await session.data(for: request);
   |                                                   |- error: 'data(for:delegate:)' is only available in macOS 12.0 or newer
   |                                                   `- note: add 'if #available' version check
46 |                 print("Post API response = \(data)")
47 |             } catch {
[13/14] Compiling IosIapStore SKProductStore.swift
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:14:79: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
 14 |     func fetchProductsFromAppStore(for productIds: [String]) async throws -> [Product] {
    |          |                                                                    `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 15 |         if(productIds.isEmpty) {
 16 |             throw StoreError.noProducts
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:30:35: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
 28 |     }
 29 |
 30 |     func sortByPrice(_ products: [Product]) -> [Product] {
    |          |                        `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 31 |         products.sorted(by: {return $0.price < $1.price})
 32 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:30:49: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
 28 |     }
 29 |
 30 |     func sortByPrice(_ products: [Product]) -> [Product] {
    |          |                                      `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
 31 |         products.sorted(by: {return $0.price < $1.price})
 32 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:100:92: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
 98 |     }
 99 |
100 |     func getSubscriptionGroupIdentifier(for transaction: Transaction, from storeProducts: [Product]) -> String? {
    |          |                                                                                 `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
101 |         if let product = storeProducts.first(where: { $0.id == transaction.productID }) {
102 |             return product.subscription?.subscriptionGroupID
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:107:38: error: 'VerificationResult' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
105 |     }
106 |
107 |     func checkVerified<T> (_ result: VerificationResult<T>) throws -> T {
    |          |                           `- error: 'VerificationResult' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
108 |         switch result {
109 |         case .unverified:
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:116:71: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
114 |     }
115 |
116 |     func getStoreProduct(with productId: String, from storeProducts: [Product]) -> Product? {
    |          |                                                            `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
117 |         return storeProducts.first(where: { $0.id == productId })
118 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:116:84: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
114 |     }
115 |
116 |     func getStoreProduct(with productId: String, from storeProducts: [Product]) -> Product? {
    |          |                                                                         `- error: 'Product' is only available in macOS 12.0 or newer
    |          `- note: add '@available' attribute to enclosing instance method
117 |         return storeProducts.first(where: { $0.id == productId })
118 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:19:46: error: 'Product' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
 14 |     func fetchProductsFromAppStore(for productIds: [String]) async throws -> [Product] {
    |          `- note: add '@available' attribute to enclosing instance method
 15 |         if(productIds.isEmpty) {
 16 |             throw StoreError.noProducts
 17 |         }
 18 |         do {
 19 |             let allStoreProducts = try await Product.products(for: productIds)
    |                                              |- error: 'Product' is only available in macOS 12.0 or newer
    |                                              `- note: add 'if #available' version check
 20 |             if allStoreProducts.count == 0 {
 21 |                 throw StoreError.noProductsInStore
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:19:54: error: 'products(for:)' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
 14 |     func fetchProductsFromAppStore(for productIds: [String]) async throws -> [Product] {
    |          `- note: add '@available' attribute to enclosing instance method
 15 |         if(productIds.isEmpty) {
 16 |             throw StoreError.noProducts
 17 |         }
 18 |         do {
 19 |             let allStoreProducts = try await Product.products(for: productIds)
    |                                                      |- error: 'products(for:)' is only available in macOS 12.0 or newer
    |                                                      `- note: add 'if #available' version check
 20 |             if allStoreProducts.count == 0 {
 21 |                 throw StoreError.noProductsInStore
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Utilities/SKProductStore.swift:84:36: error: 'price' is only available in macOS 12.0 or newer
  9 | import Foundation
 10 |
 11 | struct SKProductStore {
    |        `- note: add '@available' attribute to enclosing struct
 12 |     let subscriptionPlanService = SubscriptionPlanService();
 13 |
    :
 42 |     }
 43 |
 44 |     func mapTransactionToDetails(for transaction: Transaction, with userId: String) -> TransactionDetails {
    |          `- note: add '@available' attribute to enclosing instance method
 45 | /*
 46 |  "userId" : [USER_LOGIN_ID],
    :
 82 |                 originalPurchaseDate: transaction.originalPurchaseDate.timeIntervalSince1970,
 83 |                 originalTransactionId: transaction.originalID,
 84 |                 price: transaction.price ?? Decimal(0),
    |                                    |- error: 'price' is only available in macOS 12.0 or newer
    |                                    `- note: add 'if #available' version check
 85 |                 productId: transaction.productID,
 86 |                 purchaseDate: transaction.purchaseDate.timeIntervalSince1970,
[14/14] Compiling IosIapStore ToastView.swift
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:13:20: error: 'View' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         |          `- error: 'View' is only available in macOS 10.15 or newer
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:14:9: error: 'Text' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
   |         |- error: 'Text' is only available in macOS 10.15 or newer
   |         `- note: add 'if #available' version check
15 |             .foregroundColor(.white)
16 |             .padding()
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:15:14: error: 'foregroundColor' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
   |              |- error: 'foregroundColor' is only available in macOS 10.15 or newer
   |              `- note: add 'if #available' version check
16 |             .padding()
17 |             .background(Color.red.opacity(0.8))
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:15:31: error: 'white' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
   |                               |- error: 'white' is only available in macOS 10.15 or newer
   |                               `- note: add 'if #available' version check
16 |             .padding()
17 |             .background(Color.red.opacity(0.8))
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:16:14: error: 'padding' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
16 |             .padding()
   |              |- error: 'padding' is only available in macOS 10.15 or newer
   |              `- note: add 'if #available' version check
17 |             .background(Color.red.opacity(0.8))
18 |             .cornerRadius(8)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:17:14: error: 'background(_:ignoresSafeAreaEdges:)' is only available in macOS 12.0 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
16 |             .padding()
17 |             .background(Color.red.opacity(0.8))
   |              |- error: 'background(_:ignoresSafeAreaEdges:)' is only available in macOS 12.0 or newer
   |              `- note: add 'if #available' version check
18 |             .cornerRadius(8)
19 |             .shadow(radius: 5)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:17:25: error: 'Color' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
16 |             .padding()
17 |             .background(Color.red.opacity(0.8))
   |                         |- error: 'Color' is only available in macOS 10.15 or newer
   |                         `- note: add 'if #available' version check
18 |             .cornerRadius(8)
19 |             .shadow(radius: 5)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:17:31: error: 'red' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
16 |             .padding()
17 |             .background(Color.red.opacity(0.8))
   |                               |- error: 'red' is only available in macOS 10.15 or newer
   |                               `- note: add 'if #available' version check
18 |             .cornerRadius(8)
19 |             .shadow(radius: 5)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:17:35: error: 'opacity' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
16 |             .padding()
17 |             .background(Color.red.opacity(0.8))
   |                                   |- error: 'opacity' is only available in macOS 10.15 or newer
   |                                   `- note: add 'if #available' version check
18 |             .cornerRadius(8)
19 |             .shadow(radius: 5)
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:18:14: error: 'cornerRadius(_:antialiased:)' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
16 |             .padding()
17 |             .background(Color.red.opacity(0.8))
18 |             .cornerRadius(8)
   |              |- error: 'cornerRadius(_:antialiased:)' is only available in macOS 10.15 or newer
   |              `- note: add 'if #available' version check
19 |             .shadow(radius: 5)
20 |     }
/Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Views/ToastView.swift:19:14: error: 'shadow(color:radius:x:y:)' is only available in macOS 10.15 or newer
 8 | import SwiftUI
 9 |
10 | struct ToastView: View {
   |        `- note: add '@available' attribute to enclosing struct
11 |     let message: String
12 |
13 |     var body: some View {
   |         `- note: add '@available' attribute to enclosing property
14 |         Text(message)
15 |             .foregroundColor(.white)
   :
17 |             .background(Color.red.opacity(0.8))
18 |             .cornerRadius(8)
19 |             .shadow(radius: 5)
   |              |- error: 'shadow(color:radius:x:y:)' is only available in macOS 10.15 or newer
   |              `- note: add 'if #available' version check
20 |     }
21 | }
warning: 'spi-builder-workspace': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
    /Users/admin/builder/spi-builder-workspace/Sources/IosIapStore/Others/Media.xcassets
BUILD FAILURE 6.3 macosSpm