Skip to content

Commit 2cc3996

Browse files
committed
Move StringRankedSearch to WordPressShared
1 parent 916af77 commit 2cc3996

File tree

6 files changed

+8
-16
lines changed

6 files changed

+8
-16
lines changed

WordPress/Classes/Utility/StringRankedSearch.swift renamed to Modules/Sources/WordPressShared/Utility/StringRankedSearch.swift

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
import Foundation
22

3-
struct StringRankedSearch {
3+
public struct StringRankedSearch {
44
/// By default, `[.caseInsensitive, .diacriticInsensitive]`.
55
var options: String.CompareOptions = [.caseInsensitive, .diacriticInsensitive]
66

77
private let term: String
88
private let terms: [String]
99

10-
init(searchTerm: String) {
10+
public init(searchTerm: String) {
1111
self.term = searchTerm.trimmingCharacters(in: .whitespaces)
1212
self.terms = term.components(separatedBy: .whitespaces).filter { !$0.isEmpty }
1313
}
1414

1515
/// Returns a score in a `0.0...1.0` range where `1.0` is maximum confidence.
1616
/// Anything above `0.5` suggests a good probability of a match.
17-
func score(for string: String?) -> Double {
17+
public func score(for string: String?) -> Double {
1818
guard let string else {
1919
return 0
2020
}
@@ -106,7 +106,7 @@ extension StringRankedSearch {
106106
/// Returns the top matching results for the given items.
107107
///
108108
/// - parameter input: Returns the input for the search algorithm to match against.
109-
func search<S: Sequence>(
109+
public func search<S: Sequence>(
110110
in items: S,
111111
minScore: Double = 0.7,
112112
input: (S.Element) -> String

WordPress/WordPressTest/StringRankedSearchTests.swift renamed to Modules/Tests/WordPressSharedTests/StringRankedSearchTests.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import XCTest
2-
3-
@testable import WordPress
2+
import WordPressShared
43

54
final class StringRankedSearchTests: XCTestCase {
65
func testScoreInRange() {

WordPress/Classes/ViewRelated/Blog/Site Picker/BlogList/BlogListViewModel.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import CoreData
22
import SwiftUI
3+
import WordPressShared
34

45
final class BlogListViewModel: NSObject, ObservableObject {
56
@Published var searchText = "" {

WordPress/Classes/ViewRelated/Post/Search/PostSearchSuggestionsService.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import UIKit
2+
import WordPressShared
23

34
/// Suggests search token for the given input and context. Performs all of the
45
/// work in the background.

WordPress/Classes/ViewRelated/Reader/Subscriptions/ReaderSubscriptionsView.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import SwiftUI
22
import WordPressUI
3+
import WordPressShared
34

45
struct ReaderSubscriptionsView: View {
56
@FetchRequest(

WordPress/WordPress.xcodeproj/project.pbxproj

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -576,9 +576,6 @@
576576
0C9CD7A02B9A6FDC0045BE03 /* remote-post.json in Resources */ = {isa = PBXBuildFile; fileRef = 0C9CD79F2B9A6FDC0045BE03 /* remote-post.json */; };
577577
0CA10F6D2ADAE86D00CE75AC /* PostSearchSuggestionsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA10F6C2ADAE86D00CE75AC /* PostSearchSuggestionsService.swift */; };
578578
0CA10F6E2ADAE86E00CE75AC /* PostSearchSuggestionsService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA10F6C2ADAE86D00CE75AC /* PostSearchSuggestionsService.swift */; };
579-
0CA10F732ADB014C00CE75AC /* StringRankedSearch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA10F722ADB014C00CE75AC /* StringRankedSearch.swift */; };
580-
0CA10F742ADB014C00CE75AC /* StringRankedSearch.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA10F722ADB014C00CE75AC /* StringRankedSearch.swift */; };
581-
0CA10FA52ADB286300CE75AC /* StringRankedSearchTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA10FA42ADB286300CE75AC /* StringRankedSearchTests.swift */; };
582579
0CA10FA82ADB7C5200CE75AC /* PostSearchService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA10FA62ADB76ED00CE75AC /* PostSearchService.swift */; };
583580
0CA10FA92ADB7C5300CE75AC /* PostSearchService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA10FA62ADB76ED00CE75AC /* PostSearchService.swift */; };
584581
0CA15B4E2BB2128800518D6E /* PostCoordinatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0CA15B4D2BB2128800518D6E /* PostCoordinatorTests.swift */; };
@@ -6515,8 +6512,6 @@
65156512
0C9CD79C2B9A6ABF0045BE03 /* PostRepositorySaveTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostRepositorySaveTests.swift; sourceTree = "<group>"; };
65166513
0C9CD79F2B9A6FDC0045BE03 /* remote-post.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "remote-post.json"; sourceTree = "<group>"; };
65176514
0CA10F6C2ADAE86D00CE75AC /* PostSearchSuggestionsService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostSearchSuggestionsService.swift; sourceTree = "<group>"; };
6518-
0CA10F722ADB014C00CE75AC /* StringRankedSearch.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringRankedSearch.swift; sourceTree = "<group>"; };
6519-
0CA10FA42ADB286300CE75AC /* StringRankedSearchTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringRankedSearchTests.swift; sourceTree = "<group>"; };
65206515
0CA10FA62ADB76ED00CE75AC /* PostSearchService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostSearchService.swift; sourceTree = "<group>"; };
65216516
0CA15B4D2BB2128800518D6E /* PostCoordinatorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PostCoordinatorTests.swift; sourceTree = "<group>"; };
65226517
0CA1C8C02A940EE300F691EE /* AvatarMenuController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AvatarMenuController.swift; sourceTree = "<group>"; };
@@ -14565,7 +14560,6 @@
1456514560
F565190223CF6D1D003FACAF /* WKCookieJarTests.swift */,
1456614561
FE6BB1452932289B001E5F7A /* ContentMigrationCoordinatorTests.swift */,
1456714562
0C896DE62A3A832B00D7D4E7 /* SiteVisibilityTests.swift */,
14568-
0CA10FA42ADB286300CE75AC /* StringRankedSearchTests.swift */,
1456914563
4AD862E42AFAEF1700A07557 /* PostsListAPIStub.swift */,
1457014564
0C1DB60A2B0A9A570028F200 /* ImageDownloaderTests.swift */,
1457114565
4A5598842B05AC180083C220 /* PagesListTests.swift */,
@@ -14709,7 +14703,6 @@
1470914703
175721152754D31F00DE38BC /* AppIcon.swift */,
1471014704
4A2172F728EAACFF0006F4F1 /* BlogQuery.swift */,
1471114705
801D9519291AC0B00051993E /* OverlayFrequencyTracker.swift */,
14712-
0CA10F722ADB014C00CE75AC /* StringRankedSearch.swift */,
1471314706
4A5DE7372B0D511900363171 /* PageTree.swift */,
1471414707
FA87A22D2BF798E40062154A /* Version.swift */,
1471514708
0C03EF9E2C495D2E00B7F828 /* SharedStrings.swift */,
@@ -23193,7 +23186,6 @@
2319323186
241E60B325CA0D2900912CEB /* UserSettings.swift in Sources */,
2319423187
0815CF461E96F22600069916 /* MediaImportService.swift in Sources */,
2319523188
B56F25881FBDE502005C33E4 /* NSAttributedStringKey+Conversion.swift in Sources */,
23196-
0CA10F732ADB014C00CE75AC /* StringRankedSearch.swift in Sources */,
2319723189
08AA64052A84FFF40076E38D /* DashboardGoogleDomainsViewModel.swift in Sources */,
2319823190
98E54FF2265C972900B4BE9A /* ReaderDetailLikesView.swift in Sources */,
2319923191
FFABD80821370496003C65B6 /* SelectPostViewController.swift in Sources */,
@@ -24142,7 +24134,6 @@
2414224134
0C8FC9AA2A8C57000059DCE4 /* ItemProviderMediaExporterTests.swift in Sources */,
2414324135
4AD862E52AFAEF1700A07557 /* PostsListAPIStub.swift in Sources */,
2414424136
0A69300B28B5AA5E00E98DE1 /* FullScreenCommentReplyViewModelTests.swift in Sources */,
24145-
0CA10FA52ADB286300CE75AC /* StringRankedSearchTests.swift in Sources */,
2414624137
FF8032661EE9E22200861F28 /* MediaProgressCoordinatorTests.swift in Sources */,
2414724138
173D82E7238EE2A7008432DA /* FeatureFlagTests.swift in Sources */,
2414824139
3F4A4C212AD39CB100DE5DF8 /* TruthTable.swift in Sources */,
@@ -24993,7 +24984,6 @@
2499324984
0C0D3B0E2A4C79DE0050A00D /* BlazeCampaignsStream.swift in Sources */,
2499424985
FABB22792602FC2C00C8785C /* WPCrashLoggingProvider.swift in Sources */,
2499524986
FA332AD529C1FC7A00182FBB /* MovedToJetpackViewModel.swift in Sources */,
24996-
0CA10F742ADB014C00CE75AC /* StringRankedSearch.swift in Sources */,
2499724987
0CDDCA0C2C8F4990005AACA3 /* ReaderTagsHelper.swift in Sources */,
2499824988
FABB227A2602FC2C00C8785C /* StockPhotosMedia.swift in Sources */,
2499924989
FABB227B2602FC2C00C8785C /* FancyAlertViewController+SavedPosts.swift in Sources */,

0 commit comments

Comments
 (0)