diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 8075203..54bff2e 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -90,6 +90,7 @@ android {
buildFeatures {
viewBinding = true
+ buildConfig = true
}
compileOptions {
@@ -109,14 +110,12 @@ dependencies {
implementation(project(DependencyGradle.MODULE_LIB_FROGO_KEYBOARD))
- implementation(Androidx.Work.runtimeKtx)
- implementation(Google.Hilt.android)
+ implementation(libs.androidx.work.ktx)
+ implementation(libs.google.hilt)
- implementation(DependencyGradle.FROGO_CONSUME_API)
-
- ksp(GitHub.glideCompiler)
- ksp(Google.Hilt.compiler)
- ksp(Androidx.Room.compiler)
- ksp(Androidx.Lifecycle.compiler)
+ ksp(libs.github.glide.compiler)
+ ksp(libs.google.hilt.compiler)
+ ksp(libs.androidx.room.compiler)
+ ksp(libs.androidx.lifecycle.compiler)
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 8f4dded..625d548 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -68,6 +68,11 @@
+
+
+
diff --git a/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextActivity.kt b/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextActivity.kt
index e6f9758..e0946e9 100644
--- a/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextActivity.kt
+++ b/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextActivity.kt
@@ -42,7 +42,6 @@ class AutoTextActivity : BaseActivity() {
when (it) {
is FrogoResult.Error -> {}
- is FrogoResult.Finish -> {}
is FrogoResult.Loading -> {}
is FrogoResult.Success -> {
if (it.result.isEmpty()) {
diff --git a/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextViewModel.kt b/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextViewModel.kt
index 1753f57..1d6e32a 100644
--- a/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextViewModel.kt
+++ b/app/src/main/java/com/frogobox/appkeyboard/ui/autotext/AutoTextViewModel.kt
@@ -62,7 +62,7 @@ class AutoTextViewModel @Inject constructor(
}
override fun onShowProgress() {
- _autoText.postValue(FrogoResult.Loading(true))
+ _autoText.postValue(FrogoResult.Loading())
}
override fun onSuccess(data: List) {
diff --git a/build.gradle.kts b/build.gradle.kts
index 00dd7c1..eed172f 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,10 +1,13 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
- id("com.android.application") version "8.3.2" apply false
- id("com.android.library") version "8.3.2" apply false
- id("com.google.devtools.ksp") version "1.9.23-1.0.19" apply false
- id("org.jetbrains.kotlin.android") version DependencyGradle.KOTLIN_VERSION apply false
- id("com.google.dagger.hilt.android") version DependencyGradle.HILT_VERSION apply false
+ alias(libs.plugins.android.application) apply false
+ alias(libs.plugins.android.library) apply false
+ alias(libs.plugins.jetbrains.kotlin.android) apply false
+ alias(libs.plugins.jetbrains.kotlin.jvm) apply false
+ alias(libs.plugins.jetbrainsCompose) apply false
+ alias(libs.plugins.compose.compiler) apply false
+ alias(libs.plugins.hilt) apply false
+ alias(libs.plugins.ksp) apply false
}
tasks.register("clean", Delete::class) {
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index 14646b3..d4a3127 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -10,5 +10,5 @@ repositories {
}
dependencies{
- implementation("com.github.frogobox:open-build-src:3.0.4")
+
}
diff --git a/buildSrc/src/main/kotlin/DependencyGradle.kt b/buildSrc/src/main/kotlin/DependencyGradle.kt
index 1378eb4..e0a6aad 100644
--- a/buildSrc/src/main/kotlin/DependencyGradle.kt
+++ b/buildSrc/src/main/kotlin/DependencyGradle.kt
@@ -1,20 +1,5 @@
object DependencyGradle {
- const val KOTLIN_VERSION = Version.JetBrains.kotlin
- const val HILT_VERSION = Version.Google.hilt
-
const val MODULE_LIB_FROGO_KEYBOARD = ":frogo-keyboard"
- private const val FROGO_SDK_VERSION = "2.2.7"
- private const val FROGO_UI_VERSION = "2.0.3"
- private const val FROGO_CONSUME_API_VERSION = "2.5.4"
- private const val FROGO_ADMOB_VERSION = "5.3.7"
- private const val FROGO_RECYCLER_VIEW_VERSION = "4.4.1"
-
- const val FROGO_SDK = "com.github.frogobox:frogo-sdk:$FROGO_SDK_VERSION"
- const val FROGO_UI = "com.github.frogobox:frogo-ui:$FROGO_UI_VERSION"
- const val FROGO_CONSUME_API = "com.github.frogobox:frogo-consume-api:$FROGO_CONSUME_API_VERSION"
- const val FROGO_ADMOB = "com.github.amirisback:frogo-admob:$FROGO_ADMOB_VERSION"
- const val FROGO_RECYCLER_VIEW = "com.github.amirisback:frogo-recycler-view:$FROGO_RECYCLER_VIEW_VERSION"
-
}
\ No newline at end of file
diff --git a/buildSrc/src/main/kotlin/ProjectSetting.kt b/buildSrc/src/main/kotlin/ProjectSetting.kt
index 5de8965..2ebc996 100644
--- a/buildSrc/src/main/kotlin/ProjectSetting.kt
+++ b/buildSrc/src/main/kotlin/ProjectSetting.kt
@@ -22,13 +22,13 @@ object ProjectSetting {
// ---------------------------------------------------------------------------------------------
const val VERSION_MAJOR = 1
- const val VERSION_MINOR = 1
- const val VERSION_PATCH = 7
+ const val VERSION_MINOR = 2
+ const val VERSION_PATCH = 0
// ---------------------------------------------------------------------------------------------
- const val PROJECT_MIN_SDK = Version.Gradle.minSdk
- const val PROJECT_COMPILE_SDK = Version.Gradle.compileSdk
+ const val PROJECT_MIN_SDK = 21
+ const val PROJECT_COMPILE_SDK = 35
const val PROJECT_TARGET_SDK = PROJECT_COMPILE_SDK
// ---------------------------------------------------------------------------------------------
diff --git a/frogo-keyboard/build.gradle.kts b/frogo-keyboard/build.gradle.kts
index 0092df4..07eb0fd 100644
--- a/frogo-keyboard/build.gradle.kts
+++ b/frogo-keyboard/build.gradle.kts
@@ -46,11 +46,8 @@ android {
dependencies {
- api(DependencyGradle.FROGO_SDK)
- api(DependencyGradle.FROGO_UI)
- api(DependencyGradle.FROGO_RECYCLER_VIEW)
-
- api(Androidx.emoji2)
+ api(libs.deltadox.android)
+ api(libs.androidx.emoji2)
}
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
new file mode 100644
index 0000000..5e0fb7e
--- /dev/null
+++ b/gradle/libs.versions.toml
@@ -0,0 +1,144 @@
+[versions]
+agp = "8.7.2"
+kotlin = "2.0.21"
+ksp = "2.0.21-1.0.25"
+coreKtx = "1.15.0"
+appcompat = "1.7.0"
+activity = "1.9.3"
+fragment = "1.8.5"
+constraintlayout = "2.2.0"
+liveCycle = "2.8.7"
+viewPager2 = "1.1.0"
+preference = "1.2.1"
+roomKtx = "2.6.1"
+work = "2.10.0"
+googleAdmob = "23.5.0" # https://developers.google.com/admob/android/quick-start
+unityAd = "4.12.1" # https://developers.google.com/admob/android/mediation/unity#step_3_import_the_unity_ads_sdk_and_adapter
+startIo = "4.11.5" # https://support.start.io/hc/en-us/articles/360014774799-Integration-via-Maven
+recyclerview = "1.3.2"
+flexbox = "3.0.0"
+material = "1.12.0"
+gson = "2.10.1"
+okhttp = "4.12.0"
+retrofit = "2.11.0"
+rxandroid3 = "3.0.2"
+rxjava3 = "3.1.8"
+chucker = "4.0.0"
+glide = "4.16.0"
+customactivityoncrash = "2.4.0"
+circleimageview = "3.1.0"
+koin = "3.5.6"
+junit = "4.13.2"
+junitVersion = "1.2.1"
+espressoCore = "3.6.1"
+hilt = "2.52"
+emoji2 = "1.5.0"
+deltadoxAndroid = "1.0.0"
+
+# Compose Version
+composePlugin = "1.7.0"
+composeCompiler = "1.5.15" # https://developer.android.com/jetpack/androidx/releases/compose
+composeAnimation = "1.6.7"# https://developer.android.com/jetpack/androidx/releases/compose
+composeActivity = "1.9.3" # https://androidx.tech/artifacts/activity/activity-compose/
+compose = "1.7.5" # https://developer.android.com/jetpack/androidx/releases/compose
+composeMaterial = "1.7.5" # https://developer.android.com/jetpack/androidx/releases/compose
+composeFoundation = "1.6.7" # https://developer.android.com/jetpack/androidx/releases/compose
+composeMaterial3 = "1.3.1" # https://developer.android.com/jetpack/androidx/releases/compose
+composeNavigation = "2.7.7" # https://androidx.tech/artifacts/navigation/navigation-compose/
+composeHiltNavigation = "1.2.0"
+
+[libraries]
+# Android Kit
+androidx-core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" }
+androidx-appcompat = { group = "androidx.appcompat", name = "appcompat", version.ref = "appcompat" }
+androidx-activity-ktx = { group = "androidx.activity", name = "activity-ktx", version.ref = "activity" }
+androidx-fragment-ktx = { group = "androidx.fragment", name = "fragment-ktx", version.ref = "fragment" }
+androidx-work-ktx = { group = "androidx.work", name = "work-runtime-ktx", version.ref = "work" }
+
+# Android Kit
+androidx-lifecycle-process = { group = "androidx.lifecycle", name = "lifecycle-process", version.ref = "liveCycle" }
+
+ads-google-admob = { group = "com.google.android.gms", name = "play-services-ads", version.ref = "googleAdmob" }
+ads-google-admob-lite = { group = "com.google.android.gms", name = "play-services-ads-lite", version.ref = "googleAdmob" }
+ads-unityAd = { group = "com.unity3d.ads", name = "unity-ads", version.ref = "unityAd" }
+ads-startIo = { group = "com.startapp", name = "inapp-sdk", version.ref = "startIo" }
+
+androidx-constraintlayout = { group = "androidx.constraintlayout", name = "constraintlayout", version.ref = "constraintlayout" }
+androidx-lifecycle-runtime-ktx = { group = "androidx.lifecycle", name = "lifecycle-runtime-ktx", version.ref = "liveCycle" }
+androidx-lifecycle-viewmodel-ktx = { group = "androidx.lifecycle", name = "lifecycle-viewmodel-ktx", version.ref = "liveCycle" }
+androidx-lifecycle-livedata-ktx = { group = "androidx.lifecycle", name = "lifecycle-livedata-ktx", version.ref = "liveCycle" }
+androidx-lifecycle-compiler = { group = "androidx.lifecycle", name = "lifecycle-compiler", version.ref = "liveCycle" }
+
+androidx-viewpager2 = { group = "androidx.viewpager2", name = "viewpager2", version.ref = "viewPager2" }
+androidx-preference = { group = "androidx.preference", name = "preference", version.ref = "preference" }
+androidx-emoji2 = { group = "androidx.emoji2", name = "emoji2-bundled", version.ref = "emoji2"}
+
+androidx-room-runtime = { group = "androidx.room", name = "room-runtime", version.ref = "roomKtx" }
+androidx-room-ktx = { group = "androidx.room", name = "room-ktx", version.ref = "roomKtx" }
+androidx-room-rxjava3 = { group = "androidx.room", name = "room-rxjava3", version.ref = "roomKtx" }
+androidx-room-compiler = { group = "androidx.room", name = "room-compiler", version.ref = "roomKtx" }
+
+androidx-activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "composeActivity"}
+androidx-compose-material = { group = "androidx.compose.material", name = "material", version.ref = "composeMaterial"}
+androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3", version.ref = "composeMaterial3"}
+androidx-compose-animation = { group = "androidx.compose.animation", name = "animation", version.ref = "compose"}
+androidx-compose-ui = { group = "androidx.compose.ui", name = "ui", version.ref = "compose"}
+androidx-compose-ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling", version.ref = "compose"}
+androidx-compose-ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview", version.ref = "compose"}
+androidx-compose-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest", version.ref = "compose"}
+
+androidx-recyclerview = { group = "androidx.recyclerview", name = "recyclerview", version.ref = "recyclerview" }
+
+google-hilt = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" }
+google-hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hilt" }
+material = { group = "com.google.android.material", name = "material", version.ref = "material" }
+gson = { group = "com.google.code.gson", name = "gson", version.ref = "gson" }
+
+flexbox = { group = "com.google.android.flexbox", name = "flexbox", version.ref = "flexbox" }
+
+# --------------------------------------------------------------------------------------------------
+# Test Library
+
+androidx-espresso-core = { group = "androidx.test.espresso", name = "espresso-core", version.ref = "espressoCore" }
+androidx-junit = { group = "androidx.test.ext", name = "junit", version.ref = "junitVersion" }
+junit = { group = "junit", name = "junit", version.ref = "junit" }
+
+# --------------------------------------------------------------------------------------------------
+# Library
+
+square-okhttp = { group = "com.squareup.okhttp3", name = "okhttp", version.ref = "okhttp" }
+square-logging-interceptor = { group = "com.squareup.okhttp3", name = "logging-interceptor", version.ref = "okhttp" }
+
+square-retrofit = { group = "com.squareup.retrofit2", name = "retrofit", version.ref = "retrofit" }
+square-retrofit-converter-gson = { group = "com.squareup.retrofit2", name = "converter-gson", version.ref = "retrofit" }
+square-retrofit-adapter-rxjava3 = { group = "com.squareup.retrofit2", name = "adapter-rxjava3", version.ref = "retrofit" }
+
+reactivex-rxjava3 = { group = "io.reactivex.rxjava3", name = "rxjava", version.ref = "rxjava3" }
+reactivex-rxandroid3 = { group = "io.reactivex.rxjava3", name = "rxandroid", version.ref = "rxandroid3" }
+
+github-chucker = { group = "com.github.chuckerteam.chucker", name = "library", version.ref = "chucker" }
+github-glide = { group = "com.github.bumptech.glide", name = "glide", version.ref = "glide" }
+github-glide-compiler = { group = "com.github.bumptech.glide", name = "compiler", version.ref = "glide" }
+github-customactivityoncrash = { group = "cat.ereza", name = "customactivityoncrash", version.ref = "customactivityoncrash" }
+github-circleimageview = { group = "de.hdodenhof", name = "circleimageview", version.ref = "circleimageview" }
+
+koin-core = { group = "io.insert-koin", name = "koin-core", version.ref = "koin" }
+koin-android = { group = "io.insert-koin", name = "koin-android", version.ref = "koin" }
+koin-android-compat = { group = "io.insert-koin", name = "koin-android-compat", version.ref = "koin" }
+koin-androidx-workmanager = { group = "io.insert-koin", name = "koin-androidx-workmanager", version.ref = "koin" }
+
+deltadox-android = { group = "com.github.deltadox", name = "deltadox-android", version.ref = "deltadoxAndroid" }
+
+# --------------------------------------------------------------------------------------------------
+
+
+[plugins]
+android-application = { id = "com.android.application", version.ref = "agp" }
+android-library = { id = "com.android.library", version.ref = "agp"}
+jetbrains-kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
+jetbrains-kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin"}
+ksp = { id = "com.google.devtools.ksp", version.ref = "ksp"}
+jetbrainsCompose = { id = "org.jetbrains.compose", version.ref = "composePlugin" }
+kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
+compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
+hilt = { id = "com.google.dagger.hilt.android", version.ref = "hilt" }
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 10bf90f..666b087 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Sun Jun 12 12:51:08 WIB 2022
+#Sun Nov 03 18:01:05 WIB 2024
distributionBase=GRADLE_USER_HOME
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.6-bin.zip
distributionPath=wrapper/dists
-zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists