From c0c8a747a57c4ec4c6490635135752f37de87e2a Mon Sep 17 00:00:00 2001 From: Sk Niyaj Ali Date: Sat, 21 Sep 2024 02:30:58 +0530 Subject: [PATCH 1/4] Downgrade protobuf from 4.28.1 to 4.26.1 This commit downgrades the protobuf version from 4. 28.1 to 4.26.1. --- .../niyaj/ui/components/HomeScreenScaffold.kt | 5 ++++- .../com/niyaj/ui/components/PoposDrawer.kt | 19 ++++++++++++------- .../com/niyaj/feature/home/HomeScreen.kt | 7 +++++-- gradle/libs.versions.toml | 2 +- 4 files changed, 22 insertions(+), 11 deletions(-) diff --git a/core/ui/src/main/java/com/niyaj/ui/components/HomeScreenScaffold.kt b/core/ui/src/main/java/com/niyaj/ui/components/HomeScreenScaffold.kt index 00d3ef0f..3afcbc3c 100644 --- a/core/ui/src/main/java/com/niyaj/ui/components/HomeScreenScaffold.kt +++ b/core/ui/src/main/java/com/niyaj/ui/components/HomeScreenScaffold.kt @@ -21,6 +21,7 @@ import androidx.compose.foundation.layout.PaddingValues import androidx.compose.foundation.layout.RowScope import androidx.compose.foundation.layout.fillMaxSize import androidx.compose.material3.DrawerState +import androidx.compose.material3.DrawerValue.Closed import androidx.compose.material3.ExperimentalMaterial3Api import androidx.compose.material3.FabPosition import androidx.compose.material3.MaterialTheme @@ -28,6 +29,7 @@ import androidx.compose.material3.ModalNavigationDrawer import androidx.compose.material3.Scaffold import androidx.compose.material3.SnackbarHost import androidx.compose.material3.SnackbarHostState +import androidx.compose.material3.rememberDrawerState import androidx.compose.runtime.Composable import androidx.compose.runtime.SideEffect import androidx.compose.runtime.Stable @@ -43,7 +45,6 @@ import com.niyaj.designsystem.components.PoposCenterAlignedTopAppBar @OptIn(ExperimentalMaterial3Api::class) fun HomeScreenScaffold( currentRoute: String, - drawerState: DrawerState, onNavigateToScreen: (String) -> Unit, title: @Composable () -> Unit, modifier: Modifier = Modifier, @@ -51,6 +52,7 @@ fun HomeScreenScaffold( navActions: @Composable RowScope.() -> Unit = {}, floatingActionButton: @Composable () -> Unit = {}, fabPosition: FabPosition = FabPosition.End, + drawerState: DrawerState = rememberDrawerState(initialValue = Closed), snackbarHostState: SnackbarHostState = remember { SnackbarHostState() }, content: @Composable (padding: PaddingValues) -> Unit = {}, ) { @@ -69,6 +71,7 @@ fun HomeScreenScaffold( drawerContent = { PoposDrawer( modifier = Modifier.testTag("homeAppDrawer"), + drawerState = drawerState, currentRoute = currentRoute, onNavigateToScreen = onNavigateToScreen, ) diff --git a/core/ui/src/main/java/com/niyaj/ui/components/PoposDrawer.kt b/core/ui/src/main/java/com/niyaj/ui/components/PoposDrawer.kt index 1de41cd5..ab55080a 100644 --- a/core/ui/src/main/java/com/niyaj/ui/components/PoposDrawer.kt +++ b/core/ui/src/main/java/com/niyaj/ui/components/PoposDrawer.kt @@ -30,6 +30,8 @@ import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.shape.RoundedCornerShape +import androidx.compose.material3.DrawerState +import androidx.compose.material3.DrawerValue.Closed import androidx.compose.material3.HorizontalDivider import androidx.compose.material3.Icon import androidx.compose.material3.IconButton @@ -38,10 +40,11 @@ import androidx.compose.material3.ModalDrawerSheet import androidx.compose.material3.NavigationDrawerItem import androidx.compose.material3.NavigationDrawerItemDefaults import androidx.compose.material3.Text +import androidx.compose.material3.rememberDrawerState import androidx.compose.runtime.Composable import androidx.compose.runtime.Stable import androidx.compose.runtime.mutableStateOf -import androidx.compose.runtime.remember +import androidx.compose.runtime.saveable.rememberSaveable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.draw.clip @@ -72,16 +75,18 @@ fun PoposDrawer( currentRoute: String, onNavigateToScreen: (String) -> Unit, modifier: Modifier = Modifier, + drawerState: DrawerState = rememberDrawerState(initialValue = Closed), ) { - val expanded = remember { mutableStateOf(false) } - val settingsExpanded = remember { mutableStateOf(false) } - val employeeExpanded = remember { mutableStateOf(false) } - val customersExpanded = remember { mutableStateOf(false) } - val ordersExpanded = remember { mutableStateOf(false) } - val marketItemExpanded = remember { mutableStateOf(false) } + val expanded = rememberSaveable { mutableStateOf(false) } + val settingsExpanded = rememberSaveable { mutableStateOf(false) } + val employeeExpanded = rememberSaveable { mutableStateOf(false) } + val customersExpanded = rememberSaveable { mutableStateOf(false) } + val ordersExpanded = rememberSaveable { mutableStateOf(false) } + val marketItemExpanded = rememberSaveable { mutableStateOf(false) } ModalDrawerSheet( modifier = modifier, + drawerState = drawerState, ) { Column( modifier = Modifier.weight(0.3f), diff --git a/feature/home/src/main/kotlin/com/niyaj/feature/home/HomeScreen.kt b/feature/home/src/main/kotlin/com/niyaj/feature/home/HomeScreen.kt index 8a5854fd..2ee824e7 100644 --- a/feature/home/src/main/kotlin/com/niyaj/feature/home/HomeScreen.kt +++ b/feature/home/src/main/kotlin/com/niyaj/feature/home/HomeScreen.kt @@ -32,7 +32,8 @@ import androidx.compose.foundation.lazy.rememberLazyListState import androidx.compose.foundation.lazy.staggeredgrid.LazyStaggeredGridState import androidx.compose.foundation.lazy.staggeredgrid.rememberLazyStaggeredGridState import androidx.compose.material3.CardDefaults -import androidx.compose.material3.DrawerValue +import androidx.compose.material3.DrawerState +import androidx.compose.material3.DrawerValue.Closed import androidx.compose.material3.ElevatedCard import androidx.compose.material3.FabPosition import androidx.compose.material3.Icon @@ -112,6 +113,7 @@ fun HomeScreen( val lazyListState = rememberLazyListState() val lazyRowState = rememberLazyStaggeredGridState() val snackbarState = remember { SnackbarHostState() } + val drawerState = rememberDrawerState(initialValue = Closed) val productState by viewModel.productsWithQuantity.collectAsStateWithLifecycle() val categoriesState by viewModel.categories.collectAsStateWithLifecycle() @@ -226,6 +228,7 @@ fun HomeScreen( showKonfetti = showKonfetti.value, hideKonfetti = { showKonfetti.value = false }, modifier = modifier, + drawerState = drawerState, snackbarState = snackbarState, lazyRowState = lazyRowState, lazyListState = lazyListState, @@ -256,12 +259,12 @@ fun HomeScreenContent( hideKonfetti: () -> Unit, modifier: Modifier = Modifier, currentRoute: String = Screens.HOME_SCREEN, + drawerState: DrawerState = rememberDrawerState(initialValue = Closed), snackbarState: SnackbarHostState = remember { SnackbarHostState() }, lazyRowState: LazyStaggeredGridState = rememberLazyStaggeredGridState(), lazyListState: LazyListState = rememberLazyListState(), ) { val scope = rememberCoroutineScope() - val drawerState = rememberDrawerState(initialValue = DrawerValue.Closed) val showSearchIcon = productState is Success val animatedColor by animateColorAsState( targetValue = if (selectedId != "0") { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 2c044894..34f4aca6 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -53,7 +53,7 @@ lottieVersion = "6.5.0" moduleGraph = "2.5.0" moshiVersion = '1.15.1' posPrinterVersion = '3.4.0' -protobuf = "4.28.1" +protobuf = "4.26.1" protobufPlugin = "0.9.4" playScanner = "16.1.0" playService = "18.5.0" From 9f4797b927b8b52ec594f2312ef4e6ba55c6f879 Mon Sep 17 00:00:00 2001 From: niyajali Date: Fri, 20 Sep 2024 21:05:12 +0000 Subject: [PATCH 2/4] =?UTF-8?q?=F0=9F=A4=96=20Updates=20baselines=20for=20?= =?UTF-8?q?Dependency=20Guard?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/dependencies/prodReleaseRuntimeClasspath.tree.txt | 8 ++++---- app/dependencies/prodReleaseRuntimeClasspath.txt | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/dependencies/prodReleaseRuntimeClasspath.tree.txt b/app/dependencies/prodReleaseRuntimeClasspath.tree.txt index 742ee8a8..360d19d5 100644 --- a/app/dependencies/prodReleaseRuntimeClasspath.tree.txt +++ b/app/dependencies/prodReleaseRuntimeClasspath.tree.txt @@ -456,7 +456,7 @@ | +--- com.google.firebase:firebase-annotations:16.2.0 (*) | +--- com.google.firebase:firebase-installations-interop:17.1.0 -> 17.2.0 (*) | +--- com.google.firebase:protolite-well-known-types:18.0.0 -| | \--- com.google.protobuf:protobuf-javalite:3.14.0 -> 4.28.1 +| | \--- com.google.protobuf:protobuf-javalite:3.14.0 -> 4.26.1 | +--- com.google.firebase:firebase-common:21.0.0 (*) | +--- com.google.firebase:firebase-common-ktx:21.0.0 (*) | +--- com.google.firebase:firebase-components:18.0.0 (*) @@ -587,7 +587,7 @@ | | +--- androidx.lifecycle:lifecycle-viewmodel-savedstate:2.8.6 (c) | | \--- androidx.lifecycle:lifecycle-livedata-core-ktx:2.8.6 (c) | +--- com.google.android.gms:play-services-tasks:18.0.1 -> 18.2.0 (*) -| +--- com.google.protobuf:protobuf-javalite:3.21.11 -> 4.28.1 +| +--- com.google.protobuf:protobuf-javalite:3.21.11 -> 4.26.1 | +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 2.0.20 (*) | +--- androidx.appcompat:appcompat:1.2.0 -> 1.7.0 | | +--- androidx.activity:activity:1.7.0 -> 1.9.2 (*) @@ -1230,8 +1230,8 @@ | | +--- project :core:datastore | | | +--- androidx.datastore:datastore:1.1.1 (*) | | | +--- project :core:datastore-proto -| | | | +--- com.google.protobuf:protobuf-kotlin-lite:4.28.1 -| | | | | +--- com.google.protobuf:protobuf-javalite:4.28.1 +| | | | +--- com.google.protobuf:protobuf-kotlin-lite:4.26.1 +| | | | | +--- com.google.protobuf:protobuf-javalite:4.26.1 | | | | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.6.0 -> 2.0.20 (*) | | | | \--- org.jetbrains.kotlin:kotlin-stdlib:2.0.20 (*) | | | +--- project :core:model (*) diff --git a/app/dependencies/prodReleaseRuntimeClasspath.txt b/app/dependencies/prodReleaseRuntimeClasspath.txt index a2912a06..03dc80ef 100644 --- a/app/dependencies/prodReleaseRuntimeClasspath.txt +++ b/app/dependencies/prodReleaseRuntimeClasspath.txt @@ -239,8 +239,8 @@ com.google.j2objc:j2objc-annotations:1.3 com.google.mlkit:barcode-scanning-common:17.0.0 com.google.mlkit:common:18.9.0 com.google.mlkit:vision-common:17.0.0 -com.google.protobuf:protobuf-javalite:4.28.1 -com.google.protobuf:protobuf-kotlin-lite:4.28.1 +com.google.protobuf:protobuf-javalite:4.26.1 +com.google.protobuf:protobuf-kotlin-lite:4.26.1 com.google.zxing:core:3.5.3 com.jakewharton.timber:timber:5.0.1 com.squareup.moshi:moshi:1.15.1 From e1163500a45852ec30abb874d713ef5b2dad0749 Mon Sep 17 00:00:00 2001 From: Sk Niyaj Ali Date: Sat, 21 Sep 2024 03:19:43 +0530 Subject: [PATCH 3/4] Test: Fixed AddOnItemEndToEndTest This commit removes the unused import `ExperimentalMaterialNavigationApi` from the `AddOnItemEndToEndTest` file. --- .../kotlin/com/niyaj/addonitem/AddOnItemEndToEndTest.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/feature/addonitem/src/androidTest/kotlin/com/niyaj/addonitem/AddOnItemEndToEndTest.kt b/feature/addonitem/src/androidTest/kotlin/com/niyaj/addonitem/AddOnItemEndToEndTest.kt index 9b481196..a005de9b 100644 --- a/feature/addonitem/src/androidTest/kotlin/com/niyaj/addonitem/AddOnItemEndToEndTest.kt +++ b/feature/addonitem/src/androidTest/kotlin/com/niyaj/addonitem/AddOnItemEndToEndTest.kt @@ -41,7 +41,6 @@ import androidx.compose.ui.test.performTextReplacement import androidx.compose.ui.test.performTouchInput import androidx.test.espresso.Espresso import androidx.test.filters.SmallTest -import com.google.accompanist.navigation.material.ExperimentalMaterialNavigationApi import com.niyaj.common.tags.AddOnTestTags.ADDON_APPLIED_SWITCH import com.niyaj.common.tags.AddOnTestTags.ADDON_ITEM_LIST import com.niyaj.common.tags.AddOnTestTags.ADDON_ITEM_TAG @@ -148,7 +147,6 @@ class AddOnItemEndToEndTest { updatedAt = null, ) - @OptIn(ExperimentalMaterialNavigationApi::class) @Before fun setup() { hiltRule.inject() From 73a414d608591e0d2e088862880d3bc1a4bece12 Mon Sep 17 00:00:00 2001 From: niyajali Date: Fri, 20 Sep 2024 22:49:41 +0000 Subject: [PATCH 4/4] =?UTF-8?q?=F0=9F=A4=96=20Updates=20release=20badging?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/prodRelease-badging.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/prodRelease-badging.txt b/app/prodRelease-badging.txt index bd29358e..9854df9e 100644 --- a/app/prodRelease-badging.txt +++ b/app/prodRelease-badging.txt @@ -1,4 +1,4 @@ -package: name='com.niyaj.poposroom' versionCode='1' versionName='2024.9.2-beta.0.13' platformBuildVersionName='14' platformBuildVersionCode='34' compileSdkVersion='34' compileSdkVersionCodename='14' +package: name='com.niyaj.poposroom' versionCode='1' versionName='0.0.1-beta.0.1' platformBuildVersionName='14' platformBuildVersionCode='34' compileSdkVersion='34' compileSdkVersionCodename='14' sdkVersion:'26' targetSdkVersion:'34' uses-permission: name='android.permission.FOREGROUND_SERVICE'