更新
This commit is contained in:
109
composeApp/src/commonMain/kotlin/com/taskttl/ui/theme/Theme.kt
Normal file
109
composeApp/src/commonMain/kotlin/com/taskttl/ui/theme/Theme.kt
Normal file
@@ -0,0 +1,109 @@
|
||||
package com.taskttl.ui.theme
|
||||
|
||||
import androidx.compose.foundation.isSystemInDarkTheme
|
||||
import androidx.compose.material3.MaterialTheme
|
||||
import androidx.compose.material3.darkColorScheme
|
||||
import androidx.compose.material3.lightColorScheme
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.graphics.Color
|
||||
|
||||
/** 浅色方案 */
|
||||
private val LightColorScheme = lightColorScheme(
|
||||
primary = Color(0xFF6750A4),
|
||||
onPrimary = Color(0xFFFFFFFF),
|
||||
primaryContainer = Color(0xFFEADDFF),
|
||||
onPrimaryContainer = Color(0xFF21005D),
|
||||
secondary = Color(0xFF625B71),
|
||||
onSecondary = Color(0xFFFFFFFF),
|
||||
secondaryContainer = Color(0xFFE8DEF8),
|
||||
onSecondaryContainer = Color(0xFF1D192B),
|
||||
tertiary = Color(0xFF7D5260),
|
||||
onTertiary = Color(0xFFFFFFFF),
|
||||
tertiaryContainer = Color(0xFFFFD8E4),
|
||||
onTertiaryContainer = Color(0xFF31111D),
|
||||
error = Color(0xFFBA1A1A),
|
||||
onError = Color(0xFFFFFFFF),
|
||||
errorContainer = Color(0xFFFFDAD6),
|
||||
onErrorContainer = Color(0xFF410002),
|
||||
background = Color(0xFFFFFBFE),
|
||||
onBackground = Color(0xFF1C1B1F),
|
||||
surface = Color(0xFFFFFBFE),
|
||||
onSurface = Color(0xFF1C1B1F),
|
||||
surfaceVariant = Color(0xFFE7E0EC),
|
||||
onSurfaceVariant = Color(0xFF49454F),
|
||||
outline = Color(0xFF79747E),
|
||||
outlineVariant = Color(0xFFCAC4D0),
|
||||
scrim = Color(0xFF000000),
|
||||
inverseSurface = Color(0xFF313033),
|
||||
inverseOnSurface = Color(0xFFF4EFF4),
|
||||
inversePrimary = Color(0xFFD0BCFF),
|
||||
surfaceDim = Color(0xFFDDD8DD),
|
||||
surfaceBright = Color(0xFFFFFBFE),
|
||||
surfaceContainerLowest = Color(0xFFFFFFFF),
|
||||
surfaceContainerLow = Color(0xFFF7F2FA),
|
||||
surfaceContainer = Color(0xFFF1ECF4),
|
||||
surfaceContainerHigh = Color(0xFFECE6F0),
|
||||
surfaceContainerHighest = Color(0xFFE6E0E9)
|
||||
)
|
||||
|
||||
/** 深色配色方案 */
|
||||
private val DarkColorScheme = darkColorScheme(
|
||||
primary = Color(0xFFD0BCFF),
|
||||
onPrimary = Color(0xFF381E72),
|
||||
primaryContainer = Color(0xFF4F378B),
|
||||
onPrimaryContainer = Color(0xFFEADDFF),
|
||||
secondary = Color(0xFFCCC2DC),
|
||||
onSecondary = Color(0xFF332D41),
|
||||
secondaryContainer = Color(0xFF4A4458),
|
||||
onSecondaryContainer = Color(0xFFE8DEF8),
|
||||
tertiary = Color(0xFFEFB8C8),
|
||||
onTertiary = Color(0xFF492532),
|
||||
tertiaryContainer = Color(0xFF633B48),
|
||||
onTertiaryContainer = Color(0xFFFFD8E4),
|
||||
error = Color(0xFFFFB4AB),
|
||||
onError = Color(0xFF690005),
|
||||
errorContainer = Color(0xFF93000A),
|
||||
onErrorContainer = Color(0xFFFFDAD6),
|
||||
background = Color(0xFF10131C),
|
||||
onBackground = Color(0xFFE6E0E9),
|
||||
surface = Color(0xFF10131C),
|
||||
onSurface = Color(0xFFE6E0E9),
|
||||
surfaceVariant = Color(0xFF49454F),
|
||||
onSurfaceVariant = Color(0xFFCAC4D0),
|
||||
outline = Color(0xFF938F99),
|
||||
outlineVariant = Color(0xFF49454F),
|
||||
scrim = Color(0xFF000000),
|
||||
inverseSurface = Color(0xFFE6E0E9),
|
||||
inverseOnSurface = Color(0xFF313033),
|
||||
inversePrimary = Color(0xFF6750A4),
|
||||
surfaceDim = Color(0xFF10131C),
|
||||
surfaceBright = Color(0xFF383B42),
|
||||
surfaceContainerLowest = Color(0xFF0B0E17),
|
||||
surfaceContainerLow = Color(0xFF191C24),
|
||||
surfaceContainer = Color(0xFF1D2028),
|
||||
surfaceContainerHigh = Color(0xFF282A32),
|
||||
surfaceContainerHighest = Color(0xFF33353D)
|
||||
)
|
||||
|
||||
/**
|
||||
* 应用主题
|
||||
* @param [darkTheme] 黑暗主题
|
||||
* @param [content] 内容
|
||||
*/
|
||||
@Composable
|
||||
fun AppTheme(
|
||||
darkTheme: Boolean = isSystemInDarkTheme(),
|
||||
content: @Composable () -> Unit
|
||||
) {
|
||||
val colorScheme = if (darkTheme) {
|
||||
DarkColorScheme
|
||||
} else {
|
||||
LightColorScheme
|
||||
}
|
||||
|
||||
MaterialTheme(
|
||||
colorScheme = colorScheme,
|
||||
typography = mainTypography(),
|
||||
content = content
|
||||
)
|
||||
}
|
||||
Reference in New Issue
Block a user