Skip to content

Commit 632c9e1

Browse files
committed
Fix conflicts after rebase
1 parent fbbace6 commit 632c9e1

4 files changed

Lines changed: 30 additions & 33 deletions

File tree

Discord Helper Intents/ConvertTimeIntentHandling.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,11 @@ class ConvertTimeIntentHandler: NSObject, ConvertTimeIntentHandling {
3030

3131
func provideTimezoneOptionsCollection(for intent: ConvertTimeIntent, searchTerm: String?, with completion: @escaping (INObjectCollection<INTimezone>?, Error?) -> Void) {
3232
if let searchTerm = searchTerm {
33-
let searchResults = filteredTimeZones(by: searchTerm)
33+
let searchResults = TimeZone.filtered(by: searchTerm)
3434
let convertedTimezones = searchResults.map { INTimezone(from: $0) }
3535
completion(.init(items: convertedTimezones), nil)
3636
} else {
37-
let searchResults = filteredTimeZones(by: "")
37+
let searchResults = TimeZone.filtered(by: "")
3838
let convertedTimezones = searchResults.map { INTimezone(from: $0) }
3939
completion(.init(items: convertedTimezones), nil) }
4040
}

Elsewhen.xcodeproj/project.pbxproj

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -7,23 +7,24 @@
77
objects = {
88

99
/* Begin PBXBuildFile section */
10-
5E9BD44F26EE512E00383233 /* TimeZoneFlags.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE70E2126EC9AA500F3F164 /* TimeZoneFlags.swift */; };
1110
5E9BD45126EEA11900383233 /* UserDefaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9BD45026EEA11900383233 /* UserDefaults.swift */; };
11+
5E9BD45526EF446900383233 /* DateHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9BD45226EF446900383233 /* DateHelpers.swift */; };
12+
5E9BD45626EF446900383233 /* SearchBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9BD45326EF446900383233 /* SearchBar.swift */; };
13+
5E9BD45726EF446900383233 /* TimeZoneFlags.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9BD45426EF446900383233 /* TimeZoneFlags.swift */; };
14+
5E9BD45926EF44B700383233 /* MykeMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9BD45826EF44B700383233 /* MykeMode.swift */; };
15+
5E9BD45A26EF45FB00383233 /* DateHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9BD45226EF446900383233 /* DateHelpers.swift */; };
16+
5E9BD45B26EF460D00383233 /* TimeZoneFlags.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9BD45426EF446900383233 /* TimeZoneFlags.swift */; };
1217
5EAB48DD26E624CD00B04A60 /* TimezoneChoiceView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EAB48DC26E624CD00B04A60 /* TimezoneChoiceView.swift */; };
1318
5EB23B9D26E406B600203153 /* ElsewhenApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EB23B9C26E406B600203153 /* ElsewhenApp.swift */; };
1419
5EB23B9F26E406B600203153 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EB23B9E26E406B600203153 /* ContentView.swift */; };
1520
5EB23BA126E406B900203153 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5EB23BA026E406B900203153 /* Assets.xcassets */; };
1621
5EB23BA426E406B900203153 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5EB23BA326E406B900203153 /* Preview Assets.xcassets */; };
17-
5EB31FB726E6390D00826907 /* SearchBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EB31FB626E6390D00826907 /* SearchBar.swift */; };
18-
5EE70E2226EC9AA600F3F164 /* TimeZoneFlags.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE70E2126EC9AA500F3F164 /* TimeZoneFlags.swift */; };
19-
5EE70E2426ECBEED00F3F164 /* MykeMode.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE70E2326ECBEED00F3F164 /* MykeMode.swift */; };
2022
5EE70E2726ECCC0700F3F164 /* TimeCodeGeneratorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE70E2626ECCC0700F3F164 /* TimeCodeGeneratorView.swift */; };
2123
5EE70E2A26ED21AA00F3F164 /* DateTimeZonePicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EE70E2926ED21AA00F3F164 /* DateTimeZonePicker.swift */; };
2224
635C8FA726E66E8300361B08 /* DiscordFormattedDate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 635C8FA626E66E8300361B08 /* DiscordFormattedDate.swift */; };
2325
6378397E26EA5FD60055A10D /* UIApplication+clearLaunchScreenCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6378397D26EA5FD60055A10D /* UIApplication+clearLaunchScreenCache.swift */; };
2426
6378398026EA61AB0055A10D /* Launch Screen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6378397F26EA61AB0055A10D /* Launch Screen.storyboard */; };
2527
6378398326EB80C30055A10D /* ResultSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6378398226EB80C30055A10D /* ResultSheet.swift */; };
26-
6378398526EB80F50055A10D /* DateHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6378398426EB80F50055A10D /* DateHelpers.swift */; };
2728
6378398726EBA7C60055A10D /* DateTimeSelection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6378398626EBA7C60055A10D /* DateTimeSelection.swift */; };
2829
6378398F26EBF4750055A10D /* Intents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6378398E26EBF4750055A10D /* Intents.framework */; };
2930
6378399226EBF4750055A10D /* IntentHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6378399126EBF4750055A10D /* IntentHandler.swift */; };
@@ -35,7 +36,6 @@
3536
637839B026EBF4910055A10D /* Intents.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = 637839AF26EBF4910055A10D /* Intents.intentdefinition */; };
3637
637839B226EBF5FD0055A10D /* ConvertTimeIntentHandling.swift in Sources */ = {isa = PBXBuildFile; fileRef = 637839B126EBF5FD0055A10D /* ConvertTimeIntentHandling.swift */; };
3738
637839B526EBF8130055A10D /* FormatCodeExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 637839B426EBF8130055A10D /* FormatCodeExtension.swift */; };
38-
637839B626EBF9690055A10D /* DateHelpers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6378398426EB80F50055A10D /* DateHelpers.swift */; };
3939
637839B826ECAF830055A10D /* InTimeZoneExtension.swift in Sources */ = {isa = PBXBuildFile; fileRef = 637839B726ECAF830055A10D /* InTimeZoneExtension.swift */; };
4040
637839BA26ECB58D0055A10D /* Intents.intentdefinition in Sources */ = {isa = PBXBuildFile; fileRef = 637839AF26EBF4910055A10D /* Intents.intentdefinition */; };
4141
637839BD26ECB8C20055A10D /* Loggers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 637839BC26ECB8C10055A10D /* Loggers.swift */; };
@@ -80,22 +80,22 @@
8080

8181
/* Begin PBXFileReference section */
8282
5E9BD45026EEA11900383233 /* UserDefaults.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserDefaults.swift; sourceTree = "<group>"; };
83+
5E9BD45226EF446900383233 /* DateHelpers.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DateHelpers.swift; sourceTree = "<group>"; };
84+
5E9BD45326EF446900383233 /* SearchBar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SearchBar.swift; sourceTree = "<group>"; };
85+
5E9BD45426EF446900383233 /* TimeZoneFlags.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TimeZoneFlags.swift; sourceTree = "<group>"; };
86+
5E9BD45826EF44B700383233 /* MykeMode.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MykeMode.swift; sourceTree = "<group>"; };
8387
5EAB48DC26E624CD00B04A60 /* TimezoneChoiceView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimezoneChoiceView.swift; sourceTree = "<group>"; };
8488
5EB23B9926E406B600203153 /* Elsewhen.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Elsewhen.app; sourceTree = BUILT_PRODUCTS_DIR; };
8589
5EB23B9C26E406B600203153 /* ElsewhenApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ElsewhenApp.swift; sourceTree = "<group>"; };
8690
5EB23B9E26E406B600203153 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
8791
5EB23BA026E406B900203153 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
8892
5EB23BA326E406B900203153 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
89-
5EB31FB626E6390D00826907 /* SearchBar.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SearchBar.swift; sourceTree = "<group>"; };
90-
5EE70E2126EC9AA500F3F164 /* TimeZoneFlags.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimeZoneFlags.swift; sourceTree = "<group>"; };
91-
5EE70E2326ECBEED00F3F164 /* MykeMode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MykeMode.swift; sourceTree = "<group>"; };
9293
5EE70E2626ECCC0700F3F164 /* TimeCodeGeneratorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TimeCodeGeneratorView.swift; sourceTree = "<group>"; };
9394
5EE70E2926ED21AA00F3F164 /* DateTimeZonePicker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DateTimeZonePicker.swift; sourceTree = "<group>"; };
9495
635C8FA626E66E8300361B08 /* DiscordFormattedDate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DiscordFormattedDate.swift; sourceTree = "<group>"; };
9596
6378397D26EA5FD60055A10D /* UIApplication+clearLaunchScreenCache.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIApplication+clearLaunchScreenCache.swift"; sourceTree = "<group>"; };
9697
6378397F26EA61AB0055A10D /* Launch Screen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = "Launch Screen.storyboard"; sourceTree = "<group>"; };
9798
6378398226EB80C30055A10D /* ResultSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResultSheet.swift; sourceTree = "<group>"; };
98-
6378398426EB80F50055A10D /* DateHelpers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DateHelpers.swift; sourceTree = "<group>"; };
9999
6378398626EBA7C60055A10D /* DateTimeSelection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DateTimeSelection.swift; sourceTree = "<group>"; };
100100
6378398C26EBF4750055A10D /* Discord Helper Intents.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "Discord Helper Intents.appex"; sourceTree = BUILT_PRODUCTS_DIR; };
101101
6378398E26EBF4750055A10D /* Intents.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Intents.framework; path = System/Library/Frameworks/Intents.framework; sourceTree = SDKROOT; };
@@ -176,11 +176,7 @@
176176
5EE70E2826ED0EE700F3F164 /* Helpers */,
177177
5EB23B9C26E406B600203153 /* ElsewhenApp.swift */,
178178
5EB23B9E26E406B600203153 /* ContentView.swift */,
179-
5EE70E2326ECBEED00F3F164 /* MykeMode.swift */,
180-
6378398426EB80F50055A10D /* DateHelpers.swift */,
181179
637839BC26ECB8C10055A10D /* Loggers.swift */,
182-
5EB31FB626E6390D00826907 /* SearchBar.swift */,
183-
5EE70E2126EC9AA500F3F164 /* TimeZoneFlags.swift */,
184180
5EB23BA026E406B900203153 /* Assets.xcassets */,
185181
5EB23BA226E406B900203153 /* Preview Content */,
186182
6378397F26EA61AB0055A10D /* Launch Screen.storyboard */,
@@ -200,17 +196,17 @@
200196
isa = PBXGroup;
201197
children = (
202198
5EE70E2626ECCC0700F3F164 /* TimeCodeGeneratorView.swift */,
203-
5EE70E2326ECBEED00F3F164 /* MykeMode.swift */,
199+
5E9BD45826EF44B700383233 /* MykeMode.swift */,
204200
);
205201
path = Views;
206202
sourceTree = "<group>";
207203
};
208204
5EE70E2826ED0EE700F3F164 /* Helpers */ = {
209205
isa = PBXGroup;
210206
children = (
211-
6378398426EB80F50055A10D /* DateHelpers.swift */,
212-
5EB31FB626E6390D00826907 /* SearchBar.swift */,
213-
5EE70E2126EC9AA500F3F164 /* TimeZoneFlags.swift */,
207+
5E9BD45226EF446900383233 /* DateHelpers.swift */,
208+
5E9BD45326EF446900383233 /* SearchBar.swift */,
209+
5E9BD45426EF446900383233 /* TimeZoneFlags.swift */,
214210
);
215211
path = Helpers;
216212
sourceTree = "<group>";
@@ -410,36 +406,36 @@
410406
buildActionMask = 2147483647;
411407
files = (
412408
5EE70E2A26ED21AA00F3F164 /* DateTimeZonePicker.swift in Sources */,
413-
5EE70E2226EC9AA600F3F164 /* TimeZoneFlags.swift in Sources */,
414409
5EB23B9F26E406B600203153 /* ContentView.swift in Sources */,
415-
5EE70E2426ECBEED00F3F164 /* MykeMode.swift in Sources */,
416-
5EB31FB726E6390D00826907 /* SearchBar.swift in Sources */,
417410
6378397E26EA5FD60055A10D /* UIApplication+clearLaunchScreenCache.swift in Sources */,
411+
5E9BD45926EF44B700383233 /* MykeMode.swift in Sources */,
418412
5EAB48DD26E624CD00B04A60 /* TimezoneChoiceView.swift in Sources */,
419413
637839BD26ECB8C20055A10D /* Loggers.swift in Sources */,
420414
5EE70E2726ECCC0700F3F164 /* TimeCodeGeneratorView.swift in Sources */,
421415
6378398726EBA7C60055A10D /* DateTimeSelection.swift in Sources */,
416+
5E9BD45726EF446900383233 /* TimeZoneFlags.swift in Sources */,
422417
637839CB26ED11360055A10D /* TimeZone+ItemProvider.swift in Sources */,
423418
6378398326EB80C30055A10D /* ResultSheet.swift in Sources */,
424419
5E9BD45126EEA11900383233 /* UserDefaults.swift in Sources */,
425-
6378398526EB80F50055A10D /* DateHelpers.swift in Sources */,
426420
635C8FA726E66E8300361B08 /* DiscordFormattedDate.swift in Sources */,
421+
5E9BD45626EF446900383233 /* SearchBar.swift in Sources */,
427422
637839BA26ECB58D0055A10D /* Intents.intentdefinition in Sources */,
428423
5EB23B9D26E406B600203153 /* ElsewhenApp.swift in Sources */,
424+
5E9BD45526EF446900383233 /* DateHelpers.swift in Sources */,
429425
);
430426
runOnlyForDeploymentPostprocessing = 0;
431427
};
432428
6378398826EBF4750055A10D /* Sources */ = {
433429
isa = PBXSourcesBuildPhase;
434430
buildActionMask = 2147483647;
435431
files = (
436-
5E9BD44F26EE512E00383233 /* TimeZoneFlags.swift in Sources */,
437432
637839B026EBF4910055A10D /* Intents.intentdefinition in Sources */,
438433
6378399226EBF4750055A10D /* IntentHandler.swift in Sources */,
439434
637839B526EBF8130055A10D /* FormatCodeExtension.swift in Sources */,
440435
637839BE26ECB8CE0055A10D /* Loggers.swift in Sources */,
441-
637839B626EBF9690055A10D /* DateHelpers.swift in Sources */,
442436
637839B226EBF5FD0055A10D /* ConvertTimeIntentHandling.swift in Sources */,
437+
5E9BD45A26EF45FB00383233 /* DateHelpers.swift in Sources */,
438+
5E9BD45B26EF460D00383233 /* TimeZoneFlags.swift in Sources */,
443439
637839B826ECAF830055A10D /* InTimeZoneExtension.swift in Sources */,
444440
637839C126ECBA5B0055A10D /* NSUserInfoKeys.swift in Sources */,
445441
);

Elsewhen/Elements/TimezoneChoiceView.swift

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,6 @@ struct TimezoneChoiceView: View {
1717
var selectMultiple: Bool
1818
@State private var searchTerm: String = ""
1919

20-
private var filteredTimeZones: [TimeZone] {
21-
return TimeZone.knownTimeZoneIdentifiers.compactMap { tz in
22-
TimeZone(identifier: tz)
23-
}.filter { $0.matches(searchTerm: searchTerm) }
24-
}
25-
2620
private func timeZoneIsSelected(_ tz: TimeZone) -> Bool {
2721
if selectMultiple {
2822
return selectedTimeZones.contains(tz)
@@ -35,7 +29,7 @@ struct TimezoneChoiceView: View {
3529
List {
3630
SearchBar(text: $searchTerm, placeholder: "Search...")
3731
.padding(.horizontal, -10)
38-
ForEach(filteredTimeZones(by: searchTerm), id: \.self) { tz in
32+
ForEach(TimeZone.filtered(by: searchTerm), id: \.self) { tz in
3933
Button(action: {
4034
if self.selectMultiple {
4135
if let index = self.selectedTimeZones.firstIndex(of: tz) {

Elsewhen/Helpers/DateHelpers.swift

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,13 @@ extension TimeZone {
8585
flagForTimeZone(self)
8686
}
8787

88+
static func filtered(by searchTerm: String) -> [TimeZone] {
89+
let st = searchTerm.trimmingCharacters(in: .whitespaces).lowercased().replacingOccurrences(of: " ", with: "_")
90+
return TimeZone.knownTimeZoneIdentifiers.compactMap { tz in
91+
TimeZone(identifier: tz)
92+
}.filter { $0.matches(searchTerm: st) }
93+
}
94+
8895
func matches(searchTerm: String) -> Bool {
8996
let st = searchTerm.trimmingCharacters(in: .whitespacesAndNewlines).lowercased()
9097
if st == "" {

0 commit comments

Comments
 (0)