update colors, use new LargeFlexibleTopAppBar

This commit is contained in:
2026-08-30 14:29:18 +03:00
parent 63116b4a08
commit 71d611f936
7 changed files with 125 additions and 202 deletions
@@ -3,9 +3,10 @@ package ru.shadowsparky.vbox.shared.presentation
import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.PaddingValues
import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import ru.shadowsparky.ui.AppScaffold import ru.shadowsparky.ui.AppScaffold
import ru.shadowsparky.ui.components.TopAppBar import ru.shadowsparky.ui.components.LargeFlexibleTopAppBar
import ru.shadowsparky.vbox.shared.presentation.chat.ChatScreen import ru.shadowsparky.vbox.shared.presentation.chat.ChatScreen
import ru.shadowsparky.vbox.shared.presentation.list.VideoContent import ru.shadowsparky.vbox.shared.presentation.list.VideoContent
import ru.shadowsparky.vbox.shared.presentation.nav.Child import ru.shadowsparky.vbox.shared.presentation.nav.Child
@@ -39,7 +40,8 @@ fun MainScreenScaffold(
appBar = { appBar() }, appBar = { appBar() },
currentRoute = route, currentRoute = route,
onSelectNavigation = { onNavigate(it) }, onSelectNavigation = { onNavigate(it) },
navigationEntries = createNavigationList() navigationEntries = createNavigationList(),
scrollBehavior = TopAppBarDefaults.exitUntilCollapsedScrollBehavior()
) { padding -> content(padding) } ) { padding -> content(padding) }
} }
@@ -49,7 +51,9 @@ private fun MainScreenInternal(route: Route, child: Child, onNavigate: (Route) -
val navList = createNavigationList() val navList = createNavigationList()
MainScreenScaffold( MainScreenScaffold(
appBar = { appBar = {
navList.findTitle(route)?.let { title -> TopAppBar(title = { Text(title) }) } navList.findTitle(route)?.let { title ->
LargeFlexibleTopAppBar(title = { Text(title) })
}
}, },
route = route, route = route,
onNavigate = onNavigate, onNavigate = onNavigate,
@@ -30,8 +30,8 @@ import org.jetbrains.compose.resources.painterResource
import org.jetbrains.compose.resources.stringResource import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.ui.components.AlertContent import ru.shadowsparky.ui.components.AlertContent
import ru.shadowsparky.ui.components.IconButton import ru.shadowsparky.ui.components.IconButton
import ru.shadowsparky.ui.components.LargeFlexibleTopAppBar
import ru.shadowsparky.ui.components.LazyColumn import ru.shadowsparky.ui.components.LazyColumn
import ru.shadowsparky.ui.components.TopAppBar
import ru.shadowsparky.vbox.shared.domain.tag.TagInfo import ru.shadowsparky.vbox.shared.domain.tag.TagInfo
import ru.shadowsparky.vbox.shared.presentation.MainScreenScaffold import ru.shadowsparky.vbox.shared.presentation.MainScreenScaffold
import ru.shadowsparky.vbox.shared.presentation.list.VideoScreenContent import ru.shadowsparky.vbox.shared.presentation.list.VideoScreenContent
@@ -44,7 +44,7 @@ fun SavedMovieScreen(comp: SavedMovieComponent, route: Route, onNavigate: (Route
var filterBottomSheetVisible by rememberSaveable { mutableStateOf(false) } var filterBottomSheetVisible by rememberSaveable { mutableStateOf(false) }
MainScreenScaffold( MainScreenScaffold(
appBar = { appBar = {
TopAppBar( LargeFlexibleTopAppBar(
title = { Text(stringResource(Res.string.saved_movies)) }, title = { Text(stringResource(Res.string.saved_movies)) },
actions = { actions = {
IconButton( IconButton(
@@ -19,7 +19,6 @@ import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.OutlinedButton import androidx.compose.material3.OutlinedButton
import androidx.compose.material3.OutlinedTextField import androidx.compose.material3.OutlinedTextField
import androidx.compose.material3.Text import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.MutableState import androidx.compose.runtime.MutableState
@@ -29,7 +28,6 @@ import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember import androidx.compose.runtime.remember
import androidx.compose.runtime.saveable.rememberSaveable import androidx.compose.runtime.saveable.rememberSaveable
import androidx.compose.runtime.setValue import androidx.compose.runtime.setValue
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.text.input.ImeAction import androidx.compose.ui.text.input.ImeAction
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@@ -38,6 +36,7 @@ import org.jetbrains.compose.resources.stringResource
import ru.shadowsparky.ui.AppScaffold import ru.shadowsparky.ui.AppScaffold
import ru.shadowsparky.ui.components.BackButton import ru.shadowsparky.ui.components.BackButton
import ru.shadowsparky.ui.components.ErrorAlert import ru.shadowsparky.ui.components.ErrorAlert
import ru.shadowsparky.ui.components.LargeFlexibleTopAppBar
import ru.shadowsparky.ui.components.Loading import ru.shadowsparky.ui.components.Loading
import ru.shadowsparky.ui.components.PasswordTextField import ru.shadowsparky.ui.components.PasswordTextField
import ru.shadowsparky.vbox.shared.domain.model.EmptyLoginException import ru.shadowsparky.vbox.shared.domain.model.EmptyLoginException
@@ -95,22 +94,19 @@ fun BaseLogin(
} }
AppScaffold( AppScaffold(
appBar = { appBar = {
TopAppBar( LargeFlexibleTopAppBar(
title = { Text(title) }, title = { Text(title) },
navigationIcon = { navigationIcon = { doBack?.let { BackButton { it() } } }
doBack?.let { BackButton { it() } }
}
) )
}, },
content = { content = {
if (state is AuthState.Loading) { if (state is AuthState.Loading) {
Loading() Loading()
} else { } else {
Box(Modifier.padding(it).fillMaxSize()) { Box(
Column( Modifier.fillMaxSize().padding(it)
horizontalAlignment = Alignment.CenterHorizontally, ) {
modifier = Modifier.padding(8.dp) Column(modifier = Modifier.padding(8.dp)) {
) {
if (errorInfo != null && state is AuthState.Error) { if (errorInfo != null && state is AuthState.Error) {
ErrorAlert( ErrorAlert(
errorInfo!!.toMessage(), errorInfo!!.toMessage(),
@@ -14,6 +14,7 @@ import androidx.compose.material3.adaptive.navigationsuite.NavigationSuiteType
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.runtime.CompositionLocalProvider
import androidx.compose.runtime.Immutable import androidx.compose.runtime.Immutable
import androidx.compose.runtime.compositionLocalOf
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.painter.Painter import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.input.nestedscroll.nestedScroll import androidx.compose.ui.input.nestedscroll.nestedScroll
@@ -26,6 +27,9 @@ data class NavigationEntry<out T : Route>(
val painter: Painter val painter: Painter
) )
@OptIn(ExperimentalMaterial3Api::class)
internal val LocalTopAppBarScrollBehavior = compositionLocalOf<TopAppBarScrollBehavior?> { null }
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable
fun AppScaffold( fun AppScaffold(
@@ -65,7 +69,10 @@ fun <T : Route> AppScaffold(
else -> NavigationSuiteScaffoldDefaults.navigationSuiteType(currentWindowAdaptiveInfoV2()) else -> NavigationSuiteScaffoldDefaults.navigationSuiteType(currentWindowAdaptiveInfoV2())
} }
val blurState = rememberBlurState() val blurState = rememberBlurState()
CompositionLocalProvider(LocalBlurState provides blurState) { CompositionLocalProvider(
LocalBlurState provides blurState,
LocalTopAppBarScrollBehavior provides scrollBehavior
) {
if (navigationEntries?.isNotEmpty() == true) { if (navigationEntries?.isNotEmpty() == true) {
when (navigationSuiteType) { when (navigationSuiteType) {
NavigationSuiteType.ShortNavigationBarCompact, NavigationSuiteType.ShortNavigationBarCompact,
@@ -0,0 +1,50 @@
package ru.shadowsparky.ui.components
import androidx.compose.foundation.layout.RowScope
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ExperimentalMaterial3ExpressiveApi
import androidx.compose.material3.TopAppBarColors
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.material3.TopAppBarScrollBehavior
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.Dp
import ru.shadowsparky.ui.LocalTopAppBarScrollBehavior
import ru.shadowsparky.ui.blurEffect
@OptIn(ExperimentalMaterial3Api::class, ExperimentalMaterial3ExpressiveApi::class)
@Composable
fun LargeFlexibleTopAppBar(
title: @Composable () -> Unit,
modifier: Modifier = Modifier,
subtitle: (@Composable () -> Unit)? = null,
navigationIcon: @Composable () -> Unit = {},
actions: @Composable RowScope.() -> Unit = {},
titleHorizontalAlignment: Alignment.Horizontal = Alignment.Start,
collapsedHeight: Dp = TopAppBarDefaults.LargeAppBarCollapsedHeight,
expandedHeight: Dp =
if (subtitle != null) {
TopAppBarDefaults.LargeFlexibleAppBarWithSubtitleExpandedHeight
} else {
TopAppBarDefaults.LargeFlexibleAppBarWithoutSubtitleExpandedHeight
},
windowInsets: WindowInsets = TopAppBarDefaults.windowInsets,
colors: TopAppBarColors = topAppBarColors(),
scrollBehavior: TopAppBarScrollBehavior? = LocalTopAppBarScrollBehavior.current,
) {
androidx.compose.material3.LargeFlexibleTopAppBar(
title = title,
modifier = modifier.blurEffect(),
subtitle = subtitle,
navigationIcon = navigationIcon,
actions = actions,
titleHorizontalAlignment = titleHorizontalAlignment,
collapsedHeight = collapsedHeight,
expandedHeight = expandedHeight,
windowInsets = windowInsets,
colors = colors,
scrollBehavior = scrollBehavior
)
}
@@ -42,7 +42,7 @@ fun TopAppBar(
} }
@Composable @Composable
private fun topAppBarColors(): TopAppBarColors { internal fun topAppBarColors(): TopAppBarColors {
return if (isBlurEnabled()) { return if (isBlurEnabled()) {
TopAppBarDefaults.topAppBarColors( TopAppBarDefaults.topAppBarColors(
Color.Transparent, Color.Transparent,
@@ -2,26 +2,30 @@ package ru.shadowsparky.ui.theme
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
val primaryLight = Color(0xFF465D91) val primaryLight = Color(0xFF1E4FD9)
val onPrimaryLight = Color(0xFFFFFFFF) val onPrimaryLight = Color(0xFFFFFFFF)
val primaryContainerLight = Color(0xFFD9E2FF) val primaryContainerLight = Color(0xFFDCE2FF)
val onPrimaryContainerLight = Color(0xFF2D4678) val onPrimaryContainerLight = Color(0xFF001543)
val secondaryLight = Color(0xFF575E71)
val secondaryLight = Color(0xFF405A93)
val onSecondaryLight = Color(0xFFFFFFFF) val onSecondaryLight = Color(0xFFFFFFFF)
val secondaryContainerLight = Color(0xFFDBE2F9) val secondaryContainerLight = Color(0xFFDCE2FF)
val onSecondaryContainerLight = Color(0xFF3F4759) val onSecondaryContainerLight = Color(0xFF001543)
val tertiaryLight = Color(0xFF725573)
val tertiaryLight = Color(0xFF5353A7)
val onTertiaryLight = Color(0xFFFFFFFF) val onTertiaryLight = Color(0xFFFFFFFF)
val tertiaryContainerLight = Color(0xFFFCD7FB) val tertiaryContainerLight = Color(0xFFE2E0FF)
val onTertiaryContainerLight = Color(0xFF593E5A) val onTertiaryContainerLight = Color(0xFF0C0664)
val errorLight = Color(0xFFBA1A1A) val errorLight = Color(0xFFBA1A1A)
val onErrorLight = Color(0xFFFFFFFF) val onErrorLight = Color(0xFFFFFFFF)
val errorContainerLight = Color(0xFFFFDAD6) val errorContainerLight = Color(0xFFFFDAD6)
val onErrorContainerLight = Color(0xFF93000A) val onErrorContainerLight = Color(0xFF93000A)
val backgroundLight = Color(0xFFFAF9FF)
val onBackgroundLight = Color(0xFF1A1B20) val backgroundLight = Color(0xFFF8F9FF)
val surfaceLight = Color(0xFFFAF9FF) val onBackgroundLight = Color(0xFF151B2C)
val onSurfaceLight = Color(0xFF1A1B20) val surfaceLight = Color(0xFFF8F9FF)
val onSurfaceLight = Color(0xFF151B2C)
val surfaceVariantLight = Color(0xFFE1E2EC) val surfaceVariantLight = Color(0xFFE1E2EC)
val onSurfaceVariantLight = Color(0xFF44464F) val onSurfaceVariantLight = Color(0xFF44464F)
val outlineLight = Color(0xFF757780) val outlineLight = Color(0xFF757780)
@@ -30,190 +34,52 @@ val scrimLight = Color(0xFF000000)
val inverseSurfaceLight = Color(0xFF2F3036) val inverseSurfaceLight = Color(0xFF2F3036)
val inverseOnSurfaceLight = Color(0xFFF1F0F7) val inverseOnSurfaceLight = Color(0xFFF1F0F7)
val inversePrimaryLight = Color(0xFFAFC6FF) val inversePrimaryLight = Color(0xFFAFC6FF)
val surfaceDimLight = Color(0xFFDAD9E0) val surfaceDimLight = Color(0xFFD9DAE2)
val surfaceBrightLight = Color(0xFFFAF9FF) val surfaceBrightLight = Color(0xFFF8F9FF)
val surfaceContainerLowestLight = Color(0xFFFFFFFF) val surfaceContainerLowestLight = Color(0xFFFFFFFF)
val surfaceContainerLowLight = Color(0xFFF3F3FA) val surfaceContainerLowLight = Color(0xFFF2F3FA)
val surfaceContainerLight = Color(0xFFEEEDF4) val surfaceContainerLight = Color(0xFFECEEF4)
val surfaceContainerHighLight = Color(0xFFE8E7EF) val surfaceContainerHighLight = Color(0xFFE6E8EE)
val surfaceContainerHighestLight = Color(0xFFE2E2E9) val surfaceContainerHighestLight = Color(0xFFE0E2E9)
val primaryLightMediumContrast = Color(0xFF1A3566) val primaryDark = Color(0xFF3F75FF)
val onPrimaryLightMediumContrast = Color(0xFFFFFFFF) val onPrimaryDark = Color(0xFF002984)
val primaryContainerLightMediumContrast = Color(0xFF556CA1) val primaryContainerDark = Color(0xFF003EBD)
val onPrimaryContainerLightMediumContrast = Color(0xFFFFFFFF) val onPrimaryContainerDark = Color(0xFFE1E6FF)
val secondaryLightMediumContrast = Color(0xFF2F3648)
val onSecondaryLightMediumContrast = Color(0xFFFFFFFF)
val secondaryContainerLightMediumContrast = Color(0xFF666D80)
val onSecondaryContainerLightMediumContrast = Color(0xFFFFFFFF)
val tertiaryLightMediumContrast = Color(0xFF472D49)
val onTertiaryLightMediumContrast = Color(0xFFFFFFFF)
val tertiaryContainerLightMediumContrast = Color(0xFF816382)
val onTertiaryContainerLightMediumContrast = Color(0xFFFFFFFF)
val errorLightMediumContrast = Color(0xFF740006)
val onErrorLightMediumContrast = Color(0xFFFFFFFF)
val errorContainerLightMediumContrast = Color(0xFFCF2C27)
val onErrorContainerLightMediumContrast = Color(0xFFFFFFFF)
val backgroundLightMediumContrast = Color(0xFFFAF9FF)
val onBackgroundLightMediumContrast = Color(0xFF1A1B20)
val surfaceLightMediumContrast = Color(0xFFFAF9FF)
val onSurfaceLightMediumContrast = Color(0xFF0F1116)
val surfaceVariantLightMediumContrast = Color(0xFFE1E2EC)
val onSurfaceVariantLightMediumContrast = Color(0xFF34363E)
val outlineLightMediumContrast = Color(0xFF50525A)
val outlineVariantLightMediumContrast = Color(0xFF6B6D75)
val scrimLightMediumContrast = Color(0xFF000000)
val inverseSurfaceLightMediumContrast = Color(0xFF2F3036)
val inverseOnSurfaceLightMediumContrast = Color(0xFFF1F0F7)
val inversePrimaryLightMediumContrast = Color(0xFFAFC6FF)
val surfaceDimLightMediumContrast = Color(0xFFC6C6CD)
val surfaceBrightLightMediumContrast = Color(0xFFFAF9FF)
val surfaceContainerLowestLightMediumContrast = Color(0xFFFFFFFF)
val surfaceContainerLowLightMediumContrast = Color(0xFFF3F3FA)
val surfaceContainerLightMediumContrast = Color(0xFFE8E7EF)
val surfaceContainerHighLightMediumContrast = Color(0xFFDCDCE3)
val surfaceContainerHighestLightMediumContrast = Color(0xFFD1D1D8)
val primaryLightHighContrast = Color(0xFF0D2A5B) val secondaryDark = Color(0xFF709CFF)
val onPrimaryLightHighContrast = Color(0xFFFFFFFF) val onSecondaryDark = Color(0xFF002D71)
val primaryContainerLightHighContrast = Color(0xFF30487B) val secondaryContainerDark = Color(0xFF1A438F)
val onPrimaryContainerLightHighContrast = Color(0xFFFFFFFF) val onSecondaryContainerDark = Color(0xFFDCE2FF)
val secondaryLightHighContrast = Color(0xFF252C3D)
val onSecondaryLightHighContrast = Color(0xFFFFFFFF) val tertiaryDark = Color(0xFFC0C1FF)
val secondaryContainerLightHighContrast = Color(0xFF42495B) val onTertiaryDark = Color(0xFF222275)
val onSecondaryContainerLightHighContrast = Color(0xFFFFFFFF) val tertiaryContainerDark = Color(0xFF3A3A8C)
val tertiaryLightHighContrast = Color(0xFF3C233E) val onTertiaryContainerDark = Color(0xFFE2E0FF)
val onTertiaryLightHighContrast = Color(0xFFFFFFFF)
val tertiaryContainerLightHighContrast = Color(0xFF5B405D)
val onTertiaryContainerLightHighContrast = Color(0xFFFFFFFF)
val errorLightHighContrast = Color(0xFF600004)
val onErrorLightHighContrast = Color(0xFFFFFFFF)
val errorContainerLightHighContrast = Color(0xFF98000A)
val onErrorContainerLightHighContrast = Color(0xFFFFFFFF)
val backgroundLightHighContrast = Color(0xFFFAF9FF)
val onBackgroundLightHighContrast = Color(0xFF1A1B20)
val surfaceLightHighContrast = Color(0xFFFAF9FF)
val onSurfaceLightHighContrast = Color(0xFF000000)
val surfaceVariantLightHighContrast = Color(0xFFE1E2EC)
val onSurfaceVariantLightHighContrast = Color(0xFF000000)
val outlineLightHighContrast = Color(0xFF292C33)
val outlineVariantLightHighContrast = Color(0xFF474951)
val scrimLightHighContrast = Color(0xFF000000)
val inverseSurfaceLightHighContrast = Color(0xFF2F3036)
val inverseOnSurfaceLightHighContrast = Color(0xFFFFFFFF)
val inversePrimaryLightHighContrast = Color(0xFFAFC6FF)
val surfaceDimLightHighContrast = Color(0xFFB8B8BF)
val surfaceBrightLightHighContrast = Color(0xFFFAF9FF)
val surfaceContainerLowestLightHighContrast = Color(0xFFFFFFFF)
val surfaceContainerLowLightHighContrast = Color(0xFFF1F0F7)
val surfaceContainerLightHighContrast = Color(0xFFE2E2E9)
val surfaceContainerHighLightHighContrast = Color(0xFFD4D4DB)
val surfaceContainerHighestLightHighContrast = Color(0xFFC6C6CD)
val primaryDark = Color(0xFFAFC6FF)
val onPrimaryDark = Color(0xFF132F60)
val primaryContainerDark = Color(0xFF2D4678)
val onPrimaryContainerDark = Color(0xFFD9E2FF)
val secondaryDark = Color(0xFFBFC6DC)
val onSecondaryDark = Color(0xFF293042)
val secondaryContainerDark = Color(0xFF3F4759)
val onSecondaryContainerDark = Color(0xFFDBE2F9)
val tertiaryDark = Color(0xFFDFBBDE)
val onTertiaryDark = Color(0xFF412743)
val tertiaryContainerDark = Color(0xFF593E5A)
val onTertiaryContainerDark = Color(0xFFFCD7FB)
val errorDark = Color(0xFFFFB4AB) val errorDark = Color(0xFFFFB4AB)
val onErrorDark = Color(0xFF690005) val onErrorDark = Color(0xFF690005)
val errorContainerDark = Color(0xFF93000A) val errorContainerDark = Color(0xFF93000A)
val onErrorContainerDark = Color(0xFFFFDAD6) val onErrorContainerDark = Color(0xFFFFDAD6)
val backgroundDark = Color(0xFF121318)
val backgroundDark = Color(0xFF050B1E)
val onBackgroundDark = Color(0xFFE2E2E9) val onBackgroundDark = Color(0xFFE2E2E9)
val surfaceDark = Color(0xFF121318) val surfaceDark = Color(0xFF050B1E)
val onSurfaceDark = Color(0xFFE2E2E9) val onSurfaceDark = Color(0xFFE2E2E9)
val surfaceVariantDark = Color(0xFF44464F)
val surfaceVariantDark = Color(0xFF1F2535)
val onSurfaceVariantDark = Color(0xFFC5C6D0) val onSurfaceVariantDark = Color(0xFFC5C6D0)
val outlineDark = Color(0xFF8F9099) val outlineDark = Color(0xFF8F9099)
val outlineVariantDark = Color(0xFF44464F) val outlineVariantDark = Color(0xFF44464F)
val scrimDark = Color(0xFF000000) val scrimDark = Color(0xFF000000)
val inverseSurfaceDark = Color(0xFFE2E2E9) val inverseSurfaceDark = Color(0xFFE2E2E9)
val inverseOnSurfaceDark = Color(0xFF2F3036) val inverseOnSurfaceDark = Color(0xFF050B1E)
val inversePrimaryDark = Color(0xFF465D91) val inversePrimaryDark = Color(0xFF1E4FD9)
val surfaceDimDark = Color(0xFF121318)
val surfaceBrightDark = Color(0xFF38393E)
val surfaceContainerLowestDark = Color(0xFF0C0E13)
val surfaceContainerLowDark = Color(0xFF1A1B20)
val surfaceContainerDark = Color(0xFF1E1F25)
val surfaceContainerHighDark = Color(0xFF282A2F)
val surfaceContainerHighestDark = Color(0xFF33353A)
val primaryDarkMediumContrast = Color(0xFFD0DCFF) val surfaceDimDark = Color(0xFF050B1E)
val onPrimaryDarkMediumContrast = Color(0xFF042355) val surfaceBrightDark = Color(0xFF242A3D)
val primaryContainerDarkMediumContrast = Color(0xFF7990C7) val surfaceContainerLowestDark = Color(0xFF020613)
val onPrimaryContainerDarkMediumContrast = Color(0xFF000000) val surfaceContainerLowDark = Color(0xFF0A1024)
val secondaryDarkMediumContrast = Color(0xFFD5DCF3) val surfaceContainerDark = Color(0xFF0E152A)
val onSecondaryDarkMediumContrast = Color(0xFF1E2536) val surfaceContainerHighDark = Color(0xFF181F36)
val secondaryContainerDarkMediumContrast = Color(0xFF8990A5) val surfaceContainerHighestDark = Color(0xFF232A42)
val onSecondaryContainerDarkMediumContrast = Color(0xFF000000)
val tertiaryDarkMediumContrast = Color(0xFFF6D1F4)
val onTertiaryDarkMediumContrast = Color(0xFF351D37)
val tertiaryContainerDarkMediumContrast = Color(0xFFA786A7)
val onTertiaryContainerDarkMediumContrast = Color(0xFF000000)
val errorDarkMediumContrast = Color(0xFFFFD2CC)
val onErrorDarkMediumContrast = Color(0xFF540003)
val errorContainerDarkMediumContrast = Color(0xFFFF5449)
val onErrorContainerDarkMediumContrast = Color(0xFF000000)
val backgroundDarkMediumContrast = Color(0xFF121318)
val onBackgroundDarkMediumContrast = Color(0xFFE2E2E9)
val surfaceDarkMediumContrast = Color(0xFF121318)
val onSurfaceDarkMediumContrast = Color(0xFFFFFFFF)
val surfaceVariantDarkMediumContrast = Color(0xFF44464F)
val onSurfaceVariantDarkMediumContrast = Color(0xFFDBDCE6)
val outlineDarkMediumContrast = Color(0xFFB0B1BB)
val outlineVariantDarkMediumContrast = Color(0xFF8E9099)
val scrimDarkMediumContrast = Color(0xFF000000)
val inverseSurfaceDarkMediumContrast = Color(0xFFE2E2E9)
val inverseOnSurfaceDarkMediumContrast = Color(0xFF282A2F)
val inversePrimaryDarkMediumContrast = Color(0xFF2E4779)
val surfaceDimDarkMediumContrast = Color(0xFF121318)
val surfaceBrightDarkMediumContrast = Color(0xFF43444A)
val surfaceContainerLowestDarkMediumContrast = Color(0xFF06070C)
val surfaceContainerLowDarkMediumContrast = Color(0xFF1C1D23)
val surfaceContainerDarkMediumContrast = Color(0xFF26282D)
val surfaceContainerHighDarkMediumContrast = Color(0xFF313238)
val surfaceContainerHighestDarkMediumContrast = Color(0xFF3C3D43)
val primaryDarkHighContrast = Color(0xFFECEFFF)
val onPrimaryDarkHighContrast = Color(0xFF000000)
val primaryContainerDarkHighContrast = Color(0xFFAAC2FD)
val onPrimaryContainerDarkHighContrast = Color(0xFF000A23)
val secondaryDarkHighContrast = Color(0xFFECEFFF)
val onSecondaryDarkHighContrast = Color(0xFF000000)
val secondaryContainerDarkHighContrast = Color(0xFFBBC2D8)
val onSecondaryContainerDarkHighContrast = Color(0xFF040B1B)
val tertiaryDarkHighContrast = Color(0xFFFFEAFB)
val onTertiaryDarkHighContrast = Color(0xFF000000)
val tertiaryContainerDarkHighContrast = Color(0xFFDBB8DA)
val onTertiaryContainerDarkHighContrast = Color(0xFF18031B)
val errorDarkHighContrast = Color(0xFFFFECE9)
val onErrorDarkHighContrast = Color(0xFF000000)
val errorContainerDarkHighContrast = Color(0xFFFFAEA4)
val onErrorContainerDarkHighContrast = Color(0xFF220001)
val backgroundDarkHighContrast = Color(0xFF121318)
val onBackgroundDarkHighContrast = Color(0xFFE2E2E9)
val surfaceDarkHighContrast = Color(0xFF121318)
val onSurfaceDarkHighContrast = Color(0xFFFFFFFF)
val surfaceVariantDarkHighContrast = Color(0xFF44464F)
val onSurfaceVariantDarkHighContrast = Color(0xFFFFFFFF)
val outlineDarkHighContrast = Color(0xFFEFEFF9)
val outlineVariantDarkHighContrast = Color(0xFFC1C2CC)
val scrimDarkHighContrast = Color(0xFF000000)
val inverseSurfaceDarkHighContrast = Color(0xFFE2E2E9)
val inverseOnSurfaceDarkHighContrast = Color(0xFF000000)
val inversePrimaryDarkHighContrast = Color(0xFF2E4779)
val surfaceDimDarkHighContrast = Color(0xFF121318)
val surfaceBrightDarkHighContrast = Color(0xFF4F5056)
val surfaceContainerLowestDarkHighContrast = Color(0xFF000000)
val surfaceContainerLowDarkHighContrast = Color(0xFF1E1F25)
val surfaceContainerDarkHighContrast = Color(0xFF2F3036)
val surfaceContainerHighDarkHighContrast = Color(0xFF3A3B41)
val surfaceContainerHighestDarkHighContrast = Color(0xFF45464C)