Skip to content

Commit c9ab1d5

Browse files
fix: Add conditional imports for Combine & SwiftUI (#173)
1 parent 082d611 commit c9ab1d5

14 files changed

+46
-4
lines changed

.github/semantic.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Always validate the PR title, and ignore the commits
2+
titleOnly: true

Sources/InstantSearch/SwiftUI/FacetList.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI) && (os(iOS) || os(macOS))
10+
import Combine
911
import SwiftUI
1012

11-
#if os(iOS) || os(macOS)
1213
/// A view presenting the list of facets
1314
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
1415
public struct FacetList<Row: View, NoResults: View>: View {

Sources/InstantSearch/SwiftUI/FacetRow.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI)
10+
import Combine
911
import SwiftUI
1012

1113
/// A view presenting the facet value and its selection state
@@ -46,3 +48,4 @@ public struct FacetRow: View {
4648
}
4749

4850
}
51+
#endif

Sources/InstantSearch/SwiftUI/HierarchicalList.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI) && os(iOS)
10+
import Combine
911
import SwiftUI
1012

11-
#if os(iOS)
1213
/// A view presenting the list of hierarchical facets
1314
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
1415
public struct HierarchicalList: View {

Sources/InstantSearch/SwiftUI/HitsList.swift

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI)
10+
import Combine
911
import SwiftUI
1012

1113
/// A view presenting the list of search hits
@@ -17,7 +19,7 @@ public struct HitsList<Row: View, Item: Codable, NoResults: View>: View {
1719
/// Closure constructing a hit row view
1820
public var row: (Item?, Int) -> Row
1921

20-
/// Closure constructing a no results view
22+
/// Closure constructing a no results view-
2123
public var noResults: (() -> NoResults)?
2224

2325
public init(_ hitsObservable: HitsObservableController<Item>,
@@ -107,3 +109,4 @@ struct HitsView_Previews: PreviewProvider {
107109
}
108110
}
109111
#endif
112+
#endif

Sources/InstantSearch/SwiftUI/SearchBar.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,10 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI) && os(iOS)
10+
import Combine
911
import SwiftUI
1012

11-
#if os(iOS)
1213
/// A specialized view for receiving search query text from the user.
1314
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
1415
public struct SearchBar: View {

Sources/InstantSearch/SwiftUI/Text+Highlighting.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,8 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI)
10+
import Combine
911
import SwiftUI
1012

1113
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
@@ -74,3 +76,4 @@ struct HighlightedText_Previews: PreviewProvider {
7476

7577
}
7678
#endif
79+
#endif

Sources/InstantSearchCore/SwiftUI/FacetListObservableController.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI)
10+
import Combine
11+
import SwiftUI
912

1013
/// FacetListController implementation adapted for usage with SwiftUI views
1114
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
@@ -47,3 +50,4 @@ public class FacetListObservableController: ObservableObject, FacetListControlle
4750
}
4851

4952
}
53+
#endif

Sources/InstantSearchCore/SwiftUI/FilterClearObservableController.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI)
10+
import Combine
11+
import SwiftUI
912

1013
/// FilterClearController implementation adapted for usage with SwiftUI views
1114
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
@@ -21,3 +24,4 @@ public class FilterClearObservableController: ObservableObject, FilterClearContr
2124
public init() {}
2225

2326
}
27+
#endif

Sources/InstantSearchCore/SwiftUI/HierarchicalObservableController.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
//
77

88
import Foundation
9+
#if canImport(Combine) && canImport(SwiftUI)
10+
import Combine
11+
import SwiftUI
912

1013
/// HierarchicalController implementation adapted for usage with SwiftUI views
1114
@available(iOS 13.0, OSX 10.15, tvOS 13.0, watchOS 6.0, *)
@@ -30,3 +33,4 @@ public class HierarchicalObservableController: ObservableObject, HierarchicalCon
3033
}
3134

3235
}
36+
#endif

0 commit comments

Comments
 (0)