Skip to content

Instantly share code, notes, and snippets.

@jd1378
Created November 17, 2023 21:21
Show Gist options
  • Save jd1378/d484d5ed4e5ab2a3113f59c9ed53070f to your computer and use it in GitHub Desktop.
Save jd1378/d484d5ed4e5ab2a3113f59c9ed53070f to your computer and use it in GitHub Desktop.
theme ripper kotlin
@OptIn(ExperimentalStdlibApi::class)
fun ColorScheme.toListString(): String {
val sb = StringBuilder()
sb.append("val md_theme_light_primary = Color(0x"+ this.primary.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onPrimary = Color(0x"+ this.onPrimary.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_primaryContainer = Color(0x"+ this.primaryContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onPrimaryContainer = Color(0x"+ this.onPrimaryContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_inversePrimary = Color(0x"+ this.inversePrimary.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_secondary = Color(0x"+ this.secondary.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onSecondary = Color(0x"+ this.onSecondary.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_secondaryContainer = Color(0x"+ this.secondaryContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onSecondaryContainer = Color(0x"+ this.onSecondaryContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_tertiary = Color(0x"+ this.tertiary.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onTertiary = Color(0x"+ this.onTertiary.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_tertiaryContainer = Color(0x"+ this.tertiaryContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onTertiaryContainer = Color(0x"+ this.onTertiaryContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_background = Color(0x"+ this.background.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onBackground = Color(0x"+ this.onBackground.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_surface = Color(0x"+ this.surface.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onSurface = Color(0x"+ this.onSurface.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_surfaceVariant = Color(0x"+ this.surfaceVariant.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onSurfaceVariant = Color(0x"+ this.onSurfaceVariant.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_surfaceTint = Color(0x"+ this.surfaceTint.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_inverseSurface = Color(0x"+ this.inverseSurface.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_inverseOnSurface = Color(0x"+ this.inverseOnSurface.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_error = Color(0x"+ this.error.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onError = Color(0x"+ this.onError.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_errorContainer = Color(0x"+ this.errorContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_onErrorContainer = Color(0x"+ this.onErrorContainer.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_outline = Color(0x"+ this.outline.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_outlineVariant = Color(0x"+ this.outlineVariant.toArgb().toHexString().uppercase() + ") \n")
sb.append("val md_theme_light_scrim = Color(0x"+ this.scrim.toArgb().toHexString().uppercase() + ") \n")
return sb.toString()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment