From f6dcf5d10375363780abd3d06c7dc5cbb36d7687 Mon Sep 17 00:00:00 2001 From: Syer10 Date: Wed, 16 Mar 2022 20:22:42 -0400 Subject: [PATCH] Use CommonMain in data module, use multiplatform locale library --- android/build.gradle.kts | 1 + core/build.gradle.kts | 1 + .../commonMain/kotlin/ca/gosyer/core/lang/Locale.kt | 11 +++++++++++ .../jvmMain/kotlin/ca/gosyer/core/lang/JvmLocale.kt | 13 +++++++++++++ data/build.gradle.kts | 1 + .../kotlin/ca/gosyer/data/DataComponent.kt | 0 .../kotlin/ca/gosyer/data/base/WebsocketService.kt | 2 +- .../ca/gosyer/data/catalog/CatalogPreferences.kt | 5 +++-- .../ca/gosyer/data/download/DownloadService.kt | 0 .../gosyer/data/download/model/DownloadChapter.kt | 0 .../ca/gosyer/data/download/model/DownloadState.kt | 0 .../ca/gosyer/data/download/model/DownloadStatus.kt | 0 .../gosyer/data/download/model/DownloaderStatus.kt | 0 .../gosyer/data/extension/ExtensionPreferences.kt | 5 +++-- .../ca/gosyer/data/library/LibraryPreferences.kt | 0 .../ca/gosyer/data/library/LibraryUpdateService.kt | 0 .../ca/gosyer/data/library/model/DisplayMode.kt | 0 .../ca/gosyer/data/library/model/JobStatus.kt | 0 .../kotlin/ca/gosyer/data/library/model/Sort.kt | 0 .../ca/gosyer/data/library/model/UpdateStatus.kt | 0 .../gosyer/data/migration/MigrationPreferences.kt | 0 .../kotlin/ca/gosyer/data/migration/Migrations.kt | 0 .../kotlin/ca/gosyer/data/models/About.kt | 0 .../ca/gosyer/data/models/BackupValidationResult.kt | 0 .../kotlin/ca/gosyer/data/models/Category.kt | 0 .../kotlin/ca/gosyer/data/models/Chapter.kt | 0 .../kotlin/ca/gosyer/data/models/Extension.kt | 0 .../kotlin/ca/gosyer/data/models/Manga.kt | 0 .../kotlin/ca/gosyer/data/models/MangaAndChapter.kt | 0 .../kotlin/ca/gosyer/data/models/MangaPage.kt | 0 .../kotlin/ca/gosyer/data/models/Page.kt | 0 .../kotlin/ca/gosyer/data/models/Source.kt | 0 .../kotlin/ca/gosyer/data/models/Updates.kt | 0 .../data/models/sourcefilters/CheckBoxFilter.kt | 0 .../gosyer/data/models/sourcefilters/GroupFilter.kt | 0 .../data/models/sourcefilters/HeaderFilter.kt | 0 .../data/models/sourcefilters/SelectFilter.kt | 0 .../data/models/sourcefilters/SeparatorFilter.kt | 0 .../gosyer/data/models/sourcefilters/SortFilter.kt | 0 .../data/models/sourcefilters/SourceFilter.kt | 0 .../data/models/sourcefilters/SourceFilterChange.kt | 0 .../gosyer/data/models/sourcefilters/TextFilter.kt | 0 .../data/models/sourcefilters/TriStateFilter.kt | 0 .../models/sourcepreference/CheckBoxPreference.kt | 0 .../models/sourcepreference/EditTextPreference.kt | 0 .../data/models/sourcepreference/ListPreference.kt | 0 .../sourcepreference/MultiSelectListPreference.kt | 0 .../models/sourcepreference/SourcePreference.kt | 0 .../sourcepreference/SourcePreferenceChange.kt | 0 .../models/sourcepreference/SwitchPreference.kt | 0 .../data/models/sourcepreference/TwoStateProps.kt | 0 .../ca/gosyer/data/reader/ReaderModePreferences.kt | 0 .../kotlin/ca/gosyer/data/reader/ReaderModeWatch.kt | 0 .../ca/gosyer/data/reader/ReaderPreferences.kt | 0 .../gosyer/data/reader/model/DefaultReaderMode.kt | 0 .../kotlin/ca/gosyer/data/reader/model/Direction.kt | 0 .../ca/gosyer/data/reader/model/ImageScale.kt | 0 .../ca/gosyer/data/reader/model/NavigationMode.kt | 0 .../gosyer/data/reader/model/TappingInvertMode.kt | 0 .../kotlin/ca/gosyer/data/server/HttpClient.kt | 6 ++---- .../ca/gosyer/data/server/ServerPreferences.kt | 0 .../ca/gosyer/data/server/ServerUrlPreference.kt | 0 .../server/interactions/BackupInteractionHandler.kt | 2 ++ .../server/interactions/BaseInteractionHandler.kt | 0 .../interactions/CategoryInteractionHandler.kt | 1 + .../interactions/ChapterInteractionHandler.kt | 1 + .../interactions/DownloadInteractionHandler.kt | 1 + .../interactions/ExtensionInteractionHandler.kt | 1 + .../interactions/LibraryInteractionHandler.kt | 1 + .../server/interactions/MangaInteractionHandler.kt | 1 + .../server/interactions/SourceInteractionHandler.kt | 1 + .../interactions/UpdatesInteractionHandler.kt | 1 + .../kotlin/ca/gosyer/data/server/model/Auth.kt | 0 .../kotlin/ca/gosyer/data/server/model/Proxy.kt | 0 .../kotlin/ca/gosyer/data/server/requests/Backup.kt | 0 .../ca/gosyer/data/server/requests/Category.kt | 0 .../ca/gosyer/data/server/requests/Chapters.kt | 0 .../ca/gosyer/data/server/requests/Downloads.kt | 0 .../ca/gosyer/data/server/requests/Extensions.kt | 0 .../ca/gosyer/data/server/requests/Library.kt | 0 .../kotlin/ca/gosyer/data/server/requests/Manga.kt | 0 .../kotlin/ca/gosyer/data/server/requests/Meta.kt | 0 .../ca/gosyer/data/server/requests/RestRequests.kt | 0 .../ca/gosyer/data/server/requests/Sources.kt | 0 .../ca/gosyer/data/server/requests/Updates.kt | 0 .../kotlin/ca/gosyer/data/ui/UiPreferences.kt | 0 .../kotlin/ca/gosyer/data/ui/model/StartScreen.kt | 0 .../kotlin/ca/gosyer/data/ui/model/ThemeMode.kt | 0 .../ca/gosyer/data/ui/model/WindowSettings.kt | 0 .../kotlin/ca/gosyer/data/update/UpdateChecker.kt | 1 + .../ca/gosyer/data/update/UpdatePreferences.kt | 0 .../ca/gosyer/data/update/model/GithubRelease.kt | 0 desktop/build.gradle.kts | 1 + gradle/libs.versions.toml | 2 ++ presentation/build.gradle.kts | 1 + ui-core/build.gradle.kts | 1 + 96 files changed, 52 insertions(+), 9 deletions(-) create mode 100644 core/src/commonMain/kotlin/ca/gosyer/core/lang/Locale.kt create mode 100644 core/src/jvmMain/kotlin/ca/gosyer/core/lang/JvmLocale.kt rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/DataComponent.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/base/WebsocketService.kt (98%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/catalog/CatalogPreferences.kt (85%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/download/DownloadService.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/download/model/DownloadChapter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/download/model/DownloadState.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/download/model/DownloadStatus.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/download/model/DownloaderStatus.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/extension/ExtensionPreferences.kt (80%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/library/LibraryPreferences.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/library/LibraryUpdateService.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/library/model/DisplayMode.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/library/model/JobStatus.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/library/model/Sort.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/library/model/UpdateStatus.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/migration/MigrationPreferences.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/migration/Migrations.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/About.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/BackupValidationResult.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/Category.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/Chapter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/Extension.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/Manga.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/MangaAndChapter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/MangaPage.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/Page.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/Source.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/Updates.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/CheckBoxFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/GroupFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/HeaderFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/SelectFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/SeparatorFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/SortFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilterChange.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/TextFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcefilters/TriStateFilter.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/CheckBoxPreference.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/EditTextPreference.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/ListPreference.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/MultiSelectListPreference.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreference.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreferenceChange.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/SwitchPreference.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/models/sourcepreference/TwoStateProps.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/ReaderModePreferences.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/ReaderModeWatch.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/ReaderPreferences.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/model/DefaultReaderMode.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/model/Direction.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/model/ImageScale.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/model/NavigationMode.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/reader/model/TappingInvertMode.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/HttpClient.kt (95%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/ServerPreferences.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/ServerUrlPreference.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/BackupInteractionHandler.kt (97%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/BaseInteractionHandler.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/CategoryInteractionHandler.kt (99%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/ChapterInteractionHandler.kt (99%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/DownloadInteractionHandler.kt (98%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/ExtensionInteractionHandler.kt (98%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/LibraryInteractionHandler.kt (98%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/MangaInteractionHandler.kt (98%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/SourceInteractionHandler.kt (99%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/interactions/UpdatesInteractionHandler.kt (98%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/model/Auth.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/model/Proxy.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Backup.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Category.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Chapters.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Downloads.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Extensions.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Library.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Manga.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Meta.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/RestRequests.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Sources.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/server/requests/Updates.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/ui/UiPreferences.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/ui/model/StartScreen.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/ui/model/ThemeMode.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/ui/model/WindowSettings.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/update/UpdateChecker.kt (98%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/update/UpdatePreferences.kt (100%) rename data/src/{jvmMain => commonMain}/kotlin/ca/gosyer/data/update/model/GithubRelease.kt (100%) diff --git a/android/build.gradle.kts b/android/build.gradle.kts index 3a649617..faa26337 100644 --- a/android/build.gradle.kts +++ b/android/build.gradle.kts @@ -84,6 +84,7 @@ dependencies { // Localization implementation(libs.moko.core) implementation(libs.moko.compose) + implementation(libs.locale) // Testing testImplementation(kotlin("test-junit")) diff --git a/core/build.gradle.kts b/core/build.gradle.kts index 27b383f0..1b8f3213 100644 --- a/core/build.gradle.kts +++ b/core/build.gradle.kts @@ -47,6 +47,7 @@ kotlin { api(libs.multiplatformSettings.core) api(libs.multiplatformSettings.coroutines) api(libs.multiplatformSettings.serialization) + api(libs.locale) } } val commonTest by getting { diff --git a/core/src/commonMain/kotlin/ca/gosyer/core/lang/Locale.kt b/core/src/commonMain/kotlin/ca/gosyer/core/lang/Locale.kt new file mode 100644 index 00000000..5042daa1 --- /dev/null +++ b/core/src/commonMain/kotlin/ca/gosyer/core/lang/Locale.kt @@ -0,0 +1,11 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package ca.gosyer.core.lang + +import io.fluidsonic.locale.Locale + +expect fun Locale.Companion.getDefault(): Locale \ No newline at end of file diff --git a/core/src/jvmMain/kotlin/ca/gosyer/core/lang/JvmLocale.kt b/core/src/jvmMain/kotlin/ca/gosyer/core/lang/JvmLocale.kt new file mode 100644 index 00000000..6bda0414 --- /dev/null +++ b/core/src/jvmMain/kotlin/ca/gosyer/core/lang/JvmLocale.kt @@ -0,0 +1,13 @@ +/* + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at https://mozilla.org/MPL/2.0/. + */ + +package ca.gosyer.core.lang + +import io.fluidsonic.locale.Locale +import io.fluidsonic.locale.toCommon +import java.util.Locale as PlatformLocale + +actual fun Locale.Companion.getDefault(): Locale = PlatformLocale.getDefault().toCommon() \ No newline at end of file diff --git a/data/build.gradle.kts b/data/build.gradle.kts index 2d38003d..7d8af167 100644 --- a/data/build.gradle.kts +++ b/data/build.gradle.kts @@ -45,6 +45,7 @@ kotlin { api(libs.okio) api(projects.core) api(projects.i18n) + api(libs.locale) } } val commonTest by getting { diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/DataComponent.kt b/data/src/commonMain/kotlin/ca/gosyer/data/DataComponent.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/DataComponent.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/DataComponent.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/base/WebsocketService.kt b/data/src/commonMain/kotlin/ca/gosyer/data/base/WebsocketService.kt similarity index 98% rename from data/src/jvmMain/kotlin/ca/gosyer/data/base/WebsocketService.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/base/WebsocketService.kt index ddcd0f1a..fbe16072 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/base/WebsocketService.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/base/WebsocketService.kt @@ -51,7 +51,7 @@ abstract class WebsocketService( while (true) { if (errorConnectionCount > 3) { _status.value = Status.STOPPED - throw CancellationException() + throw CancellationException("Finish") } runCatching { client.ws( diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/catalog/CatalogPreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/catalog/CatalogPreferences.kt similarity index 85% rename from data/src/jvmMain/kotlin/ca/gosyer/data/catalog/CatalogPreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/catalog/CatalogPreferences.kt index 603769d4..daaa0a91 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/catalog/CatalogPreferences.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/catalog/CatalogPreferences.kt @@ -6,14 +6,15 @@ package ca.gosyer.data.catalog +import ca.gosyer.core.lang.getDefault import ca.gosyer.core.prefs.Preference import ca.gosyer.core.prefs.PreferenceStore import ca.gosyer.data.library.model.DisplayMode -import java.util.Locale +import io.fluidsonic.locale.Locale class CatalogPreferences(private val preferenceStore: PreferenceStore) { fun languages(): Preference> { - return preferenceStore.getStringSet("enabled_langs", setOf("en", Locale.getDefault().language)) + return preferenceStore.getStringSet("enabled_langs", setOfNotNull("en", Locale.getDefault().language)) } fun displayMode(): Preference { diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/download/DownloadService.kt b/data/src/commonMain/kotlin/ca/gosyer/data/download/DownloadService.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/download/DownloadService.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/download/DownloadService.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloadChapter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloadChapter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloadChapter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloadChapter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloadState.kt b/data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloadState.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloadState.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloadState.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloadStatus.kt b/data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloadStatus.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloadStatus.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloadStatus.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloaderStatus.kt b/data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloaderStatus.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/download/model/DownloaderStatus.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/download/model/DownloaderStatus.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/extension/ExtensionPreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/extension/ExtensionPreferences.kt similarity index 80% rename from data/src/jvmMain/kotlin/ca/gosyer/data/extension/ExtensionPreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/extension/ExtensionPreferences.kt index 07844960..3bfa0eaf 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/extension/ExtensionPreferences.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/extension/ExtensionPreferences.kt @@ -6,12 +6,13 @@ package ca.gosyer.data.extension +import ca.gosyer.core.lang.getDefault import ca.gosyer.core.prefs.Preference import ca.gosyer.core.prefs.PreferenceStore -import java.util.Locale +import io.fluidsonic.locale.Locale class ExtensionPreferences(private val preferenceStore: PreferenceStore) { fun languages(): Preference> { - return preferenceStore.getStringSet("enabled_langs", setOf("all", "en", Locale.getDefault().language)) + return preferenceStore.getStringSet("enabled_langs", setOfNotNull("all", "en", Locale.getDefault().language)) } } diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/library/LibraryPreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/library/LibraryPreferences.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/library/LibraryPreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/library/LibraryPreferences.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/library/LibraryUpdateService.kt b/data/src/commonMain/kotlin/ca/gosyer/data/library/LibraryUpdateService.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/library/LibraryUpdateService.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/library/LibraryUpdateService.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/library/model/DisplayMode.kt b/data/src/commonMain/kotlin/ca/gosyer/data/library/model/DisplayMode.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/library/model/DisplayMode.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/library/model/DisplayMode.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/library/model/JobStatus.kt b/data/src/commonMain/kotlin/ca/gosyer/data/library/model/JobStatus.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/library/model/JobStatus.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/library/model/JobStatus.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/library/model/Sort.kt b/data/src/commonMain/kotlin/ca/gosyer/data/library/model/Sort.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/library/model/Sort.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/library/model/Sort.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/library/model/UpdateStatus.kt b/data/src/commonMain/kotlin/ca/gosyer/data/library/model/UpdateStatus.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/library/model/UpdateStatus.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/library/model/UpdateStatus.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/migration/MigrationPreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/migration/MigrationPreferences.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/migration/MigrationPreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/migration/MigrationPreferences.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/migration/Migrations.kt b/data/src/commonMain/kotlin/ca/gosyer/data/migration/Migrations.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/migration/Migrations.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/migration/Migrations.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/About.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/About.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/About.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/About.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/BackupValidationResult.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/BackupValidationResult.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/BackupValidationResult.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/BackupValidationResult.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/Category.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/Category.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/Category.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/Category.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/Chapter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/Chapter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/Chapter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/Chapter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/Extension.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/Extension.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/Extension.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/Extension.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/Manga.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/Manga.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/Manga.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/Manga.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/MangaAndChapter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/MangaAndChapter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/MangaAndChapter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/MangaAndChapter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/MangaPage.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/MangaPage.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/MangaPage.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/MangaPage.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/Page.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/Page.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/Page.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/Page.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/Source.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/Source.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/Source.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/Source.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/Updates.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/Updates.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/Updates.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/Updates.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/CheckBoxFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/CheckBoxFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/CheckBoxFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/CheckBoxFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/GroupFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/GroupFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/GroupFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/GroupFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/HeaderFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/HeaderFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/HeaderFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/HeaderFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SelectFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SelectFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SelectFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SelectFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SeparatorFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SeparatorFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SeparatorFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SeparatorFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SortFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SortFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SortFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SortFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilterChange.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilterChange.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilterChange.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/SourceFilterChange.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/TextFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/TextFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/TextFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/TextFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/TriStateFilter.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/TriStateFilter.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcefilters/TriStateFilter.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcefilters/TriStateFilter.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/CheckBoxPreference.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/CheckBoxPreference.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/CheckBoxPreference.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/CheckBoxPreference.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/EditTextPreference.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/EditTextPreference.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/EditTextPreference.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/EditTextPreference.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/ListPreference.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/ListPreference.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/ListPreference.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/ListPreference.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/MultiSelectListPreference.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/MultiSelectListPreference.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/MultiSelectListPreference.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/MultiSelectListPreference.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreference.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreference.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreference.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreference.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreferenceChange.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreferenceChange.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreferenceChange.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/SourcePreferenceChange.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/SwitchPreference.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/SwitchPreference.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/SwitchPreference.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/SwitchPreference.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/TwoStateProps.kt b/data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/TwoStateProps.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/models/sourcepreference/TwoStateProps.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/models/sourcepreference/TwoStateProps.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/ReaderModePreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/ReaderModePreferences.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/ReaderModePreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/ReaderModePreferences.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/ReaderModeWatch.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/ReaderModeWatch.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/ReaderModeWatch.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/ReaderModeWatch.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/ReaderPreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/ReaderPreferences.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/ReaderPreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/ReaderPreferences.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/DefaultReaderMode.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/model/DefaultReaderMode.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/DefaultReaderMode.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/model/DefaultReaderMode.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/Direction.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/model/Direction.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/Direction.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/model/Direction.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/ImageScale.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/model/ImageScale.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/ImageScale.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/model/ImageScale.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/NavigationMode.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/model/NavigationMode.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/NavigationMode.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/model/NavigationMode.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/TappingInvertMode.kt b/data/src/commonMain/kotlin/ca/gosyer/data/reader/model/TappingInvertMode.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/reader/model/TappingInvertMode.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/reader/model/TappingInvertMode.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/HttpClient.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/HttpClient.kt similarity index 95% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/HttpClient.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/HttpClient.kt index 062364ae..c29eb70d 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/HttpClient.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/HttpClient.kt @@ -11,8 +11,6 @@ import ca.gosyer.data.server.model.Auth import ca.gosyer.data.server.model.Proxy import io.ktor.client.HttpClient import io.ktor.client.engine.ProxyBuilder -import io.ktor.client.engine.ProxyConfig -import io.ktor.client.engine.okhttp.OkHttp import io.ktor.client.features.auth.providers.BasicAuthCredentials import io.ktor.client.features.auth.providers.DigestAuthCredentials import io.ktor.client.features.auth.providers.basic @@ -31,10 +29,10 @@ typealias Http = HttpClient class HttpProvider @Inject constructor() { fun get(serverPreferences: ServerPreferences): Http { - return HttpClient(OkHttp) { + return HttpClient { engine { proxy = when (serverPreferences.proxy().get()) { - Proxy.NO_PROXY -> ProxyConfig.NO_PROXY + Proxy.NO_PROXY -> null Proxy.HTTP_PROXY -> ProxyBuilder.http( URLBuilder( host = serverPreferences.proxyHttpHost().get(), diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/ServerPreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/ServerPreferences.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/ServerPreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/ServerPreferences.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/ServerUrlPreference.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/ServerUrlPreference.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/ServerUrlPreference.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/ServerUrlPreference.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/BackupInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/BackupInteractionHandler.kt similarity index 97% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/BackupInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/BackupInteractionHandler.kt index 6fd289e6..d447c700 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/BackupInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/BackupInteractionHandler.kt @@ -6,6 +6,8 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.io.SYSTEM +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.BackupValidationResult import ca.gosyer.data.server.Http import ca.gosyer.data.server.ServerPreferences diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/BaseInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/BaseInteractionHandler.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/BaseInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/BaseInteractionHandler.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/CategoryInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/CategoryInteractionHandler.kt similarity index 99% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/CategoryInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/CategoryInteractionHandler.kt index 1cc27a64..9f6c8c8e 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/CategoryInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/CategoryInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.Category import ca.gosyer.data.models.Manga import ca.gosyer.data.server.Http diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/ChapterInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/ChapterInteractionHandler.kt similarity index 99% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/ChapterInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/ChapterInteractionHandler.kt index 1b5da899..cb023cfc 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/ChapterInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/ChapterInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.Chapter import ca.gosyer.data.models.Manga import ca.gosyer.data.server.Http diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/DownloadInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/DownloadInteractionHandler.kt similarity index 98% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/DownloadInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/DownloadInteractionHandler.kt index 9a092bde..2a6179e2 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/DownloadInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/DownloadInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.server.Http import ca.gosyer.data.server.ServerPreferences import ca.gosyer.data.server.requests.downloadsClearRequest diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/ExtensionInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/ExtensionInteractionHandler.kt similarity index 98% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/ExtensionInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/ExtensionInteractionHandler.kt index bca5fefa..ad108124 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/ExtensionInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/ExtensionInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.Extension import ca.gosyer.data.server.Http import ca.gosyer.data.server.ServerPreferences diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/LibraryInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/LibraryInteractionHandler.kt similarity index 98% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/LibraryInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/LibraryInteractionHandler.kt index c29634c3..c6ed4db9 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/LibraryInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/LibraryInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.Manga import ca.gosyer.data.server.Http import ca.gosyer.data.server.ServerPreferences diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/MangaInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/MangaInteractionHandler.kt similarity index 98% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/MangaInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/MangaInteractionHandler.kt index 62ab42b6..fdd87a34 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/MangaInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/MangaInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.Manga import ca.gosyer.data.server.Http import ca.gosyer.data.server.ServerPreferences diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/SourceInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/SourceInteractionHandler.kt similarity index 99% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/SourceInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/SourceInteractionHandler.kt index 977509df..49741bfa 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/SourceInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/SourceInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.MangaPage import ca.gosyer.data.models.Source import ca.gosyer.data.models.sourcefilters.SourceFilter diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/UpdatesInteractionHandler.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/UpdatesInteractionHandler.kt similarity index 98% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/UpdatesInteractionHandler.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/UpdatesInteractionHandler.kt index 3c05ff4b..cc28978e 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/server/interactions/UpdatesInteractionHandler.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/server/interactions/UpdatesInteractionHandler.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.server.interactions +import ca.gosyer.core.lang.IO import ca.gosyer.data.models.Category import ca.gosyer.data.models.Updates import ca.gosyer.data.server.Http diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/model/Auth.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/model/Auth.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/model/Auth.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/model/Auth.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/model/Proxy.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/model/Proxy.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/model/Proxy.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/model/Proxy.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Backup.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Backup.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Backup.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Backup.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Category.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Category.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Category.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Category.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Chapters.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Chapters.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Chapters.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Chapters.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Downloads.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Downloads.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Downloads.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Downloads.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Extensions.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Extensions.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Extensions.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Extensions.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Library.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Library.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Library.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Library.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Manga.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Manga.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Manga.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Manga.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Meta.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Meta.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Meta.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Meta.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/RestRequests.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/RestRequests.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/RestRequests.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/RestRequests.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Sources.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Sources.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Sources.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Sources.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Updates.kt b/data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Updates.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/server/requests/Updates.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/server/requests/Updates.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/ui/UiPreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/ui/UiPreferences.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/ui/UiPreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/ui/UiPreferences.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/ui/model/StartScreen.kt b/data/src/commonMain/kotlin/ca/gosyer/data/ui/model/StartScreen.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/ui/model/StartScreen.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/ui/model/StartScreen.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/ui/model/ThemeMode.kt b/data/src/commonMain/kotlin/ca/gosyer/data/ui/model/ThemeMode.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/ui/model/ThemeMode.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/ui/model/ThemeMode.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/ui/model/WindowSettings.kt b/data/src/commonMain/kotlin/ca/gosyer/data/ui/model/WindowSettings.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/ui/model/WindowSettings.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/ui/model/WindowSettings.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/update/UpdateChecker.kt b/data/src/commonMain/kotlin/ca/gosyer/data/update/UpdateChecker.kt similarity index 98% rename from data/src/jvmMain/kotlin/ca/gosyer/data/update/UpdateChecker.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/update/UpdateChecker.kt index 362a7401..6b1a4866 100644 --- a/data/src/jvmMain/kotlin/ca/gosyer/data/update/UpdateChecker.kt +++ b/data/src/commonMain/kotlin/ca/gosyer/data/update/UpdateChecker.kt @@ -6,6 +6,7 @@ package ca.gosyer.data.update +import ca.gosyer.core.lang.IO import ca.gosyer.data.build.BuildKonfig import ca.gosyer.data.server.Http import ca.gosyer.data.update.model.GithubRelease diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/update/UpdatePreferences.kt b/data/src/commonMain/kotlin/ca/gosyer/data/update/UpdatePreferences.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/update/UpdatePreferences.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/update/UpdatePreferences.kt diff --git a/data/src/jvmMain/kotlin/ca/gosyer/data/update/model/GithubRelease.kt b/data/src/commonMain/kotlin/ca/gosyer/data/update/model/GithubRelease.kt similarity index 100% rename from data/src/jvmMain/kotlin/ca/gosyer/data/update/model/GithubRelease.kt rename to data/src/commonMain/kotlin/ca/gosyer/data/update/model/GithubRelease.kt diff --git a/desktop/build.gradle.kts b/desktop/build.gradle.kts index af91db49..b3e6ac67 100644 --- a/desktop/build.gradle.kts +++ b/desktop/build.gradle.kts @@ -85,6 +85,7 @@ dependencies { // Localization implementation(libs.moko.core) implementation(libs.moko.compose) + implementation(libs.locale) // Testing testImplementation(kotlin("test-junit")) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index cec100cf..68670d74 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -52,6 +52,7 @@ kroki = "1.22" desugarJdkLibs = "1.1.5" # Localization +locale = "0.11.0" moko = "0.18.0" # BuildConfigs @@ -140,6 +141,7 @@ desugarJdkLibs = { module = "com.android.tools:desugar_jdk_libs", version.ref = # 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" } diff --git a/presentation/build.gradle.kts b/presentation/build.gradle.kts index 311e72f6..25482188 100644 --- a/presentation/build.gradle.kts +++ b/presentation/build.gradle.kts @@ -50,6 +50,7 @@ kotlin { api(libs.accompanist.pagerIndicators) api(libs.accompanist.flowLayout) api(libs.krokiCoroutines) + api(libs.locale) api(projects.core) api(projects.i18n) api(projects.data) diff --git a/ui-core/build.gradle.kts b/ui-core/build.gradle.kts index 21ffd4f4..5e92bf35 100644 --- a/ui-core/build.gradle.kts +++ b/ui-core/build.gradle.kts @@ -39,6 +39,7 @@ kotlin { api(libs.coroutines.core) api(libs.kamel) api(libs.voyager.core) + api(libs.locale) api(projects.core) api(projects.i18n) api(compose.desktop.currentOs)