diff --git a/Habitica/build.gradle b/Habitica/build.gradle index 3b1a3bec5..356787ad7 100644 --- a/Habitica/build.gradle +++ b/Habitica/build.gradle @@ -79,7 +79,7 @@ dependencies { androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' androidTestImplementation 'androidx.test:runner:1.4.0' androidTestImplementation 'androidx.test:rules:1.4.0' - debugImplementation 'androidx.fragment:fragment-testing:1.5.0' + debugImplementation 'androidx.fragment:fragment-testing:1.5.2' androidTestImplementation 'androidx.test.ext:junit:1.1.3' androidTestImplementation 'androidx.test:core-ktx:1.4.0' androidTestImplementation 'androidx.test.ext:junit-ktx:1.1.3' @@ -107,17 +107,17 @@ dependencies { implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycle_version" - implementation 'androidx.navigation:navigation-fragment-ktx:2.5.0' - implementation 'androidx.navigation:navigation-ui-ktx:2.5.0' - implementation "androidx.fragment:fragment-ktx:1.5.0" + implementation 'androidx.navigation:navigation-fragment-ktx:2.5.1' + implementation 'androidx.navigation:navigation-ui-ktx:2.5.1' + implementation "androidx.fragment:fragment-ktx:1.5.2" implementation "androidx.paging:paging-runtime-ktx:3.1.1" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutines_version" implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutines_version" implementation 'com.willowtreeapps:signinwithapplebutton:0.3' - implementation project(':shared') implementation project(':common') + implementation project(':shared') ktlint('com.pinterest:ktlint:0.45.2') { attributes { diff --git a/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivityTest.kt b/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivityTest.kt index ff6c14874..ec9547c2c 100644 --- a/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivityTest.kt +++ b/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivityTest.kt @@ -11,9 +11,9 @@ import androidx.test.filters.LargeTest import com.habitrpg.android.habitica.HabiticaBaseApplication import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.components.UserComponent -import com.habitrpg.common.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.Frequency import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.github.kakaocup.kakao.common.assertions.BaseAssertions import io.github.kakaocup.kakao.common.matchers.ChildCountMatcher import io.github.kakaocup.kakao.common.views.KView diff --git a/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/StatsFragmentTest.kt b/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/StatsFragmentTest.kt index 286378aae..2ee2ba7cc 100644 --- a/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/StatsFragmentTest.kt +++ b/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/StatsFragmentTest.kt @@ -6,7 +6,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4 import androidx.test.filters.LargeTest import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.FragmentStatsBinding -import com.habitrpg.common.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.Attribute import io.github.kakaocup.kakao.common.views.KView import io.github.kakaocup.kakao.screen.Screen import io.github.kakaocup.kakao.text.KButton diff --git a/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragmentTest.kt b/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragmentTest.kt index 331ee982c..bff26317d 100644 --- a/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragmentTest.kt +++ b/Habitica/src/androidTest/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragmentTest.kt @@ -7,7 +7,7 @@ import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.FragmentRefreshRecyclerviewBinding import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskList -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.ui.fragments.FragmentTestCase import io.github.kakaocup.kakao.common.views.KView import io.github.kakaocup.kakao.recycler.KRecyclerItem diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/api/ApiService.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/api/ApiService.kt index c22918296..b94f5b2a5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/api/ApiService.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/api/ApiService.kt @@ -31,11 +31,11 @@ import com.habitrpg.common.habitica.models.PurchaseValidationResult import com.habitrpg.common.habitica.models.auth.UserAuth import com.habitrpg.common.habitica.models.auth.UserAuthResponse import com.habitrpg.common.habitica.models.auth.UserAuthSocial -import com.habitrpg.common.habitica.models.responses.FeedResponse -import com.habitrpg.common.habitica.models.responses.HabitResponse -import com.habitrpg.common.habitica.models.responses.Status -import com.habitrpg.common.habitica.models.responses.TaskDirectionData -import com.habitrpg.common.habitica.models.responses.VerifyUsernameResponse +import com.habitrpg.shared.habitica.models.responses.FeedResponse +import com.habitrpg.common.habitica.models.HabitResponse +import com.habitrpg.shared.habitica.models.responses.Status +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.VerifyUsernameResponse import io.reactivex.rxjava3.core.Flowable import retrofit2.http.Body import retrofit2.http.DELETE diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/api/GSonFactoryCreator.java b/Habitica/src/main/java/com/habitrpg/android/habitica/api/GSonFactoryCreator.java index c885f5f53..553d68f81 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/api/GSonFactoryCreator.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/api/GSonFactoryCreator.java @@ -17,7 +17,7 @@ import com.habitrpg.android.habitica.models.inventory.Quest; import com.habitrpg.android.habitica.models.inventory.QuestCollect; import com.habitrpg.android.habitica.models.inventory.QuestDropItem; import com.habitrpg.android.habitica.models.members.Member; -import com.habitrpg.common.habitica.models.responses.FeedResponse; +import com.habitrpg.shared.habitica.models.responses.FeedResponse; import com.habitrpg.android.habitica.models.social.Challenge; import com.habitrpg.android.habitica.models.social.ChatMessage; import com.habitrpg.android.habitica.models.social.FindUsernameResult; diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/api/MaintenanceApiService.java b/Habitica/src/main/java/com/habitrpg/android/habitica/api/MaintenanceApiService.java index 7dbb92d6e..d90a4cbfe 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/api/MaintenanceApiService.java +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/api/MaintenanceApiService.java @@ -1,6 +1,6 @@ package com.habitrpg.android.habitica.api; -import com.habitrpg.common.habitica.models.responses.MaintenanceResponse; +import com.habitrpg.shared.habitica.models.responses.MaintenanceResponse; import io.reactivex.rxjava3.core.Flowable; import retrofit2.http.GET; diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/ApiClient.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/ApiClient.kt index f84d88eaf..10f327af5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/ApiClient.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/ApiClient.kt @@ -36,6 +36,16 @@ import com.habitrpg.android.habitica.models.tasks.TaskList import com.habitrpg.android.habitica.models.user.Items import com.habitrpg.android.habitica.models.user.Stats import com.habitrpg.android.habitica.models.user.User +import com.habitrpg.common.habitica.api.HostConfig +import com.habitrpg.common.habitica.models.PurchaseValidationRequest +import com.habitrpg.common.habitica.models.PurchaseValidationResult +import com.habitrpg.common.habitica.models.auth.UserAuthResponse +import com.habitrpg.shared.habitica.models.responses.ErrorResponse +import com.habitrpg.shared.habitica.models.responses.FeedResponse +import com.habitrpg.common.habitica.models.HabitResponse +import com.habitrpg.shared.habitica.models.responses.Status +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.VerifyUsernameResponse import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.core.FlowableTransformer import retrofit2.HttpException diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/InventoryRepository.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/InventoryRepository.kt index 4dcf1907d..91f741bc8 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/InventoryRepository.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/InventoryRepository.kt @@ -18,6 +18,7 @@ import com.habitrpg.android.habitica.models.user.OwnedItem import com.habitrpg.android.habitica.models.user.OwnedMount import com.habitrpg.android.habitica.models.user.OwnedPet import com.habitrpg.android.habitica.models.user.User +import com.habitrpg.shared.habitica.models.responses.FeedResponse import io.reactivex.rxjava3.core.Flowable import kotlinx.coroutines.flow.Flow diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/TaskRepository.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/TaskRepository.kt index b6df6db47..a6ba14b09 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/TaskRepository.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/TaskRepository.kt @@ -5,9 +5,9 @@ import com.habitrpg.android.habitica.models.responses.BulkTaskScoringData import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskList import com.habitrpg.android.habitica.models.user.User -import com.habitrpg.common.habitica.models.responses.TaskScoringResult -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.core.Maybe import io.reactivex.rxjava3.core.Single diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/UserRepository.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/UserRepository.kt index ace67b8f2..458f21fb0 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/UserRepository.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/UserRepository.kt @@ -8,9 +8,9 @@ import com.habitrpg.android.habitica.models.TeamPlan import com.habitrpg.android.habitica.models.inventory.Customization import com.habitrpg.android.habitica.models.responses.SkillResponse import com.habitrpg.android.habitica.models.responses.UnlockResponse -import com.habitrpg.common.habitica.models.responses.VerifyUsernameResponse +import com.habitrpg.shared.habitica.models.responses.VerifyUsernameResponse import com.habitrpg.android.habitica.models.social.Group -import com.habitrpg.common.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.Attribute import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.user.Stats import com.habitrpg.android.habitica.models.user.User diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt index b71208310..32d792593 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ApiClientImpl.kt @@ -46,12 +46,12 @@ import com.habitrpg.common.habitica.models.auth.UserAuth import com.habitrpg.common.habitica.models.auth.UserAuthResponse import com.habitrpg.common.habitica.models.auth.UserAuthSocial import com.habitrpg.common.habitica.models.auth.UserAuthSocialTokens -import com.habitrpg.common.habitica.models.responses.ErrorResponse -import com.habitrpg.common.habitica.models.responses.FeedResponse -import com.habitrpg.common.habitica.models.responses.HabitResponse -import com.habitrpg.common.habitica.models.responses.Status -import com.habitrpg.common.habitica.models.responses.TaskDirectionData -import com.habitrpg.common.habitica.models.responses.VerifyUsernameResponse +import com.habitrpg.shared.habitica.models.responses.ErrorResponse +import com.habitrpg.shared.habitica.models.responses.FeedResponse +import com.habitrpg.common.habitica.models.HabitResponse +import com.habitrpg.shared.habitica.models.responses.Status +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.VerifyUsernameResponse import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.core.FlowableTransformer diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ChallengeRepositoryImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ChallengeRepositoryImpl.kt index 0f0fef56b..747992885 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ChallengeRepositoryImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/ChallengeRepositoryImpl.kt @@ -8,8 +8,8 @@ import com.habitrpg.android.habitica.models.social.Challenge import com.habitrpg.android.habitica.models.social.ChallengeMembership import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskList -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import io.reactivex.rxjava3.core.Flowable import retrofit2.HttpException diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/InventoryRepositoryImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/InventoryRepositoryImpl.kt index 8278036f6..a51dbbb09 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/InventoryRepositoryImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/InventoryRepositoryImpl.kt @@ -22,6 +22,7 @@ import com.habitrpg.android.habitica.models.user.OwnedItem import com.habitrpg.android.habitica.models.user.OwnedMount import com.habitrpg.android.habitica.models.user.OwnedPet import com.habitrpg.android.habitica.models.user.User +import com.habitrpg.shared.habitica.models.responses.FeedResponse import io.reactivex.rxjava3.core.Flowable import kotlinx.coroutines.flow.Flow diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImpl.kt index 4822e1ced..b01a08b23 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImpl.kt @@ -9,14 +9,14 @@ import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.interactors.ScoreTaskLocallyInteractor import com.habitrpg.android.habitica.models.BaseMainObject import com.habitrpg.android.habitica.models.responses.BulkTaskScoringData -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.TaskDirectionData -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import com.habitrpg.android.habitica.models.tasks.ChecklistItem import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskList -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import com.habitrpg.android.habitica.models.user.OwnedItem import com.habitrpg.android.habitica.models.user.User import com.habitrpg.android.habitica.proxy.AnalyticsManager diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/UserRepositoryImpl.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/UserRepositoryImpl.kt index 7510d00c0..66c5c0500 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/UserRepositoryImpl.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/implementation/UserRepositoryImpl.kt @@ -22,9 +22,9 @@ import com.habitrpg.android.habitica.models.user.Stats import com.habitrpg.android.habitica.models.user.User import com.habitrpg.android.habitica.proxy.AnalyticsManager import com.habitrpg.common.habitica.extensions.Optional -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.VerifyUsernameResponse -import com.habitrpg.common.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.VerifyUsernameResponse +import com.habitrpg.shared.habitica.models.tasks.Attribute import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.core.Maybe import io.reactivex.rxjava3.functions.BiFunction diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/TaskLocalRepository.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/TaskLocalRepository.kt index b8e1c1692..4697c2ead 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/TaskLocalRepository.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/TaskLocalRepository.kt @@ -3,8 +3,8 @@ package com.habitrpg.android.habitica.data.local import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskList import com.habitrpg.android.habitica.models.user.User -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.core.Maybe import kotlinx.coroutines.flow.Flow diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.kt index 0226ca0ce..2f8d1e5bd 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/data/local/implementation/RealmTaskLocalRepository.kt @@ -6,8 +6,8 @@ import com.habitrpg.android.habitica.models.tasks.RemindersItem import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskList import com.habitrpg.android.habitica.models.user.User -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import hu.akarnokd.rxjava3.bridge.RxJavaBridge import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.core.Maybe diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskAlarmManager.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskAlarmManager.kt index 6dfe805e3..5feb13bd4 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskAlarmManager.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/TaskAlarmManager.kt @@ -13,7 +13,7 @@ import com.habitrpg.android.habitica.models.tasks.RemindersItem import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.receivers.NotificationPublisher import com.habitrpg.android.habitica.receivers.TaskReceiver -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.shared.habitica.HLogger import com.habitrpg.shared.habitica.LogLevel import kotlinx.coroutines.flow.firstOrNull diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/UserStatComputer.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/UserStatComputer.kt index 35adcdf5a..de8b61a14 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/UserStatComputer.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/helpers/UserStatComputer.kt @@ -3,6 +3,7 @@ package com.habitrpg.android.habitica.helpers import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.models.inventory.Equipment import com.habitrpg.android.habitica.models.user.Stats +import com.habitrpg.shared.habitica.models.Avatar class UserStatComputer { @@ -24,7 +25,7 @@ class UserStatComputer { var stats: String? = null } - fun computeClassBonus(equipmentList: List, user: com.habitrpg.common.habitica.models.Avatar): List { + fun computeClassBonus(equipmentList: List, user: Avatar): List { val skillRows = ArrayList() var strAttributes = 0f diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/BuyRewardUseCase.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/BuyRewardUseCase.kt index adee6314f..8f0c30ac5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/BuyRewardUseCase.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/BuyRewardUseCase.kt @@ -3,7 +3,7 @@ package com.habitrpg.android.habitica.interactors import com.habitrpg.android.habitica.data.TaskRepository import com.habitrpg.android.habitica.executors.PostExecutionThread import com.habitrpg.android.habitica.helpers.SoundManager -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.user.User import io.reactivex.rxjava3.core.Flowable diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/DisplayItemDropUseCase.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/DisplayItemDropUseCase.kt index bac4e94fd..c5e841032 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/DisplayItemDropUseCase.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/DisplayItemDropUseCase.kt @@ -6,7 +6,7 @@ import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.executors.PostExecutionThread import com.habitrpg.android.habitica.helpers.SoundManager import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import io.reactivex.rxjava3.core.Flowable import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.MainScope diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/FeedPetUseCase.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/FeedPetUseCase.kt index a72bdb159..eba34e677 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/FeedPetUseCase.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/FeedPetUseCase.kt @@ -10,7 +10,7 @@ import com.habitrpg.android.habitica.data.InventoryRepository import com.habitrpg.android.habitica.executors.PostExecutionThread import com.habitrpg.android.habitica.models.inventory.Food import com.habitrpg.android.habitica.models.inventory.Pet -import com.habitrpg.common.habitica.models.responses.FeedResponse +import com.habitrpg.shared.habitica.models.responses.FeedResponse import com.habitrpg.android.habitica.ui.activities.BaseActivity import com.habitrpg.common.habitica.extensions.loadImage import com.habitrpg.common.habitica.views.PixelArtView diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/NotifyUserUseCase.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/NotifyUserUseCase.kt index 00fe7fd6d..fa1ffd430 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/NotifyUserUseCase.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/NotifyUserUseCase.kt @@ -15,7 +15,7 @@ import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.data.UserRepository import com.habitrpg.android.habitica.executors.PostExecutionThread import com.habitrpg.android.habitica.extensions.filterMap -import com.habitrpg.android.habitica.extensions.round +import com.habitrpg.shared.habitica.extensions.round import com.habitrpg.android.habitica.models.user.Stats import com.habitrpg.android.habitica.models.user.User import com.habitrpg.android.habitica.ui.activities.BaseActivity diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/ScoreTaskLocallyInteractor.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/ScoreTaskLocallyInteractor.kt index f73bce063..1e4df61b6 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/ScoreTaskLocallyInteractor.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/interactors/ScoreTaskLocallyInteractor.kt @@ -3,9 +3,9 @@ package com.habitrpg.android.habitica.interactors import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.user.Stats import com.habitrpg.android.habitica.models.user.User -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.TaskDirectionData -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.tasks.TaskType import kotlin.math.min import kotlin.math.pow import kotlin.math.roundToLong diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/auth/LocalAuthentication.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/auth/LocalAuthentication.kt index 19a523cbf..bf911ddc6 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/auth/LocalAuthentication.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/auth/LocalAuthentication.kt @@ -2,12 +2,13 @@ package com.habitrpg.android.habitica.models.auth import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.models.BaseObject +import com.habitrpg.shared.habitica.models.AvatarLocalAuthentication import io.realm.RealmObject import io.realm.annotations.RealmClass @RealmClass(embedded = true) -open class LocalAuthentication : RealmObject(), BaseObject { - var username: String? = null +open class LocalAuthentication : RealmObject(), BaseObject, AvatarLocalAuthentication { + override var username: String? = null var email: String? = null @SerializedName("has_password") var hasPassword: Boolean? = false diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/Member.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/Member.kt index 05fbd9bf6..2f07cb0ff 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/Member.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/Member.kt @@ -11,7 +11,7 @@ import com.habitrpg.android.habitica.models.user.Items import com.habitrpg.android.habitica.models.user.Outfit import com.habitrpg.android.habitica.models.user.Profile import com.habitrpg.android.habitica.models.user.Stats -import com.habitrpg.common.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.Avatar import io.realm.RealmModel import io.realm.RealmObject import io.realm.annotations.PrimaryKey @@ -33,8 +33,9 @@ open class Member : RealmObject(), Avatar, BaseMainObject { var party: UserParty? = null var contributor: ContributorInfo? = null var backer: Backer? = null - var authentication: Authentication? = null - var items: Items? = null + override var balance: Double = 0.0 + override var authentication: Authentication? = null + override var items: Items? = null override var costume: Outfit? = null override var equipped: Outfit? = null @@ -54,18 +55,6 @@ open class Member : RealmObject(), Avatar, BaseMainObject { val mountsTamedCount: Int get() = this.items?.mounts?.size ?: 0 - val username: String? - get() = authentication?.localAuthentication?.username - val formattedUsername: String? - get() = if (username != null) "@$username" else null - - override val hasClass: Boolean - get() { - return preferences?.disableClasses == false && stats?.habitClass?.isNotEmpty() == true - } - - override val sleep: Boolean - get() = preferences?.sleep ?: false override val realmClass: Class get() = Member::class.java override val primaryIdentifier: String? diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberFlags.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberFlags.kt index caf08c00b..7f4665614 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberFlags.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberFlags.kt @@ -1,6 +1,6 @@ package com.habitrpg.android.habitica.models.members -import com.habitrpg.common.habitica.models.AvatarFlags +import com.habitrpg.shared.habitica.models.AvatarFlags import io.realm.RealmObject import io.realm.annotations.RealmClass diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberPreferences.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberPreferences.kt index c25ce6c88..effe17a3f 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberPreferences.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/members/MemberPreferences.kt @@ -1,7 +1,7 @@ package com.habitrpg.android.habitica.models.members import com.habitrpg.android.habitica.models.user.Hair -import com.habitrpg.common.habitica.models.AvatarPreferences +import com.habitrpg.shared.habitica.models.AvatarPreferences import io.realm.RealmObject import io.realm.annotations.RealmClass diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/responses/BulkTaskScoringData.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/responses/BulkTaskScoringData.kt index b0d31dd4f..a4ebfc3e7 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/responses/BulkTaskScoringData.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/responses/BulkTaskScoringData.kt @@ -3,7 +3,7 @@ package com.habitrpg.android.habitica.models.responses import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.models.user.Buffs import com.habitrpg.android.habitica.models.user.Training -import com.habitrpg.common.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData class BulkTaskScoringData { @SerializedName("con") diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Challenge.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Challenge.kt index ff6907657..933d5526d 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Challenge.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Challenge.kt @@ -1,8 +1,8 @@ package com.habitrpg.android.habitica.models.social import com.habitrpg.android.habitica.models.BaseMainObject -import com.habitrpg.common.habitica.models.tasks.TasksOrder import com.habitrpg.android.habitica.models.user.User +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import io.realm.RealmModel import io.realm.RealmObject import io.realm.annotations.Ignore diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Group.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Group.kt index 14f0e7d3c..85c8e53fb 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Group.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/Group.kt @@ -4,8 +4,8 @@ import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.models.BaseMainObject import com.habitrpg.android.habitica.models.inventory.Quest import com.habitrpg.android.habitica.models.tasks.TaskList -import com.habitrpg.common.habitica.models.tasks.TasksOrder import com.habitrpg.android.habitica.models.user.User +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import io.realm.RealmList import io.realm.RealmObject import io.realm.annotations.Ignore diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/UserStyles.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/UserStyles.kt index a04c9d2f9..86e24c668 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/UserStyles.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/social/UserStyles.kt @@ -1,14 +1,17 @@ package com.habitrpg.android.habitica.models.social +import com.habitrpg.android.habitica.models.user.Authentication +import com.habitrpg.android.habitica.models.user.Flags import com.habitrpg.android.habitica.models.user.Items import com.habitrpg.android.habitica.models.user.Outfit import com.habitrpg.android.habitica.models.user.Preferences import com.habitrpg.android.habitica.models.user.Stats +import com.habitrpg.shared.habitica.models.Avatar import io.realm.RealmObject import io.realm.annotations.RealmClass @RealmClass(embedded = true) -open class UserStyles : RealmObject(), com.habitrpg.common.habitica.models.Avatar { +open class UserStyles : RealmObject(), Avatar { override val currentMount: String? get() = items?.currentMount @@ -33,10 +36,10 @@ open class UserStyles : RealmObject(), com.habitrpg.common.habitica.models.Avata get() { return false } - + override var balance: Double = 0.0 + override var authentication: Authentication? = null override var stats: Stats? = null override var preferences: Preferences? = null - override val flags: com.habitrpg.common.habitica.models.AvatarFlags? - get() = null - private var items: Items? = null + override var flags: Flags? = null + override var items: Items? = null } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/tasks/Task.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/tasks/Task.kt index 8ce4f6911..aeee02cb1 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/tasks/Task.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/tasks/Task.kt @@ -9,10 +9,10 @@ import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.models.BaseMainObject import com.habitrpg.android.habitica.models.Tag import com.habitrpg.common.habitica.helpers.MarkdownParser -import com.habitrpg.common.habitica.models.tasks.Attribute -import com.habitrpg.common.habitica.models.tasks.BaseTask -import com.habitrpg.common.habitica.models.tasks.Frequency -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.BaseTask +import com.habitrpg.shared.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.realm.RealmList import io.realm.RealmObject import io.realm.annotations.Ignore diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Authentication.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Authentication.kt index bec7177be..2eaf97e93 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Authentication.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Authentication.kt @@ -4,11 +4,12 @@ import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.models.BaseObject import com.habitrpg.android.habitica.models.auth.LocalAuthentication import com.habitrpg.android.habitica.models.user.auth.SocialAuthentication +import com.habitrpg.shared.habitica.models.AvatarAuthentication import io.realm.RealmObject import io.realm.annotations.RealmClass @RealmClass(embedded = true) -open class Authentication : RealmObject(), BaseObject { +open class Authentication : RealmObject(), BaseObject, AvatarAuthentication { fun findFirstSocialEmail(): String? { for (auth in listOf(googleAuthentication, appleAuthentication, facebookAuthentication)) { if (auth?.emails?.isNotEmpty() == true) { @@ -21,7 +22,7 @@ open class Authentication : RealmObject(), BaseObject { val hasPassword: Boolean get() = localAuthentication?.hasPassword == true @SerializedName("local") - var localAuthentication: LocalAuthentication? = null + override var localAuthentication: LocalAuthentication? = null @SerializedName("google") var googleAuthentication: SocialAuthentication? = null @SerializedName("apple") diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Buffs.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Buffs.kt index 395e9637e..1ec5053c5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Buffs.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Buffs.kt @@ -2,7 +2,7 @@ package com.habitrpg.android.habitica.models.user import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.models.BaseObject -import com.habitrpg.common.habitica.models.AvatarBuffs +import com.habitrpg.shared.habitica.models.AvatarBuffs import io.realm.RealmObject import io.realm.annotations.RealmClass diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Flags.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Flags.kt index ea1672c92..98e3b16f1 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Flags.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Flags.kt @@ -2,12 +2,13 @@ package com.habitrpg.android.habitica.models.user import com.habitrpg.android.habitica.models.BaseObject import com.habitrpg.android.habitica.models.TutorialStep +import com.habitrpg.shared.habitica.models.AvatarFlags import io.realm.RealmList import io.realm.RealmObject import io.realm.annotations.RealmClass @RealmClass(embedded = true) -open class Flags : RealmObject(), BaseObject, com.habitrpg.common.habitica.models.AvatarFlags { +open class Flags : RealmObject(), BaseObject, AvatarFlags { var tutorial: RealmList? = null var showTour = false var dropsEnabled = false diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Gear.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Gear.kt index a146778f5..5ff944327 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Gear.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Gear.kt @@ -2,13 +2,14 @@ package com.habitrpg.android.habitica.models.user import com.habitrpg.android.habitica.models.BaseObject import com.habitrpg.android.habitica.models.inventory.Equipment +import com.habitrpg.shared.habitica.models.AvatarGear import io.realm.RealmList import io.realm.RealmObject import io.realm.annotations.RealmClass @RealmClass(embedded = true) -open class Gear : RealmObject(), BaseObject { +open class Gear : RealmObject(), BaseObject, AvatarGear { var owned: RealmList? = null - var equipped: Outfit? = null - var costume: Outfit? = null + override var equipped: Outfit? = null + override var costume: Outfit? = null } diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Hair.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Hair.kt index a80745db6..321c485d7 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Hair.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Hair.kt @@ -1,7 +1,7 @@ package com.habitrpg.android.habitica.models.user import com.habitrpg.android.habitica.models.BaseObject -import com.habitrpg.common.habitica.models.AvatarHair +import com.habitrpg.shared.habitica.models.AvatarHair import io.realm.RealmObject import io.realm.annotations.RealmClass diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Items.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Items.kt index b7561ed10..3cf7384a7 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Items.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Items.kt @@ -1,13 +1,14 @@ package com.habitrpg.android.habitica.models.user import com.habitrpg.android.habitica.models.BaseObject +import com.habitrpg.shared.habitica.models.AvatarItems import io.realm.RealmList import io.realm.RealmObject import io.realm.annotations.RealmClass import java.util.Date @RealmClass(embedded = true) -open class Items : RealmObject, BaseObject { +open class Items : RealmObject, BaseObject, AvatarItems { fun setItemTypes() { hatchingPotions?.forEach { it.itemType = "hatchingPotions" } eggs?.forEach { it.itemType = "eggs" } @@ -44,13 +45,13 @@ open class Items : RealmObject, BaseObject { var pets: RealmList? = null var mounts: RealmList? = null - var currentMount: String? = null - var currentPet: String? = null + override var currentMount: String? = null + override var currentPet: String? = null var lastDropCount: Int = 0 var lastDropDate: Date? = null // private QuestContent quest; - var gear: Gear? = null + override var gear: Gear? = null constructor(currentMount: String, currentPet: String, lastDropCount: Int, lastDropDate: Date) { this.currentMount = currentMount diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Outfit.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Outfit.kt index ed8a84cf3..2da2c9d87 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Outfit.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Outfit.kt @@ -2,7 +2,7 @@ package com.habitrpg.android.habitica.models.user import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.models.BaseObject -import com.habitrpg.common.habitica.models.AvatarOutfit +import com.habitrpg.shared.habitica.models.AvatarOutfit import io.realm.RealmObject import io.realm.annotations.RealmClass diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Preferences.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Preferences.kt index d8a35787c..070cff23e 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Preferences.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Preferences.kt @@ -2,7 +2,7 @@ package com.habitrpg.android.habitica.models.user import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.models.BaseObject -import com.habitrpg.common.habitica.models.AvatarPreferences +import com.habitrpg.shared.habitica.models.AvatarPreferences import io.realm.RealmObject import io.realm.annotations.RealmClass diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Stats.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Stats.kt index b93f3d0a6..43a1b322f 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Stats.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/Stats.kt @@ -4,7 +4,7 @@ import android.content.Context import com.google.gson.annotations.SerializedName import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.models.BaseObject -import com.habitrpg.common.habitica.models.AvatarStats +import com.habitrpg.shared.habitica.models.AvatarStats import io.realm.RealmObject import io.realm.annotations.RealmClass diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/User.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/User.kt index edbe969a5..56151da65 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/User.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/models/user/User.kt @@ -11,8 +11,8 @@ import com.habitrpg.android.habitica.models.invitations.Invitations import com.habitrpg.android.habitica.models.social.ChallengeMembership import com.habitrpg.android.habitica.models.social.UserParty import com.habitrpg.android.habitica.models.tasks.TaskList -import com.habitrpg.common.habitica.models.tasks.TasksOrder -import com.habitrpg.common.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import io.realm.RealmList import io.realm.RealmObject import io.realm.annotations.Ignore @@ -38,15 +38,15 @@ open class User : RealmObject(), BaseMainObject, Avatar, VersionedObject { @SerializedName("_v") override var versionNumber: Int = 0 - var balance: Double = 0.toDouble() + override var balance: Double = 0.toDouble() override var stats: Stats? = null var inbox: Inbox? = null override var preferences: Preferences? = null var profile: Profile? = null var party: UserParty? = null - var items: Items? = null + override var items: Items? = null @SerializedName("auth") - var authentication: Authentication? = null + override var authentication: Authentication? = null override var flags: Flags? = null var contributor: ContributorInfo? = null var backer: Backer? = null @@ -86,39 +86,13 @@ open class User : RealmObject(), BaseMainObject, Avatar, VersionedObject { val contributorColor: Int get() = this.contributor?.contributorColor ?: R.color.text_primary - val username: String? - get() = authentication?.localAuthentication?.username - val formattedUsername: String? - get() = if (username != null) "@$username" else null - - override val gemCount: Int - get() = (this.balance * 4).toInt() override val hourglassCount: Int get() = purchased?.plan?.consecutive?.trinkets ?: 0 - override val costume: Outfit? - get() = items?.gear?.costume - - override val equipped: Outfit? - get() = items?.gear?.equipped - - override val hasClass: Boolean - get() { - return preferences?.disableClasses != true && flags?.classSelected == true && stats?.habitClass?.isNotEmpty() == true - } - - override val currentMount: String? - get() = items?.currentMount ?: "" - override val currentPet: String? - get() = items?.currentPet ?: "" - - override val sleep: Boolean - get() = preferences?.sleep ?: false - val hasParty: Boolean get() { - return this.party?.id?.length ?: 0 > 0 + return (this.party?.id?.length ?: 0) > 0 } val isSubscribed: Boolean diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/NotificationPublisher.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/NotificationPublisher.kt index 8e87b3152..42bfe863f 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/NotificationPublisher.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/NotificationPublisher.kt @@ -20,7 +20,7 @@ import com.habitrpg.android.habitica.helpers.TaskAlarmManager import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.user.User import com.habitrpg.android.habitica.ui.activities.MainActivity -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.functions.BiFunction import java.util.Calendar import java.util.Date diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/TaskReceiver.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/TaskReceiver.kt index c8c39ca01..4edb78de8 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/TaskReceiver.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/receivers/TaskReceiver.kt @@ -16,7 +16,7 @@ import com.habitrpg.android.habitica.extensions.withImmutableFlag import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.helpers.TaskAlarmManager import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.ui.activities.MainActivity import com.habitrpg.shared.habitica.HLogger import com.habitrpg.shared.habitica.LogLevel diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/AvatarWithBarsViewModel.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/AvatarWithBarsViewModel.kt index 22da6518c..f15bdade5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/AvatarWithBarsViewModel.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/AvatarWithBarsViewModel.kt @@ -18,7 +18,7 @@ import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper import com.habitrpg.common.habitica.helpers.Animations import com.habitrpg.common.habitica.helpers.HealthFormatter -import com.habitrpg.common.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.Avatar import java.util.Date import java.util.Locale import kotlin.math.floor diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/AddTaskWidgetActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/AddTaskWidgetActivity.kt index c04b8c494..d6f150587 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/AddTaskWidgetActivity.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/AddTaskWidgetActivity.kt @@ -8,7 +8,7 @@ import androidx.appcompat.app.AppCompatActivity import androidx.core.content.edit import androidx.preference.PreferenceManager import com.habitrpg.android.habitica.databinding.WidgetConfigureAddTaskBinding -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.widget.AddTaskWidgetProvider class AddTaskWidgetActivity : AppCompatActivity() { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt index 6a030c68a..db6cffa9b 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/ChallengeFormActivity.kt @@ -37,7 +37,7 @@ import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaProgressDialog import com.habitrpg.common.habitica.extensions.getThemeColor -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.core.Flowable import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.delay diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/HabitButtonWidgetActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/HabitButtonWidgetActivity.kt index 9278a6dcc..269cef412 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/HabitButtonWidgetActivity.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/HabitButtonWidgetActivity.kt @@ -16,7 +16,7 @@ import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.modules.AppModule import com.habitrpg.android.habitica.ui.adapter.SkillTasksRecyclerViewAdapter import com.habitrpg.android.habitica.widget.HabitButtonWidgetProvider -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.SupervisorJob diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/MainActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/MainActivity.kt index 63b08c5f4..30f23bcde 100755 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/MainActivity.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/MainActivity.kt @@ -61,8 +61,8 @@ import com.habitrpg.android.habitica.widget.TodoListWidgetProvider import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.getThemeColor import com.habitrpg.common.habitica.extensions.isUsingNightModeResources -import com.habitrpg.common.habitica.models.responses.MaintenanceResponse -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.MaintenanceResponse +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import com.habitrpg.common.habitica.views.AvatarView import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.Job diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SkillTasksActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SkillTasksActivity.kt index 8ebc9f6c8..013153777 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SkillTasksActivity.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/SkillTasksActivity.kt @@ -15,7 +15,7 @@ import com.habitrpg.android.habitica.data.TaskRepository import com.habitrpg.android.habitica.databinding.ActivitySkillTasksBinding import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.modules.AppModule import com.habitrpg.android.habitica.ui.fragments.skills.SkillTasksRecyclerViewFragment import javax.inject.Inject diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivity.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivity.kt index ab4ef842f..9b33d52fd 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivity.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/activities/TaskFormActivity.kt @@ -38,12 +38,10 @@ import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.ui.helpers.dismissKeyboard import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog -import com.habitrpg.common.habitica.extensions.dpToPx -import com.habitrpg.common.habitica.extensions.getThemeColor -import com.habitrpg.common.habitica.models.tasks.Attribute -import com.habitrpg.common.habitica.models.tasks.Frequency -import com.habitrpg.common.habitica.models.tasks.HabitResetOption -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.HabitResetOption +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.realm.RealmList import java.util.Date import javax.inject.Inject diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt index ada4ea8c3..3238e6245 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/CustomizationRecyclerViewAdapter.kt @@ -18,7 +18,7 @@ import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog import com.habitrpg.android.habitica.ui.views.shops.PurchaseDialog import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.loadImage -import com.habitrpg.common.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.Avatar import com.habitrpg.common.habitica.views.AvatarView import io.reactivex.rxjava3.core.BackpressureStrategy import io.reactivex.rxjava3.core.Flowable diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/challenges/ChallengeTasksRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/challenges/ChallengeTasksRecyclerViewAdapter.kt index d8f259412..9e5a8dca9 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/challenges/ChallengeTasksRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/social/challenges/ChallengeTasksRecyclerViewAdapter.kt @@ -8,7 +8,7 @@ import android.widget.TextView import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.components.UserComponent import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.ui.adapter.tasks.BaseTasksRecyclerViewAdapter import com.habitrpg.android.habitica.ui.viewHolders.BindableViewHolder import com.habitrpg.android.habitica.ui.viewHolders.tasks.BaseTaskViewHolder diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt index 981c9e5e0..c0f7d2b4b 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/BaseTasksRecyclerViewAdapter.kt @@ -12,7 +12,7 @@ import com.habitrpg.android.habitica.proxy.AnalyticsManager import com.habitrpg.android.habitica.ui.adapter.BaseRecyclerViewAdapter import com.habitrpg.android.habitica.ui.viewHolders.BindableViewHolder import com.habitrpg.android.habitica.ui.viewmodels.TasksViewModel -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import javax.inject.Inject abstract class BaseTasksRecyclerViewAdapter>( diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RealmBaseTasksRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RealmBaseTasksRecyclerViewAdapter.kt index c3b7ed569..014c7ec48 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RealmBaseTasksRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RealmBaseTasksRecyclerViewAdapter.kt @@ -18,7 +18,7 @@ import com.habitrpg.android.habitica.ui.viewmodels.TasksViewModel import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.layoutInflater -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import io.reactivex.rxjava3.core.BackpressureStrategy import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.functions.Action diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RewardsRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RewardsRecyclerViewAdapter.kt index f918dd411..222d0a0a0 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RewardsRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/RewardsRecyclerViewAdapter.kt @@ -5,7 +5,7 @@ import android.view.View import android.view.ViewGroup import androidx.recyclerview.widget.RecyclerView import com.habitrpg.android.habitica.R -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import com.habitrpg.android.habitica.models.shops.ShopItem import com.habitrpg.android.habitica.models.tasks.ChecklistItem import com.habitrpg.android.habitica.models.tasks.Task diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/TaskRecyclerViewAdapter.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/TaskRecyclerViewAdapter.kt index 5d9870717..2f38295b6 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/TaskRecyclerViewAdapter.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/adapter/tasks/TaskRecyclerViewAdapter.kt @@ -1,7 +1,7 @@ package com.habitrpg.android.habitica.ui.adapter.tasks import android.view.View -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import com.habitrpg.android.habitica.models.tasks.ChecklistItem import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.user.User diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt index 1c930c965..045c5218a 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/StatsFragment.kt @@ -15,7 +15,7 @@ import com.habitrpg.common.habitica.extensions.getThemeColor import com.habitrpg.android.habitica.extensions.setScaledPadding import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.helpers.UserStatComputer -import com.habitrpg.common.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.Attribute import com.habitrpg.android.habitica.models.user.Stats import com.habitrpg.android.habitica.models.user.User import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/setup/TaskSetupFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/setup/TaskSetupFragment.kt index f35438e5c..5d71ad623 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/setup/TaskSetupFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/setup/TaskSetupFragment.kt @@ -10,9 +10,9 @@ import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.components.UserComponent import com.habitrpg.android.habitica.databinding.FragmentSetupTasksBinding import com.habitrpg.android.habitica.models.tasks.Days -import com.habitrpg.common.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.Frequency import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.models.user.User import com.habitrpg.android.habitica.ui.activities.SetupActivity import com.habitrpg.android.habitica.ui.adapter.setup.TaskSetupAdapter diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/skills/SkillTasksRecyclerViewFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/skills/SkillTasksRecyclerViewFragment.kt index 6e59a49d6..70be854dd 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/skills/SkillTasksRecyclerViewFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/skills/SkillTasksRecyclerViewFragment.kt @@ -14,7 +14,7 @@ import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.ui.adapter.SkillTasksRecyclerViewAdapter import com.habitrpg.android.habitica.ui.fragments.BaseFragment import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.core.BackpressureStrategy import io.reactivex.rxjava3.core.Flowable import io.reactivex.rxjava3.subjects.PublishSubject diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeDetailFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeDetailFragment.kt index 55ab3ca7d..d42a2462c 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeDetailFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/social/challenges/ChallengeDetailFragment.kt @@ -35,7 +35,7 @@ import com.habitrpg.android.habitica.ui.viewmodels.MainUserViewModel import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog import com.habitrpg.common.habitica.helpers.EmojiParser import com.habitrpg.common.habitica.helpers.setMarkdown -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper import retrofit2.HttpException import javax.inject.Inject diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/RewardsRecyclerviewFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/RewardsRecyclerviewFragment.kt index 454e2c173..035729ba6 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/RewardsRecyclerviewFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/RewardsRecyclerviewFragment.kt @@ -15,7 +15,7 @@ import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.extensions.subscribeWithErrorHandler import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.models.shops.ShopItem -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.android.habitica.ui.activities.MainActivity import com.habitrpg.android.habitica.ui.activities.SkillMemberActivity import com.habitrpg.android.habitica.ui.adapter.tasks.RewardsRecyclerViewAdapter diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt index 6752818ba..9cc327d1f 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TaskRecyclerViewFragment.kt @@ -46,9 +46,9 @@ import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper import com.habitrpg.android.habitica.ui.views.HabiticaSnackbar import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog import com.habitrpg.common.habitica.helpers.EmptyItem -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.TaskScoringResult -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.disposables.CompositeDisposable import kotlinx.coroutines.Job diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt index 9c1a9a448..d7a70ecbd 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/fragments/tasks/TasksFragment.kt @@ -34,7 +34,7 @@ import com.habitrpg.android.habitica.ui.viewmodels.TasksViewModel import com.habitrpg.android.habitica.ui.views.navigation.HabiticaBottomNavigationViewListener import com.habitrpg.android.habitica.ui.views.tasks.TaskFilterDialog import com.habitrpg.common.habitica.extensions.getThemeColor -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import java.util.Date import java.util.WeakHashMap diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/BaseTaskViewHolder.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/BaseTaskViewHolder.kt index 0965fbbfd..2d40a1341 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/BaseTaskViewHolder.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/BaseTaskViewHolder.kt @@ -21,7 +21,7 @@ import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.getThemeColor import com.habitrpg.common.habitica.helpers.MarkdownParser import com.habitrpg.common.habitica.helpers.setParsedMarkdown -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Single import io.reactivex.rxjava3.functions.Action diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/ChecklistedViewHolder.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/ChecklistedViewHolder.kt index 503f6e848..b771d8f15 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/ChecklistedViewHolder.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/ChecklistedViewHolder.kt @@ -19,8 +19,8 @@ import com.habitrpg.common.habitica.extensions.getThemeColor import com.habitrpg.common.habitica.extensions.isUsingNightModeResources import com.habitrpg.common.habitica.helpers.MarkdownParser import com.habitrpg.common.habitica.helpers.setParsedMarkdown -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.schedulers.Schedulers diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/DailyViewHolder.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/DailyViewHolder.kt index ce307b357..9b1665f04 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/DailyViewHolder.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/DailyViewHolder.kt @@ -1,7 +1,7 @@ package com.habitrpg.android.habitica.ui.viewHolders.tasks import android.view.View -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import com.habitrpg.android.habitica.models.tasks.ChecklistItem import com.habitrpg.android.habitica.models.tasks.Task import java.text.DateFormat diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/HabitViewHolder.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/HabitViewHolder.kt index 381a7b484..2c8cf24ab 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/HabitViewHolder.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/HabitViewHolder.kt @@ -8,7 +8,7 @@ import android.widget.ImageView import androidx.core.content.ContextCompat import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection class HabitViewHolder( itemView: View, diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/RewardViewHolder.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/RewardViewHolder.kt index f5c863667..fb5b8b7d5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/RewardViewHolder.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/RewardViewHolder.kt @@ -7,7 +7,7 @@ import androidx.core.graphics.ColorUtils import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.RewardItemCardBinding import com.habitrpg.common.habitica.helpers.NumberAbbreviator -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.ui.ItemDetailDialog import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/TodoViewHolder.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/TodoViewHolder.kt index d08e92e3e..6657681ba 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/TodoViewHolder.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewHolders/tasks/TodoViewHolder.kt @@ -1,7 +1,7 @@ package com.habitrpg.android.habitica.ui.viewHolders.tasks import android.view.View -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import com.habitrpg.android.habitica.models.tasks.ChecklistItem import com.habitrpg.android.habitica.models.tasks.Task import java.text.DateFormat diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/MainActivityViewModel.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/MainActivityViewModel.kt index 49fdd9f2c..1c0119848 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/MainActivityViewModel.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/MainActivityViewModel.kt @@ -18,7 +18,7 @@ import com.habitrpg.android.habitica.models.inventory.Egg import com.habitrpg.android.habitica.proxy.AnalyticsManager import com.habitrpg.android.habitica.ui.TutorialView import com.habitrpg.common.habitica.api.HostConfig -import com.habitrpg.common.habitica.models.responses.MaintenanceResponse +import com.habitrpg.shared.habitica.models.responses.MaintenanceResponse import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers import io.realm.kotlin.isValid diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/TasksViewModel.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/TasksViewModel.kt index fd16b33ca..3b778a0e0 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/TasksViewModel.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/viewmodels/TasksViewModel.kt @@ -12,9 +12,9 @@ import com.habitrpg.android.habitica.helpers.AmplitudeManager import com.habitrpg.android.habitica.helpers.AppConfigManager import com.habitrpg.android.habitica.helpers.RxErrorHandler import com.habitrpg.android.habitica.models.tasks.Task -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.TaskScoringResult -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.disposables.CompositeDisposable import io.realm.Case import io.realm.OrderedRealmCollection diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/navigation/HabiticaBottomNavigationView.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/navigation/HabiticaBottomNavigationView.kt index 2ddba8649..e6dfa6468 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/navigation/HabiticaBottomNavigationView.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/navigation/HabiticaBottomNavigationView.kt @@ -19,7 +19,7 @@ import com.habitrpg.android.habitica.databinding.MainNavigationViewBinding import com.habitrpg.common.habitica.extensions.getThemeColor import com.habitrpg.common.habitica.extensions.layoutInflater import com.habitrpg.android.habitica.extensions.setTintWith -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType interface HabiticaBottomNavigationViewListener { fun onTabSelected(taskType: TaskType, smooth: Boolean) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogBackgroundContent.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogBackgroundContent.kt index f79c3a8e4..2fa19af74 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogBackgroundContent.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/shops/PurchaseDialogBackgroundContent.kt @@ -5,7 +5,7 @@ import android.widget.TextView import com.habitrpg.android.habitica.databinding.PurchaseDialogBackgroundBinding import com.habitrpg.android.habitica.models.shops.ShopItem import com.habitrpg.common.habitica.extensions.layoutInflater -import com.habitrpg.common.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.Avatar import com.habitrpg.common.habitica.views.AvatarView import com.habitrpg.common.habitica.views.PixelArtView import java.util.EnumMap diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.kt index fa249029c..4e96f6a56 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/TaskFilterDialog.kt @@ -26,7 +26,7 @@ import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.ui.viewmodels.TasksViewModel import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaBottomSheetDialog import com.habitrpg.common.habitica.extensions.getThemeColor -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.core.Observable import io.reactivex.rxjava3.disposables.Disposable import java.util.UUID diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/HabitResetStreakButtons.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/HabitResetStreakButtons.kt index f0fc1442c..6b4d08728 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/HabitResetStreakButtons.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/HabitResetStreakButtons.kt @@ -11,7 +11,8 @@ import android.widget.TextView import androidx.core.content.ContextCompat import com.habitrpg.android.habitica.R import com.habitrpg.common.habitica.extensions.dpToPx -import com.habitrpg.common.habitica.models.tasks.HabitResetOption +import com.habitrpg.common.habitica.extensions.nameRes +import com.habitrpg.shared.habitica.models.tasks.HabitResetOption class HabitResetStreakButtons @JvmOverloads constructor( context: Context, diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderContainer.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderContainer.kt index ad45aa3b8..f15b71d67 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderContainer.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderContainer.kt @@ -9,7 +9,7 @@ import androidx.core.view.children import androidx.core.view.updateMargins import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.android.habitica.models.tasks.RemindersItem -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType class ReminderContainer @JvmOverloads constructor( context: Context, diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderItemFormView.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderItemFormView.kt index 600d290b0..f3fc7cea6 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderItemFormView.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/ReminderItemFormView.kt @@ -20,7 +20,7 @@ import com.habitrpg.android.habitica.models.tasks.RemindersItem import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.getThemeColor import com.habitrpg.common.habitica.extensions.layoutInflater -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import java.text.DateFormat import java.time.ZonedDateTime import java.time.format.DateTimeFormatter diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskDifficultyButtons.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskDifficultyButtons.kt index 4f706e911..128a7818a 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskDifficultyButtons.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskDifficultyButtons.kt @@ -14,8 +14,9 @@ import androidx.core.view.children import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.extensions.asDrawable import com.habitrpg.android.habitica.extensions.inflate -import com.habitrpg.common.habitica.models.tasks.TaskDifficulty import com.habitrpg.android.habitica.ui.views.HabiticaIconsHelper +import com.habitrpg.common.habitica.extensions.nameRes +import com.habitrpg.shared.habitica.models.tasks.TaskDifficulty class TaskDifficultyButtons @JvmOverloads constructor( context: Context, diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskSchedulingControls.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskSchedulingControls.kt index abdc3b501..de2c71120 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskSchedulingControls.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/tasks/form/TaskSchedulingControls.kt @@ -22,8 +22,8 @@ import com.habitrpg.android.habitica.models.tasks.Days import com.habitrpg.android.habitica.ui.adapter.SimpleSpinnerAdapter import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.layoutInflater -import com.habitrpg.common.habitica.models.tasks.Frequency -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.TaskType import java.text.DateFormat import java.text.DateFormatSymbols import java.util.Calendar diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/yesterdailies/YesterdailyDialog.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/yesterdailies/YesterdailyDialog.kt index ea720791c..ce3059d8a 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/yesterdailies/YesterdailyDialog.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/ui/views/yesterdailies/YesterdailyDialog.kt @@ -19,7 +19,7 @@ import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.ui.views.dialogs.HabiticaAlertDialog import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.isUsingNightModeResources -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.core.Observable import java.lang.ref.WeakReference diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/FeedResponseDeserializer.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/FeedResponseDeserializer.kt index 4c0f61759..81b639b99 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/FeedResponseDeserializer.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/FeedResponseDeserializer.kt @@ -4,7 +4,7 @@ import com.google.gson.JsonDeserializationContext import com.google.gson.JsonDeserializer import com.google.gson.JsonElement import com.google.gson.JsonParseException -import com.habitrpg.common.habitica.models.responses.FeedResponse +import com.habitrpg.shared.habitica.models.responses.FeedResponse import java.lang.reflect.Type class FeedResponseDeserializer : JsonDeserializer { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/GroupSerialization.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/GroupSerialization.kt index ccfc2752f..db4079c98 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/GroupSerialization.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/GroupSerialization.kt @@ -13,7 +13,7 @@ import com.habitrpg.android.habitica.models.inventory.QuestRageStrike import com.habitrpg.android.habitica.models.members.Member import com.habitrpg.android.habitica.models.social.Group import com.habitrpg.android.habitica.models.social.GroupCategory -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import io.realm.Realm import io.realm.RealmList import java.lang.reflect.Type diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/TaskSerializer.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/TaskSerializer.kt index 117bfcea9..3effe6188 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/TaskSerializer.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/TaskSerializer.kt @@ -14,9 +14,9 @@ import com.habitrpg.android.habitica.models.tasks.Days import com.habitrpg.android.habitica.models.tasks.RemindersItem import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskGroupPlan -import com.habitrpg.common.habitica.models.tasks.Attribute -import com.habitrpg.common.habitica.models.tasks.Frequency -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.TaskType import io.realm.RealmList import java.lang.reflect.Type import java.util.Date diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/UserDeserializer.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/UserDeserializer.kt index 094398629..f0f1275fe 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/utils/UserDeserializer.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/utils/UserDeserializer.kt @@ -14,7 +14,7 @@ import com.habitrpg.android.habitica.models.inventory.Quest import com.habitrpg.android.habitica.models.invitations.Invitations import com.habitrpg.android.habitica.models.social.ChallengeMembership import com.habitrpg.android.habitica.models.social.UserParty -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import com.habitrpg.android.habitica.models.user.ABTest import com.habitrpg.android.habitica.models.user.Authentication import com.habitrpg.android.habitica.models.user.Backer diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/AddTaskWidgetProvider.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/AddTaskWidgetProvider.kt index c212b3e8f..9c33a7197 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/AddTaskWidgetProvider.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/AddTaskWidgetProvider.kt @@ -6,7 +6,7 @@ import android.content.Context import android.widget.RemoteViews import androidx.preference.PreferenceManager import com.habitrpg.android.habitica.R -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType class AddTaskWidgetProvider : BaseWidgetProvider() { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/BaseWidgetProvider.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/BaseWidgetProvider.kt index 5db82f479..8e51e6a63 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/BaseWidgetProvider.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/BaseWidgetProvider.kt @@ -9,7 +9,7 @@ import android.widget.Toast import com.habitrpg.android.habitica.data.UserRepository import com.habitrpg.android.habitica.helpers.AmplitudeManager import com.habitrpg.android.habitica.interactors.NotifyUserUseCase -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import javax.inject.Inject abstract class BaseWidgetProvider : AppWidgetProvider() { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/DailiesListFactory.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/DailiesListFactory.kt index f38612423..182510e05 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/DailiesListFactory.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/DailiesListFactory.kt @@ -3,6 +3,6 @@ package com.habitrpg.android.habitica.widget import android.content.Context import android.content.Intent import com.habitrpg.android.habitica.R -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType class DailiesListFactory(context: Context, intent: Intent) : TaskListFactory(context, intent, TaskType.DAILY, R.layout.widget_dailies_list_row, R.id.dailies_text) diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetProvider.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetProvider.kt index caefbbf54..6c561c5d7 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetProvider.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetProvider.kt @@ -9,7 +9,7 @@ import com.habitrpg.android.habitica.HabiticaBaseApplication import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.data.TaskRepository import com.habitrpg.android.habitica.helpers.RxErrorHandler -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import javax.inject.Inject class HabitButtonWidgetProvider : BaseWidgetProvider() { diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetService.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetService.kt index 42949c239..b7fe8c728 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetService.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/HabitButtonWidgetService.kt @@ -17,7 +17,7 @@ import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.data.TaskRepository import com.habitrpg.android.habitica.extensions.withImmutableFlag import com.habitrpg.android.habitica.helpers.RxErrorHandler -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.common.habitica.helpers.MarkdownParser import javax.inject.Inject diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TaskListFactory.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TaskListFactory.kt index 026d925e8..b6d7cdef5 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TaskListFactory.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TaskListFactory.kt @@ -12,7 +12,7 @@ import com.habitrpg.android.habitica.data.TaskRepository import com.habitrpg.android.habitica.data.UserRepository import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.common.habitica.helpers.MarkdownParser -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.SupervisorJob diff --git a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TodoListFactory.kt b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TodoListFactory.kt index 9fa1f11d0..9fce9c75f 100644 --- a/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TodoListFactory.kt +++ b/Habitica/src/main/java/com/habitrpg/android/habitica/widget/TodoListFactory.kt @@ -3,6 +3,6 @@ package com.habitrpg.android.habitica.widget import android.content.Context import android.content.Intent import com.habitrpg.android.habitica.R -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType class TodoListFactory(context: Context, intent: Intent) : TaskListFactory(context, intent, TaskType.TODO, R.layout.widget_todo_list_row, R.id.todo_text) diff --git a/Habitica/src/test/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImplTest.kt b/Habitica/src/test/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImplTest.kt index e3b345355..02905f207 100644 --- a/Habitica/src/test/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImplTest.kt +++ b/Habitica/src/test/java/com/habitrpg/android/habitica/data/implementation/TaskRepositoryImplTest.kt @@ -4,12 +4,12 @@ import com.habitrpg.android.habitica.data.ApiClient import com.habitrpg.android.habitica.data.TaskRepository import com.habitrpg.android.habitica.data.local.TaskLocalRepository import com.habitrpg.android.habitica.models.BaseObject -import com.habitrpg.common.habitica.models.responses.TaskDirectionData -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import com.habitrpg.android.habitica.models.tasks.Task import com.habitrpg.android.habitica.models.tasks.TaskList -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import com.habitrpg.android.habitica.models.user.Stats import com.habitrpg.android.habitica.models.user.User import io.kotest.common.ExperimentalKotest diff --git a/build.gradle b/build.gradle index 6ebcdbdb6..653c19d3f 100644 --- a/build.gradle +++ b/build.gradle @@ -8,7 +8,7 @@ buildscript { amplitude_version = '3.35.1' - appcompat_version = '1.4.2' + appcompat_version = '1.5.0' coil_version = '2.1.0' core_ktx_version = '1.8.0' coroutines_version = '1.6.2' @@ -22,6 +22,7 @@ buildscript { play_wearables_version = '17.1.0' play_auth_version = '20.2.0' preferences_version = '1.2.0' + realm_version = '1.0.2' retrofit_version = '2.9.0' recyclerview_version = '1.2.1' } @@ -37,9 +38,10 @@ buildscript { classpath 'com.google.gms:google-services:4.3.13' classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.1' classpath "io.realm:realm-gradle-plugin:10.11.0" + classpath("io.realm.kotlin:gradle-plugin:$realm_version") classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.19.0" - classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.5.0" + classpath "androidx.navigation:navigation-safe-args-gradle-plugin:2.5.1" classpath 'com.google.firebase:perf-plugin:1.4.1' classpath "com.google.dagger:hilt-android-gradle-plugin:$daggerhilt_version" } diff --git a/common/src/main/java/com/habitrpg/common/habitica/extensions/HabitResetOption.kt b/common/src/main/java/com/habitrpg/common/habitica/extensions/HabitResetOption.kt new file mode 100644 index 000000000..9c8d5d426 --- /dev/null +++ b/common/src/main/java/com/habitrpg/common/habitica/extensions/HabitResetOption.kt @@ -0,0 +1,11 @@ +package com.habitrpg.common.habitica.extensions + +import com.habitrpg.common.habitica.R +import com.habitrpg.shared.habitica.models.tasks.HabitResetOption + +val HabitResetOption.nameRes: Int + get() = when (this) { + HabitResetOption.DAILY -> R.string.daily + HabitResetOption.WEEKLY -> R.string.weekly + HabitResetOption.MONTHLY -> R.string.monthly + } \ No newline at end of file diff --git a/common/src/main/java/com/habitrpg/common/habitica/extensions/TaskDifficulty-Extensions.kt b/common/src/main/java/com/habitrpg/common/habitica/extensions/TaskDifficulty-Extensions.kt new file mode 100644 index 000000000..1bda6b269 --- /dev/null +++ b/common/src/main/java/com/habitrpg/common/habitica/extensions/TaskDifficulty-Extensions.kt @@ -0,0 +1,12 @@ +package com.habitrpg.common.habitica.extensions + +import com.habitrpg.common.habitica.R +import com.habitrpg.shared.habitica.models.tasks.TaskDifficulty + +val TaskDifficulty.nameRes: Int + get() = when (this) { + TaskDifficulty.TRIVIAL -> R.string.trivial + TaskDifficulty.EASY -> R.string.easy + TaskDifficulty.MEDIUM -> R.string.medium + TaskDifficulty.HARD -> R.string.hard + } \ No newline at end of file diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/Avatar.kt b/common/src/main/java/com/habitrpg/common/habitica/models/Avatar.kt deleted file mode 100644 index 5f0c6fa66..000000000 --- a/common/src/main/java/com/habitrpg/common/habitica/models/Avatar.kt +++ /dev/null @@ -1,17 +0,0 @@ -package com.habitrpg.common.habitica.models - - -interface Avatar { - val currentMount: String? - val currentPet: String? - val sleep: Boolean - val stats: AvatarStats? - val preferences: AvatarPreferences? - val flags: AvatarFlags? - val gemCount: Int - val hourglassCount: Int - val costume: AvatarOutfit? - val equipped: AvatarOutfit? - val hasClass: Boolean - fun isValid(): Boolean -} \ No newline at end of file diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/HabitResponse.kt b/common/src/main/java/com/habitrpg/common/habitica/models/HabitResponse.kt similarity index 57% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/HabitResponse.kt rename to common/src/main/java/com/habitrpg/common/habitica/models/HabitResponse.kt index 5c23684e3..d6b98696d 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/HabitResponse.kt +++ b/common/src/main/java/com/habitrpg/common/habitica/models/HabitResponse.kt @@ -1,6 +1,4 @@ -package com.habitrpg.common.habitica.models.responses - -import com.habitrpg.common.habitica.models.Notification +package com.habitrpg.common.habitica.models class HabitResponse { var data: T? = null diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/Status.kt b/common/src/main/java/com/habitrpg/common/habitica/models/responses/Status.kt deleted file mode 100644 index 67f4b3c32..000000000 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/Status.kt +++ /dev/null @@ -1,5 +0,0 @@ -package com.habitrpg.common.habitica.models.responses - -class Status { - var status: String? = null -} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirectionDataTemp.kt b/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirectionDataTemp.kt deleted file mode 100644 index 6e6186e56..000000000 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirectionDataTemp.kt +++ /dev/null @@ -1,51 +0,0 @@ -package com.habitrpg.common.habitica.models.responses - -import android.os.Parcel -import android.os.Parcelable - -class TaskDirectionDataTemp { - - var drop: TaskDirectionDataDrop? = null - var quest: TaskDirectionDataQuest? = null - var crit: Float? = null -} - -class TaskDirectionDataQuest { - var progressDelta: Double = 0.0 - var collection: Int = 0 -} - -class TaskDirectionDataDrop() : Parcelable { - var value: Int = 0 - var key: String? = null - var type: String? = null - var dialog: String? = null - - constructor(parcel: Parcel) : this() { - value = parcel.readInt() - key = parcel.readString() - type = parcel.readString() - dialog = parcel.readString() - } - - override fun writeToParcel(parcel: Parcel, flags: Int) { - parcel.writeInt(value) - parcel.writeString(key) - parcel.writeString(type) - parcel.writeString(dialog) - } - - override fun describeContents(): Int { - return 0 - } - - companion object CREATOR : Parcelable.Creator { - override fun createFromParcel(parcel: Parcel): TaskDirectionDataDrop { - return TaskDirectionDataDrop(parcel) - } - - override fun newArray(size: Int): Array { - return arrayOfNulls(size) - } - } -} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskScoringResult.kt b/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskScoringResult.kt deleted file mode 100644 index bdb0e8ea5..000000000 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskScoringResult.kt +++ /dev/null @@ -1,75 +0,0 @@ -package com.habitrpg.common.habitica.models.responses - -import android.os.Parcel -import android.os.Parcelable -import com.habitrpg.common.habitica.models.AvatarStats - -class TaskScoringResult(): Parcelable { - constructor(data: TaskDirectionData, stats: AvatarStats?) : this() { - hasLeveledUp = data.lvl > (stats?.lvl ?: 0) - healthDelta = data.hp - (stats?.hp ?: 0.0) - hasDied = data.hp <= 0.0 - experienceDelta = if (hasLeveledUp) { - (stats?.toNextLevel ?: 0).toDouble() - (stats?.exp ?: 0.0) + data.exp - } else { - data.exp - (stats?.exp ?: 0.0) - } - manaDelta = data.mp - (stats?.mp ?: 0.0) - goldDelta = data.gp - (stats?.gp ?: 0.0) - level = data.lvl - questDamage = data._tmp?.quest?.progressDelta - questItemsFound = data._tmp?.quest?.collection - drop = data._tmp?.drop - } - - var hasDied: Boolean = false - var drop: TaskDirectionDataDrop? = null - var experienceDelta: Double? = null - var healthDelta: Double? = null - var goldDelta: Double? = null - var manaDelta: Double? = null - var hasLeveledUp: Boolean = false - var level: Int? = null - var questDamage: Double? = null - var questItemsFound: Int? = null - - constructor(parcel: Parcel) : this() { - experienceDelta = parcel.readValue(Double::class.java.classLoader) as? Double - healthDelta = parcel.readValue(Double::class.java.classLoader) as? Double - goldDelta = parcel.readValue(Double::class.java.classLoader) as? Double - manaDelta = parcel.readValue(Double::class.java.classLoader) as? Double - hasLeveledUp = parcel.readByte() != 0.toByte() - level = parcel.readValue(Int::class.java.classLoader) as? Int - questDamage = parcel.readValue(Double::class.java.classLoader) as? Double - questItemsFound = parcel.readValue(Int::class.java.classLoader) as? Int - drop = parcel.readValue(TaskDirectionDataDrop::class.java.classLoader) as? TaskDirectionDataDrop - hasDied = parcel.readByte() != 0.toByte() - } - - override fun writeToParcel(parcel: Parcel, flags: Int) { - parcel.writeValue(experienceDelta) - parcel.writeValue(healthDelta) - parcel.writeValue(goldDelta) - parcel.writeValue(manaDelta) - parcel.writeByte(if (hasLeveledUp) 1 else 0) - parcel.writeValue(level) - parcel.writeValue(questDamage) - parcel.writeValue(questItemsFound) - parcel.writeValue(drop) - parcel.writeByte(if (hasDied) 1 else 0) - } - - override fun describeContents(): Int { - return 0 - } - - companion object CREATOR : Parcelable.Creator { - override fun createFromParcel(parcel: Parcel): TaskScoringResult { - return TaskScoringResult(parcel) - } - - override fun newArray(size: Int): Array { - return arrayOfNulls(size) - } - } -} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/HabitResetOption.kt b/common/src/main/java/com/habitrpg/common/habitica/models/tasks/HabitResetOption.kt deleted file mode 100644 index 8d89125b9..000000000 --- a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/HabitResetOption.kt +++ /dev/null @@ -1,14 +0,0 @@ -package com.habitrpg.common.habitica.models.tasks - -import androidx.annotation.StringRes -import com.habitrpg.common.habitica.R - -enum class HabitResetOption(val value: Frequency, @StringRes val nameRes: Int) { - DAILY(Frequency.DAILY, R.string.repeat_daily), - WEEKLY(Frequency.WEEKLY, R.string.weekly), - MONTHLY(Frequency.MONTHLY, R.string.monthly); - - companion object { - fun from(type: Frequency?): HabitResetOption? = values().find { it.value == type } - } -} \ No newline at end of file diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/TaskDifficulty.kt b/common/src/main/java/com/habitrpg/common/habitica/models/tasks/TaskDifficulty.kt deleted file mode 100644 index 0905d8bb9..000000000 --- a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/TaskDifficulty.kt +++ /dev/null @@ -1,10 +0,0 @@ -package com.habitrpg.common.habitica.models.tasks - -import com.habitrpg.common.habitica.R - -enum class TaskDifficulty(val value: Float, val nameRes: Int) { - TRIVIAL(0.1f, R.string.trivial), - EASY(1f, R.string.easy), - MEDIUM(1.5f, R.string.medium), - HARD(2f, R.string.hard) -} \ No newline at end of file diff --git a/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt b/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt index 5a0153f1b..4657863e8 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt +++ b/common/src/main/java/com/habitrpg/common/habitica/views/AvatarView.kt @@ -22,7 +22,7 @@ import com.habitrpg.common.habitica.R import com.habitrpg.common.habitica.extensions.DataBindingUtils import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.helpers.AppConfigManager -import com.habitrpg.common.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.Avatar import java.util.Date import java.util.EnumMap import java.util.concurrent.atomic.AtomicInteger diff --git a/settings.gradle b/settings.gradle index 68aeea8b3..d2fe38dbf 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,4 +1,4 @@ -include ':shared' include 'Habitica', ':Habitica' include ':wearos' include ':common' +include ':shared' diff --git a/shared/.gitignore b/shared/.gitignore deleted file mode 100644 index 796b96d1c..000000000 --- a/shared/.gitignore +++ /dev/null @@ -1 +0,0 @@ -/build diff --git a/shared/build.gradle b/shared/build.gradle deleted file mode 100644 index 054b4506e..000000000 --- a/shared/build.gradle +++ /dev/null @@ -1,88 +0,0 @@ -apply plugin: 'com.android.library' -apply plugin: 'kotlin-multiplatform' -apply plugin: 'kotlin-kapt' - -android { - compileSdkVersion 32 - - defaultConfig { - minSdkVersion 21 - targetSdkVersion 32 - } - buildTypes { - release { - } - debugIAP { - - } - } - sourceSets{ - main.java.srcDirs += 'src/androidMain/kotlin' - } - compileOptions { - targetCompatibility = '1.8' - } -} - -kotlin { - targets { - final def iOSTarget = System.getenv('SDK_NAME')?.startsWith("iphoneos") \ - ? presets.iosArm64 : presets.iosX64 - - fromPreset(iOSTarget, 'ios') { - binaries { - framework('shared') - } - } - - android() - } - - sourceSets { - commonMain.dependencies { - api 'org.jetbrains.kotlin:kotlin-stdlib-common' - } - - commonMain.kotlin.srcDirs += 'src/commonMain/kotlin' - - androidMain.dependencies { - api 'org.jetbrains.kotlin:kotlin-stdlib' - } - - iosMain.dependencies { - } - - iosMain.kotlin.srcDirs += 'src/iosMain/kotlin' - } -} - -// workaround for https://youtrack.jetbrains.com/issue/KT-27170 -configurations { - compileClasspath -} - -task packForXCode(type: Sync) { - final File frameworkDir = new File(buildDir, "xcode-frameworks") - final String mode = project.findProperty("XCODE_CONFIGURATION")?.toUpperCase() ?: 'DEBUG' - final def framework = kotlin.targets.ios.binaries.getFramework("shared", mode) - - inputs.property "mode", mode - dependsOn framework.linkTask - - from { framework.outputFile.parentFile } - into frameworkDir - - doLast { - new File(frameworkDir, 'gradlew').with { - text = "#!/bin/bash\nexport 'JAVA_HOME=${System.getProperty("java.home")}'\ncd '${rootProject.rootDir}'\n./gradlew \$@\n" - setExecutable(true) - } - } -} -tasks.build.dependsOn packForXCode - -tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all { - kotlinOptions { - jvmTarget = "1.8" - } -} \ No newline at end of file diff --git a/shared/build.gradle.kts b/shared/build.gradle.kts new file mode 100644 index 000000000..f9f97dc31 --- /dev/null +++ b/shared/build.gradle.kts @@ -0,0 +1,62 @@ +plugins { + kotlin("multiplatform") + id("com.android.library") + id("kotlin-parcelize") +} + +kotlin { + android() + + listOf( + iosX64(), + iosArm64(), + iosSimulatorArm64() + ).forEach { + it.binaries.framework { + baseName = "shared" + } + } + + sourceSets { + val commonMain by getting { + dependencies { + implementation("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0-native-mt") + implementation("io.realm.kotlin:library-base:1.0.2") + } + } + val commonTest by getting { + dependencies { + implementation(kotlin("test")) + } + } + val androidMain by getting + val androidTest by getting + val iosX64Main by getting + val iosArm64Main by getting + val iosSimulatorArm64Main by getting + val iosMain by creating { + dependsOn(commonMain) + iosX64Main.dependsOn(this) + iosArm64Main.dependsOn(this) + iosSimulatorArm64Main.dependsOn(this) + } + val iosX64Test by getting + val iosArm64Test by getting + val iosSimulatorArm64Test by getting + val iosTest by creating { + dependsOn(commonTest) + iosX64Test.dependsOn(this) + iosArm64Test.dependsOn(this) + iosSimulatorArm64Test.dependsOn(this) + } + } +} + +android { + compileSdk = 32 + sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml") + defaultConfig { + minSdk = 21 + targetSdk = 32 + } +} \ No newline at end of file diff --git a/shared/src/androidMain/AndroidManifest.xml b/shared/src/androidMain/AndroidManifest.xml new file mode 100644 index 000000000..b7e9ba4e0 --- /dev/null +++ b/shared/src/androidMain/AndroidManifest.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/shared/src/androidMain/kotlin/com/habitrpg/shared/habitica/Platform.kt b/shared/src/androidMain/kotlin/com/habitrpg/shared/habitica/Platform.kt new file mode 100644 index 000000000..6286cbbd1 --- /dev/null +++ b/shared/src/androidMain/kotlin/com/habitrpg/shared/habitica/Platform.kt @@ -0,0 +1,11 @@ +package com.habitrpg.shared.habitica + +import android.os.Parcelable +import kotlinx.parcelize.Parcelize + +actual class Platform actual constructor() { + actual val platform: String = "Android ${android.os.Build.VERSION.SDK_INT}" +} + +actual typealias HParcelable = Parcelable +actual typealias HParcelize = Parcelize \ No newline at end of file diff --git a/shared/src/androidMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt b/shared/src/androidMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt index 9b9303198..eaaa0c50a 100644 --- a/shared/src/androidMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt +++ b/shared/src/androidMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt @@ -1,11 +1,10 @@ package com.habitrpg.shared.habitica import android.util.Log -import space.thelen.shared.cluetective.BuildConfig actual class PlatformLogger actual constructor() { actual val enabled: Boolean - get() = BuildConfig.DEBUG + get() = true actual fun logDebug(tag: String, message: String) { Log.d(tag, message) @@ -22,4 +21,4 @@ actual class PlatformLogger actual constructor() { actual fun logError(tag: String, message: String, exception: Throwable) { Log.e(tag, message, exception) } -} +} \ No newline at end of file diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/HLogger.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/Logger.kt similarity index 100% rename from shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/HLogger.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/Logger.kt diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/Platform.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/Platform.kt new file mode 100644 index 000000000..86399b6d4 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/Platform.kt @@ -0,0 +1,13 @@ +package com.habitrpg.shared.habitica + +expect class Platform() { + val platform: String +} + +expect interface HParcelable + +@OptIn(ExperimentalMultiplatform::class) +@OptionalExpectation +@Target(AnnotationTarget.CLASS) +@Retention(AnnotationRetention.BINARY) +expect annotation class HParcelize() \ No newline at end of file diff --git a/common/src/main/java/com/habitrpg/common/habitica/extensions/Double-Extensions.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/extensions/Double-Extensions.kt similarity index 79% rename from common/src/main/java/com/habitrpg/common/habitica/extensions/Double-Extensions.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/extensions/Double-Extensions.kt index 1c7124143..57b4e2e5e 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/extensions/Double-Extensions.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/extensions/Double-Extensions.kt @@ -1,4 +1,4 @@ -package com.habitrpg.android.habitica.extensions +package com.habitrpg.shared.habitica.extensions import kotlin.math.pow import kotlin.math.roundToInt diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/Avatar.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/Avatar.kt new file mode 100644 index 000000000..ca6279bc6 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/Avatar.kt @@ -0,0 +1,40 @@ +package com.habitrpg.shared.habitica.models + + +interface Avatar { + val balance: Double + val authentication: AvatarAuthentication? + val stats: AvatarStats? + val preferences: AvatarPreferences? + val flags: AvatarFlags? + val items: AvatarItems? + val hourglassCount: Int + fun isValid(): Boolean + + val username: String? + get() = authentication?.localAuthentication?.username + val formattedUsername: String? + get() = if (username != null) "@$username" else null + + val gemCount: Int + get() = (this.balance * 4).toInt() + + val costume: AvatarOutfit? + get() = items?.gear?.costume + + val equipped: AvatarOutfit? + get() = items?.gear?.equipped + + val hasClass: Boolean + get() { + return preferences?.disableClasses != true && flags?.classSelected == true && stats?.habitClass?.isNotEmpty() == true + } + + val currentMount: String? + get() = items?.currentMount ?: "" + val currentPet: String? + get() = items?.currentPet ?: "" + + val sleep: Boolean + get() = preferences?.sleep ?: false +} \ No newline at end of file diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarAuthentication.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarAuthentication.kt new file mode 100644 index 000000000..24a61de56 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarAuthentication.kt @@ -0,0 +1,5 @@ +package com.habitrpg.shared.habitica.models + +interface AvatarAuthentication { + val localAuthentication: AvatarLocalAuthentication? +} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarBuffs.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarBuffs.kt similarity index 84% rename from common/src/main/java/com/habitrpg/common/habitica/models/AvatarBuffs.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarBuffs.kt index 1c1ae1531..be240a291 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarBuffs.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarBuffs.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models +package com.habitrpg.shared.habitica.models interface AvatarBuffs { var con: Float? diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarFlags.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarFlags.kt similarity index 56% rename from common/src/main/java/com/habitrpg/common/habitica/models/AvatarFlags.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarFlags.kt index a3a972e89..4b07f706c 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarFlags.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarFlags.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models +package com.habitrpg.shared.habitica.models interface AvatarFlags { var classSelected: Boolean diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarGear.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarGear.kt new file mode 100644 index 000000000..1d3923fbd --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarGear.kt @@ -0,0 +1,7 @@ +package com.habitrpg.shared.habitica.models + +interface AvatarGear { + + val equipped: AvatarOutfit? + val costume: AvatarOutfit? +} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarHair.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarHair.kt similarity index 83% rename from common/src/main/java/com/habitrpg/common/habitica/models/AvatarHair.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarHair.kt index 937a12ac2..a7e894d40 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarHair.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarHair.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models +package com.habitrpg.shared.habitica.models interface AvatarHair { var mustache: Int diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarItems.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarItems.kt new file mode 100644 index 000000000..d4cf6cf42 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarItems.kt @@ -0,0 +1,8 @@ +package com.habitrpg.shared.habitica.models + +interface AvatarItems { + + val currentPet: String? + val currentMount: String? + val gear: AvatarGear? +} diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarLocalAuthentication.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarLocalAuthentication.kt new file mode 100644 index 000000000..ff7a92522 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarLocalAuthentication.kt @@ -0,0 +1,5 @@ +package com.habitrpg.shared.habitica.models + +interface AvatarLocalAuthentication { + val username: String? +} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarOutfit.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarOutfit.kt similarity index 81% rename from common/src/main/java/com/habitrpg/common/habitica/models/AvatarOutfit.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarOutfit.kt index 7745e5663..86866c332 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarOutfit.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarOutfit.kt @@ -1,6 +1,4 @@ -package com.habitrpg.common.habitica.models - -import android.text.TextUtils +package com.habitrpg.shared.habitica.models interface AvatarOutfit { var armor: String @@ -14,7 +12,7 @@ interface AvatarOutfit { fun isAvailable(outfit: String): Boolean { - return !TextUtils.isEmpty(outfit) && !outfit.endsWith("base_0") + return outfit.isNotBlank() && !outfit.endsWith("base_0") } fun updateWith(newOutfit: AvatarOutfit) { diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarPreferences.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarPreferences.kt similarity index 85% rename from common/src/main/java/com/habitrpg/common/habitica/models/AvatarPreferences.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarPreferences.kt index 336db2f2d..5c771e511 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarPreferences.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarPreferences.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models +package com.habitrpg.shared.habitica.models interface AvatarPreferences { val hair: AvatarHair? diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarStats.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarStats.kt similarity index 60% rename from common/src/main/java/com/habitrpg/common/habitica/models/AvatarStats.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarStats.kt index da25846c5..8a96c8cde 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/AvatarStats.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/AvatarStats.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models +package com.habitrpg.shared.habitica.models interface AvatarStats { val buffs: AvatarBuffs? @@ -15,9 +15,9 @@ interface AvatarStats { var maxMP: Int? val isBuffed: Boolean get() { - return buffs?.str ?: 0f > 0 || - buffs?.con ?: 0f > 0 || - buffs?._int ?: 0f > 0 || - buffs?.per ?: 0f > 0 + return (buffs?.str ?: 0f) > 0 || + (buffs?.con ?: 0f) > 0 || + (buffs?._int ?: 0f) > 0 || + (buffs?.per ?: 0f) > 0 } } diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/ErrorResponse.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/ErrorResponse.kt similarity index 88% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/ErrorResponse.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/ErrorResponse.kt index 811d7b3ea..5649c9f31 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/ErrorResponse.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/ErrorResponse.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.responses +package com.habitrpg.shared.habitica.models.responses class ErrorResponse { var message: String? = null diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/FeedResponse.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/FeedResponse.kt similarity index 58% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/FeedResponse.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/FeedResponse.kt index 10fbdcad9..0d3bd0041 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/FeedResponse.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/FeedResponse.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.responses +package com.habitrpg.shared.habitica.models.responses class FeedResponse { var value: Int? = null diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/HabiticaError.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/HabiticaError.kt similarity index 65% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/HabiticaError.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/HabiticaError.kt index 03480e444..0a2dc4635 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/HabiticaError.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/HabiticaError.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.responses +package com.habitrpg.shared.habitica.models.responses class HabiticaError { var message: String? = null diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/MaintenanceResponse.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/MaintenanceResponse.kt similarity index 76% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/MaintenanceResponse.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/MaintenanceResponse.kt index 034ddc1d3..76e54c859 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/MaintenanceResponse.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/MaintenanceResponse.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.responses +package com.habitrpg.shared.habitica.models.responses class MaintenanceResponse { var activeMaintenance: Boolean? = null diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/Status.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/Status.kt new file mode 100644 index 000000000..55bc838ec --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/Status.kt @@ -0,0 +1,5 @@ +package com.habitrpg.shared.habitica.models.responses + +class Status { + var status: String? = null +} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirection.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirection.kt similarity index 57% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirection.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirection.kt index 0a140a75b..bf79df4e2 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirection.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirection.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.responses +package com.habitrpg.shared.habitica.models.responses enum class TaskDirection(val text: String) { UP("up"), diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirectionData.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirectionData.kt similarity index 77% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirectionData.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirectionData.kt index a7b238ef6..b8ef5ee96 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/TaskDirectionData.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirectionData.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.responses +package com.habitrpg.shared.habitica.models.responses class TaskDirectionData { var delta: Float = 0.toFloat() diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirectionDataTemp.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirectionDataTemp.kt new file mode 100644 index 000000000..71eb7cbe9 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskDirectionDataTemp.kt @@ -0,0 +1,24 @@ +package com.habitrpg.shared.habitica.models.responses + +import com.habitrpg.shared.habitica.HParcelable +import com.habitrpg.shared.habitica.HParcelize + +class TaskDirectionDataTemp { + + var drop: TaskDirectionDataDrop? = null + var quest: TaskDirectionDataQuest? = null + var crit: Float? = null +} + +class TaskDirectionDataQuest { + var progressDelta: Double = 0.0 + var collection: Int = 0 +} + +@HParcelize +class TaskDirectionDataDrop: HParcelable { + var value: Int = 0 + var key: String? = null + var type: String? = null + var dialog: String? = null +} diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskScoringResult.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskScoringResult.kt new file mode 100644 index 000000000..ddcb20cb7 --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/TaskScoringResult.kt @@ -0,0 +1,36 @@ +package com.habitrpg.shared.habitica.models.responses + +import com.habitrpg.shared.habitica.HParcelable +import com.habitrpg.shared.habitica.HParcelize +import com.habitrpg.shared.habitica.models.AvatarStats + +@HParcelize +class TaskScoringResult(): HParcelable { + constructor(data: TaskDirectionData, stats: AvatarStats?) : this() { + hasLeveledUp = data.lvl > (stats?.lvl ?: 0) + healthDelta = data.hp - (stats?.hp ?: 0.0) + hasDied = data.hp <= 0.0 + experienceDelta = if (hasLeveledUp) { + (stats?.toNextLevel ?: 0).toDouble() - (stats?.exp ?: 0.0) + data.exp + } else { + data.exp - (stats?.exp ?: 0.0) + } + manaDelta = data.mp - (stats?.mp ?: 0.0) + goldDelta = data.gp - (stats?.gp ?: 0.0) + level = data.lvl + questDamage = data._tmp?.quest?.progressDelta + questItemsFound = data._tmp?.quest?.collection + drop = data._tmp?.drop + } + + var hasDied: Boolean = false + var drop: TaskDirectionDataDrop? = null + var experienceDelta: Double? = null + var healthDelta: Double? = null + var goldDelta: Double? = null + var manaDelta: Double? = null + var hasLeveledUp: Boolean = false + var level: Int? = null + var questDamage: Double? = null + var questItemsFound: Int? = null +} diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/responses/VerifyUsernameResponse.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/VerifyUsernameResponse.kt similarity index 66% rename from common/src/main/java/com/habitrpg/common/habitica/models/responses/VerifyUsernameResponse.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/VerifyUsernameResponse.kt index 7bac194cd..1872e5d1d 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/responses/VerifyUsernameResponse.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/responses/VerifyUsernameResponse.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.responses +package com.habitrpg.shared.habitica.models.responses class VerifyUsernameResponse { diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/Attribute.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/Attribute.kt similarity index 83% rename from common/src/main/java/com/habitrpg/common/habitica/models/tasks/Attribute.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/Attribute.kt index d5d936bce..ac8397e2f 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/Attribute.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/Attribute.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.tasks +package com.habitrpg.shared.habitica.models.tasks enum class Attribute constructor(val value: String) { STRENGTH("str"), diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/BaseTask.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/BaseTask.kt similarity index 94% rename from common/src/main/java/com/habitrpg/common/habitica/models/tasks/BaseTask.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/BaseTask.kt index 0dfe3f0d3..54c163687 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/BaseTask.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/BaseTask.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.tasks +package com.habitrpg.shared.habitica.models.tasks interface BaseTask { diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/Frequency.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/Frequency.kt similarity index 83% rename from common/src/main/java/com/habitrpg/common/habitica/models/tasks/Frequency.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/Frequency.kt index 7ef1fb27d..08ff4f9c4 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/Frequency.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/Frequency.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.tasks +package com.habitrpg.shared.habitica.models.tasks enum class Frequency constructor(val value: String) { WEEKLY("weekly"), diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/HabitResetOption.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/HabitResetOption.kt new file mode 100644 index 000000000..1c29d539e --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/HabitResetOption.kt @@ -0,0 +1,11 @@ +package com.habitrpg.shared.habitica.models.tasks + +enum class HabitResetOption(val value: Frequency) { + DAILY(Frequency.DAILY), + WEEKLY(Frequency.WEEKLY), + MONTHLY(Frequency.MONTHLY); + + companion object { + fun from(type: Frequency?): HabitResetOption? = values().find { it.value == type } + } +} \ No newline at end of file diff --git a/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TaskDifficulty.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TaskDifficulty.kt new file mode 100644 index 000000000..fe8bf909c --- /dev/null +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TaskDifficulty.kt @@ -0,0 +1,8 @@ +package com.habitrpg.shared.habitica.models.tasks + +enum class TaskDifficulty(val value: Float) { + TRIVIAL(0.1f), + EASY(1f), + MEDIUM(1.5f), + HARD(2f) +} \ No newline at end of file diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/TaskType.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TaskType.kt similarity index 85% rename from common/src/main/java/com/habitrpg/common/habitica/models/tasks/TaskType.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TaskType.kt index 2d6dbc284..b9eec67a1 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/TaskType.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TaskType.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.tasks +package com.habitrpg.shared.habitica.models.tasks enum class TaskType constructor(val value: String) { HABIT("habit"), diff --git a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/TasksOrder.kt b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TasksOrder.kt similarity index 90% rename from common/src/main/java/com/habitrpg/common/habitica/models/tasks/TasksOrder.kt rename to shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TasksOrder.kt index 501a45ac4..cc849577e 100644 --- a/common/src/main/java/com/habitrpg/common/habitica/models/tasks/TasksOrder.kt +++ b/shared/src/commonMain/kotlin/com/habitrpg/shared/habitica/models/tasks/TasksOrder.kt @@ -1,4 +1,4 @@ -package com.habitrpg.common.habitica.models.tasks +package com.habitrpg.shared.habitica.models.tasks class TasksOrder { fun positionOf(key: String, type: TaskType): Int { diff --git a/shared/src/iosMain/kotlin/com/habitrpg/shared/habitica/Platform.kt b/shared/src/iosMain/kotlin/com/habitrpg/shared/habitica/Platform.kt new file mode 100644 index 000000000..9b064c1f4 --- /dev/null +++ b/shared/src/iosMain/kotlin/com/habitrpg/shared/habitica/Platform.kt @@ -0,0 +1,9 @@ +package com.habitrpg.shared.habitica + +import platform.UIKit.UIDevice + +actual class Platform actual constructor() { + actual val platform: String = UIDevice.currentDevice.systemName() + " " + UIDevice.currentDevice.systemVersion +} + +actual interface HParcelable {} \ No newline at end of file diff --git a/shared/src/iosMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt b/shared/src/iosMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt index 4148b2db1..84871b48d 100644 --- a/shared/src/iosMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt +++ b/shared/src/iosMain/kotlin/com/habitrpg/shared/habitica/PlatformLogger.kt @@ -1,6 +1,6 @@ package com.habitrpg.shared.habitica -actual class PlatformLogger actual constructor() { +actual class PlatformLogger { actual val enabled: Boolean get() = true @@ -19,4 +19,4 @@ actual class PlatformLogger actual constructor() { actual fun logError(tag: String, message: String, exception: Throwable) { println("[ERROR] $tag: $message\n${exception.getStackTrace().joinToString("\n")}") } -} +} \ No newline at end of file diff --git a/shared/src/main/AndroidManifest.xml b/shared/src/main/AndroidManifest.xml deleted file mode 100644 index 5b1f56cda..000000000 --- a/shared/src/main/AndroidManifest.xml +++ /dev/null @@ -1,5 +0,0 @@ - - - - diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiClient.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiClient.kt index ba9d8c643..0441a0101 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiClient.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiClient.kt @@ -8,7 +8,7 @@ import com.habitrpg.common.habitica.api.HostConfig import com.habitrpg.common.habitica.api.Server import com.habitrpg.common.habitica.models.auth.UserAuth import com.habitrpg.common.habitica.models.auth.UserAuthSocial -import com.habitrpg.common.habitica.models.responses.ErrorResponse +import com.habitrpg.shared.habitica.models.responses.ErrorResponse import com.habitrpg.wearos.habitica.managers.AppStateManager import com.habitrpg.wearos.habitica.models.NetworkResult import com.habitrpg.wearos.habitica.models.WearableHabitResponse diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiService.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiService.kt index b87455033..a387a5228 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiService.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/ApiService.kt @@ -3,7 +3,7 @@ package com.habitrpg.wearos.habitica.data import com.habitrpg.common.habitica.models.auth.UserAuth import com.habitrpg.common.habitica.models.auth.UserAuthResponse import com.habitrpg.common.habitica.models.auth.UserAuthSocial -import com.habitrpg.common.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData import com.habitrpg.wearos.habitica.models.EmptyResponse import com.habitrpg.wearos.habitica.models.WearableHabitResponse import com.habitrpg.wearos.habitica.models.tasks.BulkTaskScoringData diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskLocalRepository.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskLocalRepository.kt index 459735370..f27a3f945 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskLocalRepository.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskLocalRepository.kt @@ -1,7 +1,7 @@ package com.habitrpg.wearos.habitica.data.repositories -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import com.habitrpg.wearos.habitica.models.tasks.Task import com.habitrpg.wearos.habitica.models.tasks.TaskList import kotlinx.coroutines.flow.Flow diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskRepository.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskRepository.kt index 03c070cc3..cbf784a37 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskRepository.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/data/repositories/TaskRepository.kt @@ -1,9 +1,9 @@ package com.habitrpg.wearos.habitica.data.repositories -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.TaskScoringResult -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import com.habitrpg.wearos.habitica.data.ApiClient import com.habitrpg.wearos.habitica.models.tasks.Task import com.habitrpg.wearos.habitica.models.tasks.TaskList diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/BulkTaskScoringData.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/BulkTaskScoringData.kt index afe2c0744..f719ed850 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/BulkTaskScoringData.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/BulkTaskScoringData.kt @@ -1,6 +1,6 @@ package com.habitrpg.wearos.habitica.models.tasks -import com.habitrpg.common.habitica.models.responses.TaskDirectionData +import com.habitrpg.shared.habitica.models.responses.TaskDirectionData import com.habitrpg.wearos.habitica.models.user.Buffs import com.squareup.moshi.Json import com.squareup.moshi.JsonClass diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/Task.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/Task.kt index b545318ba..0a0ab2c29 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/Task.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/tasks/Task.kt @@ -4,10 +4,10 @@ import android.os.Parcel import android.os.Parcelable import android.text.Spanned import com.habitrpg.android.habitica.R -import com.habitrpg.common.habitica.models.tasks.Attribute -import com.habitrpg.common.habitica.models.tasks.BaseTask -import com.habitrpg.common.habitica.models.tasks.Frequency -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.BaseTask +import com.habitrpg.shared.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import org.json.JSONArray diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Buffs.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Buffs.kt index 06517f85b..22372b158 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Buffs.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Buffs.kt @@ -1,6 +1,6 @@ package com.habitrpg.wearos.habitica.models.user -import com.habitrpg.common.habitica.models.AvatarBuffs +import com.habitrpg.shared.habitica.models.AvatarBuffs import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Flags.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Flags.kt index d29d7a343..ef2d52e14 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Flags.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Flags.kt @@ -1,6 +1,6 @@ package com.habitrpg.wearos.habitica.models.user -import com.habitrpg.common.habitica.models.AvatarFlags +import com.habitrpg.shared.habitica.models.AvatarFlags import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Hair.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Hair.kt index b506a1c15..6bd42a5a8 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Hair.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Hair.kt @@ -1,6 +1,6 @@ package com.habitrpg.wearos.habitica.models.user -import com.habitrpg.common.habitica.models.AvatarHair +import com.habitrpg.shared.habitica.models.AvatarHair import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Outfit.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Outfit.kt index 29a6a0f82..d6f6d57b2 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Outfit.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Outfit.kt @@ -1,6 +1,6 @@ package com.habitrpg.wearos.habitica.models.user -import com.habitrpg.common.habitica.models.AvatarOutfit +import com.habitrpg.shared.habitica.models.AvatarOutfit import com.squareup.moshi.Json import com.squareup.moshi.JsonClass diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Preferences.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Preferences.kt index 792f9de3d..1368a6aa9 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Preferences.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Preferences.kt @@ -1,6 +1,6 @@ package com.habitrpg.wearos.habitica.models.user -import com.habitrpg.common.habitica.models.AvatarPreferences +import com.habitrpg.shared.habitica.models.AvatarPreferences import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Stats.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Stats.kt index 0094ae8b6..b43c56bcb 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Stats.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/Stats.kt @@ -1,6 +1,6 @@ package com.habitrpg.wearos.habitica.models.user -import com.habitrpg.common.habitica.models.AvatarStats +import com.habitrpg.shared.habitica.models.AvatarStats import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/User.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/User.kt index 2d7d75575..9c96c27ae 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/User.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/models/user/User.kt @@ -1,7 +1,7 @@ package com.habitrpg.wearos.habitica.models.user -import com.habitrpg.common.habitica.models.Avatar -import com.habitrpg.common.habitica.models.tasks.TasksOrder +import com.habitrpg.shared.habitica.models.Avatar +import com.habitrpg.shared.habitica.models.tasks.TasksOrder import com.squareup.moshi.JsonClass @JsonClass(generateAdapter = true) diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/HabitDirectionActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/HabitDirectionActivity.kt index 865a9dff2..d11f05ee5 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/HabitDirectionActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/HabitDirectionActivity.kt @@ -6,7 +6,7 @@ import android.os.Bundle import androidx.activity.viewModels import androidx.core.content.ContextCompat import com.habitrpg.android.habitica.databinding.ActivityHabitDirectionBinding -import com.habitrpg.common.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskDirection import com.habitrpg.wearos.habitica.ui.viewmodels.HabitDirectionViewModel import dagger.hilt.android.AndroidEntryPoint diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt index 9a381424a..dbc153867 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/MainActivity.kt @@ -11,7 +11,7 @@ import androidx.lifecycle.lifecycleScope import androidx.wear.widget.WearableLinearLayoutManager import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.ActivityMainBinding -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.wearos.habitica.models.user.MenuItem import com.habitrpg.wearos.habitica.ui.adapters.HubAdapter import com.habitrpg.wearos.habitica.ui.viewmodels.MainViewModel diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskDetailActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskDetailActivity.kt index 9146366f0..9e6534e60 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskDetailActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskDetailActivity.kt @@ -7,8 +7,8 @@ import androidx.core.content.ContextCompat import androidx.core.view.isVisible import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.ActivityTaskDetailBinding -import com.habitrpg.common.habitica.models.tasks.TaskType -import com.habitrpg.common.habitica.models.tasks.streakString +import com.habitrpg.shared.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.streakString import com.habitrpg.wearos.habitica.ui.viewmodels.TaskDetailViewModel import dagger.hilt.android.AndroidEntryPoint import java.text.DateFormat diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt index 9b40fcad8..4e0f7cc45 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskFormActivity.kt @@ -12,7 +12,7 @@ import androidx.core.view.isVisible import androidx.lifecycle.lifecycleScope import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.ActivityTaskFormBinding -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.wearos.habitica.ui.viewmodels.TaskFormViewModel import dagger.hilt.android.AndroidEntryPoint import kotlinx.coroutines.CoroutineExceptionHandler diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskListActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskListActivity.kt index e79f67de1..3653e17e7 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskListActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskListActivity.kt @@ -12,9 +12,9 @@ import androidx.wear.widget.WearableLinearLayoutManager import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.ActivityTasklistBinding import com.habitrpg.android.habitica.databinding.EmptyTaskListBinding -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.TaskScoringResult -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.wearos.habitica.models.tasks.Task import com.habitrpg.wearos.habitica.ui.adapters.DailyListAdapter import com.habitrpg.wearos.habitica.ui.adapters.HabitListAdapter diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskResultActivity.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskResultActivity.kt index 64896d8e1..3a8c9b27a 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskResultActivity.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/activities/TaskResultActivity.kt @@ -15,7 +15,7 @@ import com.habitrpg.android.habitica.databinding.TaskRewardDropBinding import com.habitrpg.android.habitica.extensions.localizedCapitalize import com.habitrpg.common.habitica.extensions.dpToPx import com.habitrpg.common.habitica.extensions.loadImage -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import com.habitrpg.wearos.habitica.ui.viewmodels.TaskResultViewModel import com.habitrpg.wearos.habitica.ui.views.TaskRewardChip import dagger.hilt.android.AndroidEntryPoint diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt index c59aa5ac1..2a9e07572 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/RYAViewModel.kt @@ -4,8 +4,8 @@ import android.content.SharedPreferences import androidx.core.content.edit import androidx.lifecycle.MutableLiveData import androidx.lifecycle.viewModelScope -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.wearos.habitica.data.repositories.TaskRepository import com.habitrpg.wearos.habitica.data.repositories.UserRepository import com.habitrpg.wearos.habitica.managers.AppStateManager diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskFormViewModel.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskFormViewModel.kt index 89dc3d6b3..24dad6133 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskFormViewModel.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskFormViewModel.kt @@ -1,7 +1,7 @@ package com.habitrpg.wearos.habitica.ui.viewmodels -import com.habitrpg.common.habitica.models.tasks.Frequency -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.wearos.habitica.data.repositories.TaskRepository import com.habitrpg.wearos.habitica.data.repositories.UserRepository import com.habitrpg.wearos.habitica.managers.AppStateManager diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt index d948dae70..db837c293 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskListViewModel.kt @@ -6,9 +6,9 @@ import androidx.lifecycle.MutableLiveData import androidx.lifecycle.SavedStateHandle import androidx.lifecycle.asLiveData import androidx.lifecycle.viewModelScope -import com.habitrpg.common.habitica.models.responses.TaskDirection -import com.habitrpg.common.habitica.models.responses.TaskScoringResult -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.responses.TaskDirection +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.habitrpg.wearos.habitica.data.repositories.TaskRepository import com.habitrpg.wearos.habitica.data.repositories.UserRepository import com.habitrpg.wearos.habitica.managers.AppStateManager diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskResultViewModel.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskResultViewModel.kt index 386e3d584..c6b5db34b 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskResultViewModel.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/viewmodels/TaskResultViewModel.kt @@ -2,7 +2,7 @@ package com.habitrpg.wearos.habitica.ui.viewmodels import androidx.lifecycle.SavedStateHandle import androidx.lifecycle.asLiveData -import com.habitrpg.common.habitica.models.responses.TaskScoringResult +import com.habitrpg.shared.habitica.models.responses.TaskScoringResult import com.habitrpg.wearos.habitica.data.repositories.TaskRepository import com.habitrpg.wearos.habitica.data.repositories.UserRepository import com.habitrpg.wearos.habitica.managers.AppStateManager diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TaskRewardChip.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TaskRewardChip.kt index 73a1330c2..30cba9a32 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TaskRewardChip.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/ui/views/TaskRewardChip.kt @@ -2,7 +2,6 @@ package com.habitrpg.wearos.habitica.ui.views import android.content.Context import android.content.res.ColorStateList -import android.graphics.Bitmap import android.util.AttributeSet import android.util.TypedValue import android.view.Gravity @@ -10,7 +9,7 @@ import android.widget.LinearLayout import androidx.core.content.ContextCompat import com.habitrpg.android.habitica.R import com.habitrpg.android.habitica.databinding.TaskRewardChipBinding -import com.habitrpg.android.habitica.extensions.round +import com.habitrpg.shared.habitica.extensions.round import com.habitrpg.android.habitica.extensions.setScaledPadding import com.habitrpg.common.habitica.extensions.layoutInflater import java.math.RoundingMode diff --git a/wearos/src/main/java/com/habitrpg/wearos/habitica/util/DateJSONAdapter.kt b/wearos/src/main/java/com/habitrpg/wearos/habitica/util/DateJSONAdapter.kt index 43e83b246..25a8e8cd2 100644 --- a/wearos/src/main/java/com/habitrpg/wearos/habitica/util/DateJSONAdapter.kt +++ b/wearos/src/main/java/com/habitrpg/wearos/habitica/util/DateJSONAdapter.kt @@ -1,9 +1,9 @@ package com.habitrpg.wearos.habitica.util import android.os.Build -import com.habitrpg.common.habitica.models.tasks.Attribute -import com.habitrpg.common.habitica.models.tasks.Frequency -import com.habitrpg.common.habitica.models.tasks.TaskType +import com.habitrpg.shared.habitica.models.tasks.Attribute +import com.habitrpg.shared.habitica.models.tasks.Frequency +import com.habitrpg.shared.habitica.models.tasks.TaskType import com.squareup.moshi.FromJson import com.squareup.moshi.ToJson import java.text.DateFormat