Skip to content

Instantly share code, notes, and snippets.

@renanboni
Created December 18, 2022 20:10
Show Gist options
  • Save renanboni/c01014525f2a934f20d6f96c9734fa3f to your computer and use it in GitHub Desktop.
Save renanboni/c01014525f2a934f20d6f96c9734fa3f to your computer and use it in GitHub Desktop.
@Immutable
data class QuivonColors(
val primary: Color = Color.Unspecified,
val secondary: Color = Color.Unspecified,
val textOnPrimary: Color = Color.Unspecified,
val textOnBackground: Color = Color.Unspecified,
val icon: Color = Color.Unspecified,
val iconOnPrimary: Color = Color.Unspecified,
val background: Color = Color.Unspecified,
val cardBackground: Color = Color.Unspecified,
val tertiaryCardBackground: Color = Color.Unspecified,
val primaryCardBackground: Color = Color.Unspecified,
val primaryCardTitle: Color = Color.Unspecified,
val primaryCardSubtitle: Color = Color.Unspecified,
val cardTitle: Color = Color.Unspecified,
val cardSubtitle: Color = Color.Unspecified,
val cardConfirmTextButton: Color = Color.Unspecified,
val cardCancelTextButton: Color = Color.Unspecified,
val cardDivider: Color = Color.Unspecified,
val cardItem1: Color = Color.Unspecified,
val cardItem2: Color = Color.Unspecified,
val text: Color = Color.Unspecified,
val inputBackground: Color = Color.Unspecified,
val inputBackgroundOnPrimary: Color = Color.Unspecified,
val chatDialog1Background: Color = Color.Unspecified,
val shimmerBackground: Color = Color.Unspecified,
val shimmerForeground: Color = Color.Unspecified,
val progressBackground: Color = Color.Unspecified,
val primaryIconBackground: Color = Color.Unspecified,
val stepBackground: Color = Color.Unspecified,
val stepSelected: Color = Color.Unspecified,
val selectorBackground: Color = Color.Unspecified,
val selectorSelected: Color = Color.Unspecified,
val tabBackground: Color = Color.Unspecified,
val tabSelected: Color = Color.Unspecified,
val tabSelectedText: Color = Color.Unspecified,
val tabText: Color = Color.Unspecified,
val bottomMenuUnselected: Color = Color.Unspecified,
val bottomMenuSelected: Color = Color.Unspecified,
val primaryCardItem1: Color = Color.Unspecified,
val primaryCardItem2: Color = Color.Unspecified,
val selectableCardBackground: Color = Color.Unspecified,
val selectedCardBackground: Color = Color.Unspecified,
val cursor: Color = Color.Unspecified,
val cursorOnPrimary: Color = Color.Unspecified,
val inputIndicator: Color = Color.Unspecified,
val cardIconBackground: Color = Color.Unspecified,
val inputIndicatorOnBackground: Color = Color.Unspecified,
val uncheckedTrackColor: Color = Color.Unspecified,
val checkedThumbColor: Color = Color.Unspecified,
val checkedTrackColor: Color = Color.Unspecified,
val shimmerOnPrimary: Color = Color.Unspecified,
val bottomSheetBackground: Color = Color.Unspecified,
val inputLabelOnBackground: Color = Color.Unspecified,
) {
constructor(isDarkMode: Boolean) : this(
primary = if (isDarkMode) Color.Black else DodgerBlue,
secondary = if (isDarkMode) Aquamarine else DodgerBlue,
textOnPrimary = if (isDarkMode) Color.White else Color.White,
textOnBackground = if (isDarkMode) Color.White else Emperor,
iconOnPrimary = if (isDarkMode) Color.White else Color.White,
background = if (isDarkMode) Color.Black else Color.White,
cardBackground = if (isDarkMode) Shark else Color.White,
text = if (isDarkMode) Color.White else Emperor,
inputBackground = if (isDarkMode) Shark else Color.Transparent,
cardTitle = if (isDarkMode) Color.White else Emperor,
cardSubtitle = if (isDarkMode) Manatee else Manatee,
cardDivider = if (isDarkMode) ShipGray else FrenchGray,
cardItem1 = if (isDarkMode) Color.White else Emperor,
cardItem2 = if (isDarkMode) Manatee else Jumbo,
chatDialog1Background = if (isDarkMode) MiniShaft else Gallery,
shimmerBackground = if (isDarkMode) MiniShaft else AquaHaze,
shimmerForeground = if (isDarkMode) Scorpion else Gallery,
primaryCardBackground = if (isDarkMode) Shark else CornflowerBlue,
primaryCardTitle = if (isDarkMode) Color.White else Color.White,
primaryCardSubtitle = if (isDarkMode) Color.White else Color.White,
progressBackground = if (isDarkMode) ShipGray else Gallery,
primaryIconBackground = if (isDarkMode) Shark else CornflowerBlue,
stepBackground = if (isDarkMode) ShipGray else CornflowerBlue,
stepSelected = if (isDarkMode) DodgerBlue else Color.White,
selectorBackground = if (isDarkMode) Color.Black else DodgerBlue,
selectorSelected = if (isDarkMode) MiniShaft else CornflowerBlue,
tabBackground = if (isDarkMode) Shark else RoyalBlue,
tabSelected = if (isDarkMode) BalticSea else Color.White,
tabSelectedText = if (isDarkMode) Color.White else DodgerBlue,
tabText = if (isDarkMode) Emperor else Color.White,
bottomMenuUnselected = if (isDarkMode) Color.White else Gray,
bottomMenuSelected = if (isDarkMode) DodgerBlue else DodgerBlue,
primaryCardItem1 = if (isDarkMode) Color.White else Color.White,
primaryCardItem2 = if (isDarkMode) Color.White else Color.White,
selectableCardBackground = if (isDarkMode) Color.Black else DodgerBlue,
selectedCardBackground = if (isDarkMode) MiniShaft else CornflowerBlue,
icon = if (isDarkMode) Color.White else Color.Black,
cursor = if (isDarkMode) Color.White else Emperor,
inputIndicator = if (isDarkMode) Color.White else Emperor,
cardIconBackground = if (isDarkMode) Scorpion else Concrete,
cardConfirmTextButton = if (isDarkMode) DodgerBlue else DodgerBlue,
cardCancelTextButton = if (isDarkMode) DodgerBlue else DodgerBlue,
inputIndicatorOnBackground = if (isDarkMode) Color.White else Emperor,
uncheckedTrackColor = if (isDarkMode) ShipGray else Iron,
checkedThumbColor = if (isDarkMode) Color.White else Color.White,
checkedTrackColor = if (isDarkMode) Aquamarine else Aquamarine,
inputBackgroundOnPrimary = if (isDarkMode) Shark else Color.White,
shimmerOnPrimary = if (isDarkMode) Shark else RoyalBlue,
bottomSheetBackground = if (isDarkMode) Shark else DodgerBlue,
cursorOnPrimary = if (isDarkMode) Color.White else Color.White,
tertiaryCardBackground = if (isDarkMode) MiniShaft else WhiteLilac,
inputLabelOnBackground = if (isDarkMode) Color.White else Gray,
)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment