From b143f5128273a0e58ed32bc836597df2d7dfd0d5 Mon Sep 17 00:00:00 2001 From: Yamin Siahmargooei Date: Fri, 17 May 2024 15:04:53 +0330 Subject: [PATCH] updated some libs --- app/build.gradle.kts | 8 +++---- .../owl/ui/content/home/HomeViewModel.kt | 2 +- build.gradle.kts | 4 ++-- data/build.gradle.kts | 2 +- .../io/github/yamin8000/owl/network/Web.kt | 22 +++++++++---------- 5 files changed, 18 insertions(+), 20 deletions(-) diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 7a211b6e..5c0227ed 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -27,7 +27,7 @@ plugins { id("kotlin-parcelize") } -private val composeCompilerVersion = "1.5.13" +private val composeCompilerVersion = "1.5.14" private val appId = "io.github.yamin8000.owl" @@ -39,8 +39,8 @@ android { applicationId = appId minSdk = 21 targetSdk = 34 - versionCode = 40 - versionName = "1.6.3" + versionCode = 41 + versionName = "1.6.4" vectorDrawables.useSupportLibrary = true archivesName = "$applicationId-v$versionCode($versionName)" } @@ -96,7 +96,7 @@ dependencies { implementation(project(":network")) //core android/kotlin implementation("androidx.core:core-ktx:1.13.1") - implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.7.0") + implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.0") implementation("org.jetbrains.kotlinx:kotlinx-collections-immutable:0.3.7") implementation("androidx.core:core-splashscreen:1.0.1") //compose diff --git a/app/src/main/java/io/github/yamin8000/owl/ui/content/home/HomeViewModel.kt b/app/src/main/java/io/github/yamin8000/owl/ui/content/home/HomeViewModel.kt index 0e8257a1..e65f1a23 100644 --- a/app/src/main/java/io/github/yamin8000/owl/ui/content/home/HomeViewModel.kt +++ b/app/src/main/java/io/github/yamin8000/owl/ui/content/home/HomeViewModel.kt @@ -145,7 +145,7 @@ internal class HomeViewModel( val cache = findCachedDefinitionOrNull(searchTerm) if (cache == null) { return try { - val result = Web.retrofit.getAPI().search(searchTerm.trim()) + val result = Web.getRetrofit().getAPI().search(searchTerm.trim()) val entry = result.firstOrNull() if (entry != null) { addWordToDatabase(entry) diff --git a/build.gradle.kts b/build.gradle.kts index db7a4c97..272b4213 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -22,6 +22,6 @@ plugins { id("com.android.application") version "8.4.0" apply false id("com.android.library") version "8.4.0" apply false - id("org.jetbrains.kotlin.android") version "1.9.23" apply false - id("com.google.devtools.ksp") version "1.9.23-1.0.20" + id("org.jetbrains.kotlin.android") version "1.9.24" apply false + id("com.google.devtools.ksp") version "1.9.24-1.0.20" } \ No newline at end of file diff --git a/data/build.gradle.kts b/data/build.gradle.kts index 3a579c87..41a59a17 100644 --- a/data/build.gradle.kts +++ b/data/build.gradle.kts @@ -22,7 +22,7 @@ plugins { id("com.android.library") id("org.jetbrains.kotlin.android") - id("com.google.devtools.ksp") version ("1.9.23-1.0.20") + id("com.google.devtools.ksp") version ("1.9.24-1.0.20") } android { diff --git a/network/src/main/java/io/github/yamin8000/owl/network/Web.kt b/network/src/main/java/io/github/yamin8000/owl/network/Web.kt index e1ddb207..8e5e823b 100644 --- a/network/src/main/java/io/github/yamin8000/owl/network/Web.kt +++ b/network/src/main/java/io/github/yamin8000/owl/network/Web.kt @@ -24,23 +24,21 @@ package io.github.yamin8000.owl.network import retrofit2.Retrofit import retrofit2.converter.moshi.MoshiConverterFactory -/** - * App-wide Web Helper Singleton - */ +/** App-wide Web Helper Singleton */ object Web { private const val BASE_URL = "https://api.dictionaryapi.dev/api/v2/" - /** - * App-wide [Retrofit] singleton object - */ - val retrofit: Retrofit by lazy(LazyThreadSafetyMode.NONE) { createRetrofit() } + private lateinit var retrofit: Retrofit - private fun createRetrofit(): Retrofit { - return Retrofit.Builder() - .baseUrl(BASE_URL) - .addConverterFactory(MoshiConverterFactory.create()) - .build() + fun getRetrofit(): Retrofit { + if (!this::retrofit.isInitialized) { + retrofit = Retrofit.Builder() + .baseUrl(BASE_URL) + .addConverterFactory(MoshiConverterFactory.create()) + .build() + } + return retrofit } /**