144 lines
3.8 KiB
Markdown
144 lines
3.8 KiB
Markdown
Color:
|
|
package ru.myitschool.work.ui.theme
|
|
|
|
import androidx.compose.ui.graphics.Color
|
|
|
|
val PrimaryLight = Color(0xFF003E2F)
|
|
|
|
val SecondaryLight = Color(0xFF243B32)
|
|
|
|
val TertiaryLight = Color(0xFF143A4B)
|
|
|
|
val OnPrimaryLight = Color(0xFFFFFFFF)
|
|
|
|
val OnSecondaryLight = Color(0xFFFFFFFF)
|
|
|
|
val OnTertiaryLight = Color(0xFFFFFFFF)
|
|
|
|
val PrimaryContainerLight = Color(0xFF2B7A62)
|
|
|
|
val SecondaryContainerLight = Color(0xFF5A7268)
|
|
|
|
val TertiaryContainerLight = Color(0xFF4E7285)
|
|
|
|
val OnPrimaryContainerLight = Color(0xFFFFFFFF)
|
|
|
|
val OnSecondaryContainerLight = Color(0xFFFFFFFF)
|
|
|
|
val OnTertiaryContainerLight = Color(0xFFFFFFFF)
|
|
|
|
val SurfaceLight = Color(0xFFF5FBF6)
|
|
|
|
val OnSurfaceLight = Color(0xFF0C1210)
|
|
|
|
val ErrorLight = Color(0xFF740006)
|
|
|
|
val ErrorContainerLight = Color(0xFFCF2C27)
|
|
|
|
val PrimaryDark = Color(0xFF9EECCF)
|
|
|
|
val SecondaryDark = Color(0xFFC8E2D6)
|
|
|
|
val TertiaryDark = Color(0xFFBDE2F8)
|
|
|
|
val OnPrimaryDark = Color(0xFF002C20)
|
|
|
|
val OnSecondaryDark = Color(0xFF132A22)
|
|
|
|
val OnTertiaryDark = Color(0xFF002939)
|
|
|
|
val PrimaryContainerDark = Color(0xFF529F85)
|
|
|
|
val SecondaryContainerDark = Color(0xFF7D968B)
|
|
|
|
val TertiaryContainerDark = Color(0xFF7295AA)
|
|
|
|
val OnPrimaryContainerDark = Color(0xFF000000)
|
|
|
|
val OnSecondaryContainerDark = Color(0xFF000000)
|
|
|
|
val OnTertiaryContainerDark = Color(0xFF000000)
|
|
|
|
val SurfaceDark = Color(0xFF404643)
|
|
|
|
val OnSurfaceDark = Color(0xFFFFFFFF)
|
|
|
|
val ErrorDark = Color(0xFFFFD2CC)
|
|
|
|
val ErrorContainerDark = Color(0xFFFF5449)
|
|
|
|
Theme:
|
|
|
|
package ru.myitschool.work.ui.theme
|
|
|
|
import android.os.Build
|
|
import androidx.compose.foundation.isSystemInDarkTheme
|
|
import androidx.compose.material3.MaterialTheme
|
|
import androidx.compose.material3.darkColorScheme
|
|
import androidx.compose.material3.dynamicDarkColorScheme
|
|
import androidx.compose.material3.dynamicLightColorScheme
|
|
import androidx.compose.material3.lightColorScheme
|
|
import androidx.compose.runtime.Composable
|
|
import androidx.compose.ui.platform.LocalContext
|
|
|
|
private val DarkColorScheme = darkColorScheme(
|
|
primary = PrimaryDark,
|
|
secondary = SecondaryDark,
|
|
tertiary = TertiaryDark,
|
|
onPrimary = OnPrimaryDark,
|
|
onSecondary = OnSecondaryDark,
|
|
onTertiary = OnTertiaryDark,
|
|
error = ErrorDark,
|
|
errorContainer = ErrorContainerDark,
|
|
surface = SurfaceDark,
|
|
onSurface = OnSurfaceDark,
|
|
primaryContainer = PrimaryContainerDark,
|
|
secondaryContainer = SecondaryContainerDark,
|
|
tertiaryContainer = TertiaryContainerDark,
|
|
onPrimaryContainer = OnPrimaryContainerDark,
|
|
onSecondaryContainer = OnSecondaryContainerDark,
|
|
onTertiaryContainer = OnTertiaryContainerDark,
|
|
)
|
|
|
|
private val LightColorScheme = lightColorScheme(
|
|
primary = PrimaryLight,
|
|
secondary = SecondaryLight,
|
|
tertiary = TertiaryLight,
|
|
onPrimary = OnPrimaryLight,
|
|
onSecondary = OnSecondaryLight,
|
|
onTertiary = OnTertiaryLight,
|
|
error = ErrorLight,
|
|
errorContainer = ErrorContainerLight,
|
|
surface = SurfaceLight,
|
|
onSurface = OnSurfaceLight,
|
|
primaryContainer = PrimaryContainerLight,
|
|
secondaryContainer = SecondaryContainerLight,
|
|
tertiaryContainer = TertiaryContainerLight,
|
|
onPrimaryContainer = OnPrimaryContainerLight,
|
|
onSecondaryContainer = OnSecondaryContainerLight,
|
|
onTertiaryContainer = OnTertiaryContainerLight,
|
|
)
|
|
|
|
@Composable
|
|
fun WorkTheme(
|
|
darkTheme: Boolean = isSystemInDarkTheme(),
|
|
// Dynamic color is available on Android 12+
|
|
dynamicColor: Boolean = true,
|
|
content: @Composable () -> Unit
|
|
) {
|
|
val colorScheme = when {
|
|
dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> {
|
|
val context = LocalContext.current
|
|
if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context)
|
|
}
|
|
|
|
darkTheme -> DarkColorScheme
|
|
else -> LightColorScheme
|
|
}
|
|
|
|
MaterialTheme(
|
|
colorScheme = colorScheme,
|
|
typography = Typography,
|
|
content = content
|
|
)
|
|
} |