Skip to content

Commit 29fb26a

Browse files
authored
Merge pull request #77 from uhooi/feature/fix_showing_error
Fix Error alert appears at first launch
2 parents 32e4f4e + 4365b55 commit 29fb26a

File tree

2 files changed

+13
-7
lines changed

2 files changed

+13
-7
lines changed

TotonoiPackage/Sources/Core/UserDefaults/UserDefaultsClient.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,13 @@ public typealias UserDefaultsGettable = Decodable
44
public typealias UserDefaultsSettable = Encodable
55
public typealias UserDefaultsPersistable = UserDefaultsGettable & UserDefaultsSettable
66

7-
private enum UserDefaultsError: LocalizedError {
8-
case gettingFailed(key: String)
7+
public enum UserDefaultsError: LocalizedError {
8+
case missingValue(key: String)
99

10-
var errorDescription: String? {
10+
public var errorDescription: String? {
1111
switch self {
12-
case .gettingFailed:
13-
return "オブジェクトの取得に失敗しました"
12+
case .missingValue:
13+
return "対象のキーに値が存在しません"
1414
}
1515
}
1616
}
@@ -26,7 +26,7 @@ public struct UserDefaultsClient {
2626
let jsonDecoder = JSONDecoder()
2727
jsonDecoder.keyDecodingStrategy = .convertFromSnakeCase
2828
guard let data = userDefaults.data(forKey: defaultName) else {
29-
throw UserDefaultsError.gettingFailed(key: defaultName)
29+
throw UserDefaultsError.missingValue(key: defaultName)
3030
}
3131
return try jsonDecoder.decode(V.self, from: data)
3232
}

TotonoiPackage/Sources/Data/Sakatsu/SakatsuRepository.swift

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,13 @@ public struct SakatsuUserDefaultsClient {
1616

1717
extension SakatsuUserDefaultsClient: SakatsuRepository {
1818
public func sakatsus() throws -> [Sakatsu] {
19-
try userDefaultsClient.object(forKey: Self.sakatsusKey)
19+
do {
20+
return try userDefaultsClient.object(forKey: Self.sakatsusKey)
21+
} catch UserDefaultsError.missingValue {
22+
return []
23+
} catch {
24+
throw error
25+
}
2026
}
2127

2228
public func saveSakatsus(_ sakatsus: [Sakatsu]) throws {

0 commit comments

Comments
 (0)