Files
TaskTTL/composeApp/src/commonMain/kotlin/com/taskttl/data/state/SettingsState.kt
2025-10-15 15:03:16 +08:00

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()
}