11package team.noweekend.feature.home.component.vacation
22
33import androidx.compose.foundation.layout.Arrangement
4+ import androidx.compose.foundation.layout.Box
45import androidx.compose.foundation.layout.Column
6+ import androidx.compose.foundation.layout.height
7+ import androidx.compose.foundation.layout.offset
58import androidx.compose.foundation.layout.size
9+ import androidx.compose.foundation.layout.width
610import androidx.compose.foundation.lazy.LazyListScope
711import androidx.compose.material3.Text
812import androidx.compose.runtime.Composable
@@ -22,6 +26,7 @@ import team.noweekend.core.design.system.core.component.button.defaults.BoxButto
2226import team.noweekend.core.design.system.core.component.button.fill.NWKFillButton
2327import team.noweekend.core.design.system.core.component.image.NWKImage
2428import team.noweekend.core.design.system.foundation.theme.NWKTheme
29+ import team.noweekend.core.resource.NWKDrawableResource
2530import team.noweekend.core.resource.NWKStringResource
2631import team.noweekend.feature.home.mvi.CreateVacationStatus
2732
@@ -49,31 +54,42 @@ internal fun CreateVacationComponent(
4954 onCreateVacationClick : () -> Unit ,
5055 modifier : Modifier = Modifier ,
5156) {
52- Column (
57+ Box (
5358 modifier = modifier.fillMaxWidthOfScreen(),
54- verticalArrangement = Arrangement .spacedBy(16 .dp),
55- horizontalAlignment = Alignment .CenterHorizontally ,
5659 ) {
57- AverageTemperature (
58- temperature = temperature,
59- guideMessageResId = createVacationStatus.messageResourceId,
60- )
6160 NWKImage (
62- modifier = Modifier .size(140 .dp),
63- drawableResId = createVacationStatus.imageResourceId,
61+ modifier = Modifier
62+ .width(385 .dp)
63+ .height(345 .dp)
64+ .offset(y = (- 50 ).dp),
65+ drawableResId = NWKDrawableResource .GradientBackground ,
6466 )
65- NWKFillButton (
66- onClick = onCreateVacationClick,
67- text = when (createVacationStatus) {
68- is CreateVacationStatus .Default -> {
69- stringResource(createVacationStatus.buttonText, remainingVacation)
70- }
67+ Column (
68+ modifier = Modifier .fillMaxWidthOfScreen(),
69+ verticalArrangement = Arrangement .spacedBy(16 .dp),
70+ horizontalAlignment = Alignment .CenterHorizontally ,
71+ ) {
72+ AverageTemperature (
73+ temperature = temperature,
74+ guideMessageResId = createVacationStatus.messageResourceId,
75+ )
76+ NWKImage (
77+ modifier = Modifier .size(140 .dp),
78+ drawableResId = createVacationStatus.imageResourceId,
79+ )
80+ NWKFillButton (
81+ onClick = onCreateVacationClick,
82+ text = when (createVacationStatus) {
83+ is CreateVacationStatus .Default -> {
84+ stringResource(createVacationStatus.buttonText, remainingVacation)
85+ }
7186
72- else -> stringResource(createVacationStatus.buttonText)
73- },
74- type = BoxButtonType .PRIMARY ,
75- enabled = (createVacationStatus is CreateVacationStatus .Done ).not (),
76- )
87+ else -> stringResource(createVacationStatus.buttonText)
88+ },
89+ type = BoxButtonType .PRIMARY ,
90+ enabled = (createVacationStatus is CreateVacationStatus .Done ).not (),
91+ )
92+ }
7793 }
7894}
7995
0 commit comments