forked from melod1n/fast-messenger
Release 0.1.7 (#136)
* Bump haze from 1.1.1 to 1.2.0 (#105) * Bump org.jetbrains.kotlinx:kotlinx-serialization-json from 1.7.3 to 1.8.0 (#104) * update gradle wrapper * Bump agp from 8.7.3 to 8.8.0 (#106) * Bump com.jraska.module.graph.assertion from 2.7.1 to 2.7.3 (#109) * Bump haze from 1.2.0 to 1.2.2 (#111) * Bump koin from 4.0.1 to 4.0.2 (#112) * little improvement * Bump kotlin from 2.1.0 to 2.1.10 (#113) * Bump androidx.compose:compose-bom from 2024.12.01 to 2025.02.00 (#115) * Bump androidx.navigation:navigation-compose from 2.8.5 to 2.8.7 (#119) * Bump haze from 1.2.2 to 1.3.1 (#118) * Bump ksp from 2.1.0-1.0.29 to 2.1.10-1.0.30 (#116) * Bump agp from 8.8.0 to 8.8.1 (#117) * Bump com.google.accompanist:accompanist-permissions (#121) * Rename the app's namespace and applicationId to `dev.meloda.fastvk`, and update the package name in `ACTION_MANAGE_UNKNOWN_APP_SOURCES` intent. Remove unnecessary `onLowMemory` method in the `OnlineService`. * Bump com.jraska.module.graph.assertion from 2.7.3 to 2.8.0 (#126) * Bump ksp from 2.1.10-1.0.30 to 2.1.10-1.0.31 (#125) * Bump haze from 1.3.1 to 1.4.0 (#124) * Bump agp from 8.8.1 to 8.8.2 (#123) * Bump androidx.navigation:navigation-compose from 2.8.7 to 2.8.8 (#122) * Bump haze from 1.4.0 to 1.5.0 (#128) * Bump agp from 8.8.2 to 8.9.0 (#127) * Bump androidx.navigation:navigation-compose from 2.8.8 to 2.8.9 (#130) * Bump androidx.compose:compose-bom from 2025.02.00 to 2025.03.00 (#129) * revert agp version to 8.8.2 * fix issues with package names * Bump haze from 1.5.0 to 1.5.1 (#133) * Bump com.google.guava:guava from 33.4.0-jre to 33.4.5-jre (#132) * russian translations * fixes and improvements --------- Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
@@ -86,7 +86,7 @@ object AndroidUtils {
|
||||
action = if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O) {
|
||||
Settings.ACTION_SECURITY_SETTINGS
|
||||
} else {
|
||||
data = Uri.parse("package:dev.meloda.fast")
|
||||
data = Uri.parse("package:dev.meloda.fastvk")
|
||||
Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES
|
||||
}
|
||||
})
|
||||
|
||||
@@ -6,4 +6,6 @@ import androidx.compose.runtime.Immutable
|
||||
sealed class BaseError {
|
||||
|
||||
data object SessionExpired : BaseError()
|
||||
|
||||
data class SimpleError(val message: String) : BaseError()
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package dev.meloda.fast.model.api.data
|
||||
|
||||
import dev.meloda.fast.model.api.domain.VkVideoDomain
|
||||
import com.squareup.moshi.JsonClass
|
||||
import dev.meloda.fast.model.api.domain.VkVideoDomain
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
data class VkVideoData(
|
||||
@@ -12,7 +12,7 @@ data class VkVideoData(
|
||||
val duration: Int,
|
||||
val date: Int,
|
||||
val comments: Int?,
|
||||
val description: String,
|
||||
val description: String?,
|
||||
val player: String?,
|
||||
val added: Int?,
|
||||
val type: String,
|
||||
@@ -20,9 +20,9 @@ data class VkVideoData(
|
||||
val access_key: String?,
|
||||
val owner_id: Int,
|
||||
val is_favorite: Boolean?,
|
||||
val image: List<Image>,
|
||||
val image: List<Image>?,
|
||||
val first_frame: List<FirstFrame>?,
|
||||
val files: File?,
|
||||
val files: File?
|
||||
) : VkAttachmentData {
|
||||
|
||||
@JsonClass(generateAdapter = true)
|
||||
@@ -67,7 +67,7 @@ data class VkVideoData(
|
||||
fun toDomain() = VkVideoDomain(
|
||||
id = id,
|
||||
ownerId = owner_id,
|
||||
images = image.map { it.asVideoImage() },
|
||||
images = image.orEmpty().map { it.asVideoImage() },
|
||||
firstFrames = first_frame,
|
||||
accessKey = access_key,
|
||||
title = title
|
||||
|
||||
@@ -46,8 +46,13 @@ class ResponseConverterFactory(private val converter: JsonConverter) : Converter
|
||||
return successModel
|
||||
},
|
||||
onFailure = { failure ->
|
||||
if(failure is JsonDataException) {
|
||||
throw failure
|
||||
if (failure is JsonDataException) {
|
||||
throw ApiException(
|
||||
RestApiError(
|
||||
errorCode = -1,
|
||||
errorMsg = failure.message.orEmpty()
|
||||
)
|
||||
)
|
||||
}
|
||||
|
||||
val isUnit = successType == Unit::class.java
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package dev.meloda.fast.network
|
||||
|
||||
enum class VkErrorCode(val code: Int) {
|
||||
WTF(-1),
|
||||
UNKNOWN_ERROR(1),
|
||||
APP_DISABLED(2),
|
||||
UNKNOWN_METHOD(3),
|
||||
|
||||
@@ -6,7 +6,6 @@ import com.slack.eithernet.integration.retrofit.ApiResultCallAdapterFactory
|
||||
import com.slack.eithernet.integration.retrofit.ApiResultConverterFactory
|
||||
import com.squareup.moshi.Moshi
|
||||
import dev.meloda.fast.common.AppConstants
|
||||
import dev.meloda.fast.common.model.LogLevel
|
||||
import dev.meloda.fast.datastore.AppSettings
|
||||
import dev.meloda.fast.network.JsonConverter
|
||||
import dev.meloda.fast.network.MoshiConverter
|
||||
@@ -57,12 +56,8 @@ val networkModule = module {
|
||||
.followSslRedirects(true)
|
||||
.addInterceptor(
|
||||
HttpLoggingInterceptor().apply {
|
||||
level = when (AppSettings.Debug.networkLogLevel) {
|
||||
LogLevel.NONE -> HttpLoggingInterceptor.Level.NONE
|
||||
LogLevel.BASIC -> HttpLoggingInterceptor.Level.BASIC
|
||||
LogLevel.HEADERS -> HttpLoggingInterceptor.Level.HEADERS
|
||||
LogLevel.BODY -> HttpLoggingInterceptor.Level.BODY
|
||||
}
|
||||
level =
|
||||
HttpLoggingInterceptor.Level.entries[AppSettings.Debug.networkLogLevel.ordinal]
|
||||
}
|
||||
)
|
||||
.build()
|
||||
|
||||
@@ -5,6 +5,7 @@ import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.Spacer
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.foundation.layout.height
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.material3.Button
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.Text
|
||||
@@ -22,7 +23,9 @@ fun ErrorView(
|
||||
onButtonClick: (() -> Unit)? = null,
|
||||
) {
|
||||
Column(
|
||||
modifier = modifier.fillMaxSize(),
|
||||
modifier = modifier
|
||||
.fillMaxSize()
|
||||
.padding(horizontal = 16.dp),
|
||||
verticalArrangement = Arrangement.Center,
|
||||
horizontalAlignment = Alignment.CenterHorizontally
|
||||
) {
|
||||
|
||||
@@ -133,6 +133,7 @@
|
||||
<string name="message_attachment_story_your_story">Ваша история</string>
|
||||
<string name="settings_dynamic_colors">Динамические цвета</string>
|
||||
<string name="settings_dynamic_colors_description">Цвета для приложения будут извлечены из ваших обоев на главном экране</string>
|
||||
<string name="settings_appearance_use_system_font_title">Использовать системный шрифт</string>
|
||||
<string name="settings_application_language">Язык приложения</string>
|
||||
<string name="settings_application_language_value">Текущий: %1$s</string>
|
||||
<string name="language_system">Системный</string>
|
||||
@@ -177,6 +178,7 @@
|
||||
<string name="settings_general_title">Основное</string>
|
||||
<string name="settings_general_contact_names_title">Использовать имена контактов</string>
|
||||
<string name="settings_general_contact_names_summary">Приложение будет использовать доступные имена контактов для пользователей</string>
|
||||
<string name="settings_general_enable_haptic_title">Включить тактильную отдачу</string>
|
||||
<string name="settings_appearance_title">Внешний вид</string>
|
||||
<string name="settings_appearance_multiline_title">Многострочные заголовки и сообщения</string>
|
||||
<string name="settings_appearance_multiline_summary">Заголовок чата и текст сообщения смогут занимать несколько строчек</string>
|
||||
@@ -184,9 +186,11 @@
|
||||
<string name="settings_features_fast_text_title">Fast текст</string>
|
||||
<string name="settings_features_long_poll_in_background_title">LongPoll в фоне</string>
|
||||
<string name="settings_features_long_poll_in_background_summary">Ваши сообщения будут обновляться, даже если приложение находится в фоне</string>
|
||||
<string name="settings_experimental_more_animations_summary">Использовать анимации везде, где возможно</string>
|
||||
<string name="settings_activity_title">Активность</string>
|
||||
<string name="settings_activity_send_online_title">Быть «в сети»</string>
|
||||
<string name="settings_activity_send_online_summary">Статус «в сети» будет отправляться каждые 5 минут</string>
|
||||
<string name="settings_experimental_title">Экспериментальные - ОЧЕНЬ нестабильные</string>
|
||||
<string name="settings_debug_title">Отладка</string>
|
||||
<string name="action_disable">Отключить</string>
|
||||
<string name="background_long_poll_rationale_text">Приложение не сможет обновлять сообщения в фоне без доступа к уведомлениям</string>
|
||||
@@ -198,4 +202,14 @@
|
||||
<string name="notification_channel_no_category_description">Уведомления без категории</string>
|
||||
<string name="notification_channel_long_polling_service_name">Сервис обновления сообщений</string>
|
||||
<string name="notification_channel_long_polling_service_description">Уведомления сервиса обновлений сообщений</string>
|
||||
<string name="settings_general_show_emoji_button_title">Показывать кнопку эмоджи</string>
|
||||
<string name="settings_general_show_emoji_button_summary">Показывать кнопку эмоджи на панели чата</string>
|
||||
<string name="settings_features_show_time_in_action_messages_title">Показывать время в сервисных сообщениях</string>
|
||||
<string name="settings_experimental_use_blur_title">Использовать размытие</string>
|
||||
<string name="settings_experimental_use_blur_summary">Добавлять размытие везде, где возможно.\\nРаботает только с 12 версии Android</string>
|
||||
<string name="settings_experimental_more_animations_title">Больше анимаций</string>
|
||||
<string name="warning_confirmation">Подтверждение</string>
|
||||
<string name="captcha_exit_warning">Вы уверены? Процесс ввода капчи будет отменён</string>
|
||||
<string name="validation_exit_warning">Вы уверены? Процесс ввода кода-подтверждения будет отменён</string>
|
||||
<string name="action_authorize">Авторизоваться</string>
|
||||
</resources>
|
||||
|
||||
@@ -204,6 +204,8 @@
|
||||
<string name="settings_dynamic_colors">Dynamic colors</string>
|
||||
<string name="settings_dynamic_colors_description">The colors for the app will be extracted from your home screen wallpaper</string>
|
||||
|
||||
<string name="settings_appearance_use_system_font_title">Use system font</string>
|
||||
|
||||
<string name="settings_application_language">Application Language</string>
|
||||
<string name="settings_application_language_value">Current: %1$s</string>
|
||||
|
||||
@@ -235,6 +237,9 @@
|
||||
<string name="settings_general_title">General</string>
|
||||
<string name="settings_general_contact_names_title">Use contact names</string>
|
||||
<string name="settings_general_contact_names_summary">App will use available contact names for users</string>
|
||||
<string name="settings_general_show_emoji_button_title">Show emoji button</string>
|
||||
<string name="settings_general_show_emoji_button_summary">Show emoji button in chat panel</string>
|
||||
<string name="settings_general_enable_haptic_title">Enable haptic</string>
|
||||
<string name="settings_appearance_title">Appearance</string>
|
||||
<string name="settings_appearance_multiline_title">Multiline titles and messages</string>
|
||||
<string name="settings_appearance_multiline_summary">The title of the conversation and the text of the message can take up multiple lines</string>
|
||||
@@ -242,9 +247,18 @@
|
||||
<string name="settings_features_fast_text_title">Fast text</string>
|
||||
<string name="settings_features_long_poll_in_background_title">LongPoll in background</string>
|
||||
<string name="settings_features_long_poll_in_background_summary">Your messages will be updating even when app is not on the screen</string>
|
||||
<string name="settings_features_show_time_in_action_messages_title">Show time in action messages</string>
|
||||
<string name="settings_experimental_use_blur_title">Use blur</string>
|
||||
<string name="settings_experimental_use_blur_summary">Adds blur wherever possible.\nWorks on android 12 and newer</string>
|
||||
<string name="settings_experimental_more_animations_title">More animations</string>
|
||||
<string name="settings_experimental_more_animations_summary">Use animations wherever possible</string>
|
||||
|
||||
<string name="settings_activity_title">Activity</string>
|
||||
<string name="settings_activity_send_online_title">Send online status</string>
|
||||
<string name="settings_activity_send_online_summary">Online status will be sent every five minutes</string>
|
||||
|
||||
<string name="settings_experimental_title">Experimental - VERY unstable</string>
|
||||
|
||||
<string name="settings_debug_title">Debug</string>
|
||||
<string name="background_long_poll_rationale_text">The app won\'t be able to update messages in the background without access to notifications</string>
|
||||
<string name="action_disable">Disable</string>
|
||||
|
||||
Reference in New Issue
Block a user