mirror of
https://github.com/Myzel394/NumberHub.git
synced 2025-06-19 00:35:26 +02:00
Use moshi codegen
This commit is contained in:
parent
c1e52557a3
commit
02f9474f1f
@ -17,6 +17,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
|
id("com.google.devtools.ksp")
|
||||||
id("unitto.library")
|
id("unitto.library")
|
||||||
id("unitto.android.library.jacoco")
|
id("unitto.android.library.jacoco")
|
||||||
id("unitto.android.hilt")
|
id("unitto.android.hilt")
|
||||||
@ -27,6 +28,7 @@ android.namespace = "com.sadellie.unitto.data.backup"
|
|||||||
dependencies {
|
dependencies {
|
||||||
implementation(libs.androidx.datastore.datastore.preferences)
|
implementation(libs.androidx.datastore.datastore.preferences)
|
||||||
implementation(libs.com.squareup.moshi.moshi.kotlin)
|
implementation(libs.com.squareup.moshi.moshi.kotlin)
|
||||||
|
ksp(libs.com.squareup.moshi.moshi.kotlin.codegen)
|
||||||
|
|
||||||
implementation(project(":data:database"))
|
implementation(project(":data:database"))
|
||||||
implementation(project(":data:model"))
|
implementation(project(":data:model"))
|
||||||
|
@ -52,7 +52,6 @@ import com.sadellie.unitto.data.userprefs.getUnitConverterFormatTime
|
|||||||
import com.sadellie.unitto.data.userprefs.getUnitConverterSorting
|
import com.sadellie.unitto.data.userprefs.getUnitConverterSorting
|
||||||
import com.squareup.moshi.JsonAdapter
|
import com.squareup.moshi.JsonAdapter
|
||||||
import com.squareup.moshi.Moshi
|
import com.squareup.moshi.Moshi
|
||||||
import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory
|
|
||||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.flow.first
|
import kotlinx.coroutines.flow.first
|
||||||
@ -70,9 +69,7 @@ class BackupManager @Inject constructor(
|
|||||||
// Not planned at the moment
|
// Not planned at the moment
|
||||||
// private val calculatorHistoryDao: CalculatorHistoryDao,
|
// private val calculatorHistoryDao: CalculatorHistoryDao,
|
||||||
) {
|
) {
|
||||||
private val moshi: Moshi = Moshi.Builder()
|
private val moshi: Moshi = Moshi.Builder().build()
|
||||||
.addLast(KotlinJsonAdapterFactory())
|
|
||||||
.build()
|
|
||||||
private val jsonAdapter: JsonAdapter<UserData> = moshi.adapter(UserData::class.java)
|
private val jsonAdapter: JsonAdapter<UserData> = moshi.adapter(UserData::class.java)
|
||||||
private val auth = "com.sadellie.unitto.BackupManager"
|
private val auth = "com.sadellie.unitto.BackupManager"
|
||||||
|
|
||||||
|
@ -20,36 +20,39 @@ package com.sadellie.unitto.data.backup
|
|||||||
|
|
||||||
import com.sadellie.unitto.data.database.TimeZoneEntity
|
import com.sadellie.unitto.data.database.TimeZoneEntity
|
||||||
import com.sadellie.unitto.data.database.UnitsEntity
|
import com.sadellie.unitto.data.database.UnitsEntity
|
||||||
|
import com.squareup.moshi.Json
|
||||||
|
import com.squareup.moshi.JsonClass
|
||||||
|
|
||||||
// Don't move to model module. This uses entity classes from database module
|
// Don't move to model module. This uses entity classes from database module
|
||||||
data class UserData(
|
@JsonClass(generateAdapter = true)
|
||||||
val themingMode: String,
|
internal data class UserData(
|
||||||
val enableDynamicTheme: Boolean,
|
@Json(name = "themingMode") val themingMode: String,
|
||||||
val enableAmoledTheme: Boolean,
|
@Json(name = "enableDynamicTheme") val enableDynamicTheme: Boolean,
|
||||||
val customColor: Long,
|
@Json(name = "enableAmoledTheme") val enableAmoledTheme: Boolean,
|
||||||
val monetMode: String,
|
@Json(name = "customColor") val customColor: Long,
|
||||||
val startingScreen: String,
|
@Json(name = "monetMode") val monetMode: String,
|
||||||
val enableToolsExperiment: Boolean,
|
@Json(name = "startingScreen") val startingScreen: String,
|
||||||
val enableVibrations: Boolean,
|
@Json(name = "enableToolsExperiment") val enableToolsExperiment: Boolean,
|
||||||
val middleZero: Boolean,
|
@Json(name = "enableVibrations") val enableVibrations: Boolean,
|
||||||
val acButton: Boolean,
|
@Json(name = "middleZero") val middleZero: Boolean,
|
||||||
val rpnMode: Boolean,
|
@Json(name = "acButton") val acButton: Boolean,
|
||||||
|
@Json(name = "rpnMode") val rpnMode: Boolean,
|
||||||
|
|
||||||
val precision: Int,
|
@Json(name = "precision") val precision: Int,
|
||||||
val separator: Int,
|
@Json(name = "separator") val separator: Int,
|
||||||
val outputFormat: Int,
|
@Json(name = "outputFormat") val outputFormat: Int,
|
||||||
|
|
||||||
val radianMode: Boolean,
|
@Json(name = "radianMode") val radianMode: Boolean,
|
||||||
val partialHistoryView: Boolean,
|
@Json(name = "partialHistoryView") val partialHistoryView: Boolean,
|
||||||
val clearInputAfterEquals: Boolean,
|
@Json(name = "clearInputAfterEquals") val clearInputAfterEquals: Boolean,
|
||||||
|
|
||||||
val latestLeftSide: String,
|
@Json(name = "latestLeftSide") val latestLeftSide: String,
|
||||||
val latestRightSide: String,
|
@Json(name = "latestRightSide") val latestRightSide: String,
|
||||||
val shownUnitGroups: String,
|
@Json(name = "shownUnitGroups") val shownUnitGroups: String,
|
||||||
val unitConverterFavoritesOnly: Boolean,
|
@Json(name = "unitConverterFavoritesOnly") val unitConverterFavoritesOnly: Boolean,
|
||||||
val unitConverterFormatTime: Boolean,
|
@Json(name = "unitConverterFormatTime") val unitConverterFormatTime: Boolean,
|
||||||
val unitConverterSorting: String,
|
@Json(name = "unitConverterSorting") val unitConverterSorting: String,
|
||||||
|
|
||||||
val unitsTable: List<UnitsEntity>,
|
@Json(name = "unitsTable") val unitsTable: List<UnitsEntity>,
|
||||||
val timeZoneTable: List<TimeZoneEntity>,
|
@Json(name = "timeZoneTable") val timeZoneTable: List<TimeZoneEntity>,
|
||||||
)
|
)
|
||||||
|
@ -63,6 +63,7 @@ com-google-dagger-android-hilt-android = { group = "com.google.dagger", name = "
|
|||||||
com-google-dagger-dagger-android-processor = { group = "com.google.dagger", name = "dagger-android-processor", version.ref = "comGoogleDagger" }
|
com-google-dagger-dagger-android-processor = { group = "com.google.dagger", name = "dagger-android-processor", version.ref = "comGoogleDagger" }
|
||||||
com-google-dagger-hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "comGoogleDagger" }
|
com-google-dagger-hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "comGoogleDagger" }
|
||||||
com-squareup-moshi-moshi-kotlin = { group = "com.squareup.moshi", name = "moshi-kotlin", version.ref = "comSquareupMoshiMoshiKotlin" }
|
com-squareup-moshi-moshi-kotlin = { group = "com.squareup.moshi", name = "moshi-kotlin", version.ref = "comSquareupMoshiMoshiKotlin" }
|
||||||
|
com-squareup-moshi-moshi-kotlin-codegen = { group = "com.squareup.moshi", name = "moshi-kotlin-codegen", version.ref = "comSquareupMoshiMoshiKotlin" }
|
||||||
com-squareup-retrofit2-converter-moshi = { group = "com.squareup.retrofit2", name = "converter-moshi", version.ref = "comSquareupRetrofit2ConverterMoshi" }
|
com-squareup-retrofit2-converter-moshi = { group = "com.squareup.retrofit2", name = "converter-moshi", version.ref = "comSquareupRetrofit2ConverterMoshi" }
|
||||||
junit-junit = { group = "junit", name = "junit", version.ref = "junitJunit" }
|
junit-junit = { group = "junit", name = "junit", version.ref = "junitJunit" }
|
||||||
org-burnoutcrew-composereorderable-reorderable = { group = "org.burnoutcrew.composereorderable", name = "reorderable", version.ref = "orgBurnoutcrewComposereorderableReorderable" }
|
org-burnoutcrew-composereorderable-reorderable = { group = "org.burnoutcrew.composereorderable", name = "reorderable", version.ref = "orgBurnoutcrewComposereorderableReorderable" }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user