mirror of
https://github.com/InsanusMokrassar/MicroUtils.git
synced 2025-09-19 07:19:22 +00:00
Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
0a4465de33 | |||
f9dfd09628 | |||
8638d7afce | |||
8311793a43 | |||
0d552cfcd2 | |||
4b0f20dbd1 | |||
cf531c949d | |||
ba5c5f17d5 |
12
CHANGELOG.md
12
CHANGELOG.md
@@ -1,5 +1,17 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
|
## 0.20.35
|
||||||
|
|
||||||
|
* `Versions`:
|
||||||
|
* `Coroutines`: `1.7.3` -> `1.8.0`
|
||||||
|
* `Material3`: `1.1.2` -> `1.2.0`
|
||||||
|
|
||||||
|
## 0.20.34
|
||||||
|
|
||||||
|
* `Repos`:
|
||||||
|
* `Common`:
|
||||||
|
* Improve default `set` realization of `KeyValuesRepo`
|
||||||
|
|
||||||
## 0.20.33
|
## 0.20.33
|
||||||
|
|
||||||
* `Colors`
|
* `Colors`
|
||||||
|
@@ -15,5 +15,5 @@ crypto_js_version=4.1.1
|
|||||||
# Project data
|
# Project data
|
||||||
|
|
||||||
group=dev.inmo
|
group=dev.inmo
|
||||||
version=0.20.33
|
version=0.20.35
|
||||||
android_code_version=239
|
android_code_version=241
|
||||||
|
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
kt = "1.9.22"
|
kt = "1.9.22"
|
||||||
kt-serialization = "1.6.2"
|
kt-serialization = "1.6.2"
|
||||||
kt-coroutines = "1.7.3"
|
kt-coroutines = "1.8.0"
|
||||||
|
|
||||||
kslog = "1.3.2"
|
kslog = "1.3.2"
|
||||||
|
|
||||||
@@ -35,7 +35,7 @@ android-appCompat = "1.6.1"
|
|||||||
android-fragment = "1.6.2"
|
android-fragment = "1.6.2"
|
||||||
android-espresso = "3.5.1"
|
android-espresso = "3.5.1"
|
||||||
android-test = "1.1.5"
|
android-test = "1.1.5"
|
||||||
android-compose-material3 = "1.1.2"
|
android-compose-material3 = "1.2.0"
|
||||||
|
|
||||||
android-props-minSdk = "21"
|
android-props-minSdk = "21"
|
||||||
android-props-compileSdk = "34"
|
android-props-compileSdk = "34"
|
||||||
|
@@ -192,6 +192,10 @@ open class FullKeyValuesCacheRepo<Key,Value>(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override suspend fun set(toSet: Map<Key, List<Value>>) {
|
||||||
|
super<KeyValuesRepo>.set(toSet)
|
||||||
|
}
|
||||||
|
|
||||||
override suspend fun removeWithValue(v: Value) {
|
override suspend fun removeWithValue(v: Value) {
|
||||||
super<FullWriteKeyValuesCacheRepo>.removeWithValue(v)
|
super<FullWriteKeyValuesCacheRepo>.removeWithValue(v)
|
||||||
}
|
}
|
||||||
|
@@ -1,5 +1,6 @@
|
|||||||
package dev.inmo.micro_utils.repos
|
package dev.inmo.micro_utils.repos
|
||||||
|
|
||||||
|
import dev.inmo.micro_utils.common.diff
|
||||||
import dev.inmo.micro_utils.pagination.*
|
import dev.inmo.micro_utils.pagination.*
|
||||||
import dev.inmo.micro_utils.pagination.utils.doForAllWithNextPaging
|
import dev.inmo.micro_utils.pagination.utils.doForAllWithNextPaging
|
||||||
import dev.inmo.micro_utils.pagination.utils.getAllWithNextPaging
|
import dev.inmo.micro_utils.pagination.utils.getAllWithNextPaging
|
||||||
@@ -130,6 +131,14 @@ interface KeyValuesRepo<Key, Value> : ReadKeyValuesRepo<Key, Value>, WriteKeyVal
|
|||||||
|
|
||||||
remove(toRemove)
|
remove(toRemove)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override suspend fun set(toSet: Map<Key, List<Value>>) {
|
||||||
|
toSet.forEach { (k, v) ->
|
||||||
|
val diff = getAll(k).diff(v)
|
||||||
|
remove(k, diff.removed.map { it.value })
|
||||||
|
add(k, diff.added.map { it.value })
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
typealias OneToManyKeyValueRepo<Key,Value> = KeyValuesRepo<Key, Value>
|
typealias OneToManyKeyValueRepo<Key,Value> = KeyValuesRepo<Key, Value>
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user