package soy.iko.opencode.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.graphics.Color import androidx.compose.ui.platform.LocalContext private val DarkColors = darkColorScheme( primary = Emerald, onPrimary = Color(0xFF0F1115), secondary = EmeraldDark, background = DarkBackground, surface = DarkSurface, surfaceVariant = DarkSurfaceVariant, onSurface = DarkOnSurface, outline = DarkOutline, ) private val LightColors = lightColorScheme( primary = EmeraldDark, secondary = Emerald, background = LightBackground, surface = LightSurface, surfaceVariant = LightSurfaceVariant, onSurface = LightOnSurface, outline = LightOutline, ) @Composable fun OpencodeTheme( darkTheme: Boolean = isSystemInDarkTheme(), dynamicColor: Boolean = true, content: @Composable () -> Unit, ) { val context = LocalContext.current val colorScheme = when { dynamicColor && Build.VERSION.SDK_INT >= Build.VERSION_CODES.S -> if (darkTheme) dynamicDarkColorScheme(context) else dynamicLightColorScheme(context) darkTheme -> DarkColors else -> LightColors } MaterialTheme( colorScheme = colorScheme, typography = AppTypography, content = content, ) }