forked from melod1n/fast-messenger
update package name (big one)
This commit is contained in:
@@ -10,11 +10,11 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.meloda.app.fast"
|
namespace = "dev.meloda.fast"
|
||||||
compileSdk = Configs.compileSdk
|
compileSdk = Configs.compileSdk
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
applicationId = "com.meloda.app.fast"
|
applicationId = "dev.meloda.fast"
|
||||||
minSdk = Configs.minSdk
|
minSdk = Configs.minSdk
|
||||||
targetSdk = Configs.targetSdk
|
targetSdk = Configs.targetSdk
|
||||||
versionCode = Configs.appCode
|
versionCode = Configs.appCode
|
||||||
|
|||||||
Vendored
+1
-1
@@ -20,4 +20,4 @@
|
|||||||
# hide the original source file name.
|
# hide the original source file name.
|
||||||
#-renamesourcefileattribute SourceFile
|
#-renamesourcefileattribute SourceFile
|
||||||
|
|
||||||
-keep class com.meloda.app.fast.**
|
-keep class dev.meloda.fast.**
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
|
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_DATA_SYNC" />
|
||||||
|
|
||||||
<application
|
<application
|
||||||
android:name="com.meloda.app.fast.common.AppGlobal"
|
android:name="dev.meloda.fast.common.AppGlobal"
|
||||||
android:allowBackup="true"
|
android:allowBackup="true"
|
||||||
android:enableOnBackInvokedCallback="true"
|
android:enableOnBackInvokedCallback="true"
|
||||||
android:fullBackupOnly="true"
|
android:fullBackupOnly="true"
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast
|
package dev.meloda.fast
|
||||||
|
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
@@ -8,18 +8,18 @@ import androidx.lifecycle.ViewModel
|
|||||||
import androidx.lifecycle.viewModelScope
|
import androidx.lifecycle.viewModelScope
|
||||||
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
||||||
import com.google.accompanist.permissions.PermissionStatus
|
import com.google.accompanist.permissions.PermissionStatus
|
||||||
import com.meloda.app.fast.auth.AuthGraph
|
import dev.meloda.fast.auth.AuthGraph
|
||||||
import com.meloda.app.fast.common.LongPollController
|
import dev.meloda.fast.common.LongPollController
|
||||||
import com.meloda.app.fast.common.UserConfig
|
import dev.meloda.fast.common.UserConfig
|
||||||
import com.meloda.app.fast.common.extensions.ifEmpty
|
import dev.meloda.fast.common.extensions.ifEmpty
|
||||||
import com.meloda.app.fast.common.extensions.listenValue
|
import dev.meloda.fast.common.extensions.listenValue
|
||||||
import com.meloda.app.fast.common.extensions.setValue
|
import dev.meloda.fast.common.extensions.setValue
|
||||||
import com.meloda.app.fast.common.model.LongPollState
|
import dev.meloda.fast.common.model.LongPollState
|
||||||
import com.meloda.app.fast.data.db.GetCurrentAccountUseCase
|
import dev.meloda.fast.data.db.GetCurrentAccountUseCase
|
||||||
import com.meloda.app.fast.datastore.AppSettings
|
import dev.meloda.fast.datastore.AppSettings
|
||||||
import com.meloda.app.fast.datastore.UserSettings
|
import dev.meloda.fast.datastore.UserSettings
|
||||||
import com.meloda.app.fast.model.BaseError
|
import dev.meloda.fast.model.BaseError
|
||||||
import com.meloda.app.fast.navigation.Main
|
import dev.meloda.fast.navigation.Main
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.flow.MutableStateFlow
|
import kotlinx.coroutines.flow.MutableStateFlow
|
||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
package com.meloda.app.fast.common
|
package dev.meloda.fast.common
|
||||||
|
|
||||||
import android.app.Application
|
import android.app.Application
|
||||||
import androidx.preference.PreferenceManager
|
import androidx.preference.PreferenceManager
|
||||||
import coil.ImageLoader
|
import coil.ImageLoader
|
||||||
import coil.ImageLoaderFactory
|
import coil.ImageLoaderFactory
|
||||||
import com.meloda.app.fast.common.di.applicationModule
|
import dev.meloda.fast.common.di.applicationModule
|
||||||
import com.meloda.app.fast.datastore.AppSettings
|
import dev.meloda.fast.datastore.AppSettings
|
||||||
import org.koin.android.ext.android.get
|
import org.koin.android.ext.android.get
|
||||||
import org.koin.android.ext.koin.androidContext
|
import org.koin.android.ext.koin.androidContext
|
||||||
import org.koin.android.ext.koin.androidLogger
|
import org.koin.android.ext.koin.androidLogger
|
||||||
|
|||||||
@@ -1,23 +1,23 @@
|
|||||||
package com.meloda.app.fast.common.di
|
package dev.meloda.fast.common.di
|
||||||
|
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import android.content.res.Resources
|
import android.content.res.Resources
|
||||||
import android.os.PowerManager
|
import android.os.PowerManager
|
||||||
import androidx.preference.PreferenceManager
|
import androidx.preference.PreferenceManager
|
||||||
import com.meloda.app.fast.MainViewModelImpl
|
import dev.meloda.fast.MainViewModelImpl
|
||||||
import com.meloda.app.fast.auth.authModule
|
import dev.meloda.fast.auth.authModule
|
||||||
import com.meloda.app.fast.chatmaterials.di.chatMaterialsModule
|
import dev.meloda.fast.chatmaterials.di.chatMaterialsModule
|
||||||
import com.meloda.app.fast.common.provider.Provider
|
import dev.meloda.fast.common.provider.Provider
|
||||||
import com.meloda.app.fast.conversations.di.conversationsModule
|
import dev.meloda.fast.conversations.di.conversationsModule
|
||||||
import com.meloda.app.fast.data.di.dataModule
|
import dev.meloda.fast.data.di.dataModule
|
||||||
import com.meloda.app.fast.friends.di.friendsModule
|
import dev.meloda.fast.friends.di.friendsModule
|
||||||
import com.meloda.app.fast.languagepicker.di.languagePickerModule
|
import dev.meloda.fast.languagepicker.di.languagePickerModule
|
||||||
import com.meloda.app.fast.messageshistory.di.messagesHistoryModule
|
import dev.meloda.fast.messageshistory.di.messagesHistoryModule
|
||||||
import com.meloda.app.fast.photoviewer.di.photoViewModule
|
import dev.meloda.fast.photoviewer.di.photoViewModule
|
||||||
import com.meloda.app.fast.profile.di.profileModule
|
import dev.meloda.fast.profile.di.profileModule
|
||||||
import com.meloda.app.fast.provider.ApiLanguageProvider
|
import dev.meloda.fast.provider.ApiLanguageProvider
|
||||||
import com.meloda.app.fast.service.longpolling.di.longPollModule
|
import dev.meloda.fast.service.longpolling.di.longPollModule
|
||||||
import com.meloda.app.fast.settings.di.settingsModule
|
import dev.meloda.fast.settings.di.settingsModule
|
||||||
import org.koin.android.ext.koin.androidContext
|
import org.koin.android.ext.koin.androidContext
|
||||||
import org.koin.androidx.viewmodel.dsl.viewModelOf
|
import org.koin.androidx.viewmodel.dsl.viewModelOf
|
||||||
import org.koin.core.module.dsl.singleOf
|
import org.koin.core.module.dsl.singleOf
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.model
|
package dev.meloda.fast.model
|
||||||
|
|
||||||
data class BottomNavigationItem(
|
data class BottomNavigationItem(
|
||||||
val titleResId: Int,
|
val titleResId: Int,
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
package com.meloda.app.fast.navigation
|
package dev.meloda.fast.navigation
|
||||||
|
|
||||||
import androidx.navigation.NavGraphBuilder
|
import androidx.navigation.NavGraphBuilder
|
||||||
import androidx.navigation.compose.composable
|
import androidx.navigation.compose.composable
|
||||||
import com.meloda.app.fast.conversations.navigation.Conversations
|
import dev.meloda.fast.conversations.navigation.Conversations
|
||||||
import com.meloda.app.fast.friends.navigation.Friends
|
import dev.meloda.fast.friends.navigation.Friends
|
||||||
import com.meloda.app.fast.model.BaseError
|
import dev.meloda.fast.model.BaseError
|
||||||
import com.meloda.app.fast.model.BottomNavigationItem
|
import dev.meloda.fast.model.BottomNavigationItem
|
||||||
import com.meloda.app.fast.presentation.MainScreen
|
import dev.meloda.fast.presentation.MainScreen
|
||||||
import com.meloda.app.fast.profile.navigation.Profile
|
import dev.meloda.fast.profile.navigation.Profile
|
||||||
import kotlinx.serialization.Serializable
|
import kotlinx.serialization.Serializable
|
||||||
import com.meloda.app.fast.ui.R as UiR
|
import dev.meloda.fast.ui.R as UiR
|
||||||
|
|
||||||
@Serializable
|
@Serializable
|
||||||
object MainGraph
|
object MainGraph
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.presentation
|
package dev.meloda.fast.presentation
|
||||||
|
|
||||||
import android.Manifest
|
import android.Manifest
|
||||||
import android.app.NotificationChannel
|
import android.app.NotificationChannel
|
||||||
@@ -30,24 +30,24 @@ import com.conena.nanokt.android.content.pxToDp
|
|||||||
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
import com.google.accompanist.permissions.ExperimentalPermissionsApi
|
||||||
import com.google.accompanist.permissions.isGranted
|
import com.google.accompanist.permissions.isGranted
|
||||||
import com.google.accompanist.permissions.rememberPermissionState
|
import com.google.accompanist.permissions.rememberPermissionState
|
||||||
import com.meloda.app.fast.MainViewModel
|
import dev.meloda.fast.MainViewModel
|
||||||
import com.meloda.app.fast.MainViewModelImpl
|
import dev.meloda.fast.MainViewModelImpl
|
||||||
import com.meloda.app.fast.common.AppConstants
|
import dev.meloda.fast.common.AppConstants
|
||||||
import com.meloda.app.fast.common.LongPollController
|
import dev.meloda.fast.common.LongPollController
|
||||||
import com.meloda.app.fast.common.extensions.isSdkAtLeast
|
import dev.meloda.fast.common.extensions.isSdkAtLeast
|
||||||
import com.meloda.app.fast.common.model.LongPollState
|
import dev.meloda.fast.common.model.LongPollState
|
||||||
import com.meloda.app.fast.datastore.AppSettings
|
import dev.meloda.fast.datastore.AppSettings
|
||||||
import com.meloda.app.fast.datastore.UserSettings
|
import dev.meloda.fast.datastore.UserSettings
|
||||||
import com.meloda.app.fast.service.OnlineService
|
import dev.meloda.fast.service.OnlineService
|
||||||
import com.meloda.app.fast.service.longpolling.LongPollingService
|
import dev.meloda.fast.service.longpolling.LongPollingService
|
||||||
import com.meloda.app.fast.ui.model.ThemeConfig
|
import dev.meloda.fast.ui.model.ThemeConfig
|
||||||
import com.meloda.app.fast.ui.theme.AppTheme
|
import dev.meloda.fast.ui.theme.AppTheme
|
||||||
import com.meloda.app.fast.ui.theme.LocalThemeConfig
|
import dev.meloda.fast.ui.theme.LocalThemeConfig
|
||||||
import com.meloda.app.fast.ui.util.isNeedToEnableDarkMode
|
import dev.meloda.fast.ui.util.isNeedToEnableDarkMode
|
||||||
import org.koin.androidx.compose.koinViewModel
|
import org.koin.androidx.compose.koinViewModel
|
||||||
import org.koin.compose.KoinContext
|
import org.koin.compose.KoinContext
|
||||||
import org.koin.compose.koinInject
|
import org.koin.compose.koinInject
|
||||||
import com.meloda.app.fast.ui.R as UiR
|
import dev.meloda.fast.ui.R as UiR
|
||||||
|
|
||||||
class MainActivity : AppCompatActivity() {
|
class MainActivity : AppCompatActivity() {
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.presentation
|
package dev.meloda.fast.presentation
|
||||||
|
|
||||||
import androidx.compose.animation.core.tween
|
import androidx.compose.animation.core.tween
|
||||||
import androidx.compose.animation.fadeIn
|
import androidx.compose.animation.fadeIn
|
||||||
@@ -25,15 +25,15 @@ import androidx.compose.ui.unit.dp
|
|||||||
import androidx.navigation.compose.NavHost
|
import androidx.navigation.compose.NavHost
|
||||||
import androidx.navigation.compose.navigation
|
import androidx.navigation.compose.navigation
|
||||||
import androidx.navigation.compose.rememberNavController
|
import androidx.navigation.compose.rememberNavController
|
||||||
import com.meloda.app.fast.conversations.navigation.conversationsScreen
|
import dev.meloda.fast.conversations.navigation.conversationsScreen
|
||||||
import com.meloda.app.fast.ui.theme.LocalBottomPadding
|
import dev.meloda.fast.ui.theme.LocalBottomPadding
|
||||||
import com.meloda.app.fast.ui.theme.LocalHazeState
|
import dev.meloda.fast.ui.theme.LocalHazeState
|
||||||
import com.meloda.app.fast.ui.theme.LocalThemeConfig
|
import dev.meloda.fast.ui.theme.LocalThemeConfig
|
||||||
import com.meloda.app.fast.friends.navigation.friendsScreen
|
import dev.meloda.fast.friends.navigation.friendsScreen
|
||||||
import com.meloda.app.fast.model.BaseError
|
import dev.meloda.fast.model.BaseError
|
||||||
import com.meloda.app.fast.model.BottomNavigationItem
|
import dev.meloda.fast.model.BottomNavigationItem
|
||||||
import com.meloda.app.fast.navigation.MainGraph
|
import dev.meloda.fast.navigation.MainGraph
|
||||||
import com.meloda.app.fast.profile.navigation.profileScreen
|
import dev.meloda.fast.profile.navigation.profileScreen
|
||||||
import dev.chrisbanes.haze.HazeState
|
import dev.chrisbanes.haze.HazeState
|
||||||
import dev.chrisbanes.haze.hazeChild
|
import dev.chrisbanes.haze.hazeChild
|
||||||
import dev.chrisbanes.haze.materials.ExperimentalHazeMaterialsApi
|
import dev.chrisbanes.haze.materials.ExperimentalHazeMaterialsApi
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.presentation
|
package dev.meloda.fast.presentation
|
||||||
|
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
@@ -20,21 +20,21 @@ import androidx.navigation.NavController
|
|||||||
import androidx.navigation.NavHostController
|
import androidx.navigation.NavHostController
|
||||||
import androidx.navigation.compose.NavHost
|
import androidx.navigation.compose.NavHost
|
||||||
import androidx.navigation.compose.rememberNavController
|
import androidx.navigation.compose.rememberNavController
|
||||||
import com.meloda.app.fast.MainViewModel
|
import dev.meloda.fast.MainViewModel
|
||||||
import com.meloda.app.fast.MainViewModelImpl
|
import dev.meloda.fast.MainViewModelImpl
|
||||||
import com.meloda.app.fast.auth.authNavGraph
|
import dev.meloda.fast.auth.authNavGraph
|
||||||
import com.meloda.app.fast.auth.navigateToAuth
|
import dev.meloda.fast.auth.navigateToAuth
|
||||||
import com.meloda.app.fast.chatmaterials.navigation.chatMaterialsScreen
|
import dev.meloda.fast.chatmaterials.navigation.chatMaterialsScreen
|
||||||
import com.meloda.app.fast.chatmaterials.navigation.navigateToChatMaterials
|
import dev.meloda.fast.chatmaterials.navigation.navigateToChatMaterials
|
||||||
import com.meloda.app.fast.ui.R
|
import dev.meloda.fast.ui.R
|
||||||
import com.meloda.app.fast.languagepicker.navigation.languagePickerScreen
|
import dev.meloda.fast.languagepicker.navigation.languagePickerScreen
|
||||||
import com.meloda.app.fast.languagepicker.navigation.navigateToLanguagePicker
|
import dev.meloda.fast.languagepicker.navigation.navigateToLanguagePicker
|
||||||
import com.meloda.app.fast.messageshistory.navigation.messagesHistoryScreen
|
import dev.meloda.fast.messageshistory.navigation.messagesHistoryScreen
|
||||||
import com.meloda.app.fast.messageshistory.navigation.navigateToMessagesHistory
|
import dev.meloda.fast.messageshistory.navigation.navigateToMessagesHistory
|
||||||
import com.meloda.app.fast.navigation.Main
|
import dev.meloda.fast.navigation.Main
|
||||||
import com.meloda.app.fast.navigation.mainScreen
|
import dev.meloda.fast.navigation.mainScreen
|
||||||
import com.meloda.app.fast.settings.navigation.navigateToSettings
|
import dev.meloda.fast.settings.navigation.navigateToSettings
|
||||||
import com.meloda.app.fast.settings.navigation.settingsScreen
|
import dev.meloda.fast.settings.navigation.settingsScreen
|
||||||
import org.koin.androidx.compose.koinViewModel
|
import org.koin.androidx.compose.koinViewModel
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.provider
|
package dev.meloda.fast.provider
|
||||||
|
|
||||||
import com.meloda.app.fast.common.model.ApiLanguage
|
import dev.meloda.fast.common.model.ApiLanguage
|
||||||
import com.meloda.app.fast.common.provider.Provider
|
import dev.meloda.fast.common.provider.Provider
|
||||||
import com.meloda.app.fast.datastore.UserSettings
|
import dev.meloda.fast.datastore.UserSettings
|
||||||
|
|
||||||
class ApiLanguageProvider(private val userSettings: UserSettings) : Provider<ApiLanguage> {
|
class ApiLanguageProvider(private val userSettings: UserSettings) : Provider<ApiLanguage> {
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.receiver
|
package dev.meloda.fast.receiver
|
||||||
|
|
||||||
import android.content.BroadcastReceiver
|
import android.content.BroadcastReceiver
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
package com.meloda.app.fast.service
|
package dev.meloda.fast.service
|
||||||
|
|
||||||
import android.app.Service
|
import android.app.Service
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.os.IBinder
|
import android.os.IBinder
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import com.meloda.app.fast.common.UserConfig
|
import dev.meloda.fast.common.UserConfig
|
||||||
import com.meloda.app.fast.common.extensions.createTimerFlow
|
import dev.meloda.fast.common.extensions.createTimerFlow
|
||||||
import com.meloda.app.fast.data.api.account.AccountUseCase
|
import dev.meloda.fast.data.api.account.AccountUseCase
|
||||||
import kotlinx.coroutines.CoroutineExceptionHandler
|
import kotlinx.coroutines.CoroutineExceptionHandler
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.service.longpolling
|
package dev.meloda.fast.service.longpolling
|
||||||
|
|
||||||
import android.app.PendingIntent
|
import android.app.PendingIntent
|
||||||
import android.app.Service
|
import android.app.Service
|
||||||
@@ -11,20 +11,20 @@ import android.util.Log
|
|||||||
import androidx.core.app.NotificationCompat
|
import androidx.core.app.NotificationCompat
|
||||||
import androidx.core.app.ServiceCompat
|
import androidx.core.app.ServiceCompat
|
||||||
import com.conena.nanokt.android.app.stopForegroundCompat
|
import com.conena.nanokt.android.app.stopForegroundCompat
|
||||||
import com.meloda.app.fast.common.AppConstants
|
import dev.meloda.fast.common.AppConstants
|
||||||
import com.meloda.app.fast.common.LongPollController
|
import dev.meloda.fast.common.LongPollController
|
||||||
import com.meloda.app.fast.common.UserConfig
|
import dev.meloda.fast.common.UserConfig
|
||||||
import com.meloda.app.fast.common.VkConstants
|
import dev.meloda.fast.common.VkConstants
|
||||||
import com.meloda.app.fast.common.extensions.listenValue
|
import dev.meloda.fast.common.extensions.listenValue
|
||||||
import com.meloda.app.fast.common.model.LongPollState
|
import dev.meloda.fast.common.model.LongPollState
|
||||||
import com.meloda.app.fast.data.LongPollUpdatesParser
|
import dev.meloda.fast.data.LongPollUpdatesParser
|
||||||
import com.meloda.app.fast.data.LongPollUseCase
|
import dev.meloda.fast.data.LongPollUseCase
|
||||||
import com.meloda.app.fast.data.processState
|
import dev.meloda.fast.data.processState
|
||||||
import com.meloda.app.fast.datastore.AppSettings
|
import dev.meloda.fast.datastore.AppSettings
|
||||||
import com.meloda.app.fast.model.api.data.LongPollUpdates
|
import dev.meloda.fast.model.api.data.LongPollUpdates
|
||||||
import com.meloda.app.fast.model.api.data.VkLongPollData
|
import dev.meloda.fast.model.api.data.VkLongPollData
|
||||||
import com.meloda.app.fast.ui.R
|
import dev.meloda.fast.ui.R
|
||||||
import com.meloda.app.fast.util.NotificationsUtils
|
import dev.meloda.fast.util.NotificationsUtils
|
||||||
import kotlinx.coroutines.CoroutineExceptionHandler
|
import kotlinx.coroutines.CoroutineExceptionHandler
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.service.longpolling.di
|
package dev.meloda.fast.service.longpolling.di
|
||||||
|
|
||||||
import com.meloda.app.fast.data.LongPollUpdatesParser
|
import dev.meloda.fast.data.LongPollUpdatesParser
|
||||||
import com.meloda.app.fast.data.LongPollUseCase
|
import dev.meloda.fast.data.LongPollUseCase
|
||||||
import com.meloda.app.fast.data.LongPollUseCaseImpl
|
import dev.meloda.fast.data.LongPollUseCaseImpl
|
||||||
import org.koin.core.module.dsl.singleOf
|
import org.koin.core.module.dsl.singleOf
|
||||||
import org.koin.dsl.bind
|
import org.koin.dsl.bind
|
||||||
import org.koin.dsl.module
|
import org.koin.dsl.module
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
package com.meloda.app.fast.util
|
package dev.meloda.fast.util
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.app.PendingIntent
|
import android.app.PendingIntent
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
import androidx.core.app.NotificationCompat
|
import androidx.core.app.NotificationCompat
|
||||||
import androidx.core.app.NotificationManagerCompat
|
import androidx.core.app.NotificationManagerCompat
|
||||||
import com.meloda.app.fast.common.AppConstants
|
import dev.meloda.fast.common.AppConstants
|
||||||
import com.meloda.app.fast.ui.R as UiR
|
import dev.meloda.fast.ui.R as UiR
|
||||||
|
|
||||||
object NotificationsUtils {
|
object NotificationsUtils {
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,10 @@ plugins {
|
|||||||
alias(libs.plugins.kotlin.compose.compiler)
|
alias(libs.plugins.kotlin.compose.compiler)
|
||||||
}
|
}
|
||||||
|
|
||||||
group = "com.meloda.app.fast.common"
|
group = "dev.meloda.fast.common"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.meloda.app.fast.common"
|
namespace = "dev.meloda.fast.common"
|
||||||
compileSdk = Configs.compileSdk
|
compileSdk = Configs.compileSdk
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common
|
package dev.meloda.fast.common
|
||||||
|
|
||||||
object AppConstants {
|
object AppConstants {
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.common
|
package dev.meloda.fast.common
|
||||||
|
|
||||||
import com.meloda.app.fast.common.model.LongPollState
|
import dev.meloda.fast.common.model.LongPollState
|
||||||
import kotlinx.coroutines.flow.MutableStateFlow
|
import kotlinx.coroutines.flow.MutableStateFlow
|
||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common
|
package dev.meloda.fast.common
|
||||||
|
|
||||||
import android.content.SharedPreferences
|
import android.content.SharedPreferences
|
||||||
import androidx.core.content.edit
|
import androidx.core.content.edit
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common
|
package dev.meloda.fast.common
|
||||||
|
|
||||||
object VkConstants {
|
object VkConstants {
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
package com.meloda.app.fast.common.di
|
package dev.meloda.fast.common.di
|
||||||
|
|
||||||
import coil.ImageLoader
|
import coil.ImageLoader
|
||||||
import com.meloda.app.fast.common.LongPollController
|
import dev.meloda.fast.common.LongPollController
|
||||||
import com.meloda.app.fast.common.LongPollControllerImpl
|
import dev.meloda.fast.common.LongPollControllerImpl
|
||||||
import com.meloda.app.fast.common.provider.ResourceProvider
|
import dev.meloda.fast.common.provider.ResourceProvider
|
||||||
import com.meloda.app.fast.common.provider.ResourceProviderImpl
|
import dev.meloda.fast.common.provider.ResourceProviderImpl
|
||||||
import org.koin.core.module.dsl.singleOf
|
import org.koin.core.module.dsl.singleOf
|
||||||
import org.koin.dsl.bind
|
import org.koin.dsl.bind
|
||||||
import org.koin.dsl.module
|
import org.koin.dsl.module
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.extensions
|
package dev.meloda.fast.common.extensions
|
||||||
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.Parcelable
|
import android.os.Parcelable
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.extensions
|
package dev.meloda.fast.common.extensions
|
||||||
|
|
||||||
import android.app.Activity
|
import android.app.Activity
|
||||||
import android.content.Context
|
import android.content.Context
|
||||||
@@ -33,7 +33,7 @@ fun Context.restartApp() {
|
|||||||
activity.startActivity(
|
activity.startActivity(
|
||||||
Intent(
|
Intent(
|
||||||
this,
|
this,
|
||||||
Class.forName("com.meloda.app.fast.MainActivity")
|
Class.forName("dev.meloda.fast.MainActivity")
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.extensions
|
package dev.meloda.fast.common.extensions
|
||||||
|
|
||||||
inline fun String?.ifEmpty(defaultValue: () -> String?): String? =
|
inline fun String?.ifEmpty(defaultValue: () -> String?): String? =
|
||||||
if (this?.isEmpty() == true) defaultValue() else this
|
if (this?.isEmpty() == true) defaultValue() else this
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.extensions.navigation
|
package dev.meloda.fast.common.extensions.navigation
|
||||||
|
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.runtime.remember
|
import androidx.compose.runtime.remember
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
package com.meloda.app.fast.common.model
|
package dev.meloda.fast.common.model
|
||||||
|
|
||||||
data class ApiLanguage(val value: String)
|
data class ApiLanguage(val value: String)
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.model
|
package dev.meloda.fast.common.model
|
||||||
|
|
||||||
private const val MODE_NIGHT_NO = 1
|
private const val MODE_NIGHT_NO = 1
|
||||||
private const val MODE_NIGHT_YES = 2
|
private const val MODE_NIGHT_YES = 2
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.model
|
package dev.meloda.fast.common.model
|
||||||
sealed class LongPollState {
|
sealed class LongPollState {
|
||||||
data object Stopped : LongPollState()
|
data object Stopped : LongPollState()
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.model
|
package dev.meloda.fast.common.model
|
||||||
|
|
||||||
import android.graphics.drawable.Drawable
|
import android.graphics.drawable.Drawable
|
||||||
import androidx.annotation.ColorInt
|
import androidx.annotation.ColorInt
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.model
|
package dev.meloda.fast.common.model
|
||||||
|
|
||||||
import android.content.res.Resources
|
import android.content.res.Resources
|
||||||
import androidx.annotation.PluralsRes
|
import androidx.annotation.PluralsRes
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.provider
|
package dev.meloda.fast.common.provider
|
||||||
|
|
||||||
interface Provider<T> {
|
interface Provider<T> {
|
||||||
fun provide(): T?
|
fun provide(): T?
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.provider
|
package dev.meloda.fast.common.provider
|
||||||
|
|
||||||
import android.content.res.Resources
|
import android.content.res.Resources
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.util
|
package dev.meloda.fast.common.util
|
||||||
|
|
||||||
import android.content.ClipData
|
import android.content.ClipData
|
||||||
import android.content.ClipboardManager
|
import android.content.ClipboardManager
|
||||||
@@ -15,7 +15,7 @@ import java.io.FileOutputStream
|
|||||||
|
|
||||||
private object BuildConfig {
|
private object BuildConfig {
|
||||||
const val DEBUG = true
|
const val DEBUG = true
|
||||||
const val APPLICATION_ID = "com.meloda.app.fast"
|
const val APPLICATION_ID = "dev.meloda.fast"
|
||||||
}
|
}
|
||||||
|
|
||||||
object AndroidUtils {
|
object AndroidUtils {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.common.util
|
package dev.meloda.fast.common.util
|
||||||
|
|
||||||
import android.content.res.Resources
|
import android.content.res.Resources
|
||||||
import com.conena.nanokt.jvm.util.dayOfMonth
|
import com.conena.nanokt.jvm.util.dayOfMonth
|
||||||
@@ -9,7 +9,7 @@ import com.conena.nanokt.jvm.util.minute
|
|||||||
import com.conena.nanokt.jvm.util.month
|
import com.conena.nanokt.jvm.util.month
|
||||||
import com.conena.nanokt.jvm.util.second
|
import com.conena.nanokt.jvm.util.second
|
||||||
import com.conena.nanokt.jvm.util.year
|
import com.conena.nanokt.jvm.util.year
|
||||||
import com.meloda.app.fast.common.R
|
import dev.meloda.fast.common.R
|
||||||
import java.text.SimpleDateFormat
|
import java.text.SimpleDateFormat
|
||||||
import java.util.Calendar
|
import java.util.Calendar
|
||||||
import java.util.Date
|
import java.util.Date
|
||||||
|
|||||||
@@ -3,10 +3,10 @@ plugins {
|
|||||||
alias(libs.plugins.org.jetbrains.kotlin.android)
|
alias(libs.plugins.org.jetbrains.kotlin.android)
|
||||||
}
|
}
|
||||||
|
|
||||||
group = "com.meloda.app.fast.data"
|
group = "dev.meloda.fast.data"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.meloda.app.fast.data"
|
namespace = "dev.meloda.fast.data"
|
||||||
compileSdk = Configs.compileSdk
|
compileSdk = Configs.compileSdk
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
|
|||||||
@@ -1,15 +1,15 @@
|
|||||||
package com.meloda.app.fast.data
|
package dev.meloda.fast.data
|
||||||
|
|
||||||
import android.util.Log
|
import android.util.Log
|
||||||
import com.meloda.app.fast.common.UserConfig
|
import dev.meloda.fast.common.UserConfig
|
||||||
import com.meloda.app.fast.common.VkConstants
|
import dev.meloda.fast.common.VkConstants
|
||||||
import com.meloda.app.fast.common.extensions.asInt
|
import dev.meloda.fast.common.extensions.asInt
|
||||||
import com.meloda.app.fast.common.extensions.listenValue
|
import dev.meloda.fast.common.extensions.listenValue
|
||||||
import com.meloda.app.fast.common.extensions.toList
|
import dev.meloda.fast.common.extensions.toList
|
||||||
import com.meloda.app.fast.data.api.messages.MessagesUseCase
|
import dev.meloda.fast.data.api.messages.MessagesUseCase
|
||||||
import com.meloda.app.fast.model.ApiEvent
|
import dev.meloda.fast.model.ApiEvent
|
||||||
import com.meloda.app.fast.model.InteractionType
|
import dev.meloda.fast.model.InteractionType
|
||||||
import com.meloda.app.fast.model.LongPollEvent
|
import dev.meloda.fast.model.LongPollEvent
|
||||||
import kotlinx.coroutines.CoroutineExceptionHandler
|
import kotlinx.coroutines.CoroutineExceptionHandler
|
||||||
import kotlinx.coroutines.CoroutineScope
|
import kotlinx.coroutines.CoroutineScope
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data
|
package dev.meloda.fast.data
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.data.LongPollUpdates
|
import dev.meloda.fast.model.api.data.LongPollUpdates
|
||||||
import com.meloda.app.fast.model.api.data.VkLongPollData
|
import dev.meloda.fast.model.api.data.VkLongPollData
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface LongPollUseCase {
|
interface LongPollUseCase {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.data
|
package dev.meloda.fast.data
|
||||||
|
|
||||||
import com.meloda.app.fast.data.api.longpoll.LongPollRepository
|
import dev.meloda.fast.data.api.longpoll.LongPollRepository
|
||||||
import com.meloda.app.fast.model.api.data.LongPollUpdates
|
import dev.meloda.fast.model.api.data.LongPollUpdates
|
||||||
import com.meloda.app.fast.model.api.data.VkLongPollData
|
import dev.meloda.fast.model.api.data.VkLongPollData
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
import kotlinx.coroutines.flow.flow
|
import kotlinx.coroutines.flow.flow
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.data
|
package dev.meloda.fast.data
|
||||||
|
|
||||||
import com.meloda.app.fast.network.OAuthErrorDomain
|
import dev.meloda.fast.network.OAuthErrorDomain
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.VkErrorCode
|
import dev.meloda.fast.network.VkErrorCode
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
sealed class State<out T> {
|
sealed class State<out T> {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.data
|
package dev.meloda.fast.data
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.data.VkMessageData
|
import dev.meloda.fast.model.api.data.VkMessageData
|
||||||
import com.meloda.app.fast.model.api.domain.VkConversation
|
import dev.meloda.fast.model.api.domain.VkConversation
|
||||||
import com.meloda.app.fast.model.api.domain.VkGroupDomain
|
import dev.meloda.fast.model.api.domain.VkGroupDomain
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
import kotlin.math.abs
|
import kotlin.math.abs
|
||||||
|
|
||||||
class VkGroupsMap(
|
class VkGroupsMap(
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
package com.meloda.app.fast.data
|
package dev.meloda.fast.data
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.domain.VkContactDomain
|
import dev.meloda.fast.model.api.domain.VkContactDomain
|
||||||
import com.meloda.app.fast.model.api.domain.VkConversation
|
import dev.meloda.fast.model.api.domain.VkConversation
|
||||||
import com.meloda.app.fast.model.api.domain.VkGroupDomain
|
import dev.meloda.fast.model.api.domain.VkGroupDomain
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import kotlin.math.abs
|
import kotlin.math.abs
|
||||||
|
|
||||||
object VkMemoryCache {
|
object VkMemoryCache {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.data
|
package dev.meloda.fast.data
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.data.VkMessageData
|
import dev.meloda.fast.model.api.data.VkMessageData
|
||||||
import com.meloda.app.fast.model.api.domain.VkConversation
|
import dev.meloda.fast.model.api.domain.VkConversation
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
|
|
||||||
class VkUsersMap(
|
class VkUsersMap(
|
||||||
private val users: List<VkUser>
|
private val users: List<VkUser>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.data.api.account
|
package dev.meloda.fast.data.api.account
|
||||||
|
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
interface AccountRepository {
|
interface AccountRepository {
|
||||||
|
|||||||
+5
-5
@@ -1,10 +1,10 @@
|
|||||||
package com.meloda.app.fast.data.api.account
|
package dev.meloda.fast.data.api.account
|
||||||
|
|
||||||
import android.os.Build
|
import android.os.Build
|
||||||
import com.meloda.app.fast.model.api.asInt
|
import dev.meloda.fast.model.api.asInt
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.mapApiDefault
|
import dev.meloda.fast.network.mapApiDefault
|
||||||
import com.meloda.app.fast.network.service.account.AccountService
|
import dev.meloda.fast.network.service.account.AccountService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.data.api.account
|
package dev.meloda.fast.data.api.account
|
||||||
|
|
||||||
import com.meloda.app.fast.data.State
|
import dev.meloda.fast.data.State
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface AccountUseCase {
|
interface AccountUseCase {
|
||||||
|
|||||||
+13
-13
@@ -1,19 +1,19 @@
|
|||||||
package com.meloda.app.fast.data.api.account
|
package dev.meloda.fast.data.api.account
|
||||||
|
|
||||||
import com.meloda.app.fast.data.State
|
import dev.meloda.fast.data.State
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
import kotlinx.coroutines.flow.flow
|
import kotlinx.coroutines.flow.flow
|
||||||
|
|
||||||
// TODO: 05/05/2024, Danil Nikolaev: implement
|
// TODO: 05/05/2024, Danil Nikolaev: implement
|
||||||
class AccountUseCaseImpl(
|
class AccountUseCaseImpl(
|
||||||
private val accountRepository: com.meloda.app.fast.data.api.account.AccountRepository
|
private val accountRepository: dev.meloda.fast.data.api.account.AccountRepository
|
||||||
) : com.meloda.app.fast.data.api.account.AccountUseCase {
|
) : dev.meloda.fast.data.api.account.AccountUseCase {
|
||||||
|
|
||||||
override suspend fun setOnline(
|
override suspend fun setOnline(
|
||||||
voip: Boolean,
|
voip: Boolean,
|
||||||
accessToken: String
|
accessToken: String
|
||||||
): Flow<State<Unit>> = flow {
|
): Flow<State<Unit>> = flow {
|
||||||
// emit(com.meloda.app.fast.data.State.Loading)
|
// emit(dev.meloda.fast.data.State.Loading)
|
||||||
//
|
//
|
||||||
// val newState = accountRepository.setOnline(
|
// val newState = accountRepository.setOnline(
|
||||||
// params = AccountSetOnlineRequest(
|
// params = AccountSetOnlineRequest(
|
||||||
@@ -21,9 +21,9 @@ class AccountUseCaseImpl(
|
|||||||
// accessToken = accessToken
|
// accessToken = accessToken
|
||||||
// )
|
// )
|
||||||
// ).fold(
|
// ).fold(
|
||||||
// onSuccess = { response -> com.meloda.app.fast.data.State.Success(response) },
|
// onSuccess = { response -> dev.meloda.fast.data.State.Success(response) },
|
||||||
// onNetworkFailure = { com.meloda.app.fast.data.State.Error.ConnectionError },
|
// onNetworkFailure = { dev.meloda.fast.data.State.Error.ConnectionError },
|
||||||
// onUnknownFailure = { com.meloda.app.fast.data.State.UNKNOWN_ERROR },
|
// onUnknownFailure = { dev.meloda.fast.data.State.UNKNOWN_ERROR },
|
||||||
// onHttpFailure = { result -> result.error.toStateApiError() },
|
// onHttpFailure = { result -> result.error.toStateApiError() },
|
||||||
// onApiFailure = { result -> result.error.toStateApiError() }
|
// onApiFailure = { result -> result.error.toStateApiError() }
|
||||||
// )
|
// )
|
||||||
@@ -32,15 +32,15 @@ class AccountUseCaseImpl(
|
|||||||
|
|
||||||
override suspend fun setOffline(
|
override suspend fun setOffline(
|
||||||
accessToken: String
|
accessToken: String
|
||||||
): Flow<com.meloda.app.fast.data.State<Unit>> = flow {
|
): Flow<dev.meloda.fast.data.State<Unit>> = flow {
|
||||||
emit(com.meloda.app.fast.data.State.Loading)
|
emit(dev.meloda.fast.data.State.Loading)
|
||||||
|
|
||||||
// val newState = accountRepository.setOffline(
|
// val newState = accountRepository.setOffline(
|
||||||
// params = AccountSetOfflineRequest(accessToken = accessToken)
|
// params = AccountSetOfflineRequest(accessToken = accessToken)
|
||||||
// ).fold(
|
// ).fold(
|
||||||
// onSuccess = { response -> com.meloda.app.fast.data.State.Success(response) },
|
// onSuccess = { response -> dev.meloda.fast.data.State.Success(response) },
|
||||||
// onNetworkFailure = { com.meloda.app.fast.data.State.Error.ConnectionError },
|
// onNetworkFailure = { dev.meloda.fast.data.State.Error.ConnectionError },
|
||||||
// onUnknownFailure = { com.meloda.app.fast.data.State.UNKNOWN_ERROR },
|
// onUnknownFailure = { dev.meloda.fast.data.State.UNKNOWN_ERROR },
|
||||||
// onHttpFailure = { result -> result.error.toStateApiError() },
|
// onHttpFailure = { result -> result.error.toStateApiError() },
|
||||||
// onApiFailure = { result -> result.error.toStateApiError() }
|
// onApiFailure = { result -> result.error.toStateApiError() }
|
||||||
// )
|
// )
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.data.api.audios
|
package dev.meloda.fast.data.api.audios
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.responses.AudiosGetUploadServerResponse
|
import dev.meloda.fast.model.api.responses.AudiosGetUploadServerResponse
|
||||||
import com.meloda.app.fast.network.ApiResponse
|
import dev.meloda.fast.network.ApiResponse
|
||||||
import com.meloda.app.fast.network.RestApiError
|
import dev.meloda.fast.network.RestApiError
|
||||||
import com.meloda.app.fast.network.service.audios.AudiosService
|
import dev.meloda.fast.network.service.audios.AudiosService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import okhttp3.MultipartBody
|
import okhttp3.MultipartBody
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.api.auth
|
package dev.meloda.fast.data.api.auth
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.responses.ValidatePhoneResponse
|
import dev.meloda.fast.model.api.responses.ValidatePhoneResponse
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
interface AuthRepository {
|
interface AuthRepository {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.data.api.auth
|
package dev.meloda.fast.data.api.auth
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.responses.ValidatePhoneResponse
|
import dev.meloda.fast.model.api.responses.ValidatePhoneResponse
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.mapApiDefault
|
import dev.meloda.fast.network.mapApiDefault
|
||||||
import com.meloda.app.fast.network.service.auth.AuthService
|
import dev.meloda.fast.network.service.auth.AuthService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.api.conversations
|
package dev.meloda.fast.data.api.conversations
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.domain.VkConversation
|
import dev.meloda.fast.model.api.domain.VkConversation
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
interface ConversationsRepository {
|
interface ConversationsRepository {
|
||||||
|
|||||||
+20
-20
@@ -1,24 +1,24 @@
|
|||||||
package com.meloda.app.fast.data.api.conversations
|
package dev.meloda.fast.data.api.conversations
|
||||||
|
|
||||||
import com.meloda.app.fast.common.VkConstants
|
import dev.meloda.fast.common.VkConstants
|
||||||
import com.meloda.app.fast.data.VkGroupsMap
|
import dev.meloda.fast.data.VkGroupsMap
|
||||||
import com.meloda.app.fast.data.VkMemoryCache
|
import dev.meloda.fast.data.VkMemoryCache
|
||||||
import com.meloda.app.fast.data.VkUsersMap
|
import dev.meloda.fast.data.VkUsersMap
|
||||||
import com.meloda.app.fast.database.dao.ConversationDao
|
import dev.meloda.fast.database.dao.ConversationDao
|
||||||
import com.meloda.app.fast.model.api.data.VkContactData
|
import dev.meloda.fast.model.api.data.VkContactData
|
||||||
import com.meloda.app.fast.model.api.data.VkGroupData
|
import dev.meloda.fast.model.api.data.VkGroupData
|
||||||
import com.meloda.app.fast.model.api.data.VkUserData
|
import dev.meloda.fast.model.api.data.VkUserData
|
||||||
import com.meloda.app.fast.model.api.data.asDomain
|
import dev.meloda.fast.model.api.data.asDomain
|
||||||
import com.meloda.app.fast.model.api.domain.VkConversation
|
import dev.meloda.fast.model.api.domain.VkConversation
|
||||||
import com.meloda.app.fast.model.api.domain.asEntity
|
import dev.meloda.fast.model.api.domain.asEntity
|
||||||
import com.meloda.app.fast.model.api.requests.ConversationsDeleteRequest
|
import dev.meloda.fast.model.api.requests.ConversationsDeleteRequest
|
||||||
import com.meloda.app.fast.model.api.requests.ConversationsGetRequest
|
import dev.meloda.fast.model.api.requests.ConversationsGetRequest
|
||||||
import com.meloda.app.fast.model.api.requests.ConversationsPinRequest
|
import dev.meloda.fast.model.api.requests.ConversationsPinRequest
|
||||||
import com.meloda.app.fast.model.api.requests.ConversationsUnpinRequest
|
import dev.meloda.fast.model.api.requests.ConversationsUnpinRequest
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.mapApiDefault
|
import dev.meloda.fast.network.mapApiDefault
|
||||||
import com.meloda.app.fast.network.mapApiResult
|
import dev.meloda.fast.network.mapApiResult
|
||||||
import com.meloda.app.fast.network.service.conversations.ConversationsService
|
import dev.meloda.fast.network.service.conversations.ConversationsService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.api.conversations
|
package dev.meloda.fast.data.api.conversations
|
||||||
|
|
||||||
import com.meloda.app.fast.data.State
|
import dev.meloda.fast.data.State
|
||||||
import com.meloda.app.fast.model.api.domain.VkConversation
|
import dev.meloda.fast.model.api.domain.VkConversation
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface ConversationsUseCase {
|
interface ConversationsUseCase {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.data.api.files
|
package dev.meloda.fast.data.api.files
|
||||||
|
|
||||||
import com.meloda.app.fast.network.service.files.FilesService
|
import dev.meloda.fast.network.service.files.FilesService
|
||||||
import okhttp3.MultipartBody
|
import okhttp3.MultipartBody
|
||||||
|
|
||||||
class FilesRepository(
|
class FilesRepository(
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.data.api.friends
|
package dev.meloda.fast.data.api.friends
|
||||||
|
|
||||||
import com.meloda.app.fast.model.FriendsInfo
|
import dev.meloda.fast.model.FriendsInfo
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
interface FriendsRepository {
|
interface FriendsRepository {
|
||||||
|
|||||||
+14
-14
@@ -1,18 +1,18 @@
|
|||||||
package com.meloda.app.fast.data.api.friends
|
package dev.meloda.fast.data.api.friends
|
||||||
|
|
||||||
import com.meloda.app.fast.common.VkConstants
|
import dev.meloda.fast.common.VkConstants
|
||||||
import com.meloda.app.fast.data.VkMemoryCache
|
import dev.meloda.fast.data.VkMemoryCache
|
||||||
import com.meloda.app.fast.database.dao.UsersDao
|
import dev.meloda.fast.database.dao.UsersDao
|
||||||
import com.meloda.app.fast.model.FriendsInfo
|
import dev.meloda.fast.model.FriendsInfo
|
||||||
import com.meloda.app.fast.model.api.data.VkUserData
|
import dev.meloda.fast.model.api.data.VkUserData
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import com.meloda.app.fast.model.api.domain.asEntity
|
import dev.meloda.fast.model.api.domain.asEntity
|
||||||
import com.meloda.app.fast.model.api.requests.GetFriendsRequest
|
import dev.meloda.fast.model.api.requests.GetFriendsRequest
|
||||||
import com.meloda.app.fast.model.api.requests.GetOnlineFriendsRequest
|
import dev.meloda.fast.model.api.requests.GetOnlineFriendsRequest
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.mapApiDefault
|
import dev.meloda.fast.network.mapApiDefault
|
||||||
import com.meloda.app.fast.network.mapApiResult
|
import dev.meloda.fast.network.mapApiResult
|
||||||
import com.meloda.app.fast.network.service.friends.FriendsService
|
import dev.meloda.fast.network.service.friends.FriendsService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import com.slack.eithernet.successOrElse
|
import com.slack.eithernet.successOrElse
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.data.api.friends
|
package dev.meloda.fast.data.api.friends
|
||||||
|
|
||||||
import com.meloda.app.fast.data.State
|
import dev.meloda.fast.data.State
|
||||||
import com.meloda.app.fast.model.FriendsInfo
|
import dev.meloda.fast.model.FriendsInfo
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface FriendsUseCase {
|
interface FriendsUseCase {
|
||||||
|
|||||||
+4
-4
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.data.api.longpoll
|
package dev.meloda.fast.data.api.longpoll
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.data.LongPollUpdates
|
import dev.meloda.fast.model.api.data.LongPollUpdates
|
||||||
import com.meloda.app.fast.model.api.data.VkLongPollData
|
import dev.meloda.fast.model.api.data.VkLongPollData
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
interface LongPollRepository {
|
interface LongPollRepository {
|
||||||
|
|||||||
+10
-10
@@ -1,14 +1,14 @@
|
|||||||
package com.meloda.app.fast.data.api.longpoll
|
package dev.meloda.fast.data.api.longpoll
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.data.LongPollUpdates
|
import dev.meloda.fast.model.api.data.LongPollUpdates
|
||||||
import com.meloda.app.fast.model.api.data.VkLongPollData
|
import dev.meloda.fast.model.api.data.VkLongPollData
|
||||||
import com.meloda.app.fast.model.api.requests.LongPollGetUpdatesRequest
|
import dev.meloda.fast.model.api.requests.LongPollGetUpdatesRequest
|
||||||
import com.meloda.app.fast.model.api.requests.MessagesGetLongPollServerRequest
|
import dev.meloda.fast.model.api.requests.MessagesGetLongPollServerRequest
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.mapApiResult
|
import dev.meloda.fast.network.mapApiResult
|
||||||
import com.meloda.app.fast.network.mapDefault
|
import dev.meloda.fast.network.mapDefault
|
||||||
import com.meloda.app.fast.network.service.longpoll.LongPollService
|
import dev.meloda.fast.network.service.longpoll.LongPollService
|
||||||
import com.meloda.app.fast.network.service.messages.MessagesService
|
import dev.meloda.fast.network.service.messages.MessagesService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
|||||||
+3
-3
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.api.messages
|
package dev.meloda.fast.data.api.messages
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.domain.VkConversation
|
import dev.meloda.fast.model.api.domain.VkConversation
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
|
|
||||||
data class MessagesHistoryInfo(
|
data class MessagesHistoryInfo(
|
||||||
val messages: List<VkMessage>,
|
val messages: List<VkMessage>,
|
||||||
|
|||||||
+5
-5
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.data.api.messages
|
package dev.meloda.fast.data.api.messages
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.domain.VkAttachment
|
import dev.meloda.fast.model.api.domain.VkAttachment
|
||||||
import com.meloda.app.fast.model.api.domain.VkAttachmentHistoryMessage
|
import dev.meloda.fast.model.api.domain.VkAttachmentHistoryMessage
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
interface MessagesRepository {
|
interface MessagesRepository {
|
||||||
|
|||||||
+24
-24
@@ -1,28 +1,28 @@
|
|||||||
package com.meloda.app.fast.data.api.messages
|
package dev.meloda.fast.data.api.messages
|
||||||
|
|
||||||
import com.meloda.app.fast.common.VkConstants
|
import dev.meloda.fast.common.VkConstants
|
||||||
import com.meloda.app.fast.data.VkGroupsMap
|
import dev.meloda.fast.data.VkGroupsMap
|
||||||
import com.meloda.app.fast.data.VkMemoryCache
|
import dev.meloda.fast.data.VkMemoryCache
|
||||||
import com.meloda.app.fast.data.VkUsersMap
|
import dev.meloda.fast.data.VkUsersMap
|
||||||
import com.meloda.app.fast.database.dao.MessageDao
|
import dev.meloda.fast.database.dao.MessageDao
|
||||||
import com.meloda.app.fast.model.api.data.VkAttachmentHistoryMessageData
|
import dev.meloda.fast.model.api.data.VkAttachmentHistoryMessageData
|
||||||
import com.meloda.app.fast.model.api.data.VkContactData
|
import dev.meloda.fast.model.api.data.VkContactData
|
||||||
import com.meloda.app.fast.model.api.data.VkGroupData
|
import dev.meloda.fast.model.api.data.VkGroupData
|
||||||
import com.meloda.app.fast.model.api.data.VkUserData
|
import dev.meloda.fast.model.api.data.VkUserData
|
||||||
import com.meloda.app.fast.model.api.data.asDomain
|
import dev.meloda.fast.model.api.data.asDomain
|
||||||
import com.meloda.app.fast.model.api.domain.VkAttachment
|
import dev.meloda.fast.model.api.domain.VkAttachment
|
||||||
import com.meloda.app.fast.model.api.domain.VkAttachmentHistoryMessage
|
import dev.meloda.fast.model.api.domain.VkAttachmentHistoryMessage
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
import com.meloda.app.fast.model.api.domain.asEntity
|
import dev.meloda.fast.model.api.domain.asEntity
|
||||||
import com.meloda.app.fast.model.api.requests.MessagesGetByIdRequest
|
import dev.meloda.fast.model.api.requests.MessagesGetByIdRequest
|
||||||
import com.meloda.app.fast.model.api.requests.MessagesGetHistoryAttachmentsRequest
|
import dev.meloda.fast.model.api.requests.MessagesGetHistoryAttachmentsRequest
|
||||||
import com.meloda.app.fast.model.api.requests.MessagesGetHistoryRequest
|
import dev.meloda.fast.model.api.requests.MessagesGetHistoryRequest
|
||||||
import com.meloda.app.fast.model.api.requests.MessagesMarkAsReadRequest
|
import dev.meloda.fast.model.api.requests.MessagesMarkAsReadRequest
|
||||||
import com.meloda.app.fast.model.api.requests.MessagesSendRequest
|
import dev.meloda.fast.model.api.requests.MessagesSendRequest
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.mapApiDefault
|
import dev.meloda.fast.network.mapApiDefault
|
||||||
import com.meloda.app.fast.network.mapApiResult
|
import dev.meloda.fast.network.mapApiResult
|
||||||
import com.meloda.app.fast.network.service.messages.MessagesService
|
import dev.meloda.fast.network.service.messages.MessagesService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.data.api.messages
|
package dev.meloda.fast.data.api.messages
|
||||||
|
|
||||||
import com.meloda.app.fast.data.State
|
import dev.meloda.fast.data.State
|
||||||
import com.meloda.app.fast.model.api.domain.VkAttachment
|
import dev.meloda.fast.model.api.domain.VkAttachment
|
||||||
import com.meloda.app.fast.model.api.domain.VkAttachmentHistoryMessage
|
import dev.meloda.fast.model.api.domain.VkAttachmentHistoryMessage
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface MessagesUseCase {
|
interface MessagesUseCase {
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.data.api.oauth
|
package dev.meloda.fast.data.api.oauth
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.responses.AuthDirectResponse
|
import dev.meloda.fast.model.api.responses.AuthDirectResponse
|
||||||
|
|
||||||
interface OAuthRepository {
|
interface OAuthRepository {
|
||||||
|
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.data.api.oauth
|
package dev.meloda.fast.data.api.oauth
|
||||||
|
|
||||||
import com.meloda.app.fast.common.VkConstants
|
import dev.meloda.fast.common.VkConstants
|
||||||
import com.meloda.app.fast.model.api.requests.AuthDirectRequest
|
import dev.meloda.fast.model.api.requests.AuthDirectRequest
|
||||||
import com.meloda.app.fast.model.api.responses.AuthDirectResponse
|
import dev.meloda.fast.model.api.responses.AuthDirectResponse
|
||||||
import com.meloda.app.fast.network.service.oauth.OAuthService
|
import dev.meloda.fast.network.service.oauth.OAuthService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.api.photos
|
package dev.meloda.fast.data.api.photos
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.requests.PhotosSaveMessagePhotoRequest
|
import dev.meloda.fast.model.api.requests.PhotosSaveMessagePhotoRequest
|
||||||
import com.meloda.app.fast.network.service.photos.PhotosService
|
import dev.meloda.fast.network.service.photos.PhotosService
|
||||||
import okhttp3.MultipartBody
|
import okhttp3.MultipartBody
|
||||||
|
|
||||||
class PhotosRepository(
|
class PhotosRepository(
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.api.users
|
package dev.meloda.fast.data.api.users
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
|
|
||||||
interface UsersRepository {
|
interface UsersRepository {
|
||||||
|
|||||||
+12
-12
@@ -1,16 +1,16 @@
|
|||||||
package com.meloda.app.fast.data.api.users
|
package dev.meloda.fast.data.api.users
|
||||||
|
|
||||||
import com.meloda.app.fast.data.VkMemoryCache
|
import dev.meloda.fast.data.VkMemoryCache
|
||||||
import com.meloda.app.fast.database.dao.UsersDao
|
import dev.meloda.fast.database.dao.UsersDao
|
||||||
import com.meloda.app.fast.model.api.data.VkUserData
|
import dev.meloda.fast.model.api.data.VkUserData
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import com.meloda.app.fast.model.api.domain.asEntity
|
import dev.meloda.fast.model.api.domain.asEntity
|
||||||
import com.meloda.app.fast.model.api.requests.UsersGetRequest
|
import dev.meloda.fast.model.api.requests.UsersGetRequest
|
||||||
import com.meloda.app.fast.model.database.VkUserEntity
|
import dev.meloda.fast.model.database.VkUserEntity
|
||||||
import com.meloda.app.fast.model.database.asExternalModel
|
import dev.meloda.fast.model.database.asExternalModel
|
||||||
import com.meloda.app.fast.network.RestApiErrorDomain
|
import dev.meloda.fast.network.RestApiErrorDomain
|
||||||
import com.meloda.app.fast.network.mapApiResult
|
import dev.meloda.fast.network.mapApiResult
|
||||||
import com.meloda.app.fast.network.service.users.UsersService
|
import dev.meloda.fast.network.service.users.UsersService
|
||||||
import com.slack.eithernet.ApiResult
|
import com.slack.eithernet.ApiResult
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.api.users
|
package dev.meloda.fast.data.api.users
|
||||||
|
|
||||||
import com.meloda.app.fast.data.State
|
import dev.meloda.fast.data.State
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
|
|
||||||
interface UsersUseCase {
|
interface UsersUseCase {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.data.api.users
|
package dev.meloda.fast.data.api.users
|
||||||
|
|
||||||
import com.meloda.app.fast.data.State
|
import dev.meloda.fast.data.State
|
||||||
import com.meloda.app.fast.data.mapToState
|
import dev.meloda.fast.data.mapToState
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
import kotlinx.coroutines.flow.Flow
|
import kotlinx.coroutines.flow.Flow
|
||||||
import kotlinx.coroutines.flow.flow
|
import kotlinx.coroutines.flow.flow
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.data.api.videos
|
package dev.meloda.fast.data.api.videos
|
||||||
|
|
||||||
import com.meloda.app.fast.network.service.videos.VideosService
|
import dev.meloda.fast.network.service.videos.VideosService
|
||||||
import okhttp3.MultipartBody
|
import okhttp3.MultipartBody
|
||||||
|
|
||||||
class VideosRepository(
|
class VideosRepository(
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.data.db
|
package dev.meloda.fast.data.db
|
||||||
|
|
||||||
import com.meloda.app.fast.model.database.AccountEntity
|
import dev.meloda.fast.model.database.AccountEntity
|
||||||
|
|
||||||
interface AccountsRepository {
|
interface AccountsRepository {
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.db
|
package dev.meloda.fast.data.db
|
||||||
|
|
||||||
import com.meloda.app.fast.database.dao.AccountDao
|
import dev.meloda.fast.database.dao.AccountDao
|
||||||
import com.meloda.app.fast.model.database.AccountEntity
|
import dev.meloda.fast.model.database.AccountEntity
|
||||||
|
|
||||||
class AccountsRepositoryImpl(
|
class AccountsRepositoryImpl(
|
||||||
private val accountDao: AccountDao
|
private val accountDao: AccountDao
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.data.db
|
package dev.meloda.fast.data.db
|
||||||
|
|
||||||
import com.meloda.app.fast.common.UserConfig
|
import dev.meloda.fast.common.UserConfig
|
||||||
import com.meloda.app.fast.model.database.AccountEntity
|
import dev.meloda.fast.model.database.AccountEntity
|
||||||
import kotlinx.coroutines.Dispatchers
|
import kotlinx.coroutines.Dispatchers
|
||||||
import kotlinx.coroutines.withContext
|
import kotlinx.coroutines.withContext
|
||||||
|
|
||||||
|
|||||||
@@ -1,36 +1,36 @@
|
|||||||
package com.meloda.app.fast.data.di
|
package dev.meloda.fast.data.di
|
||||||
|
|
||||||
import com.meloda.app.fast.common.di.commonModule
|
import dev.meloda.fast.common.di.commonModule
|
||||||
import com.meloda.app.fast.data.api.account.AccountRepository
|
import dev.meloda.fast.data.api.account.AccountRepository
|
||||||
import com.meloda.app.fast.data.api.account.AccountRepositoryImpl
|
import dev.meloda.fast.data.api.account.AccountRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.account.AccountUseCase
|
import dev.meloda.fast.data.api.account.AccountUseCase
|
||||||
import com.meloda.app.fast.data.api.account.AccountUseCaseImpl
|
import dev.meloda.fast.data.api.account.AccountUseCaseImpl
|
||||||
import com.meloda.app.fast.data.api.audios.AudiosRepository
|
import dev.meloda.fast.data.api.audios.AudiosRepository
|
||||||
import com.meloda.app.fast.data.api.auth.AuthRepository
|
import dev.meloda.fast.data.api.auth.AuthRepository
|
||||||
import com.meloda.app.fast.data.api.auth.AuthRepositoryImpl
|
import dev.meloda.fast.data.api.auth.AuthRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.conversations.ConversationsRepository
|
import dev.meloda.fast.data.api.conversations.ConversationsRepository
|
||||||
import com.meloda.app.fast.data.api.conversations.ConversationsRepositoryImpl
|
import dev.meloda.fast.data.api.conversations.ConversationsRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.files.FilesRepository
|
import dev.meloda.fast.data.api.files.FilesRepository
|
||||||
import com.meloda.app.fast.data.api.friends.FriendsRepository
|
import dev.meloda.fast.data.api.friends.FriendsRepository
|
||||||
import com.meloda.app.fast.data.api.friends.FriendsRepositoryImpl
|
import dev.meloda.fast.data.api.friends.FriendsRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.longpoll.LongPollRepository
|
import dev.meloda.fast.data.api.longpoll.LongPollRepository
|
||||||
import com.meloda.app.fast.data.api.longpoll.LongPollRepositoryImpl
|
import dev.meloda.fast.data.api.longpoll.LongPollRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.messages.MessagesRepository
|
import dev.meloda.fast.data.api.messages.MessagesRepository
|
||||||
import com.meloda.app.fast.data.api.messages.MessagesRepositoryImpl
|
import dev.meloda.fast.data.api.messages.MessagesRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.oauth.OAuthRepository
|
import dev.meloda.fast.data.api.oauth.OAuthRepository
|
||||||
import com.meloda.app.fast.data.api.oauth.OAuthRepositoryImpl
|
import dev.meloda.fast.data.api.oauth.OAuthRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.photos.PhotosRepository
|
import dev.meloda.fast.data.api.photos.PhotosRepository
|
||||||
import com.meloda.app.fast.data.api.users.UsersRepository
|
import dev.meloda.fast.data.api.users.UsersRepository
|
||||||
import com.meloda.app.fast.data.api.users.UsersRepositoryImpl
|
import dev.meloda.fast.data.api.users.UsersRepositoryImpl
|
||||||
import com.meloda.app.fast.data.api.users.UsersUseCase
|
import dev.meloda.fast.data.api.users.UsersUseCase
|
||||||
import com.meloda.app.fast.data.api.users.UsersUseCaseImpl
|
import dev.meloda.fast.data.api.users.UsersUseCaseImpl
|
||||||
import com.meloda.app.fast.data.api.videos.VideosRepository
|
import dev.meloda.fast.data.api.videos.VideosRepository
|
||||||
import com.meloda.app.fast.data.db.AccountsRepository
|
import dev.meloda.fast.data.db.AccountsRepository
|
||||||
import com.meloda.app.fast.data.db.AccountsRepositoryImpl
|
import dev.meloda.fast.data.db.AccountsRepositoryImpl
|
||||||
import com.meloda.app.fast.data.db.GetCurrentAccountUseCase
|
import dev.meloda.fast.data.db.GetCurrentAccountUseCase
|
||||||
import com.meloda.app.fast.database.di.databaseModule
|
import dev.meloda.fast.database.di.databaseModule
|
||||||
import com.meloda.app.fast.datastore.di.dataStoreModule
|
import dev.meloda.fast.datastore.di.dataStoreModule
|
||||||
import com.meloda.app.fast.network.di.networkModule
|
import dev.meloda.fast.network.di.networkModule
|
||||||
import org.koin.core.module.dsl.singleOf
|
import org.koin.core.module.dsl.singleOf
|
||||||
import org.koin.dsl.bind
|
import org.koin.dsl.bind
|
||||||
import org.koin.dsl.module
|
import org.koin.dsl.module
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ plugins {
|
|||||||
alias(libs.plugins.com.google.devtools.ksp)
|
alias(libs.plugins.com.google.devtools.ksp)
|
||||||
}
|
}
|
||||||
|
|
||||||
group = "com.meloda.app.fast.database"
|
group = "dev.meloda.fast.database"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.meloda.app.fast.database"
|
namespace = "dev.meloda.fast.database"
|
||||||
compileSdk = Configs.compileSdk
|
compileSdk = Configs.compileSdk
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
package com.meloda.app.fast.database
|
package dev.meloda.fast.database
|
||||||
|
|
||||||
import androidx.room.Database
|
import androidx.room.Database
|
||||||
import androidx.room.RoomDatabase
|
import androidx.room.RoomDatabase
|
||||||
import com.meloda.app.fast.database.dao.AccountDao
|
import dev.meloda.fast.database.dao.AccountDao
|
||||||
import com.meloda.app.fast.model.database.AccountEntity
|
import dev.meloda.fast.model.database.AccountEntity
|
||||||
|
|
||||||
@Database(
|
@Database(
|
||||||
entities = [AccountEntity::class],
|
entities = [AccountEntity::class],
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
package com.meloda.app.fast.database
|
package dev.meloda.fast.database
|
||||||
|
|
||||||
import androidx.room.Database
|
import androidx.room.Database
|
||||||
import androidx.room.RoomDatabase
|
import androidx.room.RoomDatabase
|
||||||
import androidx.room.TypeConverters
|
import androidx.room.TypeConverters
|
||||||
import com.meloda.app.fast.database.dao.ConversationDao
|
import dev.meloda.fast.database.dao.ConversationDao
|
||||||
import com.meloda.app.fast.database.dao.GroupDao
|
import dev.meloda.fast.database.dao.GroupDao
|
||||||
import com.meloda.app.fast.database.dao.MessageDao
|
import dev.meloda.fast.database.dao.MessageDao
|
||||||
import com.meloda.app.fast.database.dao.UsersDao
|
import dev.meloda.fast.database.dao.UsersDao
|
||||||
import com.meloda.app.fast.database.typeconverters.Converters
|
import dev.meloda.fast.database.typeconverters.Converters
|
||||||
import com.meloda.app.fast.model.database.VkConversationEntity
|
import dev.meloda.fast.model.database.VkConversationEntity
|
||||||
import com.meloda.app.fast.model.database.VkGroupEntity
|
import dev.meloda.fast.model.database.VkGroupEntity
|
||||||
import com.meloda.app.fast.model.database.VkMessageEntity
|
import dev.meloda.fast.model.database.VkMessageEntity
|
||||||
import com.meloda.app.fast.model.database.VkUserEntity
|
import dev.meloda.fast.model.database.VkUserEntity
|
||||||
|
|
||||||
@Database(
|
@Database(
|
||||||
entities = [
|
entities = [
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.database.dao
|
package dev.meloda.fast.database.dao
|
||||||
|
|
||||||
import androidx.room.Dao
|
import androidx.room.Dao
|
||||||
import androidx.room.Query
|
import androidx.room.Query
|
||||||
import com.meloda.app.fast.model.database.AccountEntity
|
import dev.meloda.fast.model.database.AccountEntity
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
abstract class AccountDao : EntityDao<AccountEntity> {
|
abstract class AccountDao : EntityDao<AccountEntity> {
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
package com.meloda.app.fast.database.dao
|
package dev.meloda.fast.database.dao
|
||||||
|
|
||||||
import androidx.room.Dao
|
import androidx.room.Dao
|
||||||
import androidx.room.Query
|
import androidx.room.Query
|
||||||
import androidx.room.Transaction
|
import androidx.room.Transaction
|
||||||
import com.meloda.app.fast.model.database.ConversationWithMessage
|
import dev.meloda.fast.model.database.ConversationWithMessage
|
||||||
import com.meloda.app.fast.model.database.VkConversationEntity
|
import dev.meloda.fast.model.database.VkConversationEntity
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
abstract class ConversationDao : EntityDao<VkConversationEntity> {
|
abstract class ConversationDao : EntityDao<VkConversationEntity> {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.database.dao
|
package dev.meloda.fast.database.dao
|
||||||
|
|
||||||
import androidx.room.Delete
|
import androidx.room.Delete
|
||||||
import androidx.room.Insert
|
import androidx.room.Insert
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.database.dao
|
package dev.meloda.fast.database.dao
|
||||||
|
|
||||||
import androidx.room.Dao
|
import androidx.room.Dao
|
||||||
import androidx.room.Query
|
import androidx.room.Query
|
||||||
import com.meloda.app.fast.model.database.VkGroupEntity
|
import dev.meloda.fast.model.database.VkGroupEntity
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
abstract class GroupDao : EntityDao<VkGroupEntity> {
|
abstract class GroupDao : EntityDao<VkGroupEntity> {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.database.dao
|
package dev.meloda.fast.database.dao
|
||||||
|
|
||||||
import androidx.room.Dao
|
import androidx.room.Dao
|
||||||
import androidx.room.Query
|
import androidx.room.Query
|
||||||
import com.meloda.app.fast.model.database.VkMessageEntity
|
import dev.meloda.fast.model.database.VkMessageEntity
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
abstract class MessageDao : EntityDao<VkMessageEntity> {
|
abstract class MessageDao : EntityDao<VkMessageEntity> {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.database.dao
|
package dev.meloda.fast.database.dao
|
||||||
|
|
||||||
import androidx.room.Dao
|
import androidx.room.Dao
|
||||||
import androidx.room.Query
|
import androidx.room.Query
|
||||||
import com.meloda.app.fast.model.database.VkUserEntity
|
import dev.meloda.fast.model.database.VkUserEntity
|
||||||
|
|
||||||
@Dao
|
@Dao
|
||||||
abstract class UsersDao : EntityDao<VkUserEntity> {
|
abstract class UsersDao : EntityDao<VkUserEntity> {
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.database.di
|
package dev.meloda.fast.database.di
|
||||||
|
|
||||||
import androidx.room.Room
|
import androidx.room.Room
|
||||||
import com.meloda.app.fast.database.AccountsDatabase
|
import dev.meloda.fast.database.AccountsDatabase
|
||||||
import org.koin.core.scope.Scope
|
import org.koin.core.scope.Scope
|
||||||
import org.koin.dsl.module
|
import org.koin.dsl.module
|
||||||
|
|
||||||
@@ -12,7 +12,7 @@ val databaseModule = module {
|
|||||||
single { get<AccountsDatabase>().accountDao() }
|
single { get<AccountsDatabase>().accountDao() }
|
||||||
|
|
||||||
single {
|
single {
|
||||||
Room.databaseBuilder(get(), com.meloda.app.fast.database.CacheDatabase::class.java, "cache")
|
Room.databaseBuilder(get(), dev.meloda.fast.database.CacheDatabase::class.java, "cache")
|
||||||
.fallbackToDestructiveMigration()
|
.fallbackToDestructiveMigration()
|
||||||
.build()
|
.build()
|
||||||
}
|
}
|
||||||
@@ -22,4 +22,4 @@ val databaseModule = module {
|
|||||||
single { cacheDB().conversationDao() }
|
single { cacheDB().conversationDao() }
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun Scope.cacheDB(): com.meloda.app.fast.database.CacheDatabase = get()
|
private fun Scope.cacheDB(): dev.meloda.fast.database.CacheDatabase = get()
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.database.typeconverters
|
package dev.meloda.fast.database.typeconverters
|
||||||
|
|
||||||
import androidx.room.TypeConverter
|
import androidx.room.TypeConverter
|
||||||
|
|
||||||
|
|||||||
@@ -3,10 +3,10 @@ plugins {
|
|||||||
alias(libs.plugins.org.jetbrains.kotlin.android)
|
alias(libs.plugins.org.jetbrains.kotlin.android)
|
||||||
}
|
}
|
||||||
|
|
||||||
group = "com.meloda.app.fast.datastore"
|
group = "dev.meloda.fast.datastore"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.meloda.app.fast.datastore"
|
namespace = "dev.meloda.fast.datastore"
|
||||||
compileSdk = Configs.compileSdk
|
compileSdk = Configs.compileSdk
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
package com.meloda.app.fast.datastore
|
package dev.meloda.fast.datastore
|
||||||
|
|
||||||
import android.content.SharedPreferences
|
import android.content.SharedPreferences
|
||||||
import androidx.core.content.edit
|
import androidx.core.content.edit
|
||||||
import com.meloda.app.fast.common.model.DarkMode
|
import dev.meloda.fast.common.model.DarkMode
|
||||||
import kotlin.properties.Delegates
|
import kotlin.properties.Delegates
|
||||||
import kotlin.reflect.KClass
|
import kotlin.reflect.KClass
|
||||||
|
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.datastore
|
package dev.meloda.fast.datastore
|
||||||
|
|
||||||
import androidx.appcompat.app.AppCompatDelegate
|
import androidx.appcompat.app.AppCompatDelegate
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.datastore
|
package dev.meloda.fast.datastore
|
||||||
|
|
||||||
import com.meloda.app.fast.common.model.DarkMode
|
import dev.meloda.fast.common.model.DarkMode
|
||||||
import kotlinx.coroutines.flow.MutableStateFlow
|
import kotlinx.coroutines.flow.MutableStateFlow
|
||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
package com.meloda.app.fast.datastore.di
|
package dev.meloda.fast.datastore.di
|
||||||
|
|
||||||
import com.meloda.app.fast.datastore.UserSettings
|
import dev.meloda.fast.datastore.UserSettings
|
||||||
import com.meloda.app.fast.datastore.UserSettingsImpl
|
import dev.meloda.fast.datastore.UserSettingsImpl
|
||||||
import org.koin.core.module.dsl.singleOf
|
import org.koin.core.module.dsl.singleOf
|
||||||
import org.koin.dsl.bind
|
import org.koin.dsl.bind
|
||||||
import org.koin.dsl.module
|
import org.koin.dsl.module
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ plugins {
|
|||||||
alias(libs.plugins.kotlin.compose.compiler)
|
alias(libs.plugins.kotlin.compose.compiler)
|
||||||
}
|
}
|
||||||
|
|
||||||
group = "com.meloda.app.fast.designsystem"
|
group = "dev.meloda.fast.designsystem"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.meloda.app.fast.designsystem"
|
namespace = "dev.meloda.fast.designsystem"
|
||||||
|
|
||||||
compileSdk = Configs.compileSdk
|
compileSdk = Configs.compileSdk
|
||||||
|
|
||||||
|
|||||||
@@ -4,10 +4,10 @@ plugins {
|
|||||||
alias(libs.plugins.com.google.devtools.ksp)
|
alias(libs.plugins.com.google.devtools.ksp)
|
||||||
}
|
}
|
||||||
|
|
||||||
group = "com.meloda.app.fast.model"
|
group = "dev.meloda.fast.model"
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "com.meloda.app.fast.model"
|
namespace = "dev.meloda.fast.model"
|
||||||
compileSdk = Configs.compileSdk
|
compileSdk = Configs.compileSdk
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.model;
|
package dev.meloda.fast.model;
|
||||||
|
|
||||||
enum class ApiEvent(val value: Int) {
|
enum class ApiEvent(val value: Int) {
|
||||||
MESSAGE_SET_FLAGS(2),
|
MESSAGE_SET_FLAGS(2),
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.model
|
package dev.meloda.fast.model
|
||||||
|
|
||||||
import androidx.compose.runtime.Immutable
|
import androidx.compose.runtime.Immutable
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.model
|
package dev.meloda.fast.model
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.domain.VkUser
|
import dev.meloda.fast.model.api.domain.VkUser
|
||||||
|
|
||||||
data class FriendsInfo(
|
data class FriendsInfo(
|
||||||
val friends: List<VkUser>,
|
val friends: List<VkUser>,
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
package com.meloda.app.fast.model
|
package dev.meloda.fast.model
|
||||||
|
|
||||||
sealed class InteractionType(val value: Int) {
|
sealed class InteractionType(val value: Int) {
|
||||||
data object Typing : InteractionType(1)
|
data object Typing : InteractionType(1)
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
package com.meloda.app.fast.model
|
package dev.meloda.fast.model
|
||||||
|
|
||||||
import com.meloda.app.fast.model.api.domain.VkMessage
|
import dev.meloda.fast.model.api.domain.VkMessage
|
||||||
|
|
||||||
sealed interface LongPollEvent {
|
sealed interface LongPollEvent {
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
package com.meloda.app.fast.model.api
|
package dev.meloda.fast.model.api
|
||||||
|
|
||||||
fun Boolean.asInt(): Int = if (this) 1 else 0
|
fun Boolean.asInt(): Int = if (this) 1 else 0
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user