Updated on 2026-08-14

This commit is contained in:
Tangem 2022-11-18 07:34:20 +03:00
commit 323d0e4a87
14 changed files with 546 additions and 9 deletions

View file

@ -4,6 +4,7 @@ import androidx.compose.foundation.background
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.material.Icon
@ -48,7 +49,8 @@ fun AppBarWithBackButton(text: String? = null, onBackClick: () -> Unit) {
Row(
modifier = Modifier
.background(MaterialTheme.colors.primaryVariant)
.padding(all = dimensionResource(R.dimen.spacing16)),
.padding(all = dimensionResource(R.dimen.spacing16))
.fillMaxWidth(),
horizontalArrangement = Arrangement.spacedBy(dimensionResource(R.dimen.spacing16)),
verticalAlignment = Alignment.CenterVertically,
) {

View file

@ -0,0 +1,19 @@
package com.tangem.core.ui.components
import androidx.annotation.DimenRes
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.width
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.res.dimensionResource
@Composable
fun VerticalSpacer(@DimenRes spaceResId: Int) {
Spacer(modifier = Modifier.height(dimensionResource(id = spaceResId)))
}
@Composable
fun HorizontalSpacer(@DimenRes spaceResId: Int) {
Spacer(modifier = Modifier.width(dimensionResource(id = spaceResId)))
}

View file

@ -0,0 +1,19 @@
package com.tangem.core.ui.res
import androidx.compose.material.Colors
import androidx.compose.runtime.Composable
import androidx.compose.ui.graphics.Color
enum class IconColorType(val lightColor: Color, val darkColor: Color) {
PRIMARY1(lightColor = Black, darkColor = White),
PRIMARY2(lightColor = White, darkColor = Dark6),
SECONDARY(lightColor = Dark2, darkColor = Dark1),
INFORMATIVE(lightColor = Light5, darkColor = Dark2),
INACTIVE(lightColor = Light4, darkColor = Dark4),
ACCENT(lightColor = Meadow, darkColor = Meadow),
WARNING(lightColor = Amaranth, darkColor = Amaranth),
ATTENTION(lightColor = Tangerine, darkColor = Tangerine)
}
@Composable
fun Colors.iconColor(type: IconColorType): Color = if (isSystemInDarkTheme) type.darkColor else type.lightColor

View file

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="28dp"
android:height="28dp"
android:viewportWidth="28"
android:viewportHeight="28">
<path
android:pathData="M22.04,10.71V6H17.34L14,2.69L10.71,6H6V10.71L2.69,14L6,17.34V22.04H10.71L14,25.35L17.34,22.04H22.04V17.34L25.35,14L22.04,10.71ZM10.83,9.05C11.81,9.05 12.6,9.84 12.6,10.83C12.6,11.299 12.413,11.75 12.082,12.082C11.75,12.413 11.299,12.6 10.83,12.6C9.84,12.6 9.05,11.81 9.05,10.83C9.05,9.84 9.84,9.05 10.83,9.05ZM17.22,19C16.24,19 15.45,18.2 15.45,17.22C15.45,16.751 15.637,16.3 15.968,15.968C16.3,15.637 16.751,15.45 17.22,15.45C18.2,15.45 19,16.24 19,17.22C19,17.692 18.813,18.145 18.479,18.479C18.145,18.813 17.692,19 17.22,19ZM10.5,19.03L9,17.53L17.53,9L19.03,10.5L10.5,19.03Z"
android:fillColor="#000000" />
</vector>

View file

@ -0,0 +1,17 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="28dp"
android:height="28dp"
android:viewportWidth="28"
android:viewportHeight="28">
<group>
<clip-path android:pathData="M0,0h28v28h-28z" />
<path
android:pathData="M8.821,17.869C9.035,16.016 9.741,14.312 10.803,12.892C10.407,13.076 9.929,13.195 9.38,13.241V14H8.552V13.247C6.83,13.134 5.744,12.22 5.738,10.863H7.015C7.077,11.556 7.657,12.04 8.552,12.142V9.483L8.015,9.346C6.67,9.017 5.935,8.234 5.935,7.093C5.935,5.749 6.929,4.852 8.552,4.709V3.902H9.38V4.709C10.941,4.84 11.966,5.766 12.003,7.063H10.744C10.719,6.424 10.176,5.922 9.38,5.826V8.342L9.941,8.467C11.454,8.82 12.163,9.561 12.163,10.768C12.163,11.028 12.13,11.27 12.065,11.493C13.628,10.047 15.64,9.079 17.869,8.822C17.808,3.939 13.831,0 8.935,0C4,0 0,4 0,8.935C0,13.831 3.939,17.808 8.821,17.869ZM17.776,10.222C13.873,10.786 10.786,13.873 10.222,17.776L17.776,10.222ZM8.552,8.174C7.688,8.007 7.225,7.589 7.225,6.991C7.225,6.352 7.781,5.862 8.552,5.82V8.174ZM9.38,12.154V9.632C10.404,9.83 10.88,10.236 10.88,10.905C10.88,11.646 10.33,12.1 9.38,12.154Z"
android:fillColor="#000000"
android:fillType="evenOdd" />
<path
android:pathData="M10.13,19.066C10.13,14.132 14.13,10.131 19.064,10.131C23.998,10.131 27.999,14.132 27.999,19.066C27.999,24 23.998,28.001 19.064,28.001C14.13,28.001 10.13,24 10.13,19.066ZM19.527,17.526L20.48,14.823L19.066,14.323L17.782,17.962L15.337,18.573L15.701,20.028L17.183,19.658L16.23,22.36C16.149,22.589 16.184,22.844 16.325,23.043C16.465,23.241 16.694,23.36 16.937,23.36H22.61V21.86H17.997L18.928,19.222L21.374,18.61L21.01,17.155L19.527,17.526Z"
android:fillColor="#000000"
android:fillType="evenOdd" />
</group>
</vector>

View file

@ -13,19 +13,37 @@
<!-- endregion Elevation -->
<!-- region Radius -->
<dimen name="radius6">6dp</dimen>
<dimen name="radius12">12dp</dimen>
<dimen name="radius16">16dp</dimen>
<!-- endregion Radius -->
<!-- region Size -->
<dimen name="size11">11dp</dimen>
<dimen name="size16">16dp</dimen>
<dimen name="size24">24dp</dimen>
<dimen name="size28">28dp</dimen>
<dimen name="size40">40dp</dimen>
<dimen name="size48">48dp</dimen>
<dimen name="size56">56dp</dimen>
<dimen name="size84">84dp</dimen>
<dimen name="size86">86dp</dimen>
<dimen name="size102">102dp</dimen>
<dimen name="size164">164dp</dimen>
<dimen name="size200">200dp</dimen>
<!-- endregion Size -->
<!-- region Spacing -->
<dimen name="spacing2">2dp</dimen>
<dimen name="spacing4">4dp</dimen>
<dimen name="spacing8">8dp</dimen>
<dimen name="spacing10">10dp</dimen>
<dimen name="spacing12">12dp</dimen>
<dimen name="spacing16">16dp</dimen>
<dimen name="spacing24">24dp</dimen>
<dimen name="spacing32">32dp</dimen>
<dimen name="spacing44">44dp</dimen>
<dimen name="spacing50">50dp</dimen>
<dimen name="spacing54">54dp</dimen>
<!-- endregion Spacing -->
</resources>