Skip to content

Commit d134b31

Browse files
committed
Build and crash fixes
1 parent 8db4af7 commit d134b31

4 files changed

Lines changed: 10 additions & 13 deletions

File tree

app/src/googlePlay/java/ua/syt0r/kanji/core/review/ReviewEligibilityUseCase.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package ua.syt0r.kanji.core.review
22

3-
import ua.syt0r.kanji.core.user_data.practice.ReviewHistoryRepository
3+
import ua.syt0r.kanji.core.user_data.database.ReviewHistoryRepository
44

55
class ReviewEligibilityUseCase(
66
private val reviewHistoryRepository: ReviewHistoryRepository

core/src/commonMain/kotlin/ua/syt0r/kanji/core/VocabCardResolver.kt

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
package ua.syt0r.kanji.core
22

3-
import kotlinx.coroutines.CoroutineStart
4-
import kotlinx.coroutines.async
53
import kotlinx.coroutines.coroutineScope
64
import ua.syt0r.kanji.core.app_data.AppDataRepository
75
import ua.syt0r.kanji.core.app_data.data.FuriganaString
@@ -41,19 +39,17 @@ class VocabCardResolver(
4139
val kanjiReading = vocabCard.data.kanjiReading
4240
val kanaReading = vocabCard.data.kanaReading
4341

44-
val word = async(start = CoroutineStart.LAZY) {
45-
vocabCard.data
46-
.run { appDataRepository.findWords(dictionaryId, kanjiReading, kanaReading) }
47-
.firstOrNull()
42+
val word = vocabCard.data.run {
43+
appDataRepository.getWord(dictionaryId, kanjiReading, kanaReading)
4844
}
4945

5046
ResolvedVocabCard(
5147
dictionaryId = vocabCard.data.dictionaryId,
5248
kanjiReading = kanjiReading,
5349
kanaReading = kanaReading,
54-
furigana = word.await()?.reading?.furigana,
55-
meaning = vocabCard.data.meaning ?: word.await()!!.combinedGlossary(),
56-
pos = word.await()?.partOfSpeechList ?: emptyList()
50+
furigana = word.reading.furigana,
51+
meaning = vocabCard.data.meaning ?: word.combinedGlossary(),
52+
pos = word.partOfSpeechList
5753
)
5854
}
5955
}

core/src/commonMain/kotlin/ua/syt0r/kanji/core/app_data/SqlDelightAppDataRepository.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,8 @@ class SqlDelightAppDataRepository(
178178
else -> {
179179
val element = elements
180180
.sortedBy { it.priority ?: Long.MAX_VALUE }
181-
.first { it.reading == kanjiReading || it.reading == kanaReading }
181+
.firstOrNull { it.reading == kanjiReading || it.reading == kanaReading }
182+
?: return@mapNotNull null
182183
getWord(
183184
id = wordId,
184185
kanaReading = element.reading.takeIf { element.isKana == 1L },

core/src/commonMain/kotlin/ua/syt0r/kanji/core/user_data/database/sqldelight/SqlDelightReviewHistoryRepository.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,8 @@ class SqlDelightReviewHistoryRepository(
9393
): Map<String, ReviewHistoryStatItem> = userDataDatabaseManager.readTransaction {
9494
val timeDelimiter = "|"
9595
val practiceTypeDelimiter = ";"
96-
getReviewHistoryStatsForKeys(keys)
97-
.executeAsList()
96+
keys.chunked(500)
97+
.flatMap { getReviewHistoryStatsForKeys(it).executeAsList() }
9898
.associate {
9999
it.key to ReviewHistoryStatItem(
100100
key = it.key,

0 commit comments

Comments
 (0)