@@ -19,6 +19,8 @@ import React, { Fragment, useEffect, useState } from "react";
19
19
import get from "lodash/get" ;
20
20
import {
21
21
Accordion ,
22
+ AlertIcon ,
23
+ Box ,
22
24
Button ,
23
25
FormLayout ,
24
26
Grid ,
@@ -43,6 +45,7 @@ import ModalWrapper from "../../Common/ModalWrapper/ModalWrapper";
43
45
import QueryMultiSelector from "../../Common/FormComponents/QueryMultiSelector/QueryMultiSelector" ;
44
46
import InputUnitMenu from "../../Common/FormComponents/InputUnitMenu/InputUnitMenu" ;
45
47
import { IAM_PAGES } from "common/SecureComponent/permissions" ;
48
+ import { ArrowBack } from "@mui/icons-material" ;
46
49
47
50
interface IReplicationModal {
48
51
open : boolean ;
@@ -197,7 +200,7 @@ const AddLifecycleModal = ({
197
200
dispatch ( setModalErrorSnackMessage ( errorToHandler ( err ) ) ) ;
198
201
} ) ;
199
202
} ;
200
-
203
+ const testSwitch = true ;
201
204
return (
202
205
< ModalWrapper
203
206
modalOpen = { open }
@@ -274,10 +277,6 @@ const AddLifecycleModal = ({
274
277
label = "Object Version"
275
278
onChange = { ( value ) => {
276
279
setTargetVersion ( value as "current" | "noncurrent" ) ;
277
- console . log (
278
- "setTargetVersion(value as 'current' | 'noncurrent'):" ,
279
- value ,
280
- ) ;
281
280
} }
282
281
options = { [
283
282
{ value : "current" , label : "Current Version" } ,
@@ -302,10 +301,12 @@ const AddLifecycleModal = ({
302
301
303
302
< InputBox
304
303
error = {
305
- targetVersion === "current" || ilmType !== "expiry"
306
- ? ""
307
- : ! isFormValid
308
- ? "Number of noncurrent versions to retain must be greater than zero"
304
+ lifecycleDays && ! isFormValid
305
+ ? parseInt ( lifecycleDays ) <= 0
306
+ ? `Number of ${ expiryUnit } to retain must be greater than zero`
307
+ : parseInt ( lifecycleDays ) > 2147483647
308
+ ? `Number of ${ expiryUnit } must be less than max int32`
309
+ : ""
309
310
: ""
310
311
}
311
312
id = "expiry_days"
@@ -319,28 +320,38 @@ const AddLifecycleModal = ({
319
320
label = "After"
320
321
value = { lifecycleDays }
321
322
overlayObject = {
322
- < Tooltip
323
- tooltip = {
324
- ilmType === "expiry" &&
325
- targetVersion === "noncurrent" &&
326
- "Select expiry based on days or number of newer noncurrent versions"
327
- }
328
- >
329
- < InputUnitMenu
330
- id = { "expire-current-unit" }
331
- unitSelected = { expiryUnit }
332
- unitsList = { [
333
- { label : "Days" , value : "days" } ,
334
- { label : "Versions" , value : "versions" } ,
335
- ] }
336
- disabled = {
337
- targetVersion !== "noncurrent" || ilmType !== "expiry"
338
- }
339
- onUnitChange = { ( newValue ) => {
340
- setExpiryUnit ( newValue ) ;
341
- } }
342
- />
343
- </ Tooltip >
323
+ < Fragment >
324
+ < Grid container sx = { { justifyContent : "center" } } >
325
+ < InputUnitMenu
326
+ id = { "expire-current-unit" }
327
+ unitSelected = { expiryUnit }
328
+ unitsList = { [
329
+ { label : "Days" , value : "days" } ,
330
+ { label : "Versions" , value : "versions" } ,
331
+ ] }
332
+ disabled = {
333
+ targetVersion !== "noncurrent" || ilmType !== "expiry"
334
+ }
335
+ onUnitChange = { ( newValue ) => {
336
+ setExpiryUnit ( newValue ) ;
337
+ } }
338
+ />
339
+ { ilmType === "expiry" && targetVersion === "noncurrent" && (
340
+ < HelpTip
341
+ content = {
342
+ < Fragment >
343
+ Select to set expiry by days or newer noncurrent
344
+ versions
345
+ </ Fragment >
346
+ }
347
+ placement = "right"
348
+ >
349
+ { " " }
350
+ < AlertIcon style = { { width : 15 , height : 15 } } />
351
+ </ HelpTip >
352
+ ) }
353
+ </ Grid >
354
+ </ Fragment >
344
355
}
345
356
/>
346
357
0 commit comments