diff --git a/README_TR.md b/README_TR.md
index dedc750..23ea5cc 100644
--- a/README_TR.md
+++ b/README_TR.md
@@ -11,14 +11,14 @@
-
+
# tl;dr
-Swift'in `Codable` protokolüne bayılıyorsun ve her yerde kullanıyorsun, kim kullanmadı ki! İşte `Codable` objelerini saklamak ve istediğiniz zaman geri almak için kolay ve hafif bir yol!
+Swift'in `Codable` protokolüne bayılıyorsun ve her yerde kullanıyorsun, kim kullanmadı ki! İşte `Codable` objelerini saklamak ve istediğiniz zaman geri almak için kolay ve hafif bir yol!
## Kurulum
@@ -150,14 +150,14 @@ let usersCount = usersStore.objectsCount
```
-##
+##
[`SingleUserDefaultsStore`](https://github.com/omaralbeik/UserDefaultsStore/blob/master/Sources/SingleUserDefaultsStore.swift)'ı kullanarak tek bir nesneyi saklayabilirsiniz. Token ve giriş yapmış kullanıcı verisi gibi, ...
## Gereksinimler
- iOS 8.0+ / macOS 10.10+ / tvOS 9.0+ / watchOS 2.0+
-- Xcode 9+
-- Swift 4+
+- Xcode 10.0+
+- Swift 4.2+
## Teşekkürler
@@ -170,5 +170,3 @@ Swift Keypath'leri kullanarak daha doğal kod nasıl yazılır sorusuna cevap ve
## Lisans
UserDefaultsStore MIT lisansı altında yayınlandı. Daha fazlası için [LICENSE](https://github.com/omaralbeik/UserDefaultsStore/blob/master/LICENSE) dosyasına bakabilirsiniz.
-
-
diff --git a/Sources/Identifiable.swift b/Sources/Identifiable.swift
index f5495a0..5086cd6 100644
--- a/Sources/Identifiable.swift
+++ b/Sources/Identifiable.swift
@@ -27,7 +27,7 @@ import Foundation
public protocol Identifiable {
/// ID type.
- associatedtype ID: Hashable
+ associatedtype ID
/// Id Key.
static var idKey: WritableKeyPath { get }
diff --git a/Sources/Info.plist b/Sources/Info.plist
index 0eb186c..4bbc96d 100755
--- a/Sources/Info.plist
+++ b/Sources/Info.plist
@@ -15,7 +15,7 @@
CFBundlePackageType
FMWK
CFBundleShortVersionString
- 1.2.2
+ 1.3
CFBundleSignature
????
CFBundleVersion
diff --git a/Sources/SingleUserDefaultsStore.swift b/Sources/SingleUserDefaultsStore.swift
index 9f9863c..892b86c 100644
--- a/Sources/SingleUserDefaultsStore.swift
+++ b/Sources/SingleUserDefaultsStore.swift
@@ -69,6 +69,7 @@ open class SingleUserDefaultsStore {
/// Delete object from store. _O(1)_
public func delete() {
+ store.set(nil, forKey: key)
store.removeSuite(named: uniqueIdentifier)
}
diff --git a/Sources/UserDefaultsStore.swift b/Sources/UserDefaultsStore.swift
index 4d73123..1b788fa 100644
--- a/Sources/UserDefaultsStore.swift
+++ b/Sources/UserDefaultsStore.swift
@@ -186,7 +186,7 @@ private extension UserDefaultsStore {
/// - Parameter object: object.
/// - Returns: UserDefaults key for given object.
func key(for object: T) -> String {
- return "\(uniqueIdentifier)-\(object[keyPath: T.idKey].hashValue)"
+ return "\(uniqueIdentifier)-\(object[keyPath: T.idKey])"
}
/// store key for object by its id.
@@ -194,7 +194,7 @@ private extension UserDefaultsStore {
/// - Parameter id: object id.
/// - Returns: UserDefaults key for given id.
func key(for id: T.ID) -> String {
- return "\(uniqueIdentifier)-\(id.hashValue)"
+ return "\(uniqueIdentifier)-\(id)"
}
/// Check if a UserDefaults key is an object key.
diff --git a/UserDefaultsStore.podspec b/UserDefaultsStore.podspec
index 7c4a589..aa55082 100644
--- a/UserDefaultsStore.podspec
+++ b/UserDefaultsStore.podspec
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = "UserDefaultsStore"
- s.version = "1.2.2"
+ s.version = "1.3"
s.summary = "Why not use UserDefaults to store Codable objects 😉"
s.description = <<-DESC
You love Swift"s Codable protocol and use it everywhere, here is an easy and very light way to store - reasonable amount 😅 - of Codable objects, in a couple lines of code.