diff --git a/CHANGELOG.md b/CHANGELOG.md index 27c095a..b217a6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,11 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +# Unversioned + +### Features +* **SBBContentBox:** added component which replaces SBBGroup + # 0.1.8 ### Bugfix diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/modal/SBBModalView.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/modal/SBBModalView.kt index e54dd28..c24904f 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/modal/SBBModalView.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/modal/SBBModalView.kt @@ -1,6 +1,5 @@ package ch.sbb.compose_mds.beta.modal -import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.ColumnScope @@ -46,7 +45,7 @@ fun SBBModalView( ModalBottomSheet( onDismissRequest = onDismissRequest, sheetState = sheetState, - containerColor = if (isSystemInDarkTheme()) PrimitiveColors.midnight else PrimitiveColors.milk, + containerColor = if (SBBTheme.isDarkMode) PrimitiveColors.midnight else PrimitiveColors.milk, shape = RoundedCornerShape(16.dp), dragHandle = null, ) { diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/segmentedButton/SBBSegmentedButton.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/segmentedButton/SBBSegmentedButton.kt similarity index 91% rename from compose-mds/src/main/java/ch/sbb/compose_mds/composables/segmentedButton/SBBSegmentedButton.kt rename to compose-mds/src/main/java/ch/sbb/compose_mds/beta/segmentedButton/SBBSegmentedButton.kt index 1886c81..41328f3 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/segmentedButton/SBBSegmentedButton.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/segmentedButton/SBBSegmentedButton.kt @@ -1,8 +1,7 @@ -package ch.sbb.compose_mds.beta.button +package ch.sbb.compose_mds.beta.segmentedButton import androidx.compose.foundation.BorderStroke import androidx.compose.foundation.background -import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxWidth @@ -46,7 +45,7 @@ fun SBBSegmentedButton( .wrapContentHeight() .fillMaxWidth() .clip(shape = RoundedCornerShape(22.dp)) - .background(color = if (isSystemInDarkTheme()) PrimitiveColors.charcoal else PrimitiveColors.cloud), + .background(color = if (SBBTheme.isDarkMode) PrimitiveColors.charcoal else PrimitiveColors.cloud), horizontalArrangement = Arrangement.SpaceEvenly ) { val totalWeight = segments.size.toFloat() @@ -76,14 +75,14 @@ private fun ButtonSegment( onClick = onClick, enabled = enabled, shape = RoundedCornerShape(22.dp), - border = if (isSystemInDarkTheme()) darkModeBorder( + border = if (SBBTheme.isDarkMode) darkModeBorder( active = active, enabled = enabled ) else lightModeBorder( active = active, enabled = enabled ), - colors = if (isSystemInDarkTheme()) darkModeColors(active) else lightModeColors(active), + colors = if (SBBTheme.isDarkMode) darkModeColors(active) else lightModeColors(active), ) { Text( text = label, diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/slider/SBBSlider.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/slider/SBBSlider.kt index 45421ce..5f69ff3 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/slider/SBBSlider.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/slider/SBBSlider.kt @@ -5,7 +5,6 @@ import android.content.res.Configuration import androidx.compose.foundation.border import androidx.compose.foundation.indication import androidx.compose.foundation.interaction.MutableInteractionSource -import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.height @@ -93,8 +92,8 @@ object SBBSliderDefaults { @Composable fun colors(): SliderColors { val trackColor = MaterialTheme.colorScheme.primary - val inactiveTrackColor = if (isSystemInDarkTheme()) PrimitiveColors.metal else PrimitiveColors.smoke - val thumbColor = if (isSystemInDarkTheme()) PrimitiveColors.iron else PrimitiveColors.white + val inactiveTrackColor = if (SBBTheme.isDarkMode) PrimitiveColors.metal else PrimitiveColors.smoke + val thumbColor = if (SBBTheme.isDarkMode) PrimitiveColors.iron else PrimitiveColors.white return SliderDefaults.colors( activeTrackColor = trackColor, disabledActiveTrackColor = trackColor, diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/text/SBBTextField.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/text/SBBTextField.kt index 2ad3d9b..20a3b95 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/text/SBBTextField.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/beta/text/SBBTextField.kt @@ -3,7 +3,6 @@ package ch.sbb.compose_mds.beta.text import androidx.compose.foundation.interaction.MutableInteractionSource -import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.text.KeyboardActions import androidx.compose.foundation.text.KeyboardOptions @@ -154,7 +153,7 @@ private fun colors(): TextFieldColors { @Composable private fun themedValue(lightThemeValue: T, darkThemeValue: T): T { - if (isSystemInDarkTheme()) { + if (SBBTheme.isDarkMode) { return darkThemeValue } return lightThemeValue diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/checkbox/SBBCheckbox.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/checkbox/SBBCheckbox.kt index 34f0dc3..658354c 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/checkbox/SBBCheckbox.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/checkbox/SBBCheckbox.kt @@ -1,8 +1,8 @@ package ch.sbb.compose_mds.composables.checkbox +import SBBTheme import android.content.res.Configuration import androidx.compose.foundation.Canvas -import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding @@ -55,7 +55,7 @@ fun SBBCheckbox( disabled: Boolean = false ) { val colors = when { - isSystemInDarkTheme() -> if (disabled) SBBCheckboxColors.DARK_DISABLED else SBBCheckboxColors.DARK_ENABLED + SBBTheme.isDarkMode -> if (disabled) SBBCheckboxColors.DARK_DISABLED else SBBCheckboxColors.DARK_ENABLED else -> if (disabled) SBBCheckboxColors.LIGHT_DISABLED else SBBCheckboxColors.LIGHT_ENABLED } diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/container/SBBGroup.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/container/SBBContentBox.kt similarity index 55% rename from compose-mds/src/main/java/ch/sbb/compose_mds/beta/container/SBBGroup.kt rename to compose-mds/src/main/java/ch/sbb/compose_mds/composables/container/SBBContentBox.kt index 53d5d0f..81eaa4b 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/beta/container/SBBGroup.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/container/SBBContentBox.kt @@ -1,4 +1,4 @@ -package ch.sbb.compose_mds.beta.container +package ch.sbb.compose_mds.composables.container import SBBTheme import android.content.res.Configuration @@ -6,52 +6,57 @@ import androidx.compose.foundation.background import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.ColumnScope -import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.height +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.padding import androidx.compose.foundation.shape.RoundedCornerShape import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Surface +import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier +import androidx.compose.ui.draw.clip +import androidx.compose.ui.draw.clipToBounds import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp -import ch.sbb.compose_mds.beta.ExperimentalSBBComponent +import ch.sbb.compose_mds.theme.SBBSpacing /*** - * Implementation of the SBB Container. + * Implementation of the SBB Container variant "Content-Box". + * + * Use [contentPadding] instead of [modifier] to change the padding of the content * * For a complete definition of the component, please visit [digital.sbb.ch](https://digital.sbb.ch/de/design-system/mobile/components/container/) */ -@ExperimentalSBBComponent @Composable -fun SBBGroup( +fun SBBContentBox( modifier: Modifier = Modifier, + contentPadding: PaddingValues = PaddingValues(all = SBBSpacing.Medium), content: @Composable ColumnScope.() -> Unit, ) { Column( modifier = modifier - .fillMaxWidth() - .background( - color = MaterialTheme.colorScheme.surfaceVariant, - shape = RoundedCornerShape(16.dp), - ), + .clip(shape = RoundedCornerShape(size = SBBSpacing.Medium)) + .background(color = MaterialTheme.colorScheme.surfaceVariant) + .padding(contentPadding) + .clipToBounds(), content = content, ) } -@OptIn(ExperimentalSBBComponent::class) @Preview(showBackground = true) @Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -private fun Preview_SBBGroup() { +private fun Preview_SBBContentBox() { SBBTheme { Surface { Box(modifier = Modifier.padding(16.dp)) { - SBBGroup(modifier = Modifier.height(100.dp)) { - + SBBContentBox { + Text( + text = "Preview", + style = SBBTheme.materialTypography.bodyMedium, + ) } } } } -} +} \ No newline at end of file diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBox.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBox.kt index 5ef866f..89bddb1 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBox.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBox.kt @@ -1,4 +1,4 @@ -package ch.sbb.compose_mds.beta.notificationBox +package ch.sbb.compose_mds.composables.notificationBox import SBBTheme import android.content.res.Configuration diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBoxStyle.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBoxStyle.kt index 631524e..84cc40e 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBoxStyle.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/composables/notificationBox/SBBNotificationBoxStyle.kt @@ -1,6 +1,5 @@ -package ch.sbb.compose_mds.beta.notificationBox +package ch.sbb.compose_mds.composables.notificationBox -import androidx.compose.foundation.isSystemInDarkTheme import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.runtime.Stable @@ -45,7 +44,7 @@ internal fun configSBBNotificationBoxTokens(): SBBNotificationBoxTokens = override val warning: SBBNotificationBoxStyle @Composable get() = SBBNotificationBoxStyle( icon = SBBIcons.Small.CircleExclamationPointSmall, - iconColor = if (isSystemInDarkTheme()) PrimitiveColors.peach else PrimitiveColors.black, + iconColor = if (SBBTheme.isDarkMode) PrimitiveColors.peach else PrimitiveColors.black, backgroundColor = PrimitiveColors.peach, ) override val success: SBBNotificationBoxStyle @@ -57,7 +56,7 @@ internal fun configSBBNotificationBoxTokens(): SBBNotificationBoxTokens = override val information: SBBNotificationBoxStyle @Composable get() = SBBNotificationBoxStyle( icon = SBBIcons.Small.CircleInformationSmall, - iconColor = if (isSystemInDarkTheme()) PrimitiveColors.white else PrimitiveColors.black, + iconColor = if (SBBTheme.isDarkMode) PrimitiveColors.white else PrimitiveColors.black, backgroundColor = PrimitiveColors.smoke, ) } diff --git a/compose-mds/src/main/java/ch/sbb/compose_mds/theme/SBBTheme.kt b/compose-mds/src/main/java/ch/sbb/compose_mds/theme/SBBTheme.kt index 37c425e..fbce511 100644 --- a/compose-mds/src/main/java/ch/sbb/compose_mds/theme/SBBTheme.kt +++ b/compose-mds/src/main/java/ch/sbb/compose_mds/theme/SBBTheme.kt @@ -9,9 +9,9 @@ import androidx.compose.runtime.ReadOnlyComposable import androidx.compose.runtime.staticCompositionLocalOf import androidx.compose.ui.platform.LocalInspectionMode import androidx.compose.ui.text.font.FontFamily -import ch.sbb.compose_mds.beta.notificationBox.LocalSBBNotificationBoxTheme -import ch.sbb.compose_mds.beta.notificationBox.SBBNotificationBoxTokens -import ch.sbb.compose_mds.beta.notificationBox.configSBBNotificationBoxTokens +import ch.sbb.compose_mds.composables.notificationBox.LocalSBBNotificationBoxTheme +import ch.sbb.compose_mds.composables.notificationBox.SBBNotificationBoxTokens +import ch.sbb.compose_mds.composables.notificationBox.configSBBNotificationBoxTokens import ch.sbb.compose_mds.theme.LocalSBBTypography import ch.sbb.compose_mds.theme.SBBTypography import ch.sbb.compose_mds.theme.context.LocalThemeContext diff --git a/example/build.gradle.kts b/example/build.gradle.kts index c070509..82bb1ff 100644 --- a/example/build.gradle.kts +++ b/example/build.gradle.kts @@ -63,8 +63,8 @@ android { roborazzi { generateComposePreviewRobolectricTests { enable = true - packages = listOf("ch.sbb.compose_mds.example.pages",) - includePrivatePreviews = true + packages = listOf("ch.sbb.compose_mds.example.pages") + includePrivatePreviews = false } outputDir.set(file("../goldenfiles")) } @@ -79,8 +79,8 @@ dependencies { implementation(libs.material3) implementation(project(":compose-mds")) implementation(libs.androidx.navigation.compose) - testImplementation(libs.junit) + testImplementation(libs.junit) testImplementation(libs.robolectric) testImplementation(libs.androidx.ui.test.android) testImplementation(libs.androidx.ui.test.junit4.android) diff --git a/example/src/main/java/ch/sbb/compose_mds/example/MainActivity.kt b/example/src/main/java/ch/sbb/compose_mds/example/MainActivity.kt index 66d1606..3cf8dd7 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/MainActivity.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/MainActivity.kt @@ -5,21 +5,32 @@ import android.content.res.Configuration import android.os.Bundle import androidx.activity.ComponentActivity import androidx.activity.compose.setContent +import androidx.compose.foundation.isSystemInDarkTheme +import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Box +import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.padding import androidx.compose.material3.Scaffold import androidx.compose.material3.Surface import androidx.compose.runtime.Composable +import androidx.compose.runtime.getValue +import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.remember +import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import androidx.navigation.compose.NavHost import androidx.navigation.compose.composable import androidx.navigation.compose.rememberNavController +import ch.sbb.compose_mds.beta.ExperimentalSBBComponent import ch.sbb.compose_mds.composables.header.SBBHeader import ch.sbb.compose_mds.composables.header.Small +import ch.sbb.compose_mds.beta.segmentedButton.SBBButtonSegment +import ch.sbb.compose_mds.beta.segmentedButton.SBBSegmentedButton import ch.sbb.compose_mds.example.pages.ButtonPage import ch.sbb.compose_mds.example.pages.CheckboxPage import ch.sbb.compose_mds.example.pages.ColorPage +import ch.sbb.compose_mds.example.pages.ContainerPage import ch.sbb.compose_mds.example.pages.HeaderPage import ch.sbb.compose_mds.example.pages.IconPage import ch.sbb.compose_mds.example.pages.LoadingIndicatorPage @@ -33,19 +44,29 @@ import ch.sbb.compose_mds.example.pages.SwitchPage import ch.sbb.compose_mds.example.pages.TabBarPage import ch.sbb.compose_mds.example.pages.TextFieldPage import ch.sbb.compose_mds.example.pages.TypographyPage +import ch.sbb.compose_mds.theme.SBBSpacing class MainActivity : ComponentActivity() { + @OptIn(ExperimentalSBBComponent::class) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContent { - SBBTheme() { + val isSystemInDarkTheme = isSystemInDarkTheme() + var isDarkTheme by remember { mutableStateOf(isSystemInDarkTheme) } + SBBTheme(darkTheme = isDarkTheme) { val navController = rememberNavController() Scaffold( topBar = { - SBBHeader.Small( - title = "SBB DSM Android", - navController = navController, - ) + Column(verticalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall)) { + SBBHeader.Small( + title = "SBB DSM Android", + navController = navController + ) + DarkLightThemeSelection( + onSelectionChanged = { selected -> isDarkTheme = selected }, + selection = isDarkTheme, + ) + } }, ) { Box(modifier = Modifier.padding(it)) { @@ -69,6 +90,7 @@ class MainActivity : ComponentActivity() { composable("slider") { SliderPage() } composable("notification-box") { NotificationBoxPage() } composable("tab-bar") { TabBarPage() } + composable("container") { ContainerPage() } } } } @@ -77,6 +99,29 @@ class MainActivity : ComponentActivity() { } } +@OptIn(ExperimentalSBBComponent::class) +@Composable +private fun DarkLightThemeSelection( + selection: Boolean, + onSelectionChanged: (Boolean) -> Unit +) { + SBBSegmentedButton( + modifier = Modifier.padding(horizontal = SBBSpacing.XSmall), + onSelectionChanged = onSelectionChanged, + selection = selection, + segments = listOf( + SBBButtonSegment( + label = "Light Theme", + value = false + ), + SBBButtonSegment( + label = "Dark Theme", + value = true + ), + ), + ) +} + @Preview(showBackground = true) @Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/ButtonPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/ButtonPage.kt index 90a245b..0ebea2d 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/ButtonPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/ButtonPage.kt @@ -5,47 +5,65 @@ import android.content.res.Configuration import android.widget.Toast import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxWidth -import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll +import androidx.compose.material3.Icon import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.PreviewParameter -import androidx.compose.ui.unit.dp import ch.sbb.compose_mds.beta.ExperimentalSBBComponent import ch.sbb.compose_mds.beta.button.SBBPrimaryButton import ch.sbb.compose_mds.beta.button.SBBSecondaryButton import ch.sbb.compose_mds.beta.button.SBBTertiaryButton import ch.sbb.compose_mds.beta.button.SBBTertiaryButtonSmall +import ch.sbb.compose_mds.beta.list.SBBListHeader +import ch.sbb.compose_mds.composables.container.SBBContentBox import ch.sbb.compose_mds.preview.SBBThemeConfigProvider import ch.sbb.compose_mds.preview.ThemePreviewConfig import ch.sbb.compose_mds.sbbicons.SBBIcons import ch.sbb.compose_mds.sbbicons.Small +import ch.sbb.compose_mds.sbbicons.small.CircleInformationSmall import ch.sbb.compose_mds.sbbicons.small.DogSmall +import ch.sbb.compose_mds.theme.SBBSpacing +import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalSBBComponent::class) @Composable fun ButtonPage() { val context = LocalContext.current - Column(Modifier.fillMaxWidth()) { - Row( - Modifier - .padding(vertical = 8.dp, horizontal = 16.dp) - .fillMaxWidth(), - horizontalArrangement = Arrangement.SpaceBetween, + Column( + Modifier + .defaultPadding() + .fillMaxWidth() + .verticalScroll( + state = rememberScrollState(), + ), + verticalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall) + ) { + SBBContentBox( + modifier = Modifier.fillMaxWidth(), + contentPadding = PaddingValues(SBBSpacing.XSmall) ) { - Text("Context: ${SBBTheme.contextName}") - Text("Dark Mode: ${SBBTheme.isDarkMode}") + Row(horizontalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall)) { + Icon( + imageVector = SBBIcons.Small.CircleInformationSmall, + contentDescription = null, + ) + Text("Context: ${SBBTheme.contextName}") + } } + SBBListHeader(text = "Primary") SBBPrimaryButton( modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 8.dp, vertical = 8.dp), + .fillMaxWidth(), label = "Primary Button", ) { Toast.makeText(context, "Primary Button clicked", Toast.LENGTH_SHORT).show() @@ -53,8 +71,7 @@ fun ButtonPage() { SBBPrimaryButton( modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 8.dp, vertical = 8.dp), + .fillMaxWidth(), enabled = false, label = "Primary Button disabled", ) { @@ -62,11 +79,11 @@ fun ButtonPage() { .makeText(context, "Primary Button disabled clicked", Toast.LENGTH_SHORT) .show() } + SBBListHeader(text = "Secondary") SBBSecondaryButton( modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 8.dp, vertical = 8.dp), + .fillMaxWidth(), label = "Secondary Button", ) { Toast.makeText(context, "Secondary Button clicked", Toast.LENGTH_SHORT).show() @@ -74,8 +91,7 @@ fun ButtonPage() { SBBSecondaryButton( modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 8.dp, vertical = 8.dp), + .fillMaxWidth(), enabled = false, label = "Secondary Button disabled", ) { @@ -83,14 +99,12 @@ fun ButtonPage() { .makeText(context, "Secondary Button disabled clicked", Toast.LENGTH_SHORT) .show() } + SBBListHeader(text = "Tertiary") Row( - Modifier.padding(vertical = 8.dp), + horizontalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall) ) { SBBTertiaryButton( icon = SBBIcons.Small.DogSmall, - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText(context, "Tertiary Button with icon clicked", Toast.LENGTH_SHORT) @@ -99,9 +113,6 @@ fun ButtonPage() { SBBTertiaryButton( icon = SBBIcons.Small.DogSmall, label = "dog", - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText( @@ -113,9 +124,6 @@ fun ButtonPage() { SBBTertiaryButton( enabled = false, icon = SBBIcons.Small.DogSmall, - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText(context, "Tertiary Button with icon clicked", Toast.LENGTH_SHORT) @@ -125,9 +133,6 @@ fun ButtonPage() { enabled = false, icon = SBBIcons.Small.DogSmall, label = "dog", - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText( @@ -137,14 +142,12 @@ fun ButtonPage() { ).show() } } + SBBListHeader(text = "Tertiary Small") Row( - Modifier.padding(vertical = 8.dp), + horizontalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall) ) { SBBTertiaryButtonSmall( icon = SBBIcons.Small.DogSmall, - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText( @@ -156,9 +159,6 @@ fun ButtonPage() { SBBTertiaryButtonSmall( icon = SBBIcons.Small.DogSmall, label = "dog", - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText( @@ -170,9 +170,6 @@ fun ButtonPage() { SBBTertiaryButtonSmall( enabled = false, icon = SBBIcons.Small.DogSmall, - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText( @@ -185,9 +182,6 @@ fun ButtonPage() { enabled = false, icon = SBBIcons.Small.DogSmall, label = "dog", - modifier = - Modifier - .padding(start = 8.dp), ) { Toast .makeText( @@ -200,11 +194,13 @@ fun ButtonPage() { } } -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_NO) -@Preview(showBackground = false, uiMode = Configuration.UI_MODE_NIGHT_YES) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -fun ButtonPagePreview( +fun Preview_ButtonPage( @PreviewParameter(SBBThemeConfigProvider::class) config: ThemePreviewConfig, ) { - SBBTheme(themeContext = config.themeContext, includeSurface = true) { ButtonPage() } + SBBTheme(themeContext = config.themeContext, includeSurface = true) { + ButtonPage() + } } diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/CheckboxPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/CheckboxPage.kt index b530c26..fdc8329 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/CheckboxPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/CheckboxPage.kt @@ -1,5 +1,7 @@ package ch.sbb.compose_mds.example.pages +import SBBTheme +import android.content.res.Configuration import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.padding @@ -18,9 +20,9 @@ import ch.sbb.compose_mds.composables.checkbox.SBBCheckbox import ch.sbb.compose_mds.sbbicons.SBBIcons import ch.sbb.compose_mds.sbbicons.Small import ch.sbb.compose_mds.sbbicons.small.AppIconSmall +import ch.sbb.compose_mds.theme.defaultPadding @Composable -@Preview(showBackground = true) fun CheckboxPage() { Column( modifier = Modifier @@ -28,10 +30,7 @@ fun CheckboxPage() { .verticalScroll( state = rememberScrollState(), ) - .padding( - vertical = 16.dp, - horizontal = 8.dp, - ), + .defaultPadding(), ) { Text("Checkbox") var checkedState: Boolean? by remember { mutableStateOf(false) } @@ -68,4 +67,13 @@ fun CheckboxPage() { onCheckedChange = { checkedState3 = it }, ) } +} + +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) +@Composable +fun Preview_CheckboxPage() { + SBBTheme(includeSurface = true) { + CheckboxPage() + } } \ No newline at end of file diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/ColorPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/ColorPage.kt index 6d9495c..ae85c44 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/ColorPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/ColorPage.kt @@ -13,7 +13,6 @@ import androidx.compose.foundation.lazy.grid.GridCells import androidx.compose.foundation.lazy.grid.GridItemSpan import androidx.compose.foundation.lazy.grid.LazyVerticalGrid import androidx.compose.material3.MaterialTheme -import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier @@ -22,8 +21,8 @@ import androidx.compose.ui.graphics.toArgb import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.container.SBBGroup import ch.sbb.compose_mds.beta.list.SBBListHeader +import ch.sbb.compose_mds.composables.container.SBBContentBox import ch.sbb.compose_mds.theme.PrimitiveColors import ch.sbb.compose_mds.theme.SBBConst import ch.sbb.compose_mds.theme.SBBSpacing @@ -88,10 +87,10 @@ private fun ColorEntry( name: String, color: Color, ) { - SBBGroup( + SBBContentBox( modifier = - Modifier - .size(100.dp), + Modifier.size(100.dp), + contentPadding = PaddingValues(0.dp), ) { Box( modifier = @@ -123,13 +122,11 @@ private fun ColorEntry( } } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -private fun Preview_TypographyPage() { - SBBTheme { - Surface { - ColorPage() - } +private fun Preview_ColorPage() { + SBBTheme(includeSurface = true) { + ColorPage() } } diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/ContainerPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/ContainerPage.kt new file mode 100644 index 0000000..fb8d603 --- /dev/null +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/ContainerPage.kt @@ -0,0 +1,36 @@ +package ch.sbb.compose_mds.example.pages + +import SBBTheme +import android.content.res.Configuration +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.padding +import androidx.compose.material3.Text +import androidx.compose.runtime.Composable +import androidx.compose.ui.Modifier +import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp +import ch.sbb.compose_mds.beta.ExperimentalSBBComponent +import ch.sbb.compose_mds.beta.list.SBBListHeader +import ch.sbb.compose_mds.composables.container.SBBContentBox + +@OptIn(ExperimentalSBBComponent::class) +@Composable +fun ContainerPage() { + Column( + modifier = Modifier.padding(16.dp) + ) { + SBBListHeader(text = "Content-Box") + SBBContentBox { + Text("Preview") + } + } +} + +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) +@Composable +fun Preview_ContainerPage() { + SBBTheme(includeSurface = true) { + ContainerPage() + } +} diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/HeaderPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/HeaderPage.kt index 474d7b4..a758856 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/HeaderPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/HeaderPage.kt @@ -1,5 +1,6 @@ package ch.sbb.compose_mds.example.pages +import SBBTheme import android.content.res.Configuration import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Spacer @@ -35,23 +36,42 @@ fun HeaderPage() { SBBListHeader(text = "Default") SBBHeader.Default(title = "SBB Header Default", navController = rememberNavController()) SBBListHeader(text = "Default mit Zurück-Button") - SBBHeader.Default(title = "SBB Header Default", navController = rememberNavController(), navigationType = NavigationType.Back) + SBBHeader.Default( + title = "SBB Header Default", + navController = rememberNavController(), + navigationType = NavigationType.Back + ) SBBListHeader(text = "Default mit Abbrechen-Button") - SBBHeader.Default(title = "SBB Header Default", navController = rememberNavController(), navigationType = NavigationType.Cancel) + SBBHeader.Default( + title = "SBB Header Default", + navController = rememberNavController(), + navigationType = NavigationType.Cancel + ) Spacer(modifier = Modifier.padding(vertical = 20.dp)) SBBListHeader(text = "Small") SBBHeader.Small(title = "SBB Header Small", navController = rememberNavController()) SBBListHeader(text = "Default mit Zurück-Button") - SBBHeader.Small(title = "SBB Header Small", navController = rememberNavController(), navigationType = NavigationType.Back) + SBBHeader.Small( + title = "SBB Header Small", + navController = rememberNavController(), + navigationType = NavigationType.Back + ) SBBListHeader(text = "Default mit Abbrechen-Button") - SBBHeader.Small(title = "SBB Header Small", navController = rememberNavController(), navigationType = NavigationType.Cancel) + SBBHeader.Small( + title = "SBB Header Small", + navController = rememberNavController(), + navigationType = NavigationType.Cancel + ) } } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) + +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -fun HeaderPagePreview() { - HeaderPage() +fun Preview_HeaderPage() { + SBBTheme(includeSurface = true) { + HeaderPage() + } } \ No newline at end of file diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/IconPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/IconPage.kt index f7bc0c1..3e24523 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/IconPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/IconPage.kt @@ -5,36 +5,45 @@ import android.content.res.Configuration import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.PaddingValues +import androidx.compose.foundation.layout.fillMaxSize +import androidx.compose.foundation.layout.heightIn import androidx.compose.foundation.lazy.grid.GridCells import androidx.compose.foundation.lazy.grid.LazyVerticalGrid import androidx.compose.foundation.lazy.grid.items +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.material3.Icon -import androidx.compose.material3.Surface import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.container.SBBGroup +import ch.sbb.compose_mds.beta.list.SBBListHeader +import ch.sbb.compose_mds.composables.container.SBBContentBox import ch.sbb.compose_mds.sbbicons.Medium import ch.sbb.compose_mds.sbbicons.SBBIcons import ch.sbb.compose_mds.sbbicons.Small import ch.sbb.compose_mds.sbbicons.all -import ch.sbb.compose_mds.theme.SBBConst import ch.sbb.compose_mds.theme.SBBSpacing import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalSBBComponent::class) @Composable fun IconPage() { - Column { - SBBGroup(modifier = Modifier.defaultPadding()) { + Column( + modifier = Modifier + .defaultPadding() + .fillMaxSize() + .verticalScroll(rememberScrollState()) + ) { + SBBListHeader(text = "Small Icons") + SBBContentBox { LazyVerticalGrid( + modifier = Modifier.heightIn(max = 500.dp), columns = GridCells.Adaptive(24.dp), verticalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall), horizontalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall), contentPadding = PaddingValues(SBBSpacing.XSmall), - userScrollEnabled = false ) { items(SBBIcons.Small.all) { Icon( @@ -44,13 +53,14 @@ fun IconPage() { } } } - SBBGroup(modifier = Modifier.defaultPadding()) { + SBBListHeader(text = "Medium Icons") + SBBContentBox { LazyVerticalGrid( + modifier = Modifier.heightIn(max = 500.dp), columns = GridCells.Adaptive(36.dp), verticalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall), horizontalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall), contentPadding = PaddingValues(SBBSpacing.XSmall), - userScrollEnabled = false ) { items(SBBIcons.Medium.all) { Icon( @@ -63,13 +73,11 @@ fun IconPage() { } } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -private fun IconPagePreview() { - SBBTheme { - Surface { - IconPage() - } +fun Preview_IconPage() { + SBBTheme(includeSurface = true) { + IconPage() } } diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/LoadingIndicatorPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/LoadingIndicatorPage.kt index 155a998..8a1d9df 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/LoadingIndicatorPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/LoadingIndicatorPage.kt @@ -10,11 +10,16 @@ import androidx.compose.ui.tooling.preview.Preview import ch.sbb.compose_mds.beta.ExperimentalSBBComponent import ch.sbb.compose_mds.beta.list.SBBListHeader import ch.sbb.compose_mds.composables.loadingIndicator.SBBLoadingIndicator +import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalSBBComponent::class) @Composable fun LoadingIndicatorPage() { - Column(Modifier.fillMaxWidth()) { + Column( + Modifier + .fillMaxWidth() + .defaultPadding() + ) { SBBListHeader(text = "Small") SBBLoadingIndicator.Small() SBBListHeader(text = "Default") @@ -22,11 +27,12 @@ fun LoadingIndicatorPage() { } } -@Preview(showBackground = true) +// private as loading indicator can't reliably be golden tested +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) @Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -fun LoadingIndicatorPagePreview() { - SBBTheme { +private fun LoadingIndicatorPagePreview() { + SBBTheme(includeSurface = true) { LoadingIndicatorPage() } } \ No newline at end of file diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/MainPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/MainPage.kt index 2a985dc..6307d97 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/MainPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/MainPage.kt @@ -3,19 +3,20 @@ package ch.sbb.compose_mds.example.pages import SBBTheme import android.content.res.Configuration import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll -import androidx.compose.material3.Surface import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview +import androidx.compose.ui.unit.dp import androidx.navigation.NavController import androidx.navigation.compose.rememberNavController import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.container.SBBGroup import ch.sbb.compose_mds.beta.list.SBBListHeader import ch.sbb.compose_mds.beta.list.SBBListItem +import ch.sbb.compose_mds.composables.container.SBBContentBox import ch.sbb.compose_mds.sbbicons.SBBIcons import ch.sbb.compose_mds.sbbicons.Small import ch.sbb.compose_mds.sbbicons.small.ChevronSmallRightSmall @@ -24,7 +25,6 @@ import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalSBBComponent::class) @Composable fun MainPage(navController: NavController) { - Column( modifier = Modifier .defaultPadding() @@ -34,98 +34,71 @@ fun MainPage(navController: NavController) { ) ) { SBBListHeader(text = "Basics") - SBBGroup { - SBBListItem( - title = "Icon", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("icon") }, - ) - SBBListItem( + SBBContentBox(contentPadding = PaddingValues(0.dp)) { + ComponentListItem(title = "Icon", onClick = { navController.navigate("icon") }) + ComponentListItem( title = "Typography", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, onClick = { navController.navigate("typography") }, ) - SBBListItem( + ComponentListItem( title = "Color", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, onClick = { navController.navigate("color") }, isLastElement = true, ) } SBBListHeader(text = "Components") - SBBGroup { - SBBListItem( + SBBContentBox(contentPadding = PaddingValues(0.dp)) { + ComponentListItem(title = "Button", onClick = { navController.navigate("button") }) + ComponentListItem(title = "Checkbox", onClick = { navController.navigate("checkbox") }) + ComponentListItem( + title = "Container", + onClick = { navController.navigate("container") }) + ComponentListItem(title = "Header", onClick = { navController.navigate("header") }) + ComponentListItem( + title = "LoadingIndicator", + onClick = { navController.navigate("loading-indicator") }) + ComponentListItem( title = "Modal View", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("modal-view") }, - ) - SBBListItem( - title = "Checkbox", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("checkbox") }, - ) - SBBListItem( - title = "Button", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("button") }, - ) - SBBListItem( + onClick = { navController.navigate("modal-view") }) + ComponentListItem( + title = "NotificationBox", + onClick = { navController.navigate("notification-box") }) + ComponentListItem( title = "SegmentedButton", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("segmented-button") }, - ) - SBBListItem( - title = "LoadingIndicator", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("loading-indicator") }, - ) - SBBListItem( - title = "Switch", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("switch") }, - ) - SBBListItem( - title = "Header", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("header") }, - ) - SBBListItem( + onClick = { navController.navigate("segmented-button") }) + ComponentListItem(title = "Slider", onClick = { navController.navigate("slider") }) + ComponentListItem(title = "Status", onClick = { navController.navigate("status") }) + ComponentListItem(title = "Switch", onClick = { navController.navigate("switch") }) + ComponentListItem(title = "TabBar", onClick = { navController.navigate("tab-bar") }) + ComponentListItem( title = "TextField", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, onClick = { navController.navigate("text-field") }, - ) - SBBListItem( - title = "Status", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("status") }, - ) - SBBListItem( - title = "Slider", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("slider") }, - ) - SBBListItem( - title = "NotificationBox", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("notification-box") }, - ) - SBBListItem( - title = "TabBar", - trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, - onClick = { navController.navigate("tab-bar") }, isLastElement = true, ) } } } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) +@OptIn(ExperimentalSBBComponent::class) @Composable -fun MainPagePreview() { - SBBTheme { - Surface { - MainPage(navController = rememberNavController()) - } +private fun ComponentListItem( + title: String, + onClick: (() -> Unit)? = null, + isLastElement: Boolean = false, +) { + SBBListItem( + title = title, + trailingIcon = SBBIcons.Small.ChevronSmallRightSmall, + onClick = onClick, + isLastElement = isLastElement + ) +} + +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) +@Composable +private fun MainPagePreview() { + SBBTheme(includeSurface = true) { + MainPage(navController = rememberNavController()) } } diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/ModalViewPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/ModalViewPage.kt index 3136876..de46217 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/ModalViewPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/ModalViewPage.kt @@ -1,5 +1,6 @@ package ch.sbb.compose_mds.example.pages +import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding @@ -13,9 +14,11 @@ import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.unit.dp import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.modal.SBBModalView import ch.sbb.compose_mds.beta.button.SBBSecondaryButton +import ch.sbb.compose_mds.beta.list.SBBListHeader +import ch.sbb.compose_mds.beta.modal.SBBModalView import ch.sbb.compose_mds.example.composeable.Placeholder +import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalMaterial3Api::class, ExperimentalSBBComponent::class) @@ -24,13 +27,16 @@ fun ModalViewPage() { val sheetState = rememberModalBottomSheetState() var showBottomSheet by remember { mutableStateOf(false) } - SBBSecondaryButton( - label = "Show ModalView", - modifier = Modifier - .fillMaxWidth() - .padding(horizontal = 8.dp, vertical = 8.dp), - onClick = { showBottomSheet = true } - ) + Column(modifier = Modifier.defaultPadding()) { + SBBListHeader(text = "ModalView") + SBBSecondaryButton( + label = "Show", + modifier = Modifier + .fillMaxWidth() + .padding(horizontal = 8.dp, vertical = 8.dp), + onClick = { showBottomSheet = true } + ) + } if (showBottomSheet) { SBBModalView( diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/NotificationBoxPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/NotificationBoxPage.kt index 2be8816..48a5209 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/NotificationBoxPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/NotificationBoxPage.kt @@ -4,11 +4,13 @@ import SBBTheme import android.content.res.Configuration import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column -import androidx.compose.material3.Surface +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview -import ch.sbb.compose_mds.beta.notificationBox.SBBNotificationBox +import ch.sbb.compose_mds.composables.notificationBox.SBBNotificationBox import ch.sbb.compose_mds.sbbicons.SBBIcons import ch.sbb.compose_mds.sbbicons.Small import ch.sbb.compose_mds.sbbicons.small.ArrowsCircleSmall @@ -21,23 +23,33 @@ private const val text = @Composable fun NotificationBoxPage() { Column( - modifier = Modifier.defaultPadding(), + modifier = Modifier + .defaultPadding() + .fillMaxWidth() + .verticalScroll( + state = rememberScrollState(), + ), verticalArrangement = Arrangement.spacedBy(SBBConst.DEFAULT_HORIZONTAL_PADDING) ) { SBBNotificationBox.Alert(title = "Title", text = text, isCloseable = true) SBBNotificationBox.Warning(text = text, interactionIcon = null) - SBBNotificationBox.Success(title = "Title", text = text, interactionIcon = SBBIcons.Small.ArrowsCircleSmall) - SBBNotificationBox.Information(text = text, interactionIcon = SBBIcons.Small.ArrowsCircleSmall) + SBBNotificationBox.Success( + title = "Title", + text = text, + interactionIcon = SBBIcons.Small.ArrowsCircleSmall + ) + SBBNotificationBox.Information( + text = text, + interactionIcon = SBBIcons.Small.ArrowsCircleSmall + ) } } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -private fun NotificationBoxPagePreview() { - SBBTheme { - Surface { - NotificationBoxPage() - } +fun Preview_NotificationBoxPage() { + SBBTheme(includeSurface = true) { + NotificationBoxPage() } } diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/SegmentedButtonPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/SegmentedButtonPage.kt index aa3e9be..1f5eb7a 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/SegmentedButtonPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/SegmentedButtonPage.kt @@ -6,7 +6,9 @@ import android.content.res.Configuration import android.widget.Toast import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf @@ -17,54 +19,59 @@ import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.button.SBBButtonSegment -import ch.sbb.compose_mds.beta.container.SBBGroup -import ch.sbb.compose_mds.beta.button.SBBSegmentedButton +import ch.sbb.compose_mds.beta.list.SBBListHeader +import ch.sbb.compose_mds.beta.segmentedButton.SBBButtonSegment +import ch.sbb.compose_mds.beta.segmentedButton.SBBSegmentedButton +import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalSBBComponent::class) @Composable fun SegmentedButtonPage() { val context = LocalContext.current - SBBGroup(modifier = Modifier.padding(8.dp)) { + Column( + modifier = Modifier + .defaultPadding() + .fillMaxWidth() + .verticalScroll( + state = rememberScrollState(), + ), + verticalArrangement = Arrangement.spacedBy(8.dp) + ) { - Column( - modifier = Modifier.padding(16.dp), - verticalArrangement = Arrangement.spacedBy(8.dp) - ) { + // DEFAULT + SBBListHeader(text = "Default") - // DEFAULT + // Default with three segments + var defaultSelection1: String by remember { mutableStateOf("Selection 1") } + SBBSegmentedButton( + onSelectionChanged = { selected -> + defaultSelection1 = selected + toastSelection(context, selected) + }, + selection = defaultSelection1, + segments = threeButtonSegments() + ) - // Default with three segments - var defaultSelection1: String by remember { mutableStateOf("Selection 1") } - SBBSegmentedButton( - onSelectionChanged = { selected -> - defaultSelection1 = selected - toastSelection(context, selected) - }, - selection = defaultSelection1, - segments = threeButtonSegments() - ) + // Default with two segments + var defaultSelection2: String by remember { mutableStateOf("Selection 1") } + SBBSegmentedButton( + onSelectionChanged = { selected -> + defaultSelection2 = selected + toastSelection(context, selected) + }, + selection = defaultSelection2, + segments = twoButtonSegments() + ) - // Default with two segments - var defaultSelection2: String by remember { mutableStateOf("Selection 1") } - SBBSegmentedButton( - onSelectionChanged = { selected -> - defaultSelection2 = selected - toastSelection(context, selected) - }, - selection = defaultSelection2, - segments = twoButtonSegments() - ) - - // Default with two segments, disabled - SBBSegmentedButton( - onSelectionChanged = {}, - selection = "Selection 1", - segments = twoButtonSegments(), - enabled = false, - ) - } + // Default with two segments, disabled + SBBListHeader(text = "Disabled") + SBBSegmentedButton( + onSelectionChanged = {}, + selection = "Selection 1", + segments = twoButtonSegments(), + enabled = false, + ) } } @@ -104,11 +111,11 @@ private fun toastSelection(context: Context, selection: String) { ).show() } -@Preview(showBackground = true) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) @Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -fun SegmentedButtonPagePreview() { - SBBTheme { +fun Preview_SegmentedButtonPage() { + SBBTheme(includeSurface = true) { SegmentedButtonPage() } } \ No newline at end of file diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/SliderPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/SliderPage.kt index a752774..9100158 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/SliderPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/SliderPage.kt @@ -2,14 +2,17 @@ package ch.sbb.compose_mds.example.pages import SBBTheme import android.content.res.Configuration +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.SliderState -import androidx.compose.material3.Surface import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.container.SBBGroup +import ch.sbb.compose_mds.beta.list.SBBListHeader import ch.sbb.compose_mds.beta.slider.SBBSlider import ch.sbb.compose_mds.theme.defaultPadding import ch.sbb.compose_mds.theme.elementPadding @@ -17,22 +20,27 @@ import ch.sbb.compose_mds.theme.elementPadding @OptIn(ExperimentalMaterial3Api::class, ExperimentalSBBComponent::class) @Composable fun SliderPage() { - SBBGroup( - modifier = Modifier.defaultPadding() + Column( + modifier = Modifier + .defaultPadding() + .fillMaxWidth() + .verticalScroll( + state = rememberScrollState(), + ), ) { val sliderState = SliderState(value = .25f) + SBBListHeader(text = "Default") SBBSlider(modifier = Modifier.elementPadding(), state = sliderState) + SBBListHeader(text = "Disabled") SBBSlider(modifier = Modifier.elementPadding(), state = sliderState, enabled = false) } } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -private fun Preview_SliderPage() { - SBBTheme { - Surface { - SliderPage() - } +fun Preview_SliderPage() { + SBBTheme(includeSurface = true) { + SliderPage() } } \ No newline at end of file diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/StatusPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/StatusPage.kt index b5ed288..09fa073 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/StatusPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/StatusPage.kt @@ -3,53 +3,59 @@ package ch.sbb.compose_mds.example.pages import SBBTheme import android.content.res.Configuration import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.padding -import androidx.compose.material3.Text +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp +import ch.sbb.compose_mds.beta.ExperimentalSBBComponent +import ch.sbb.compose_mds.beta.list.SBBListHeader import ch.sbb.compose_mds.composables.status.Alert import ch.sbb.compose_mds.composables.status.Information import ch.sbb.compose_mds.composables.status.SBBStatus import ch.sbb.compose_mds.composables.status.Success import ch.sbb.compose_mds.composables.status.Warning +import ch.sbb.compose_mds.theme.SBBSpacing +import ch.sbb.compose_mds.theme.defaultPadding +@OptIn(ExperimentalSBBComponent::class) @Composable fun StatusPage() { - Box( + Column( modifier = Modifier - .padding( - vertical = 16.dp, - horizontal = 8.dp, - ) + .defaultPadding() + .fillMaxWidth() + .verticalScroll( + state = rememberScrollState(), + ), + verticalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall) ) { - Column( - verticalArrangement = Arrangement.spacedBy(8.dp) - ) { - Text("Success") - SBBStatus.Success() - SBBStatus.Success(text = "Success with Text") - Text("Alert") - SBBStatus.Alert() - SBBStatus.Alert(text = "Alert with Text") - Text("Warning") - SBBStatus.Warning() - SBBStatus.Warning(text = "Warning with Text") - Text("Information") - SBBStatus.Information() - SBBStatus.Information(text = "Information with Text") - } + SBBListHeader(text = "Success") + SBBStatus.Success() + SBBStatus.Success(text = "Success with Text") + + SBBListHeader(text = "Alert") + SBBStatus.Alert() + SBBStatus.Alert(text = "Alert with Text") + + SBBListHeader(text = "Warning") + SBBStatus.Warning() + SBBStatus.Warning(text = "Warning with Text") + + SBBListHeader(text = "Information") + SBBStatus.Information() + SBBStatus.Information(text = "Information with Text") } } -@Preview(showBackground = true) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) @Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -fun StatusPagePreview() { - SBBTheme { +fun Preview_StatusPage() { + SBBTheme(includeSurface = true) { StatusPage() } } \ No newline at end of file diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/SwitchPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/SwitchPage.kt index e927013..faf4aa9 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/SwitchPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/SwitchPage.kt @@ -1,34 +1,56 @@ package ch.sbb.compose_mds.example.pages +import SBBTheme +import android.content.res.Configuration import androidx.compose.foundation.layout.Arrangement -import androidx.compose.foundation.layout.Row -import androidx.compose.foundation.layout.padding -import androidx.compose.material3.Switch +import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier -import androidx.compose.ui.unit.dp +import androidx.compose.ui.tooling.preview.Preview import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.container.SBBGroup +import ch.sbb.compose_mds.beta.list.SBBListHeader import ch.sbb.compose_mds.beta.switch.SBBSwitch +import ch.sbb.compose_mds.theme.SBBSpacing +import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalSBBComponent::class) @Composable fun SwitchPage() { - SBBGroup(modifier = Modifier.padding(8.dp)) { + Column( + modifier = Modifier + .defaultPadding() + .fillMaxWidth() + .verticalScroll( + state = rememberScrollState(), + ), + verticalArrangement = Arrangement.spacedBy(SBBSpacing.XSmall) + ) { + var checkedState: Boolean by remember { mutableStateOf(true) } - Row( - modifier = Modifier.padding(16.dp), - horizontalArrangement = Arrangement.spacedBy(8.dp) - ) { - var checkedState: Boolean by remember { mutableStateOf(true) } - SBBSwitch(checked = checkedState, onCheckedChange = { checked -> checkedState = checked }) + SBBListHeader(text = "Default") + SBBSwitch( + checked = checkedState, + onCheckedChange = { checked -> checkedState = checked } + ) - SBBSwitch(checked = true, enabled = false, onCheckedChange = { }) - SBBSwitch(checked = false, enabled = false, onCheckedChange = { }) - } + SBBListHeader(text = "Disabled") + SBBSwitch(checked = true, enabled = false, onCheckedChange = { }) + SBBSwitch(checked = false, enabled = false, onCheckedChange = { }) + } +} + +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) +@Composable +fun Preview_SwitchPage() { + SBBTheme(includeSurface = true) { + SwitchPage() } } diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/TabBarPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/TabBarPage.kt index ff88933..c4a2f93 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/TabBarPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/TabBarPage.kt @@ -7,7 +7,6 @@ import androidx.compose.foundation.layout.WindowInsets import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.foundation.layout.navigationBars import androidx.compose.foundation.layout.windowInsetsPadding -import androidx.compose.material3.Surface import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue import androidx.compose.ui.Alignment @@ -59,13 +58,11 @@ fun TabBarPage() { } } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -private fun Preview_TabBarPage() { - SBBTheme { - Surface { - TabBarPage() - } +fun Preview_TabBarPage() { + SBBTheme(includeSurface = true) { + TabBarPage() } } diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/TextFieldPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/TextFieldPage.kt index 2f74c97..87cdb2d 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/TextFieldPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/TextFieldPage.kt @@ -2,9 +2,11 @@ package ch.sbb.compose_mds.example.pages import SBBTheme import android.content.res.Configuration -import androidx.compose.foundation.layout.Box import androidx.compose.foundation.layout.Column -import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.PaddingValues +import androidx.compose.foundation.layout.fillMaxWidth +import androidx.compose.foundation.rememberScrollState +import androidx.compose.foundation.verticalScroll import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.getValue @@ -13,28 +15,32 @@ import androidx.compose.runtime.remember import androidx.compose.runtime.setValue import androidx.compose.ui.Modifier import androidx.compose.ui.tooling.preview.Preview -import androidx.compose.ui.unit.dp import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.container.SBBGroup +import ch.sbb.compose_mds.beta.list.SBBListHeader import ch.sbb.compose_mds.beta.text.SBBTextField +import ch.sbb.compose_mds.composables.container.SBBContentBox import ch.sbb.compose_mds.sbbicons.SBBIcons import ch.sbb.compose_mds.sbbicons.Small import ch.sbb.compose_mds.sbbicons.small.CircleInformationSmall import ch.sbb.compose_mds.sbbicons.small.DogSmall +import ch.sbb.compose_mds.theme.SBBSpacing +import ch.sbb.compose_mds.theme.defaultPadding @OptIn(ExperimentalSBBComponent::class) @Composable fun TextFieldPage() { var text by remember { mutableStateOf("Value") } - Box( + Column( modifier = Modifier - .padding( - vertical = 16.dp, - horizontal = 8.dp, - ) + .defaultPadding() + .fillMaxWidth() + .verticalScroll( + state = rememberScrollState(), + ), ) { - SBBGroup { + SBBListHeader(text = "Default") + SBBContentBox(contentPadding = PaddingValues(SBBSpacing.XSmall)) { Column { SBBTextField( value = text, @@ -53,12 +59,6 @@ fun TextFieldPage() { label = { Text("Placeholder") }, placeholder = { Text("Placeholder") }, ) - SBBTextField( - value = text, - onValueChange = { text = it }, - label = { Text("Error") }, - isError = true, - ) SBBTextField( value = text, onValueChange = { text = it }, @@ -78,6 +78,11 @@ fun TextFieldPage() { leadingIcon = SBBIcons.Small.DogSmall, trailingIcon = SBBIcons.Small.CircleInformationSmall, ) + } + } + SBBListHeader(text = "Error") + SBBContentBox(contentPadding = PaddingValues(SBBSpacing.XSmall)) { + Column { SBBTextField( value = text, onValueChange = { text = it }, @@ -86,16 +91,22 @@ fun TextFieldPage() { trailingIcon = SBBIcons.Small.CircleInformationSmall, isError = true, ) + SBBTextField( + value = text, + onValueChange = { text = it }, + label = { Text("Error") }, + isError = true, + ) } } } } -@Preview(showBackground = true) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) @Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -fun TextFieldPagePreview() { - SBBTheme { +fun Preview_TextFieldPage() { + SBBTheme(includeSurface = true) { TextFieldPage() } } \ No newline at end of file diff --git a/example/src/main/java/ch/sbb/compose_mds/example/pages/TypographyPage.kt b/example/src/main/java/ch/sbb/compose_mds/example/pages/TypographyPage.kt index d4a99e1..9c1a4c2 100644 --- a/example/src/main/java/ch/sbb/compose_mds/example/pages/TypographyPage.kt +++ b/example/src/main/java/ch/sbb/compose_mds/example/pages/TypographyPage.kt @@ -3,23 +3,23 @@ package ch.sbb.compose_mds.example.pages import SBBTheme import android.content.res.Configuration import androidx.compose.foundation.layout.Column +import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.padding import androidx.compose.foundation.rememberScrollState import androidx.compose.foundation.verticalScroll import androidx.compose.material3.HorizontalDivider import androidx.compose.material3.MaterialTheme -import androidx.compose.material3.Surface import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Modifier import androidx.compose.ui.text.TextStyle import androidx.compose.ui.tooling.preview.Preview import ch.sbb.compose_mds.beta.ExperimentalSBBComponent -import ch.sbb.compose_mds.beta.container.SBBGroup import ch.sbb.compose_mds.beta.list.SBBListHeader +import ch.sbb.compose_mds.composables.container.SBBContentBox import ch.sbb.compose_mds.theme.SBBConst import ch.sbb.compose_mds.theme.SBBSpacing -import ch.sbb.compose_mds.theme.SBBTypography +import ch.sbb.compose_mds.theme.defaultPadding private const val DEFAULT_TEXT = "The quick brown fox jumps over the lazy dog" @@ -28,8 +28,8 @@ fun TypographyPage() { Column( modifier = Modifier - .verticalScroll(rememberScrollState()) - .padding(vertical = SBBSpacing.XSmall), + .defaultPadding() + .verticalScroll(rememberScrollState()), ) { MaterialTypography() SBBTypographySection() @@ -77,8 +77,6 @@ private fun SBBTypographySection() { TextStylePreview(name = "XSmallBold", SBBTheme.sbbTypography.XSmallBold) TextStylePreview(name = "XXSmallLight", SBBTheme.sbbTypography.XXSmallLight) TextStylePreview(name = "XXSmallBold", SBBTheme.sbbTypography.XXSmallBold) - - } @OptIn(ExperimentalSBBComponent::class) @@ -88,7 +86,7 @@ private fun TextStylePreview( style: TextStyle, ) { SBBListHeader(text = name) - SBBGroup(modifier = Modifier.padding(horizontal = SBBConst.DEFAULT_HORIZONTAL_PADDING)) { + SBBContentBox(contentPadding = PaddingValues(horizontal = SBBConst.DEFAULT_HORIZONTAL_PADDING)) { Text( text = DEFAULT_TEXT, style = style, @@ -108,13 +106,11 @@ private fun TextStyleInfos(style: TextStyle) { ) } -@Preview(showBackground = true) -@Preview(showBackground = true, uiMode = Configuration.UI_MODE_NIGHT_YES) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_NO) +@Preview(uiMode = Configuration.UI_MODE_NIGHT_YES) @Composable -private fun Preview_TypographyPage() { - SBBTheme { - Surface { - TypographyPage() - } +fun Preview_TypographyPage() { + SBBTheme(includeSurface = true) { + TypographyPage() } } diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT.png deleted file mode 100644 index 9020f6c..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5c7fe2b0e1ea4e04a79ad6cc89237e61bd4fafc1b7cb83f66b2485fc353ce261 -size 67190 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT0.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT0.png deleted file mode 100644 index 999ce4f..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT0.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT1.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT1.png deleted file mode 100644 index d6a0631..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT1.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT2.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT2.png deleted file mode 100644 index 843aa74..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.NIGHT2.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index fd07934..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f43d442c53fc06014c4b8fff9f6a5347be2958f620f01e6278e009992eefe756 -size 60629 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY0.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY0.png deleted file mode 100644 index 8d27bb9..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY0.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY1.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY1.png deleted file mode 100644 index 2f597eb..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY1.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY2.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY2.png deleted file mode 100644 index 55f7f26..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.ButtonPagePreview.WITH_BACKGROUND_DAY2.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY0.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY0.png new file mode 100644 index 0000000..b10720f Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY0.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY1.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY1.png new file mode 100644 index 0000000..33c542e Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY1.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY2.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY2.png new file mode 100644 index 0000000..f05b42d Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.DAY2.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT0.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT0.png new file mode 100644 index 0000000..8b4985e Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT0.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT1.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT1.png new file mode 100644 index 0000000..4927dd8 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT1.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT2.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT2.png new file mode 100644 index 0000000..44cbdab Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ButtonPageKt.Preview_ButtonPage.NIGHT2.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.CheckboxPage.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.CheckboxPage.WITH_BACKGROUND.png deleted file mode 100644 index d412fec..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.CheckboxPage.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f21b5bca0d6de25a719e09ee10b6d8d7db52af50785a568fe2183d3339b5587b -size 50839 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.Preview_CheckboxPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.Preview_CheckboxPage.DAY.png new file mode 100644 index 0000000..c9da04b Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.Preview_CheckboxPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.Preview_CheckboxPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.Preview_CheckboxPage.NIGHT.png new file mode 100644 index 0000000..9d398aa Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.CheckboxPageKt.Preview_CheckboxPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ColorPageKt.Preview_TypographyPage.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ColorPageKt.Preview_TypographyPage.WITH_BACKGROUND.png deleted file mode 100644 index 8e3960f..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ColorPageKt.Preview_TypographyPage.WITH_BACKGROUND.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ColorPageKt.Preview_TypographyPage.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ColorPageKt.Preview_TypographyPage.WITH_BACKGROUND_NIGHT.png deleted file mode 100644 index 1814fc8..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.ColorPageKt.Preview_TypographyPage.WITH_BACKGROUND_NIGHT.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ContainerPageKt.Preview_ContainerPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ContainerPageKt.Preview_ContainerPage.DAY.png new file mode 100644 index 0000000..d008a07 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ContainerPageKt.Preview_ContainerPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.ContainerPageKt.Preview_ContainerPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.ContainerPageKt.Preview_ContainerPage.NIGHT.png new file mode 100644 index 0000000..3778152 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.ContainerPageKt.Preview_ContainerPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.HeaderPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.HeaderPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index 907a908..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.HeaderPagePreview.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:993ec1702e0c31bc6b839ed8ee7e1e3d950410cc38b54339d2718b43f7de4745 -size 77962 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.HeaderPagePreview.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.HeaderPagePreview.WITH_BACKGROUND_NIGHT.png deleted file mode 100644 index 907a908..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.HeaderPagePreview.WITH_BACKGROUND_NIGHT.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:993ec1702e0c31bc6b839ed8ee7e1e3d950410cc38b54339d2718b43f7de4745 -size 77962 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.Preview_HeaderPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.Preview_HeaderPage.DAY.png new file mode 100644 index 0000000..7663804 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.Preview_HeaderPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.Preview_HeaderPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.Preview_HeaderPage.NIGHT.png new file mode 100644 index 0000000..cfc2727 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.HeaderPageKt.Preview_HeaderPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.IconPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.IconPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index 071fab9..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.IconPagePreview.WITH_BACKGROUND.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.IconPagePreview.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.IconPagePreview.WITH_BACKGROUND_NIGHT.png deleted file mode 100644 index 6569958..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.IconPagePreview.WITH_BACKGROUND_NIGHT.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.Preview_IconPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.Preview_IconPage.DAY.png new file mode 100644 index 0000000..30edb49 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.Preview_IconPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.Preview_IconPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.Preview_IconPage.NIGHT.png new file mode 100644 index 0000000..65eef7e Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.IconPageKt.Preview_IconPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.LoadingIndicatorPageKt.LoadingIndicatorPagePreview.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.LoadingIndicatorPageKt.LoadingIndicatorPagePreview.NIGHT.png deleted file mode 100644 index da21c29..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.LoadingIndicatorPageKt.LoadingIndicatorPagePreview.NIGHT.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:1fda9bd76a890e377fb1531576060e3275a714e3b655f819592093b9f248f6e4 -size 7723 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.LoadingIndicatorPageKt.LoadingIndicatorPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.LoadingIndicatorPageKt.LoadingIndicatorPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index 748de55..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.LoadingIndicatorPageKt.LoadingIndicatorPagePreview.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:47dad5598ff01a7d24208312be1c9637300fdf059ba9c1119843561eb5e71832 -size 10017 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.MainPageKt.MainPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.MainPageKt.MainPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index 5041cbd..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.MainPageKt.MainPagePreview.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:13c8fd80454b55c48be59da608c9be47165c3403a9d5c7c4acb5958d8f034cb2 -size 84388 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.MainPageKt.MainPagePreview.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.MainPageKt.MainPagePreview.WITH_BACKGROUND_NIGHT.png deleted file mode 100644 index a08c739..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.MainPageKt.MainPagePreview.WITH_BACKGROUND_NIGHT.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ba5a6e3f5372ea3ef4f6c3230db0fa037b3068ed4b49e169832b0539da6140a9 -size 88110 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.NotificationBoxPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.Preview_NotificationBoxPage.DAY.png similarity index 100% rename from goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.NotificationBoxPagePreview.WITH_BACKGROUND.png rename to goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.Preview_NotificationBoxPage.DAY.png diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.NotificationBoxPagePreview.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.Preview_NotificationBoxPage.NIGHT.png similarity index 100% rename from goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.NotificationBoxPagePreview.WITH_BACKGROUND_NIGHT.png rename to goldenfiles/ch.sbb.compose_mds.example.pages.NotificationBoxPageKt.Preview_NotificationBoxPage.NIGHT.png diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.Preview_SegmentedButtonPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.Preview_SegmentedButtonPage.DAY.png new file mode 100644 index 0000000..85d0b5e Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.Preview_SegmentedButtonPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.Preview_SegmentedButtonPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.Preview_SegmentedButtonPage.NIGHT.png new file mode 100644 index 0000000..bd8eeab Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.Preview_SegmentedButtonPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.SegmentedButtonPagePreview.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.SegmentedButtonPagePreview.NIGHT.png deleted file mode 100644 index 88152f9..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.SegmentedButtonPagePreview.NIGHT.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a761b361204a7bbbf556cf1c7d8b338d7d52f20fc1a2bd84e7527ec0a8ce90c7 -size 31830 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.SegmentedButtonPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.SegmentedButtonPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index cf5fa66..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.SegmentedButtonPageKt.SegmentedButtonPagePreview.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:69aabc61d4de333b5faaa3b9582fe17b07e5516d4ccb0a8098fde061c5c351f1 -size 31132 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.DAY.png new file mode 100644 index 0000000..3d32cc5 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.NIGHT.png new file mode 100644 index 0000000..96b3102 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.WITH_BACKGROUND.png deleted file mode 100644 index 2a4e166..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.WITH_BACKGROUND.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.WITH_BACKGROUND_NIGHT.png deleted file mode 100644 index 50fc2bd..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.SliderPageKt.Preview_SliderPage.WITH_BACKGROUND_NIGHT.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.Preview_StatusPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.Preview_StatusPage.DAY.png new file mode 100644 index 0000000..996a10d Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.Preview_StatusPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.Preview_StatusPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.Preview_StatusPage.NIGHT.png new file mode 100644 index 0000000..963e5ea Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.Preview_StatusPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.StatusPagePreview.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.StatusPagePreview.NIGHT.png deleted file mode 100644 index 5329f35..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.StatusPagePreview.NIGHT.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9795701438e4a17e590a4239e176c6a09f84b1075b56dffac542ba171bf81ae5 -size 50089 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.StatusPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.StatusPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index 7f9842a..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.StatusPageKt.StatusPagePreview.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a53ea889d80f9a77965befe935d6efc274076c4c8183eabe92ce103354a1f740 -size 53114 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SwitchPageKt.Preview_SwitchPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SwitchPageKt.Preview_SwitchPage.DAY.png new file mode 100644 index 0000000..f4ee0a3 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.SwitchPageKt.Preview_SwitchPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.SwitchPageKt.Preview_SwitchPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.SwitchPageKt.Preview_SwitchPage.NIGHT.png new file mode 100644 index 0000000..f947562 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.SwitchPageKt.Preview_SwitchPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.DAY.png similarity index 100% rename from goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.WITH_BACKGROUND.png rename to goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.DAY.png diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.NIGHT.png similarity index 100% rename from goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.WITH_BACKGROUND_NIGHT.png rename to goldenfiles/ch.sbb.compose_mds.example.pages.TabBarPageKt.Preview_TabBarPage.NIGHT.png diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.Preview_TextFieldPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.Preview_TextFieldPage.DAY.png new file mode 100644 index 0000000..9b3fa26 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.Preview_TextFieldPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.Preview_TextFieldPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.Preview_TextFieldPage.NIGHT.png new file mode 100644 index 0000000..b79aeab Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.Preview_TextFieldPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.TextFieldPagePreview.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.TextFieldPagePreview.NIGHT.png deleted file mode 100644 index 8f253e9..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.TextFieldPagePreview.NIGHT.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:38262c10d1220c001d0a99e4b84ec3ced87a04d47b12caa8b2950398007a6b6f -size 68537 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.TextFieldPagePreview.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.TextFieldPagePreview.WITH_BACKGROUND.png deleted file mode 100644 index 6b0deb9..0000000 --- a/goldenfiles/ch.sbb.compose_mds.example.pages.TextFieldPageKt.TextFieldPagePreview.WITH_BACKGROUND.png +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:9bdb977677713818ee906b0df323180b5b614c5882f878611c26b32b401b0a7e -size 61559 diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.DAY.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.DAY.png new file mode 100644 index 0000000..91a15dd Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.DAY.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.NIGHT.png new file mode 100644 index 0000000..56054a7 Binary files /dev/null and b/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.NIGHT.png differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.WITH_BACKGROUND.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.WITH_BACKGROUND.png deleted file mode 100644 index ba80acc..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.WITH_BACKGROUND.png and /dev/null differ diff --git a/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.WITH_BACKGROUND_NIGHT.png b/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.WITH_BACKGROUND_NIGHT.png deleted file mode 100644 index e0e19bb..0000000 Binary files a/goldenfiles/ch.sbb.compose_mds.example.pages.TypographyPageKt.Preview_TypographyPage.WITH_BACKGROUND_NIGHT.png and /dev/null differ diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 1783e7f..85efb24 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -17,7 +17,7 @@ composePlugin = "1.8.2" mavenPublish = "0.34.0" robolectric = "4.15.1" -roborazzi = "1.46.1" +roborazzi = "1.49.0" [libraries] core-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "coreKtx" } @@ -43,7 +43,7 @@ androidx-ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-man robolectric = { group = "org.robolectric", name = "robolectric", version.ref = "robolectric" } roborazzi-previewScannerSupport = { group = "io.github.takahirom.roborazzi", name = "roborazzi-compose-preview-scanner-support", version.ref = "roborazzi" } -composablePreviewScanner = { group = "io.github.sergio-sastre.ComposablePreviewScanner", name = "android", version = "0.6.1"} +composablePreviewScanner = { group = "io.github.sergio-sastre.ComposablePreviewScanner", name = "android", version = "0.7.0"} [plugins] androidApplication = { id = "com.android.application", version.ref = "agp" } kotlinAndroid = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" } @@ -51,5 +51,5 @@ androidLibrary = { id = "com.android.library", version.ref = "agp" } jetbrainsCompose = { id = "org.jetbrains.compose", version.ref = "composePlugin" } compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" } mavenPublish = { id = "com.vanniktech.maven.publish", version.ref = "mavenPublish" } -roborazzi = { id = "io.github.takahirom.roborazzi", version = "1.46.1" } +roborazzi = { id = "io.github.takahirom.roborazzi", version = "1.49.0" }