Pārlūkot izejas kodu

Set background color for search

Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
sowjanyakch 6 mēneši atpakaļ
vecāks
revīzija
06e48c6aad

+ 24 - 0
.idea/inspectionProfiles/ktlint.xml

@@ -1,6 +1,30 @@
 <component name="InspectionProjectProfileManager">
   <profile version="1.0">
     <option name="myName" value="ktlint" />
+    <inspection_tool class="ComposePreviewDimensionRespectsLimit" enabled="true" level="WARNING" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
+    <inspection_tool class="ComposePreviewMustBeTopLevelFunction" enabled="true" level="ERROR" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
+    <inspection_tool class="ComposePreviewNeedsComposableAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
+    <inspection_tool class="ComposePreviewNotSupportedInUnitTestFiles" enabled="true" level="ERROR" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
+    <inspection_tool class="GlancePreviewDimensionRespectsLimit" enabled="true" level="WARNING" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
+    <inspection_tool class="GlancePreviewMustBeTopLevelFunction" enabled="true" level="ERROR" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
+    <inspection_tool class="GlancePreviewNeedsComposableAnnotation" enabled="true" level="ERROR" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
+    <inspection_tool class="GlancePreviewNotSupportedInUnitTestFiles" enabled="true" level="ERROR" enabled_by_default="true">
+      <option name="composableFile" value="true" />
+    </inspection_tool>
     <inspection_tool class="KotlinUnusedImport" enabled="true" level="ERROR" enabled_by_default="true" />
     <inspection_tool class="PreviewAnnotationInFunctionWithParameters" enabled="true" level="ERROR" enabled_by_default="true">
       <option name="composableFile" value="true" />

+ 0 - 104
app/src/main/java/com/nextcloud/talk/contacts/ContactsActivityViewModel.kt

@@ -1,104 +0,0 @@
-/*
- * Nextcloud Talk - Android Client
- *
- * SPDX-FileCopyrightText: 2024 Your Name <your@email.com>
- * SPDX-License-Identifier: GPL-3.0-or-later
- */
-
-package com.nextcloud.talk.contacts
-
-import androidx.lifecycle.ViewModel
-import androidx.lifecycle.viewModelScope
-import com.nextcloud.talk.data.user.model.User
-import com.nextcloud.talk.models.json.autocomplete.AutocompleteUser
-import com.nextcloud.talk.models.json.conversations.Conversation
-import com.nextcloud.talk.users.UserManager
-import com.nextcloud.talk.utils.ApiUtils
-import kotlinx.coroutines.flow.MutableStateFlow
-import kotlinx.coroutines.flow.StateFlow
-import kotlinx.coroutines.launch
-import javax.inject.Inject
-
-class ContactsActivityViewModel @Inject constructor(
-    private val repository: ContactsRepository,
-    private val userManager: UserManager
-) : ViewModel() {
-
-    private val _contactsViewState = MutableStateFlow<ContactsUiState>(ContactsUiState.None)
-    val contactsViewState: StateFlow<ContactsUiState> = _contactsViewState
-    private val _roomViewState = MutableStateFlow<RoomUiState>(RoomUiState.None)
-    val roomViewState: StateFlow<RoomUiState> = _roomViewState
-    private val _currentUser = userManager.currentUser.blockingGet()
-    val currentUser: User = _currentUser
-    private val _searchQuery = MutableStateFlow("")
-    val searchQuery: StateFlow<String> = _searchQuery
-    private val shareTypes: MutableList<String> = mutableListOf(ShareType.User.shareType)
-    val shareTypeList: List<String> = shareTypes
-
-    init {
-        getContactsFromSearchParams()
-    }
-
-    fun updateSearchQuery(query: String) {
-        _searchQuery.value = query
-    }
-
-    fun updateShareTypes(value: String) {
-        shareTypes.add(value)
-    }
-
-    fun getContactsFromSearchParams() {
-        _contactsViewState.value = ContactsUiState.Loading
-        viewModelScope.launch {
-            try {
-                val contacts = repository.getContacts(
-                    searchQuery.value,
-                    shareTypeList
-                )
-                val contactsList: List<AutocompleteUser>? = contacts.ocs!!.data
-                _contactsViewState.value = ContactsUiState.Success(contactsList)
-            } catch (exception: Exception) {
-                _contactsViewState.value = ContactsUiState.Error(exception.message ?: "")
-            }
-        }
-    }
-
-    fun createRoom(roomType: String, sourceType: String, userId: String, conversationName: String?) {
-        viewModelScope.launch {
-            try {
-                val room = repository.createRoom(
-                    roomType,
-                    sourceType,
-                    userId,
-                    conversationName
-                )
-
-                val conversation: Conversation? = room.ocs?.data
-                _roomViewState.value = RoomUiState.Success(conversation)
-            } catch (exception: Exception) {
-                _roomViewState.value = RoomUiState.Error(exception.message ?: "")
-            }
-        }
-    }
-
-    fun getImageUri(avatarId: String, requestBigSize: Boolean): String {
-        return ApiUtils.getUrlForAvatar(
-            _currentUser.baseUrl,
-            avatarId,
-            requestBigSize
-        )
-    }
-}
-
-sealed class ContactsUiState {
-    data object None : ContactsUiState()
-    data object Loading : ContactsUiState()
-    data class Success(val contacts: List<AutocompleteUser>?) : ContactsUiState()
-    data class Error(val message: String) : ContactsUiState()
-}
-
-sealed class RoomUiState {
-    data object None : RoomUiState()
-    data class Success(val conversation: Conversation?) : RoomUiState()
-    data class Error(val message: String) : RoomUiState()
-}

+ 4 - 1
app/src/main/java/com/nextcloud/talk/contacts/SearchComponent.kt

@@ -7,6 +7,7 @@
 
 package com.nextcloud.talk.contacts
 
+import androidx.compose.foundation.background
 import androidx.compose.foundation.layout.fillMaxWidth
 import androidx.compose.foundation.layout.height
 import androidx.compose.foundation.text.KeyboardActions
@@ -21,6 +22,7 @@ import androidx.compose.material3.TextField
 import androidx.compose.runtime.Composable
 import androidx.compose.ui.Modifier
 import androidx.compose.ui.platform.LocalSoftwareKeyboardController
+import androidx.compose.ui.res.colorResource
 import androidx.compose.ui.res.stringResource
 import androidx.compose.ui.text.TextStyle
 import androidx.compose.ui.text.input.ImeAction
@@ -34,7 +36,8 @@ fun DisplaySearch(text: String, onTextChange: (String) -> Unit, contactsViewMode
     TextField(
         modifier = Modifier
             .fillMaxWidth()
-            .height(60.dp),
+            .height(60.dp)
+            .background(color = colorResource(id = R.color.grey_600)),
         value = text,
         onValueChange = { onTextChange(it) },
         placeholder = {

+ 104 - 60
gradle/verification-keyring.keys

@@ -388,6 +388,8 @@ HdZk2xusuOEx27cIovRPHwvLcgY+4u3j
 -----END PGP PUBLIC KEY BLOCK-----
 
 pub    928B20E9AD5298CC
+uid    Jakarta Contexts and Dependency Injection <cdi-dev@eclipse.org>
+
 sub    0AA3E5C3D232E79B
 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: BCPG v@RELEASE_NAME@
@@ -403,42 +405,44 @@ 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
-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
-=Y1uz
+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
+s5E5s0wc
+=+V3C
 -----END PGP PUBLIC KEY BLOCK-----
 
 pub    928FBF39003C0425
@@ -1327,6 +1331,8 @@ IprKXtD8103BdNqrPJev2azwqWwxFpN83tEPbK4SwWPgk1nSELXZZ5ClcDgqatg+
 -----END PGP PUBLIC KEY BLOCK-----
 
 pub    B943F5CB616566CD
+uid    Marcel Schnelle <marcelschnelle@aol.com>
+
 sub    D73B23600E60600B
 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: BCPG v@RELEASE_NAME@
@@ -1342,30 +1348,31 @@ DkeVPkS9/VxmwAi03Ti7B+hBQqrXyvPL/g6xSuoHYmTNhRfPFN/oD0csh+Ayxgrp
 OpM1FZ0/+ahyt/jbqSPiW895vuuHaA/GQFJP1+7G74L4WsR7ZziMcRnz8pUBzQCA
 5yrVcD9+abN2tIAXNftJhQeZdyIxoTe2mty8MJfSi0VKHML+bWpkYLMkCoJ8jngM
 pVf3loLKHeJAh+KndiEyrCedNU/nash1Kr/EvXTrfyA/R+q6SCxt7bgIiwARAQAB
-uQINBGAc6SABEAC/CnL5cqk5N9NocvTEWue7bOx4YTVnj36+QNcm3WNd9G8Ab0ku
-0Zr+PNrI7IhX3A+OAx4GaLNLehp5DncPa8CpSrCf8Lx/Dzd7SSB0gnlM3hSvCGOD
-hkQXjIzjKUc1OB12GX7UvpgrQvFJckWLtiauBVHe+UBlXtgKL6cBYLnhHoqzbxji
-rX+Ilp3d4SAk/4kjuK0J98BHzYpOMtJBHDpt7u2D0CNE7+b6yaw/0aex876O3/fF
-0ETv2vgsjcSe04jKKBuFFDIh2g71GFHHo9cw0n756YT4KUvNdhWtuSjxqHWQLvNm
-z69xCPp6D/xealPWvdPShfpwTo8FGut+QtGmPmtMqCbsEM+J9S2tHusN2D4iyTZD
-MlnuI+1iGpkP9SAFpM5f2GaBMEdpOJ7qZAyG6WSsw9CDEzti8JUiTklHJeZ9gyNG
-IB0KetMIdejWPtntvFdbd+uUH6ZSkTrKb788iYkiNppUK8azP3m0lvsJJMSuUoAT
-Bu1urLkdUZFyJVYVSGjkRNvQk/WhB8Yt7kQtijIyrxB9xg1moY7vwtB3GEq8fY1N
-DgO0MLCgb7PnuXI5wqERj7ro+o5yc84ZhOgblujHKMHoKb7hnlbEkfYguWgj2LRs
-hqlPKqtsF7hu+PmsGVfMwFzDP8HUJrKnfvxmupV2sp5zzJyVteMD8JruCwARAQAB
-iQI2BBgBCAAgFiEEzg4bxEOAlXnYcY9PuUP1y2FlZs0FAmAc6SACGwwACgkQuUP1
-y2FlZs2bWw/9Fg3O7opa/uRnk5oqEA51dZhCzydxgt5zJGqxGuFBH7g09QsqCDgf
-b+GWT7VuTXS11TYeOqN9YO/papeltPsxWuRopnI3imvakkDW3JqQqkyL4O+Q/0Hj
-0wmVh+Yknwl9FEatdPu8q1QdNxxjyBhr0ai640aQWDLp/BWVG2J2bSIATzIK5e+W
-W1CFJrV4fjz7H+gF/HLGWYDJKsdjwgO2pNd/6GWRUkvF4OD+XKUG4MGfqLX5yZa8
-82+Emsss65OTdu8qLHYNQ1Yv2oxvh4+H0CEWSDWOcv0Egw2Ku8PbmLDHWb3ddRlK
-7HhTxKROVYim+YOvodOEiFYWqrx1jMhH1GC7XWu8LonsHQVxSG+iLL2UNoIeOcD6
-MeFDXYMA6P/ZijBkbnu7KUPaNZxOuQbFzmchrAlWaBoJcbMQtoAFZOz0qWs8cFd7
-29RcOvT1wGiOaBLmR1xbXcJxhofUCwbma1ode2+ye1DXIIeE7/OVVGURYrVrVbRx
-rK+M/k8L3H0318GUweeuj0MZ+chxDFLWIE1eXPkzMF0GgGFKkIJMX2eKp1xyhxj+
-28qijxe7YFVBK8LEuyWUMU+oxIojZEr4Wa28AYvqs32UtRyjT1kbm67mav752UPG
-Ts2AQo9RvCeonVI7Q1CkIHt8u7eMgzfEkaiPLZlI0l0RpfT4pnNieqg=
-=bif8
+tChNYXJjZWwgU2NobmVsbGUgPG1hcmNlbHNjaG5lbGxlQGFvbC5jb20+uQINBGAc
+6SABEAC/CnL5cqk5N9NocvTEWue7bOx4YTVnj36+QNcm3WNd9G8Ab0ku0Zr+PNrI
+7IhX3A+OAx4GaLNLehp5DncPa8CpSrCf8Lx/Dzd7SSB0gnlM3hSvCGODhkQXjIzj
+KUc1OB12GX7UvpgrQvFJckWLtiauBVHe+UBlXtgKL6cBYLnhHoqzbxjirX+Ilp3d
+4SAk/4kjuK0J98BHzYpOMtJBHDpt7u2D0CNE7+b6yaw/0aex876O3/fF0ETv2vgs
+jcSe04jKKBuFFDIh2g71GFHHo9cw0n756YT4KUvNdhWtuSjxqHWQLvNmz69xCPp6
+D/xealPWvdPShfpwTo8FGut+QtGmPmtMqCbsEM+J9S2tHusN2D4iyTZDMlnuI+1i
+GpkP9SAFpM5f2GaBMEdpOJ7qZAyG6WSsw9CDEzti8JUiTklHJeZ9gyNGIB0KetMI
+dejWPtntvFdbd+uUH6ZSkTrKb788iYkiNppUK8azP3m0lvsJJMSuUoATBu1urLkd
+UZFyJVYVSGjkRNvQk/WhB8Yt7kQtijIyrxB9xg1moY7vwtB3GEq8fY1NDgO0MLCg
+b7PnuXI5wqERj7ro+o5yc84ZhOgblujHKMHoKb7hnlbEkfYguWgj2LRshqlPKqts
+F7hu+PmsGVfMwFzDP8HUJrKnfvxmupV2sp5zzJyVteMD8JruCwARAQABiQI2BBgB
+CAAgFiEEzg4bxEOAlXnYcY9PuUP1y2FlZs0FAmAc6SACGwwACgkQuUP1y2FlZs2b
+Ww/9Fg3O7opa/uRnk5oqEA51dZhCzydxgt5zJGqxGuFBH7g09QsqCDgfb+GWT7Vu
+TXS11TYeOqN9YO/papeltPsxWuRopnI3imvakkDW3JqQqkyL4O+Q/0Hj0wmVh+Yk
+nwl9FEatdPu8q1QdNxxjyBhr0ai640aQWDLp/BWVG2J2bSIATzIK5e+WW1CFJrV4
+fjz7H+gF/HLGWYDJKsdjwgO2pNd/6GWRUkvF4OD+XKUG4MGfqLX5yZa882+Emsss
+65OTdu8qLHYNQ1Yv2oxvh4+H0CEWSDWOcv0Egw2Ku8PbmLDHWb3ddRlK7HhTxKRO
+VYim+YOvodOEiFYWqrx1jMhH1GC7XWu8LonsHQVxSG+iLL2UNoIeOcD6MeFDXYMA
+6P/ZijBkbnu7KUPaNZxOuQbFzmchrAlWaBoJcbMQtoAFZOz0qWs8cFd729RcOvT1
+wGiOaBLmR1xbXcJxhofUCwbma1ode2+ye1DXIIeE7/OVVGURYrVrVbRxrK+M/k8L
+3H0318GUweeuj0MZ+chxDFLWIE1eXPkzMF0GgGFKkIJMX2eKp1xyhxj+28qijxe7
+YFVBK8LEuyWUMU+oxIojZEr4Wa28AYvqs32UtRyjT1kbm67mav752UPGTs2AQo9R
+vCeonVI7Q1CkIHt8u7eMgzfEkaiPLZlI0l0RpfT4pnNieqg=
+=mH9D
 -----END PGP PUBLIC KEY BLOCK-----
 
 pub    BCF4173966770193
@@ -4079,6 +4086,43 @@ RT2Fl7A=
 =E6L7
 -----END PGP PUBLIC KEY BLOCK-----
 
+pub    31D2D79DF7E85DD3
+uid    Markus KARG <markus@headcrashing.eu>
+
+sub    D091C8FFA534EDA2
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: BCPG v@RELEASE_NAME@
+
+mQGNBGTNOPIBDACjeIqMmK4jo8NBVVacAwmqnL6H2/ixU/rPg1WEJSJRQbWu0otK
+Zrs+0tOVuYsQReW5tYUwI8hclSkdO95NC8bM7rlxcO6JSixsjzf2cOXajOAvuLMj
+OlGtMPblTI88/2nPmj+k3jLClsuqdXNIPdf6DQGIrJjsNfpnCO184ialqIVv0X4y
+Z3e8aR/coToU+CcgbWXEyqqZL35RGLs/DR1o0supIm6tBEaDGGxRcrOGTkKaQEXV
+v7cZrrXQBSU1kOLko2Lz95ipUn2s7BxM66joOSzmeS6QDRqoL6B+PYMEOGqOP9AI
+ZgFdMh5T4WJdzuDGOBrX1FAD1ZLeumz5+Td7Tw/7odKH10ToFf8DIvP0CJnAC8EK
+4HGl3NYyKv0gafEmprVNSIDrGLjY7D6bvlJ0vJ70gsQAhJF/tGfa7+pBA3/zuLe7
+WD2pSyiqdsyl2mZZ/KRtMXDrhvzSk3H0nxZ4+BQhNLVBW62ty/+XYWn6QOw6tD2v
+4vZCXePrel4RhjEAEQEAAbQkTWFya3VzIEtBUkcgPG1hcmt1c0BoZWFkY3Jhc2hp
+bmcuZXU+uQGNBGTNOPIBDAD1VVbxdqn7crMimZKLrwWyNVGGu/YKzrpKyO6h40m3
+TCUYslIDECFHQL2LqfzixL9w/nXn5Oqx4rTRnlfjCZJkJUv4OnV1dIW065T+bepL
+srbZ5cNnMin2336ClJwnD0fkyjrVSAI59roS04WELHvkKyl3LeaqgbJMYEMoweH3
+LrrKXGi3fefdEBevRR80ulpw7o0AhPhjd5NWsp/1P43Xl9poNoWaL+7/7W1jKKIa
+7VYEOWbRZ/mngwLbSqLOc0lHCsH2InL8+GpdTUCeUtBrImQItKneaxkk+qn8i91d
+zL7/Mp3LI7z5ajaXhSj2Wf6/0rg8ObZV9sBJtkEVp0oq7+mFmgeF6reefyKX7g+r
+nA1gkdXgMPOBqExXFsXKNLU3mtRd1KsNgdQYDPn9enncmKzjW4ha7NcaFrSWchXE
+73Fq43dMbCOejVy4io6+BBSXXHe8M/3/ZB+4EFohRPW0kODnngxzE3E9usuvRJTR
+t4c9hhJZdMuhhPs3ry1Cql0AEQEAAYkBvAQYAQoAJhYhBB2FRp2FWcLh31+SUTHS
+15336F3TBQJkzTjyAhsMBQkDwmcAAAoJEDHS15336F3T9kMMAIJHtFRvBMfCh9p0
+UM4jf0ahE1LX+fUhF4zf/t+vlUmRsIHJNcteD04SxG1WRDc5xxO0IO9oAnX0AgC9
+NOCAZaJ11TlXPsCRk32+x8bfCe2Wf2hOLPOfZGO+vj89m74iJf0Gh/0BySMvgwcn
+K6WL/xb61EGQUxetB3jLpZU9FwQZq6LjftvZi7r6Y3ui3ogUwTmvq0HlsKCmY7GM
+1JLN6xAChZbDU+Ox2F46wyo4XWLfX7HtTe6ykr+yxDwTxx3mJUCwbBYr78Xy16Rq
+COcemMTU0U9OWFA1JghFul0moaW+gV+VtZpWR1nCFn5xJOzD2UWFFWomYWiSvL6O
+qEVfV/jQYAREDj9vpxlBcfRpTiUlrdFQf4uOQT1G/nXY1KITmq/hNqUdhpUjCoMC
+OvdyVwwfG12cTWeQiDQofGqJSptQmsUvegmfF5byUPDbgjCi4tEpWOncOeehs/Hd
+ZgMBzI+v/ingWOyKpKqhpZR/50PHA0o23zw8P1BGeQOlr4kFNA==
+=jR+6
+-----END PGP PUBLIC KEY BLOCK-----
+
 pub    34918B7D3969D2F5
 sub    5CE9BCD2ED28F793
 -----BEGIN PGP PUBLIC KEY BLOCK-----

+ 15 - 133
gradle/verification-metadata.xml

@@ -4,13 +4,13 @@
       <verify-metadata>true</verify-metadata>
       <verify-signatures>true</verify-signatures>
       <trusted-artifacts>
+         <trust file="tensorflow-lite-metadata-0.1.0-rc2.pom" reason="differing hash on every CI run - temp global trust"/>
+         <trust group="androidx.fragment"/>
          <trust group="com.android.tools.build" name="aapt2" version="8.4.1-11315950" reason="ships OS specific artifacts (win/linux) - temp global trust"/>
          <trust group="com.github.nextcloud-deps" name="android-talk-webrtc" version="110.5481.0" reason="ships OS specific artifacts (win/linux) - temp global trust"/>
+         <trust group="com.google.dagger"/>
+         <trust group="org.javassist" name="javassist" version="3.26.0-GA" reason="java assist"/>
          <trust file=".*-sources[.]jar" regex="true"/>
-		 <trust file="tensorflow-lite-metadata-0.1.0-rc2.pom" reason="differing hash on every CI run - temp global trust"/>
-          <trust group="com.google.dagger" />
-          <trust group="org.javassist" name="javassist" version="3.26.0-GA" reason="java assist"/>
-          <trust group="androidx.fragment"/>
       </trusted-artifacts>
       <ignored-keys>
          <ignored-key id="0AA3E5C3D232E79B" reason="Key couldn't be downloaded from any key server"/>
@@ -151,6 +151,7 @@
             <trusting group="androidx.annotation"/>
             <trusting group="androidx.camera"/>
             <trusting group="androidx.collection"/>
+            <trusting group="androidx.compose.foundation"/>
             <trusting group="androidx.compose.material3"/>
             <trusting group="androidx.core"/>
             <trusting group="androidx.emoji2"/>
@@ -162,7 +163,6 @@
             <trusting group="androidx.sqlite"/>
             <trusting group="androidx.webkit"/>
             <trusting group="androidx.work"/>
-             <trusting group="androidx.compose.foundation"/>
          </trusted-key>
          <trusted-key id="84789D24DF77A32433CE1F079EB80E92EB2135B1">
             <trusting group="org.apache" name="apache"/>
@@ -252,7 +252,6 @@
          <trusted-key id="E4AC7874F3479A0F1F8ECF9960BB45F36B649F22" group="fr.dudie" name="nominatim-api" version="3.4"/>
          <trusted-key id="E77417AC194160A3FABD04969A259C7EE636C5ED" group="^com[.]google($|([.].*))" regex="true"/>
          <trusted-key id="E7DC75FC24FB3C8DFE8086AD3D5839A2262CBBFB" group="org.jetbrains.kotlinx"/>
-          <trusted-key id="64B9B09F164AA0BF88742EB61188B69F6D6259CA" group="com.google.accompanist"/>
          <trusted-key id="E82D2EAF2E83830CE1F7F6BE571A5291E827E1C7" group="net.java" name="jvnet-parent" version="3"/>
          <trusted-key id="E85AED155021AF8A6C6B7A4A7C7D8456294423BA" group="org.objenesis"/>
          <trusted-key id="EAA526B91DD83BA3E1B9636FA730529CA355A63E" group="org.ccil.cowan.tagsoup" name="tagsoup" version="1.2.1"/>
@@ -350,50 +349,6 @@
             <sha256 value="9516c2ae44284ea0bd3d0eade0ee638879b708cbe31e3af92ba96c300604ebc3" origin="Generated by Gradle" reason="Artifact is not signed"/>
          </artifact>
       </component>
-       <component group="androidx.exifinterface" name="exifinterface" version="1.3.6">
-           <artifact name="exifinterface-1.3.6.aar">
-               <sha256 value="1804105e9e05fdd8f760413bad5de498c381aa329f4f9d94c851bc891ac654c6" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-           <artifact name="exifinterface-1.3.6.module">
-               <sha256 value="5e9fd84ca3fd3b7706f6856fa4383107de8676bf7c42b7d4b8108949414d6201" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.core" name="core" version="1.1.0">
-           <artifact name="core-1.1.0.pom">
-               <sha256 value="dae46132cdcd46b798425f7cb78fd65890869b6d26101ccdcd43461a4f51754c" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.core" name="core" version="1.3.2">
-           <artifact name="core-1.3.2.pom">
-               <sha256 value="afb5ea494dd083ed404cd51f580d218e37362f8ae326e893bee521290ed34920" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.test.ext" name="junit" version="1.1.5">
-           <artifact name="junit-1.1.5.aar">
-               <sha256 value="4307c0e60f5d701db9c59bcd9115af705113c36a9132fa3dbad58db1294e9bfd" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-           <artifact name="junit-1.1.5.pom">
-               <sha256 value="4cff0df04cae25831e821ef2f9129245783460e98d0fd67d8f6824065a134c4e" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.core" name="core-ktx" version="1.8.0">
-           <artifact name="core-ktx-1.8.0.module">
-               <sha256 value="a91bc3e02f209f643dd8275345a9e3003ce20d64fc0760eccf479c1709842f72" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.annotation" name="annotation-experimental" version="1.3.0">
-           <artifact name="annotation-experimental-1.3.0.aar">
-               <sha256 value="abfd29c8556e5bd0325a9f769ab9e9d154ff4a5515c476cdd5a2a8285b1b19dc" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-           <artifact name="annotation-experimental-1.3.0.module">
-               <sha256 value="5eebeaff01d042e06dcf292abf8964ad391e4b0159f0090f16253d6045d38da0" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.annotation" name="annotation-experimental" version="1.1.0-rc01">
-           <artifact name="annotation-experimental-1.1.0-rc01.module">
-               <sha256 value="d45ac493e84d968aabb2bea2b7744031a98cf5074447c0f3b862d600fc44b55c" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
       <component group="androidx.annotation" name="annotation" version="1.5.0">
          <artifact name="annotation-1.5.0.jar">
             <sha256 value="261fb7c0210858500bab66d34354972a75166ab4182add283780b05513d6ec4a" origin="Generated by Gradle" reason="Artifact is not signed"/>
@@ -410,14 +365,6 @@
             <sha256 value="fbc64f5c44a7added8b6eab517cf7d70555e25153bf5d44a6ed9b0e5312f7de9" origin="Generated by Gradle" reason="Artifact is not signed"/>
          </artifact>
       </component>
-       <component group="androidx.exifinterface" name="exifinterface" version="1.3.2">
-           <artifact name="exifinterface-1.3.2.aar">
-               <sha256 value="8770c180103e0b8c04a07eb4c59153af639b09eca25deae9bdcdaf869d1e5b6b" origin="Generated by Gradle"/>
-           </artifact>
-           <artifact name="exifinterface-1.3.2.module">
-               <sha256 value="10ba5b5cbea7f5c8758be4fdaec60a3545e891a1130d830a442b88cf5336a885" origin="Generated by Gradle"/>
-           </artifact>
-       </component>
       <component group="androidx.annotation" name="annotation-experimental" version="1.0.0">
          <artifact name="annotation-experimental-1.0.0.pom">
             <sha256 value="6b73ff6608f4b1d6cbab620b65708a382d0b39901cf4e6b0d16f84a1b04d7732" origin="Generated by Gradle" reason="Artifact is not signed"/>
@@ -431,11 +378,6 @@
             <sha256 value="0361d1526a4d7501255e19779e09e93cdbd07fee0e2f5c50b7a137432d510119" origin="Generated by Gradle" reason="Artifact is not signed"/>
          </artifact>
       </component>
-       <component group="androidx.annotation" name="annotation-experimental" version="1.1.0-rc01">
-       <artifact name="annotation-experimental-1.1.0-rc01.module">
-           <sha256 value="d45ac493e84d968aabb2bea2b7744031a98cf5074447c0f3b862d600fc44b55c" origin="Generated by Gradle" reason="Artifact is not signed"/>
-       </artifact>
-       </component>
       <component group="androidx.annotation" name="annotation-experimental" version="1.1.0-rc01">
          <artifact name="annotation-experimental-1.1.0-rc01.module">
             <sha256 value="d45ac493e84d968aabb2bea2b7744031a98cf5074447c0f3b862d600fc44b55c" origin="Generated by Gradle" reason="Artifact is not signed"/>
@@ -457,76 +399,6 @@
             <sha256 value="9b6974a7dfe26d3c209dd63e16f8ee2461b57a091789160ca1eb492bb1bf3f84" origin="Generated by Gradle" reason="Artifact is not signed"/>
          </artifact>
       </component>
-       <component group="androidx.annotation" name="annotation-experimental" version="1.3.0">
-           <artifact name="annotation-experimental-1.3.0.aar">
-               <sha256 value="abfd29c8556e5bd0325a9f769ab9e9d154ff4a5515c476cdd5a2a8285b1b19dc" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-           <artifact name="annotation-experimental-1.3.0.module">
-               <sha256 value="5eebeaff01d042e06dcf292abf8964ad391e4b0159f0090f16253d6045d38da0" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.activity" name="activity-compose" version="1.7.0">
-           <artifact name="activity-compose-1.7.0.aar">
-               <sha256 value="caa72885d1ce7979c1d6c59a8b255c6097b770780d4d4da95d56979a348646cd" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-           <artifact name="activity-compose-1.7.0.module">
-               <sha256 value="f7a29bcba338575dcf89a553cff9cfad3f140340eaf2b56fd0193244da602c0a" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose.runtime" name="runtime" version="1.0.1">
-           <artifact name="runtime-1.0.1.module">
-               <sha256 value="2543a8c7edc16bde91f140286b4fd3773d7204a283a4ec99f6e5e286aa92c0c3" origin="Generated by Gradle"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose.runtime" name="runtime-saveable" version="1.0.1">
-           <artifact name="runtime-saveable-1.0.1.module">
-               <sha256 value="c0d6f142542d8d74f65481ef6526d2be265f01f812a112948fcde87a458f4fb6" origin="Generated by Gradle"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose.ui" name="ui" version="1.0.1">
-           <artifact name="ui-1.0.1.aar">
-               <sha256 value="1943daa4a3412861b9a2bdc1a7c8c2ff05d9b8191c1d3e56ebb223d2eb4a8526" origin="Generated by Gradle"/>
-           </artifact>
-           <artifact name="ui-1.0.1.module">
-               <sha256 value="57031a6ac9b60e5b56792ebf5cde6e16812ff566ed9190cbd188b00b46c13779" origin="Generated by Gradle"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose" name="compose-bom" version="2024.06.00">
-           <artifact name="compose-bom-2024.06.00.pom">
-               <sha256 value="1b391a969ff81c0bb43b3711e92d977e8bfa72457a11d8a37910a7051bdc3045" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.activity" name="activity-compose" version="1.7.0">
-           <artifact name="activity-compose-1.7.0.aar">
-               <sha256 value="caa72885d1ce7979c1d6c59a8b255c6097b770780d4d4da95d56979a348646cd" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-           <artifact name="activity-compose-1.7.0.module">
-               <sha256 value="f7a29bcba338575dcf89a553cff9cfad3f140340eaf2b56fd0193244da602c0a" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose.runtime" name="runtime" version="1.0.1">
-           <artifact name="runtime-1.0.1.module">
-               <sha256 value="2543a8c7edc16bde91f140286b4fd3773d7204a283a4ec99f6e5e286aa92c0c3" origin="Generated by Gradle"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose.runtime" name="runtime-saveable" version="1.0.1">
-           <artifact name="runtime-saveable-1.0.1.module">
-               <sha256 value="c0d6f142542d8d74f65481ef6526d2be265f01f812a112948fcde87a458f4fb6" origin="Generated by Gradle"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose.ui" name="ui" version="1.0.1">
-           <artifact name="ui-1.0.1.aar">
-               <sha256 value="1943daa4a3412861b9a2bdc1a7c8c2ff05d9b8191c1d3e56ebb223d2eb4a8526" origin="Generated by Gradle"/>
-           </artifact>
-           <artifact name="ui-1.0.1.module">
-               <sha256 value="57031a6ac9b60e5b56792ebf5cde6e16812ff566ed9190cbd188b00b46c13779" origin="Generated by Gradle"/>
-           </artifact>
-       </component>
-       <component group="androidx.compose" name="compose-bom" version="2024.06.00">
-           <artifact name="compose-bom-2024.06.00.pom">
-               <sha256 value="1b391a969ff81c0bb43b3711e92d977e8bfa72457a11d8a37910a7051bdc3045" origin="Generated by Gradle" reason="Artifact is not signed"/>
-           </artifact>
-       </component>
       <component group="androidx.appcompat" name="appcompat" version="1.1.0">
          <artifact name="appcompat-1.1.0.pom">
             <sha256 value="340d617121f8ef8e02a6680c8f357aa3e542276d0c8a1cdcb6fd98984b2cb7b9" origin="Generated by Gradle" reason="Artifact is not signed"/>
@@ -2357,6 +2229,11 @@
             <sha256 value="247f12757acabd706b069445fd31c83c016cc7fe67b0468c582d043ea7d20de1" origin="Generated by Gradle" reason="Artifact is not signed"/>
          </artifact>
       </component>
+      <component group="androidx.transition" name="transition" version="1.2.0-rc01">
+         <artifact name="transition-1.2.0-rc01.pom">
+            <sha256 value="a45d79acb7e43ccc3ae3268fe174ba6fced0ef82499adfca2ceb1ae52af97dbe" origin="Generated by Gradle" reason="Artifact is not signed"/>
+         </artifact>
+      </component>
       <component group="androidx.transition" name="transition" version="1.4.1">
          <artifact name="transition-1.4.1.aar">
             <sha256 value="36d28d9ec33a8c64313842bce99c95736da5b27a6b3a513639050de82f075726" origin="Generated by Gradle" reason="Artifact is not signed"/>
@@ -6448,6 +6325,11 @@
             <sha256 value="169dd904a4b0f6520cffe658cc62292bfe9f3c14a989fa92120724cde43a9968" origin="Generated by Gradle"/>
          </artifact>
       </component>
+      <component group="org.junit" name="junit-bom" version="5.11.0">
+         <artifact name="junit-bom-5.11.0.pom">
+            <sha256 value="e67459d4882424ac6374f40db1c8f4a2e88946b340ba072c80be932a2be4644d" origin="Generated by Gradle"/>
+         </artifact>
+      </component>
       <component group="org.junit" name="junit-bom" version="5.9.2">
          <artifact name="junit-bom-5.9.2.pom">
             <sha256 value="2ed07d65845131f5336a86476c9a4056b59d0b58b9815ab3679bb0f36f35f705" origin="Generated by Gradle"/>