@@ -92,10 +92,9 @@ const EditLifecycleConfiguration = ({
92
92
93
93
return { label : value , value : value } ;
94
94
} ) ;
95
-
96
95
setTiersList ( objList ) ;
97
96
if ( objList . length > 0 ) {
98
- setStorageClass ( objList [ 0 ] . value ) ;
97
+ setStorageClass ( lifecycleRule . transition ?. storage_class || "" ) ;
99
98
}
100
99
}
101
100
setLoadingTiers ( false ) ;
@@ -104,18 +103,28 @@ const EditLifecycleConfiguration = ({
104
103
setLoadingTiers ( false ) ;
105
104
} ) ;
106
105
}
107
- } , [ loadingTiers ] ) ;
106
+ } , [ loadingTiers , lifecycleRule . transition ?. storage_class ] ) ;
108
107
109
108
useEffect ( ( ) => {
110
109
let valid = true ;
111
110
112
111
if ( ilmType !== "expiry" ) {
113
- if ( storageClass === "" ) {
112
+ if (
113
+ ( transitionDays !== "0" && storageClass === "" ) ||
114
+ ( NCTransitionDays !== "0" && NCTransitionSC === "" )
115
+ ) {
114
116
valid = false ;
115
117
}
116
118
}
117
119
setIsFormValid ( valid ) ;
118
- } , [ ilmType , expiryDays , transitionDays , storageClass ] ) ;
120
+ } , [
121
+ ilmType ,
122
+ expiryDays ,
123
+ transitionDays ,
124
+ storageClass ,
125
+ NCTransitionDays ,
126
+ NCTransitionSC ,
127
+ ] ) ;
119
128
120
129
useEffect ( ( ) => {
121
130
if ( lifecycleRule . status === "Enabled" ) {
@@ -439,15 +448,15 @@ const EditLifecycleConfiguration = ({
439
448
value = { NCTransitionDays }
440
449
min = "0"
441
450
/>
442
- < InputBox
451
+ < Select
452
+ label = "Non-current Version Transition Storage Class"
443
453
id = "noncurrentversion_t_SC"
444
454
name = "noncurrentversion_t_SC"
445
- onChange = { ( e : React . ChangeEvent < HTMLInputElement > ) => {
446
- setNCTransitionSC ( e . target . value ) ;
447
- } }
448
- placeholder = "Set Non-current Version Transition Storage Class"
449
- label = "Non-current Version Transition Storage Class"
450
455
value = { NCTransitionSC }
456
+ onChange = { ( value ) => {
457
+ setNCTransitionSC ( value ) ;
458
+ } }
459
+ options = { tiersList }
451
460
/>
452
461
</ Fragment >
453
462
) }
0 commit comments