mirror of
https://github.com/Suwayomi/TachideskJUI.git
synced 2025-12-10 23:02:04 +01:00
Cleanup, remove uneeded locale library
This commit is contained in:
@@ -77,7 +77,6 @@ dependencies {
|
||||
// Localization
|
||||
implementation(libs.moko.core)
|
||||
implementation(libs.moko.compose)
|
||||
implementation(libs.locale)
|
||||
|
||||
// Testing
|
||||
testImplementation(kotlin("test-junit"))
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import org.jetbrains.compose.compose
|
||||
|
||||
@Suppress("DSL_SCOPE_VIOLATION")
|
||||
plugins {
|
||||
id(libs.plugins.kotlin.multiplatform.get().pluginId)
|
||||
@@ -46,8 +48,8 @@ kotlin {
|
||||
api(libs.multiplatformSettings.core)
|
||||
api(libs.multiplatformSettings.coroutines)
|
||||
api(libs.multiplatformSettings.serialization)
|
||||
api(libs.locale)
|
||||
api(libs.dateTime)
|
||||
api(compose("org.jetbrains.compose.ui:ui-text"))
|
||||
}
|
||||
}
|
||||
val commonTest by getting {
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package ca.gosyer.jui.core.lang
|
||||
|
||||
import io.fluidsonic.locale.Locale
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
|
||||
expect fun Locale.Companion.getDefault(): Locale
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package ca.gosyer.jui.core.lang
|
||||
|
||||
import io.fluidsonic.locale.Locale
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
|
||||
/**
|
||||
* Replaces the given string to have at most [count] characters using [replacement] at its end.
|
||||
|
||||
@@ -6,12 +6,12 @@
|
||||
|
||||
package ca.gosyer.jui.core.lang
|
||||
|
||||
import io.fluidsonic.locale.Locale
|
||||
import io.fluidsonic.locale.toCommon
|
||||
import io.fluidsonic.locale.toPlatform
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import java.util.Locale as PlatformLocale
|
||||
|
||||
actual fun Locale.Companion.getDefault(): Locale = PlatformLocale.getDefault().toCommon()
|
||||
actual fun Locale.Companion.getDefault(): Locale = current
|
||||
|
||||
fun Locale.toPlatform() = PlatformLocale.forLanguageTag(toLanguageTag())
|
||||
|
||||
actual fun Locale.getDisplayLanguage(displayLocale: Locale): String = toPlatform()
|
||||
.getDisplayLanguage(displayLocale.toPlatform())
|
||||
|
||||
@@ -7,10 +7,9 @@
|
||||
|
||||
package ca.gosyer.jui.core.lang
|
||||
|
||||
import io.fluidsonic.locale.Locale
|
||||
import io.fluidsonic.locale.toPlatform
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
|
||||
fun String.capitalize(locale: Locale = Locale.getDefault()) =
|
||||
fun String.capitalize(locale: Locale = Locale.current) =
|
||||
replaceFirstChar { if (it.isLowerCase()) it.titlecase(locale) else it.toString() }
|
||||
|
||||
actual fun String.uppercase(locale: Locale): String = uppercase(locale.toPlatform())
|
||||
|
||||
@@ -43,9 +43,7 @@ kotlin {
|
||||
api(libs.ktor.auth)
|
||||
api(libs.ktor.logging)
|
||||
api(libs.ktor.websockets)
|
||||
api(libs.ktor.okHttp)
|
||||
api(libs.okio)
|
||||
api(libs.locale)
|
||||
api(libs.dateTime)
|
||||
api(projects.core)
|
||||
api(projects.i18n)
|
||||
@@ -61,6 +59,7 @@ kotlin {
|
||||
val desktopMain by getting {
|
||||
dependencies {
|
||||
api(kotlin("stdlib-jdk8"))
|
||||
api(libs.ktor.okHttp)
|
||||
}
|
||||
}
|
||||
val desktopTest by getting {
|
||||
@@ -69,6 +68,7 @@ kotlin {
|
||||
val androidMain by getting {
|
||||
dependencies {
|
||||
api(kotlin("stdlib-jdk8"))
|
||||
api(libs.ktor.okHttp)
|
||||
}
|
||||
}
|
||||
val androidTest by getting {
|
||||
|
||||
@@ -6,11 +6,11 @@
|
||||
|
||||
package ca.gosyer.jui.data.catalog
|
||||
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.getDefault
|
||||
import ca.gosyer.jui.core.prefs.Preference
|
||||
import ca.gosyer.jui.core.prefs.PreferenceStore
|
||||
import ca.gosyer.jui.data.library.model.DisplayMode
|
||||
import io.fluidsonic.locale.Locale
|
||||
|
||||
class CatalogPreferences(private val preferenceStore: PreferenceStore) {
|
||||
fun languages(): Preference<Set<String>> {
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
|
||||
package ca.gosyer.jui.data.extension
|
||||
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.getDefault
|
||||
import ca.gosyer.jui.core.prefs.Preference
|
||||
import ca.gosyer.jui.core.prefs.PreferenceStore
|
||||
import io.fluidsonic.locale.Locale
|
||||
|
||||
class ExtensionPreferences(private val preferenceStore: PreferenceStore) {
|
||||
fun languages(): Preference<Set<String>> {
|
||||
|
||||
@@ -6,9 +6,9 @@
|
||||
|
||||
package ca.gosyer.jui.data.base
|
||||
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.getDefault
|
||||
import io.fluidsonic.locale.Locale
|
||||
import io.fluidsonic.locale.toPlatform
|
||||
import ca.gosyer.jui.core.lang.toPlatform
|
||||
import kotlinx.datetime.Instant
|
||||
import kotlinx.datetime.toJavaInstant
|
||||
import me.tatarka.inject.annotations.Inject
|
||||
|
||||
@@ -85,7 +85,6 @@ dependencies {
|
||||
// Localization
|
||||
implementation(libs.moko.core)
|
||||
implementation(libs.moko.compose)
|
||||
implementation(libs.locale)
|
||||
|
||||
// Testing
|
||||
testImplementation(kotlin("test-junit"))
|
||||
|
||||
@@ -53,7 +53,6 @@ aboutLibraries = "10.1.0"
|
||||
dateTime = "0.3.2"
|
||||
|
||||
# Localization
|
||||
locale = "0.11.0"
|
||||
moko = "0.19.1"
|
||||
|
||||
# BuildConfigs
|
||||
@@ -144,7 +143,6 @@ dateTime = { module = "org.jetbrains.kotlinx:kotlinx-datetime", version.ref = "d
|
||||
# Localization
|
||||
moko-core = { module = "dev.icerock.moko:resources", version.ref = "moko" }
|
||||
moko-compose = { module = "dev.icerock.moko:resources-compose", version.ref = "moko" }
|
||||
locale = { module = "io.fluidsonic.locale:fluid-locale", version.ref = "locale" }
|
||||
|
||||
# Optimizer
|
||||
proguard = { module = "com.guardsquare:proguard-gradle", version.ref = "proguard" }
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
import org.jetbrains.compose.compose
|
||||
|
||||
@Suppress("DSL_SCOPE_VIOLATION")
|
||||
plugins {
|
||||
id(libs.plugins.kotlin.multiplatform.get().pluginId)
|
||||
id(libs.plugins.android.library.get().pluginId)
|
||||
id(libs.plugins.moko.gradle.get().pluginId)
|
||||
id(libs.plugins.compose.get().pluginId)
|
||||
}
|
||||
|
||||
kotlin {
|
||||
@@ -28,8 +25,6 @@ kotlin {
|
||||
val commonMain by getting {
|
||||
dependencies {
|
||||
api(kotlin("stdlib-common"))
|
||||
compileOnly(compose.runtime)
|
||||
compileOnly(compose.ui)
|
||||
api(libs.moko.core)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -51,7 +51,6 @@ kotlin {
|
||||
api(libs.accompanist.pagerIndicators)
|
||||
api(libs.accompanist.flowLayout)
|
||||
api(libs.krokiCoroutines)
|
||||
api(libs.locale)
|
||||
api(libs.dateTime)
|
||||
api(libs.aboutLibraries.core)
|
||||
api(libs.aboutLibraries.ui)
|
||||
|
||||
@@ -6,10 +6,10 @@
|
||||
|
||||
package ca.gosyer.jui.ui.base.components
|
||||
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.getDefault
|
||||
import ca.gosyer.jui.core.lang.getDisplayLanguage
|
||||
import io.fluidsonic.locale.Locale
|
||||
|
||||
fun localeToString(locale: String) = Locale.forLanguageTag(locale)
|
||||
fun localeToString(locale: String) = Locale(locale)
|
||||
.getDisplayLanguage(Locale.getDefault())
|
||||
.ifBlank { locale.uppercase() }
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
package ca.gosyer.jui.ui.extensions
|
||||
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.displayName
|
||||
import ca.gosyer.jui.data.extension.ExtensionPreferences
|
||||
import ca.gosyer.jui.data.models.Extension
|
||||
@@ -13,7 +14,6 @@ import ca.gosyer.jui.data.server.interactions.ExtensionInteractionHandler
|
||||
import ca.gosyer.jui.i18n.MR
|
||||
import ca.gosyer.jui.uicore.vm.ContextWrapper
|
||||
import ca.gosyer.jui.uicore.vm.ViewModel
|
||||
import io.fluidsonic.locale.Locale
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
import kotlinx.coroutines.flow.SharingStarted
|
||||
import kotlinx.coroutines.flow.asStateFlow
|
||||
@@ -148,7 +148,7 @@ class ExtensionsScreenViewModel @Inject constructor(
|
||||
if (it.key == "all") {
|
||||
MR.strings.all.toPlatformString()
|
||||
} else {
|
||||
Locale.forLanguageTag(it.key).displayName
|
||||
Locale(it.key).displayName
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -43,6 +43,7 @@ import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.graphics.FilterQuality
|
||||
import androidx.compose.ui.text.SpanStyle
|
||||
import androidx.compose.ui.text.buildAnnotatedString
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import androidx.compose.ui.text.withStyle
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
@@ -65,7 +66,6 @@ import com.vanpra.composematerialdialogs.MaterialDialog
|
||||
import com.vanpra.composematerialdialogs.MaterialDialogState
|
||||
import com.vanpra.composematerialdialogs.rememberMaterialDialogState
|
||||
import com.vanpra.composematerialdialogs.title
|
||||
import io.fluidsonic.locale.Locale
|
||||
import io.kamel.image.lazyPainterResource
|
||||
|
||||
@Composable
|
||||
@@ -240,7 +240,7 @@ fun LanguageDialog(
|
||||
horizontalArrangement = Arrangement.SpaceBetween
|
||||
) {
|
||||
val langName by derivedStateOf {
|
||||
Locale.forLanguageTag(lang).getDisplayName(locale).ifBlank { lang }
|
||||
Locale(lang).getDisplayName(locale).ifBlank { lang.replaceFirstChar { if (it.isLowerCase()) it.titlecase() else it.toString() } }
|
||||
}
|
||||
Text(langName)
|
||||
Switch(
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
package ca.gosyer.jui.ui.library
|
||||
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.getDefault
|
||||
import ca.gosyer.jui.core.lang.lowercase
|
||||
import ca.gosyer.jui.core.lang.withDefaultContext
|
||||
@@ -23,7 +24,6 @@ import ca.gosyer.jui.i18n.MR
|
||||
import ca.gosyer.jui.ui.util.lang.Collator
|
||||
import ca.gosyer.jui.uicore.vm.ContextWrapper
|
||||
import ca.gosyer.jui.uicore.vm.ViewModel
|
||||
import io.fluidsonic.locale.Locale
|
||||
import kotlinx.coroutines.async
|
||||
import kotlinx.coroutines.awaitAll
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
|
||||
@@ -19,6 +19,7 @@ import androidx.compose.runtime.getValue
|
||||
import androidx.compose.runtime.produceState
|
||||
import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.getDefault
|
||||
import ca.gosyer.jui.core.lang.getDisplayName
|
||||
import ca.gosyer.jui.core.lang.withIOContext
|
||||
@@ -41,7 +42,6 @@ import ca.gosyer.jui.uicore.vm.viewModel
|
||||
import cafe.adriel.voyager.core.screen.Screen
|
||||
import cafe.adriel.voyager.core.screen.ScreenKey
|
||||
import cafe.adriel.voyager.core.screen.uniqueScreenKey
|
||||
import io.fluidsonic.locale.Locale
|
||||
import kotlinx.datetime.Clock
|
||||
import kotlinx.serialization.decodeFromString
|
||||
import kotlinx.serialization.json.Json
|
||||
@@ -101,7 +101,7 @@ class SettingsGeneralViewModel @Inject constructor(
|
||||
?.jsonArray
|
||||
.orEmpty()
|
||||
.map { it.jsonPrimitive.content }
|
||||
.associateWith { Locale.forLanguageTag(it).getDisplayName(currentLocale) }
|
||||
.associateWith { Locale(it).getDisplayName(currentLocale) }
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
|
||||
package ca.gosyer.jui.ui.util.lang
|
||||
|
||||
import io.fluidsonic.locale.Locale
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
|
||||
expect fun Collator(locale: Locale): Collator
|
||||
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
|
||||
package ca.gosyer.jui.ui.util.lang
|
||||
|
||||
import io.fluidsonic.locale.Locale
|
||||
import io.fluidsonic.locale.toPlatform
|
||||
import androidx.compose.ui.text.intl.Locale
|
||||
import ca.gosyer.jui.core.lang.toPlatform
|
||||
import java.text.Collator as JvmCollator
|
||||
|
||||
actual fun Collator(locale: Locale): Collator {
|
||||
|
||||
@@ -40,7 +40,6 @@ kotlin {
|
||||
api(libs.coroutines.core)
|
||||
api(libs.kamel)
|
||||
api(libs.voyager.core)
|
||||
api(libs.locale)
|
||||
api(libs.dateTime)
|
||||
api(projects.core)
|
||||
api(projects.i18n)
|
||||
|
||||
Reference in New Issue
Block a user