Skip to content

Commit cdb1b1b

Browse files
committed
feat: coming soon nav on assign tap #627
1 parent 4c11d59 commit cdb1b1b

5 files changed

Lines changed: 54 additions & 13 deletions

File tree

app/src/main/java/to/bitkit/ui/screens/common/ComingSoonScreen.kt

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import androidx.compose.foundation.layout.fillMaxWidth
66
import androidx.compose.foundation.layout.padding
77
import androidx.compose.runtime.Composable
88
import androidx.compose.ui.Modifier
9+
import androidx.compose.ui.platform.testTag
910
import androidx.compose.ui.res.painterResource
1011
import androidx.compose.ui.res.stringResource
1112
import androidx.compose.ui.tooling.preview.Preview
@@ -17,7 +18,7 @@ import to.bitkit.ui.components.PrimaryButton
1718
import to.bitkit.ui.components.VerticalSpacer
1819
import to.bitkit.ui.scaffold.AppTopBar
1920
import to.bitkit.ui.scaffold.DrawerNavIcon
20-
import to.bitkit.ui.scaffold.ScreenColumn
21+
import to.bitkit.ui.shared.util.screen
2122
import to.bitkit.ui.theme.AppThemeSurface
2223
import to.bitkit.ui.theme.Colors
2324
import to.bitkit.ui.utils.withAccent
@@ -26,14 +27,18 @@ import to.bitkit.ui.utils.withAccent
2627
fun ComingSoonScreen(
2728
onWalletOverviewClick: () -> Unit,
2829
onBackClick: () -> Unit,
30+
modifier: Modifier = Modifier,
2931
) {
30-
ScreenColumn {
32+
Column(
33+
modifier = modifier
34+
.screen()
35+
.testTag("ComingSoonScreen")
36+
) {
3137
AppTopBar(
3238
titleText = stringResource(R.string.coming_soon__title),
3339
onBackClick = onBackClick,
3440
actions = { DrawerNavIcon() },
3541
)
36-
3742
Column(
3843
modifier = Modifier.padding(horizontal = 32.dp)
3944
) {
@@ -44,10 +49,9 @@ fun ComingSoonScreen(
4449
.fillMaxWidth()
4550
.weight(1f)
4651
)
47-
4852
Display(
4953
text = stringResource(R.string.coming_soon__headline).withAccent(accentColor = Colors.Brand),
50-
color = Colors.White
54+
color = Colors.White,
5155
)
5256
VerticalSpacer(8.dp)
5357
BodyM(text = stringResource(R.string.coming_soon__description), color = Colors.White64)

app/src/main/java/to/bitkit/ui/screens/wallets/activity/ActivityDetailScreen.kt

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ import to.bitkit.ui.screens.wallets.activity.components.ActivityIcon
7878
import to.bitkit.ui.shared.modifiers.clickableAlpha
7979
import to.bitkit.ui.shared.modifiers.sheetHeight
8080
import to.bitkit.ui.sheets.BoostTransactionSheet
81+
import to.bitkit.ui.sheets.ComingSoonSheet
8182
import to.bitkit.ui.theme.AppThemeSurface
8283
import to.bitkit.ui.theme.Colors
8384
import to.bitkit.ui.utils.copyToClipboard
@@ -168,6 +169,7 @@ fun ActivityDetailScreen(
168169
val tags by detailViewModel.tags.collectAsStateWithLifecycle()
169170
val boostSheetVisible by detailViewModel.boostSheetVisible.collectAsStateWithLifecycle()
170171
var showAddTagSheet by remember { mutableStateOf(false) }
172+
var showAssignSheet by remember { mutableStateOf(false) }
171173
var isCpfpChild by remember { mutableStateOf(false) }
172174
var boostTxDoesExist by remember { mutableStateOf<Map<String, Boolean>>(emptyMap()) }
173175

@@ -217,6 +219,7 @@ fun ActivityDetailScreen(
217219
tags = tags,
218220
onRemoveTag = { detailViewModel.removeTag(it) },
219221
onAddTagClick = { showAddTagSheet = true },
222+
onAssignClick = { showAssignSheet = true },
220223
onClickBoost = detailViewModel::onClickBoost,
221224
onExploreClick = onExploreClick,
222225
onChannelClick = onChannelClick,
@@ -282,6 +285,13 @@ fun ActivityDetailScreen(
282285
)
283286
}
284287
}
288+
289+
if (showAssignSheet) {
290+
ComingSoonSheet(
291+
onWalletOverviewClick = onCloseClick,
292+
onBack = { showAssignSheet = false },
293+
)
294+
}
285295
}
286296
}
287297
}
@@ -294,6 +304,7 @@ private fun ActivityDetailContent(
294304
tags: List<String>,
295305
onRemoveTag: (String) -> Unit,
296306
onAddTagClick: () -> Unit,
307+
onAssignClick: () -> Unit,
297308
onClickBoost: () -> Unit,
298309
onExploreClick: (String) -> Unit,
299310
onChannelClick: ((String) -> Unit)?,
@@ -571,7 +582,7 @@ private fun ActivityDetailContent(
571582
PrimaryButton(
572583
text = stringResource(R.string.wallet__activity_assign),
573584
size = ButtonSize.Small,
574-
onClick = { /* TODO: Implement assign functionality */ },
585+
onClick = onAssignClick,
575586
enabled = !isSelfSend,
576587
icon = {
577588
Icon(
@@ -847,6 +858,7 @@ private fun PreviewLightningSent() {
847858
tags = listOf("Lunch", "Drinks"),
848859
onRemoveTag = {},
849860
onAddTagClick = {},
861+
onAssignClick = {},
850862
onExploreClick = {},
851863
onChannelClick = null,
852864
onCopy = {},
@@ -877,6 +889,7 @@ private fun PreviewOnchain() {
877889
tags = emptyList(),
878890
onRemoveTag = {},
879891
onAddTagClick = {},
892+
onAssignClick = {},
880893
onExploreClick = {},
881894
onChannelClick = null,
882895
onCopy = {},
@@ -908,6 +921,7 @@ private fun PreviewSheetSmallScreen() {
908921
tags = listOf("Lunch", "Drinks"),
909922
onRemoveTag = {},
910923
onAddTagClick = {},
924+
onAssignClick = {},
911925
onExploreClick = {},
912926
onChannelClick = null,
913927
onCopy = {},

app/src/main/java/to/bitkit/ui/screens/wallets/activity/components/ActivityAddTagSheet.kt

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ import to.bitkit.viewmodels.TagsViewModel
2929
fun ActivityAddTagSheet(
3030
listViewModel: ActivityListViewModel,
3131
activityViewModel: ActivityDetailViewModel,
32+
modifier: Modifier = Modifier,
3233
tagsViewModel: TagsViewModel = hiltViewModel(),
3334
onDismiss: () -> Unit,
3435
) {
@@ -66,7 +67,7 @@ fun ActivityAddTagSheet(
6667
focusOnShow = true,
6768
tagInputTestTag = "TagInput",
6869
addButtonTestTag = "ActivityTagsSubmit",
69-
modifier = Modifier
70+
modifier = modifier
7071
.semantics { testTagsAsResourceId = true }
7172
.sheetHeight(SheetSize.SMALL, isModal = true)
7273
.gradientBackground()
@@ -87,9 +88,7 @@ private fun Preview() {
8788
onTagConfirmed = {},
8889
onInputUpdated = {},
8990
onBack = {},
90-
modifier = Modifier
91-
.sheetHeight(SheetSize.SMALL, isModal = true)
92-
.gradientBackground()
91+
modifier = Modifier.sheetHeight(SheetSize.SMALL, isModal = true)
9392
)
9493
}
9594
}

app/src/main/java/to/bitkit/ui/sheets/ComingSoonSheetContent.kt renamed to app/src/main/java/to/bitkit/ui/sheets/ComingSoonSheet.kt

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import androidx.compose.foundation.layout.fillMaxSize
66
import androidx.compose.foundation.layout.fillMaxWidth
77
import androidx.compose.foundation.layout.navigationBarsPadding
88
import androidx.compose.foundation.layout.padding
9+
import androidx.compose.material3.ExperimentalMaterial3Api
910
import androidx.compose.runtime.Composable
1011
import androidx.compose.ui.Modifier
1112
import androidx.compose.ui.platform.testTag
@@ -15,9 +16,11 @@ import androidx.compose.ui.tooling.preview.Preview
1516
import androidx.compose.ui.unit.dp
1617
import to.bitkit.R
1718
import to.bitkit.ui.components.BodyM
19+
import to.bitkit.ui.components.BottomSheet
1820
import to.bitkit.ui.components.BottomSheetPreview
1921
import to.bitkit.ui.components.Display
2022
import to.bitkit.ui.components.PrimaryButton
23+
import to.bitkit.ui.components.SheetSize
2124
import to.bitkit.ui.components.VerticalSpacer
2225
import to.bitkit.ui.scaffold.SheetTopBar
2326
import to.bitkit.ui.shared.modifiers.sheetHeight
@@ -26,8 +29,27 @@ import to.bitkit.ui.theme.AppThemeSurface
2629
import to.bitkit.ui.theme.Colors
2730
import to.bitkit.ui.utils.withAccent
2831

32+
private fun Modifier.sheet() = this then sheetHeight(SheetSize.MEDIUM, isModal = true)
33+
34+
@OptIn(ExperimentalMaterial3Api::class)
35+
@Composable
36+
fun ComingSoonSheet(
37+
onWalletOverviewClick: () -> Unit,
38+
onBack: () -> Unit,
39+
modifier: Modifier = Modifier,
40+
) {
41+
BottomSheet(onDismissRequest = onBack) {
42+
ComingSoonSheetContent(
43+
onWalletOverviewClick = onWalletOverviewClick,
44+
onBack = onBack,
45+
modifier = modifier.sheet()
46+
)
47+
}
48+
}
49+
2950
@Composable
3051
fun ComingSoonSheetContent(
52+
onWalletOverviewClick: () -> Unit,
3153
onBack: () -> Unit,
3254
modifier: Modifier = Modifier,
3355
) {
@@ -58,7 +80,7 @@ fun ComingSoonSheetContent(
5880
VerticalSpacer(54.dp)
5981
PrimaryButton(
6082
text = stringResource(R.string.coming_soon__button),
61-
onClick = onBack,
83+
onClick = onWalletOverviewClick,
6284
)
6385
}
6486
}
@@ -70,8 +92,9 @@ private fun Preview() {
7092
AppThemeSurface {
7193
BottomSheetPreview {
7294
ComingSoonSheetContent(
95+
onWalletOverviewClick = {},
7396
onBack = {},
74-
modifier = Modifier.sheetHeight(),
97+
modifier = Modifier.sheet()
7598
)
7699
}
77100
}

app/src/main/java/to/bitkit/ui/sheets/SendSheet.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -269,7 +269,8 @@ fun SendSheet(
269269
}
270270
composableWithDefaultTransitions<SendRoute.ComingSoon> {
271271
ComingSoonSheetContent(
272-
onBack = { navController.popBackStack() }
272+
onWalletOverviewClick = { appViewModel.hideSheet() },
273+
onBack = { navController.popBackStack() },
273274
)
274275
}
275276
composableWithDefaultTransitions<SendRoute.Error> {

0 commit comments

Comments
 (0)