fix: Immutables

This commit is contained in:
Ahmad Ansori Palembani 2024-06-09 16:11:53 +07:00
parent caf731fc14
commit 2c2daa0cd7
Signed by: null2264
GPG key ID: BA64F8B60AF3EFB6
4 changed files with 7 additions and 5 deletions

View file

@ -293,6 +293,8 @@ dependencies {
// Android Chart // Android Chart
implementation(libs.mpandroidchart) implementation(libs.mpandroidchart)
implementation(kotlinx.immutable)
// Tests // Tests
testImplementation(libs.bundles.test) testImplementation(libs.bundles.test)
testRuntimeOnly(libs.bundles.test.runtime) testRuntimeOnly(libs.bundles.test.runtime)

View file

@ -4,8 +4,6 @@ import androidx.annotation.StringRes
import androidx.compose.runtime.Immutable import androidx.compose.runtime.Immutable
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import dev.yokai.domain.extension.repo.ExtensionRepoRepository
import dev.yokai.domain.Result
import dev.yokai.domain.extension.repo.interactor.CreateExtensionRepo import dev.yokai.domain.extension.repo.interactor.CreateExtensionRepo
import dev.yokai.domain.extension.repo.interactor.DeleteExtensionRepo import dev.yokai.domain.extension.repo.interactor.DeleteExtensionRepo
import dev.yokai.domain.extension.repo.interactor.GetExtensionRepo import dev.yokai.domain.extension.repo.interactor.GetExtensionRepo
@ -15,12 +13,13 @@ import dev.yokai.domain.extension.repo.model.ExtensionRepo
import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.R
import eu.kanade.tachiyomi.extension.ExtensionManager import eu.kanade.tachiyomi.extension.ExtensionManager
import eu.kanade.tachiyomi.util.system.launchIO import eu.kanade.tachiyomi.util.system.launchIO
import kotlinx.collections.immutable.ImmutableList
import kotlinx.collections.immutable.toImmutableList
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow
import kotlinx.coroutines.flow.asStateFlow import kotlinx.coroutines.flow.asStateFlow
import kotlinx.coroutines.flow.collectLatest import kotlinx.coroutines.flow.collectLatest
import kotlinx.coroutines.flow.update import kotlinx.coroutines.flow.update
import okhttp3.internal.toImmutableList
import uy.kohesive.injekt.injectLazy import uy.kohesive.injekt.injectLazy
class ExtensionRepoViewModel : class ExtensionRepoViewModel :
@ -106,7 +105,7 @@ sealed class ExtensionRepoState {
@Immutable @Immutable
data class Success( data class Success(
val repos: List<ExtensionRepo>, val repos: ImmutableList<ExtensionRepo>,
) : ExtensionRepoState() { ) : ExtensionRepoState() {
val isEmpty: Boolean val isEmpty: Boolean

View file

@ -12,7 +12,7 @@ import eu.kanade.tachiyomi.data.track.mangaupdates.dto.copyTo
import eu.kanade.tachiyomi.data.track.mangaupdates.dto.toTrackSearch import eu.kanade.tachiyomi.data.track.mangaupdates.dto.toTrackSearch
import eu.kanade.tachiyomi.data.track.model.TrackSearch import eu.kanade.tachiyomi.data.track.model.TrackSearch
import eu.kanade.tachiyomi.data.track.updateNewTrackInfo import eu.kanade.tachiyomi.data.track.updateNewTrackInfo
import okhttp3.internal.toImmutableList import kotlinx.collections.immutable.toImmutableList
class MangaUpdates(private val context: Context, id: Int) : TrackService(id) { class MangaUpdates(private val context: Context, id: Int) : TrackService(id) {

View file

@ -14,6 +14,7 @@ serialization-json-okio = { module = "org.jetbrains.kotlinx:kotlinx-serializatio
serialization-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-serialization-protobuf", version.ref = "serialization" } serialization-protobuf = { module = "org.jetbrains.kotlinx:kotlinx-serialization-protobuf", version.ref = "serialization" }
serialization-xml-core = { module = "io.github.pdvrieze.xmlutil:core-android", version.ref = "xml_serialization" } serialization-xml-core = { module = "io.github.pdvrieze.xmlutil:core-android", version.ref = "xml_serialization" }
serialization-xml = { module = "io.github.pdvrieze.xmlutil:serialization-android", version.ref = "xml_serialization" } serialization-xml = { module = "io.github.pdvrieze.xmlutil:serialization-android", version.ref = "xml_serialization" }
immutable = { module = "org.jetbrains.kotlinx:kotlinx-collections-immutable", version = "0.3.7" }
[bundles] [bundles]
serialization = [ serialization = [