Skip to content
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.runtime.Composable
import androidx.compose.ui.res.stringResource
import com.infomaniak.auth.R
Expand All @@ -37,7 +38,11 @@ fun InfomaniakAuthenticatorTopAppBar() {
text = stringResource(R.string.appCompleteName),
style = MaterialTheme.typography.headlineSmall
)
}
},
colors = TopAppBarDefaults.topAppBarColors(
containerColor = MaterialTheme.colorScheme.background,
titleContentColor = MaterialTheme.colorScheme.onBackground,
)
)
}

Expand Down
138 changes: 68 additions & 70 deletions app/src/main/kotlin/com/infomaniak/auth/ui/theme/Color.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,77 +2,75 @@ package com.infomaniak.auth.ui.theme

import androidx.compose.ui.graphics.Color

val primaryLight = Color(0xFF2B39A8)
val onPrimaryLight = Color(0xFFFFFFFF)
val primaryContainerLight = Color(0xFFDFE0FF)
val onPrimaryContainerLight = Color(0xFF3A4279)
val secondaryLight = Color(0xFF525A92)
val onSecondaryLight = Color(0xFFFFFFFF)
val secondaryContainerLight = Color(0xFFDFE0FF)
val onSecondaryContainerLight = Color(0xFF3A4279)
val tertiaryLight = Color(0xFF77536C)
val onTertiaryLight = Color(0xFFFFFFFF)
val tertiaryContainerLight = Color(0xFFFFD7F0)
val onTertiaryContainerLight = Color(0xFF5D3C54)
val errorLight = Color(0xFFBA1A1A)
val onErrorLight = Color(0xFFFFFFFF)
val errorContainerLight = Color(0xFFFFDAD6)
val onErrorContainerLight = Color(0xFF93000A)
val backgroundLight = Color(0xFFF4F6FC)
val onBackgroundLight = Color(0xFF1B1B21)
val surfaceLight = Color(0xFFF4F6FC)
val onSurfaceLight = Color(0xFF1B1B21)
val surfaceVariantLight = Color(0xFFE3E1EC)
val onSurfaceVariantLight = Color(0xFF46464F)
val outlineLight = Color(0xFF767680)
val outlineVariantLight = Color(0xFFC7C5D0)
val scrimLight = Color(0xFF000000)
val inverseSurfaceLight = Color(0xFF303036)
val inverseOnSurfaceLight = Color(0xFFF2EFF7)
val inversePrimaryLight = Color(0xFFBBC3FF)
val surfaceDimLight = Color(0xFFDBD9E0)
val surfaceBrightLight = Color(0xFFF4F6FC)
val surfaceContainerLowestLight = Color(0xFFFFFFFF)
val surfaceContainerLowLight = Color(0xFFF5F2FA)
val surfaceContainerLight = Color(0xFFEFEDF4)
val surfaceContainerHighLight = Color(0xFFE9E7EF)
val surfaceContainerHighestLight = Color(0xFFE4E1E9)
// Neutral
val neutral0 = Color(0xFF000000)
val neutral4 = Color(0xFF0E1016)
val neutral5 = Color(0xFF11141A)
val neutral6 = Color(0xFF141823)
val neutral10 = Color(0xFF1C1F26)
val neutral12 = Color(0xFF212633)
val neutral15 = Color(0xFF262B36)
val neutral17 = Color(0xFF2B3140)
val neutral20 = Color(0xFF313747)
val neutral22 = Color(0xFF363C4D)
val neutral24 = Color(0xFF3B4154)
val neutral25 = Color(0xFF3C4256)
val neutral30 = Color(0xFF48506A)
val neutral35 = Color(0xFF535C7A)
val neutral40 = Color(0xFF5F688A)
val neutral50 = Color(0xFF7A83A3)
val neutral60 = Color(0xFF9AA3BD)
val neutral70 = Color(0xFFB5BCD4)
val neutral80 = Color(0xFFD0D6E6)
val neutral87 = Color(0xFFDDE2F0)
val neutral90 = Color(0xFFE6EAF5)
val neutral92 = Color(0xFFECEFF8)
val neutral94 = Color(0xFFF2F4FB)
val neutral95 = Color(0xFFF4F6FC)
val neutral96 = Color(0xFFF6F7FD)
val neutral98 = Color(0xFFFAFBFE)
val neutral99 = Color(0xFFFDFDFF)
val neutral100 = Color(0xFFFFFFFF)

val primaryDark = Color(0xFFBCC2FF)
val onPrimaryDark = Color(0xFF232C61)
val primaryContainerDark = Color(0xFF3A4279)
val onPrimaryContainerDark = Color(0xFFDFE0FF)
val secondaryDark = Color(0xFFBBC3FF)
val onSecondaryDark = Color(0xFF232C61)
val secondaryContainerDark = Color(0xFF3A4279)
val onSecondaryContainerDark = Color(0xFFDFE0FF)
val tertiaryDark = Color(0xFFE6BAD7)
val onTertiaryDark = Color(0xFF45263D)
val tertiaryContainerDark = Color(0xFF5D3C54)
val onTertiaryContainerDark = Color(0xFFFFD7F0)
val errorDark = Color(0xFFFFB4AB)
val onErrorDark = Color(0xFF690005)
val errorContainerDark = Color(0xFF93000A)
val onErrorContainerDark = Color(0xFFFFDAD6)
val backgroundDark = Color(0xFF131318)
val onBackgroundDark = Color(0xFFE4E1E9)
val surfaceDark = Color(0xFF131318)
val onSurfaceDark = Color(0xFFE4E1E9)
val surfaceVariantDark = Color(0xFF46464F)
val onSurfaceVariantDark = Color(0xFFC7C5D0)
val outlineDark = Color(0xFF90909A)
val outlineVariantDark = Color(0xFF46464F)
val scrimDark = Color(0xFF000000)
val inverseSurfaceDark = Color(0xFFE4E1E9)
val inverseOnSurfaceDark = Color(0xFF303036)
val inversePrimaryDark = Color(0xFF525A92)
val surfaceDimDark = Color(0xFF131318)
val surfaceBrightDark = Color(0xFF39393F)
val surfaceContainerLowestDark = Color(0xFF0D0E13)
val surfaceContainerLowDark = Color(0xFF1B1B21)
val surfaceContainerDark = Color(0xFF1F1F25)
val surfaceContainerHighDark = Color(0xFF29292F)
val surfaceContainerHighestDark = Color(0xFF34343A)
// Brand
val brand0 = Color(0xFF000110)
val brand5 = Color(0xFF000546)
val brand10 = Color(0xFF000A63)
val brand15 = Color(0xFF00107F)
val brand20 = Color(0xFF0B1C92)
val brand25 = Color(0xFF1C2B9C)
val brand30 = Color(0xFF2B39A8)
val brand35 = Color(0xFF3846B4)
val brand40 = Color(0xFF4553C1)
val brand50 = Color(0xFF5F6DDC)
val brand60 = Color(0xFF7987F8)
val brand70 = Color(0xFF9AA4FF)
val brand80 = Color(0xFFBCC2FF)
val brand90 = Color(0xFFDFE0FF)
val brand95 = Color(0xFFF1EFFF)
val brand98 = Color(0xFFFBF8FF)
val brand99 = Color(0xFFFDFCFF)
val brand100 = Color(0xFFFEFEFF)

// Red
val red0 = Color(0xFF0E0000)
val red5 = Color(0xFF2D0000)
val red10 = Color(0xFF410001)
val red15 = Color(0xFF540002)
val red20 = Color(0xFF690002)
val red25 = Color(0xFF7E0004)
val red30 = Color(0xFF930005)
val red35 = Color(0xFFA90107)
val red40 = Color(0xFFBB1614)
val red50 = Color(0xFFE0342A)
val red60 = Color(0xFFFF5545)
val red70 = Color(0xFFFF8A7B)
val red80 = Color(0xFFFFB4A9)
val red90 = Color(0xFFFFDAD5)
val red95 = Color(0xFFFFEDEA)
val red98 = Color(0xFFFFF8F7)
val red99 = Color(0xFFFFFCFB)
val red100 = Color(0xFFFFFDFD)

// Custom primitives
val productSecurity = Color(0xFF5869D9)
140 changes: 70 additions & 70 deletions app/src/main/kotlin/com/infomaniak/auth/ui/theme/Theme.kt
Original file line number Diff line number Diff line change
Expand Up @@ -21,79 +21,79 @@ import com.infomaniak.core.ui.compose.theme.LocalIsThemeDarkMode

// Never access it directly outside of the theme setup
val lightScheme = lightColorScheme(
primary = primaryLight,
onPrimary = onPrimaryLight,
primaryContainer = primaryContainerLight,
onPrimaryContainer = onPrimaryContainerLight,
secondary = secondaryLight,
onSecondary = onSecondaryLight,
secondaryContainer = secondaryContainerLight,
onSecondaryContainer = onSecondaryContainerLight,
tertiary = tertiaryLight,
onTertiary = onTertiaryLight,
tertiaryContainer = tertiaryContainerLight,
onTertiaryContainer = onTertiaryContainerLight,
error = errorLight,
onError = onErrorLight,
errorContainer = errorContainerLight,
onErrorContainer = onErrorContainerLight,
background = backgroundLight,
onBackground = onBackgroundLight,
surface = surfaceLight,
onSurface = onSurfaceLight,
surfaceVariant = surfaceVariantLight,
onSurfaceVariant = onSurfaceVariantLight,
outline = outlineLight,
outlineVariant = outlineVariantLight,
scrim = scrimLight,
inverseSurface = inverseSurfaceLight,
inverseOnSurface = inverseOnSurfaceLight,
inversePrimary = inversePrimaryLight,
surfaceDim = surfaceDimLight,
surfaceBright = surfaceBrightLight,
surfaceContainerLowest = surfaceContainerLowestLight,
surfaceContainerLow = surfaceContainerLowLight,
surfaceContainer = surfaceContainerLight,
surfaceContainerHigh = surfaceContainerHighLight,
surfaceContainerHighest = surfaceContainerHighestLight,
primary = brand30,
onPrimary = brand99,
primaryContainer = brand40,
onPrimaryContainer = brand90,
secondary = brand40,
onSecondary = brand99,
secondaryContainer = brand70,
onSecondaryContainer = brand10,
tertiary = brand40,
onTertiary = brand99,
tertiaryContainer = brand70,
onTertiaryContainer = brand10,
error = red40,
onError = red99,
errorContainer = red50,
onErrorContainer = red99,
background = neutral98,
onBackground = neutral10,
surface = neutral98,
onSurface = neutral10,
surfaceVariant = neutral90,
onSurfaceVariant = neutral30,
outline = neutral60,
outlineVariant = neutral30,
scrim = neutral0,
inverseSurface = neutral20,
inverseOnSurface = neutral95,
inversePrimary = brand80,
surfaceDim = neutral87,
surfaceBright = neutral98,
surfaceContainerLowest = neutral99,
surfaceContainerLow = neutral96,
surfaceContainer = neutral94,
surfaceContainerHigh = neutral92,
surfaceContainerHighest = neutral90,
)

private val darkScheme = darkColorScheme(
primary = primaryDark,
onPrimary = onPrimaryDark,
primaryContainer = primaryContainerDark,
onPrimaryContainer = onPrimaryContainerDark,
secondary = secondaryDark,
onSecondary = onSecondaryDark,
secondaryContainer = secondaryContainerDark,
onSecondaryContainer = onSecondaryContainerDark,
tertiary = tertiaryDark,
onTertiary = onTertiaryDark,
tertiaryContainer = tertiaryContainerDark,
onTertiaryContainer = onTertiaryContainerDark,
error = errorDark,
onError = onErrorDark,
errorContainer = errorContainerDark,
onErrorContainer = onErrorContainerDark,
background = backgroundDark,
onBackground = onBackgroundDark,
surface = surfaceDark,
onSurface = onSurfaceDark,
surfaceVariant = surfaceVariantDark,
onSurfaceVariant = onSurfaceVariantDark,
outline = outlineDark,
outlineVariant = outlineVariantDark,
scrim = scrimDark,
inverseSurface = inverseSurfaceDark,
inverseOnSurface = inverseOnSurfaceDark,
inversePrimary = inversePrimaryDark,
surfaceDim = surfaceDimDark,
surfaceBright = surfaceBrightDark,
surfaceContainerLowest = surfaceContainerLowestDark,
surfaceContainerLow = surfaceContainerLowDark,
surfaceContainer = surfaceContainerDark,
surfaceContainerHigh = surfaceContainerHighDark,
surfaceContainerHighest = surfaceContainerHighestDark,
primary = brand80,
onPrimary = brand20,
primaryContainer = brand40,
onPrimaryContainer = brand90,
secondary = brand80,
onSecondary = brand10,
secondaryContainer = brand70,
onSecondaryContainer = brand10,
tertiary = brand80,
onTertiary = brand10,
tertiaryContainer = brand70,
onTertiaryContainer = brand10,
error = red80,
onError = red20,
errorContainer = red60,
onErrorContainer = red10,
background = neutral5,
onBackground = neutral90,
surface = neutral6,
onSurface = neutral90,
surfaceVariant = neutral30,
onSurfaceVariant = neutral80,
outline = neutral60,
outlineVariant = neutral30,
scrim = neutral0,
inverseSurface = neutral90,
inverseOnSurface = neutral20,
inversePrimary = brand40,
surfaceDim = neutral6,
surfaceBright = neutral24,
surfaceContainerLowest = neutral4,
surfaceContainerLow = neutral10,
surfaceContainer = neutral10,
surfaceContainerHigh = neutral17,
surfaceContainerHighest = neutral22,
)

val LocalCustomColorScheme: ProvidableCompositionLocal<CustomColorScheme> = staticCompositionLocalOf { CustomColorScheme() }
Expand Down
Loading