66 lines
1.3 KiB
Kotlin
66 lines
1.3 KiB
Kotlin
package com.taskttl.data.state
|
|
|
|
import com.taskttl.core.viewmodel.BaseUiState
|
|
|
|
/**
|
|
* 设置状态
|
|
* @author DevTTL
|
|
* @date 2025/10/14
|
|
* @constructor 创建[SettingsState]
|
|
* @param [isLoading] 正在加载
|
|
* @param [error] 错误
|
|
*/
|
|
data class SettingsState(
|
|
override val isLoading: Boolean = false,
|
|
override val isProcessing: Boolean = false,
|
|
override val error: String? = null,
|
|
) : BaseUiState()
|
|
|
|
/**
|
|
* 设置意图
|
|
* @author DevTTL
|
|
* @date 2025/10/14
|
|
* @constructor 创建[SettingsIntent]
|
|
*/
|
|
sealed class SettingsIntent {
|
|
/**
|
|
* 打开应用评分
|
|
* @author DevTTL
|
|
* @date 2025/10/14
|
|
*/
|
|
object OpenAppRating : SettingsIntent()
|
|
|
|
/**
|
|
* 打开网址
|
|
* @author DevTTL
|
|
* @date 2025/10/14
|
|
* @constructor 创建[OpenUrl]
|
|
* @param [url] 网址
|
|
*/
|
|
class OpenUrl(val url: String) : SettingsIntent()
|
|
}
|
|
|
|
|
|
/**
|
|
* 设置效果
|
|
* @author DevTTL
|
|
* @date 2025/10/14
|
|
* @constructor 创建[SettingsEffect]
|
|
*/
|
|
sealed class SettingsEffect {
|
|
/**
|
|
* 导航返回
|
|
* @author admin
|
|
* @date 2025/10/12
|
|
*/
|
|
object NavigateBack : SettingsEffect()
|
|
|
|
/**
|
|
* 显示消息
|
|
* @author admin
|
|
* @date 2025/10/12
|
|
* @constructor 创建[ShowMessage]
|
|
* @param [message] 消息
|
|
*/
|
|
data class ShowMessage(val message: String) : SettingsEffect()
|
|
} |