diff --git a/k8s/console/base/console-deployment.yaml b/k8s/console/base/console-deployment.yaml index 14a6119983..b161a24f5b 100644 --- a/k8s/console/base/console-deployment.yaml +++ b/k8s/console/base/console-deployment.yaml @@ -15,7 +15,7 @@ spec: serviceAccountName: console-sa containers: - name: console - image: minio/console:v0.7.2 + image: minio/console:v0.7.4 imagePullPolicy: "IfNotPresent" args: - server diff --git a/k8s/operator-console/base/console-deployment.yaml b/k8s/operator-console/base/console-deployment.yaml index 9cb062e465..c9fd7f31b5 100644 --- a/k8s/operator-console/base/console-deployment.yaml +++ b/k8s/operator-console/base/console-deployment.yaml @@ -15,7 +15,7 @@ spec: serviceAccountName: console-sa containers: - name: console - image: minio/console:v0.7.2 + image: minio/console:v0.7.4 imagePullPolicy: "IfNotPresent" env: - name: CONSOLE_OPERATOR_MODE diff --git a/portal-ui/build/static/js/main.f0e70269.chunk.js b/portal-ui/build/static/js/main.f0e70269.chunk.js index c79cf109c7..e18027ced2 100644 --- a/portal-ui/build/static/js/main.f0e70269.chunk.js +++ b/portal-ui/build/static/js/main.f0e70269.chunk.js @@ -1,2 +1,2 @@ -(this["webpackJsonpportal-ui"]=this["webpackJsonpportal-ui"]||[]).push([[0],{554:function(e,t,a){},908:function(e,t,a){},909:function(e,t,a){"use strict";a.r(t);var n=a(0),c=a(1),i=a.n(c),r=a(27),o=a.n(r),s=a(6),l=a(56),d=a(72),b=Object(d.a)(),u=a(3),j=a(2),m=a(210),h=a.n(m),p=a(393),O=a.n(p),g=a(961),f=a(1008),x=a(960),v=a(109),y=a(962),S=a(963),C=a(453),k=a(1010),N=a(951),w=a(15),T="USER_LOGGED",E="OPERATOR_MODE",A="MENU_OPEN",_="SERVER_NEEDS_RESTART",I="SERVER_IS_LOADING",M="SET_LOADING_PROGRESS",F="SET_SNACK_BAR_MESSAGE",D="SET_SERVER_DIAG_STAT",L="SET_ERROR_SNACK_MESSAGE",B="SET_SNACK_MODAL_MESSAGE",R="SET_MODAL_ERROR_MESSAGE";function P(e){return{type:T,logged:e}}function z(e){return{type:A,open:e}}function K(e){return{type:_,needsRestart:e}}var U,W=function(e){return{type:F,message:e}},V=function(e){return{type:L,message:e}},G=function(e){return{type:B,message:e}},q=function(e){return{type:R,message:e}},H=a(388),Y=a(389),Q=a(13),Z=a.n(Q),J=a(211),$=a.n(J),X=1073741824,ee=2147483648,te=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],ae=["Ki","Mi","Gi","Ti","Pi","Ei"],ne=["B"].concat(ae),ce=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=0,n=parseInt(e,10)||0;n>=1024&&++a;)n/=1024;var c=["B"].concat(ae);return n.toFixed(n<10&&a>0?1:0)+" "+(t?c[a]:te[a])},ie=function(){var e;$.a.removeItem("token"),e="token",document.cookie=e+"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;"},re=function(e){var t=e.getHours()<10?"0".concat(e.getHours()):"".concat(e.getHours()),a=e.getMinutes()<10?"0".concat(e.getMinutes()):"".concat(e.getMinutes()),n=e.getSeconds()<10?"0".concat(e.getSeconds()):"".concat(e.getSeconds());return"".concat(t,":").concat(a,":").concat(n,":").concat(e.getMilliseconds())},oe=function(){return ae.map((function(e){return{label:e,value:e}}))},se=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=parseFloat(e),c=a?ne:te,i=c.findIndex((function(e){return e===t}));if(-1===i)return"0";var r=Math.pow(1024,i),o=n*r;return o.toString(10)},le=function(e,t,a,n){var c=parseInt(e,10);return de(t,c,274877906944,a,n)},de=function(e,t,a,n){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0;if(isNaN(e)||isNaN(t)||isNaN(a)||isNaN(n))return{error:"Some provided data is invalid, please try again.",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0};var i=0,r=0,o=0;if(0===c&&(o=(r=t/(i=Math.floor(Math.min(t/Math.max(4,e),a))))/e),c&&(r=(o=c)*e,i=Math.floor(t/r)),o%1>0){r=(o=Math.ceil(o))*e;var s=(i=Math.floor(t/r))*o*e;if(s>n)return{error:"We were not able to allocate this server.",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0}}return i1&&void 0!==arguments[1]?arguments[1]:"s",a=parseFloat(e);switch(t){case"ns":a=Math.floor(1e-9*a);break;case"ms":a=Math.floor(.001*a)}var n=Math.floor(a/86400);a-=3600*n*24;var c=Math.floor(a/3600);a-=3600*c;var i=Math.floor(a/60);if(a-=60*i,n>365){var r=n/365;return"".concat(r," year").concat(1===Math.floor(r)?"":"s")}if(n>30){var o=Math.floor(n/30),s=n-30*o;return"".concat(o," month").concat(1===Math.floor(o)?"":"s"," ").concat(s>0?"".concat(s," day").concat(s>1?"s":""):"")}if(n>=7&&n<=30){var l=Math.floor(n/7);return"".concat(Math.floor(l)," week").concat(1===l?"":"s")}return n>=1&&n<=6?"".concat(n," day").concat(n>1?"s":""):"".concat(c>=1?"".concat(c," hour").concat(c>1?"s":""):""," ").concat(i>=1&&0===c?"".concat(i," minute").concat(i>1?"s":""):""," ").concat(a>=1&&0===i&&0===c?"".concat(a," second").concat(a>1?"s":""):"")},je=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=new Date(1e3*parseInt(e));return t?"".concat(a.getFullYear(),"-").concat(String(a.getMonth()+1).padStart(2,"0"),"-").concat(String(a.getDay()).padStart(2,"0")," ").concat(a.getHours(),":").concat(String(a.getMinutes()).padStart(2,"0"),":").concat(String(a.getSeconds()).padStart(2,"0")):"".concat(a.getHours(),":").concat(String(a.getMinutes()).padStart(2,"0"))},me=function(e){var t=1e-9*e,a=Math.round(1e4*(t+Number.EPSILON))/1e4;return"".concat(a," s")},he=function(e){var t=(100*e.split("").reduce((function(e,t){return e+t.charCodeAt(0)+((e<<5)-e)}),0)&16777215).toString(16).toUpperCase();return"#".concat(t.padStart(6,"0"))},pe=new(function(){function e(){Object(H.a)(this,e)}return Object(Y.a)(e,[{key:"invoke",value:function(e,t,a){var n=this;return h()(e,t).send(a).then((function(e){return e.body})).catch((function(e){return 401===e.status?(ie(),void(window.location.href="/login")):n.onError(e)}))}},{key:"onError",value:function(e){if(e.status){var t=Z()(e.response,"body.message",e.status.toString()),a=t.charAt(0).toUpperCase()+t.slice(1);return Promise.reject(a)}ie(),window.location.href="/login"}}]),e}());!function(e){e.unknown="unknown",e.form="form",e.redirect="redirect",e.serviceAccount="service-account"}(U||(U={}));var Oe=Object(N.a)((function(e){return Object(k.a)({disabled:{"&.MuiInput-underline::before":{borderColor:"#eaeaea",borderBottomStyle:"solid"}}})}));function ge(e){var t=Oe();return Object(n.jsx)(f.a,Object(j.a)({InputProps:{classes:t}},e))}var fe=Object(s.b)((function(e){return{loggedIn:e.loggedIn}}),{userLoggedIn:P})(Object(w.a)((function(e){return Object(k.a)({"@global":{body:{backgroundColor:"#FAFAFA"}},paper:{borderRadius:8,display:"flex",flexDirection:"column",alignItems:"center",width:800,height:424,margin:"auto",position:"absolute",top:"50%",left:"50%",marginLeft:-400,marginTop:-212,"&.MuiPaper-root":{borderRadius:8}},avatar:{margin:e.spacing(1),backgroundColor:e.palette.secondary.main},form:{width:"100%"},submit:{margin:"30px 0px 16px",height:40,boxShadow:"none",padding:"16px 30px"},errorBlock:{backgroundColor:"#C72C48",width:800,height:64,display:"flex",justifyContent:"center",alignItems:"center",position:"absolute",left:"50%",top:"50%",marginLeft:-400,marginTop:-290,color:"#fff",fontWeight:700,fontSize:14,borderRadius:8,padding:10,boxSizing:"border-box"},mainContainer:{position:"relative",height:424},theOcean:{borderTopLeftRadius:8,borderBottomLeftRadius:8,background:"transparent linear-gradient(to bottom, #073052 0%,#05122b 100%); 0% 0% no-repeat padding-box;"},oceanBg:{backgroundImage:"url(/images/BG_Illustration.svg)",backgroundRepeat:"no-repeat",backgroundPosition:"bottom left",height:"100%",width:324},theLogin:{padding:"40px 45px 20px 45px"},loadingLoginStrategy:{textAlign:"center"},headerTitle:{marginBottom:10},submitContainer:{textAlign:"right"},disclaimer:{fontSize:12,marginTop:30},jwtInput:{marginTop:45},linearPredef:{height:10},errorIconStyle:{marginRight:3}})}))((function(e){var t=e.classes,a=e.userLoggedIn,r=Object(c.useState)(""),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(""),j=Object(u.a)(d,2),m=j[0],p=j[1],f=Object(c.useState)(""),k=Object(u.a)(f,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)({loginStrategy:U.unknown,redirect:""}),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(!1),B=Object(u.a)(L,2),R=B[0],P=B[1],z={form:"/api/v1/login","service-account":"/api/v1/login/operator"},K={form:{accessKey:s,secretKey:N},"service-account":{jwt:m}},W=function(e){e.preventDefault(),P(!0),h.a.post(z[F.loginStrategy]||"/api/v1/login").send(K[F.loginStrategy]).then((function(e){var t=e.body;if(t.error)throw P(!1),t.error})).then((function(){a(!0),F.loginStrategy===U.form&&localStorage.setItem("userLoggedIn",btoa(s)),b.push("/")})).catch((function(e){P(!1),_(e.message)}))};Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/login").then((function(e){D(e),_(""),"redirect"===e.loginStrategy&&e.redirect})).catch((function(e){_(e)}))}),[]);var V=null;switch(F.loginStrategy){case U.form:V=Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h1",variant:"h6",className:t.headerTitle,children:"Console Login"}),Object(n.jsxs)("form",{className:t.form,noValidate:!0,onSubmit:W,children:[Object(n.jsxs)(x.a,{container:!0,spacing:2,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ge,{fullWidth:!0,id:"accessKey",value:s,onChange:function(e){return l(e.target.value)},label:"Enter Access Key",name:"accessKey",autoComplete:"username",disabled:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ge,{fullWidth:!0,value:N,onChange:function(e){return w(e.target.value)},name:"secretKey",label:"Enter Secret Key",type:"password",id:"secretKey",autoComplete:"current-password",disabled:R})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.submitContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",className:t.submit,disabled:""===N||""===s||R,children:"Login"})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.linearPredef,children:R&&Object(n.jsx)(y.a,{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.disclaimer,children:[Object(n.jsx)("strong",{children:"Don't have an access key?"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),"Contact your administrator to have one made"]})]})]});break;case U.redirect:V=Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h1",variant:"h6",className:t.headerTitle,children:"Welcome"}),Object(n.jsx)(g.a,{component:"a",href:F.redirect.replace("%5BHOSTNAME%5D",window.location.hostname),type:"submit",variant:"contained",color:"primary",className:t.submit,children:"Login with SSO"})]});break;case U.serviceAccount:V=Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h1",variant:"h6",className:t.headerTitle,children:"Operator Login"}),Object(n.jsxs)("form",{className:t.form,noValidate:!0,onSubmit:W,children:[Object(n.jsx)(x.a,{container:!0,spacing:2,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.jwtInput,children:Object(n.jsx)(ge,{required:!0,fullWidth:!0,id:"jwt",value:m,onChange:function(e){return p(e.target.value)},label:"JWT",name:"jwt",autoComplete:"off",disabled:R})})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.submitContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",className:t.submit,disabled:""===m||R,children:"Login"})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.linearPredef,children:R&&Object(n.jsx)(y.a,{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.disclaimer,children:[Object(n.jsx)("strong",{children:"Don't have an access key?"}),Object(n.jsx)("br",{}),"Contact your administrator to have one made"]})]})]});break;default:V=Object(n.jsx)(S.a,{className:t.loadingLoginStrategy})}return Object(n.jsxs)(i.a.Fragment,{children:[""!==A&&Object(n.jsxs)("div",{className:t.errorBlock,children:[Object(n.jsx)(O.a,{fontSize:"small",className:t.errorIconStyle})," ",A]}),Object(n.jsx)(C.a,{className:t.paper,children:Object(n.jsxs)(x.a,{container:!0,className:t.mainContainer,children:[Object(n.jsx)(x.a,{item:!0,xs:7,className:t.theOcean,children:Object(n.jsx)("div",{className:t.oceanBg})}),Object(n.jsx)(x.a,{item:!0,xs:5,className:t.theLogin,children:V})]})})]})}))),xe=a(38),ve=a(5),ye=a(966),Se=a(1011),Ce=a(965),ke=a(1004),Ne={inputLabel:{fontWeight:600,marginRight:10,fontSize:15,color:"#000",textAlign:"left",overflow:"hidden","& span":{display:"flex",alignItems:"center"},display:"flex"},fieldLabelError:{paddingBottom:22},fieldContainer:{marginBottom:20,position:"relative",maxWidth:840},tooltipContainer:{marginLeft:5,display:"flex",alignItems:"center"},switchContainer:{display:"flex",maxWidth:840}},we={formScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto",marginBottom:25},formSlider:{marginLeft:0},clearButton:{fontFamily:"Lato, sans-serif",border:"0",backgroundColor:"transparent",color:"#393939",fontWeight:600,fontSize:14,marginRight:10,outline:"0",padding:"16px 25px 16px 25px",cursor:"pointer"},floatingEnabled:{position:"absolute",right:58,zIndex:1e3,marginTop:-38},configureString:{border:"#EAEAEA 1px solid",borderRadius:4,padding:"24px 50px",overflowY:"auto",height:170,maxWidth:840}},Te={tooltip:{fontSize:16}},Ee={width:14,height:14,borderRadius:2},Ae={unCheckedIcon:Object(j.a)(Object(j.a)({},Ee),{},{border:"1px solid #c3c3c3"}),checkedIcon:Object(j.a)(Object(j.a)({},Ee),{},{border:"1px solid #081C42",backgroundColor:"#081C42"})},_e={width:12,height:12,borderRadius:"100%","input:disabled ~ &":{border:"1px solid #9C9C9C"}},Ie={radioUnselectedIcon:Object(j.a)(Object(j.a)({},_e),{},{border:"1px solid #000"}),radioSelectedIcon:Object(j.a)(Object(j.a)({},_e),{},{border:"1px solid #000",backgroundColor:"#000"})},Me={label:{color:"#393939",fontWeight:600,fontSize:13,alignSelf:"center",whiteSpace:"nowrap","&:not(:first-of-type)":{marginLeft:10}},timeContainers:{height:40},actionsTray:{display:"flex",justifyContent:"space-between","& button":{flexGrow:0,marginLeft:15}}},Fe={searchField:{flexGrow:1,height:40,background:"#FFFFFF",borderRadius:5,border:"#EAEDEE 1px solid",display:"flex",justifyContent:"center",padding:"0 16px","& input":{fontSize:12,fontWeight:700,color:"#000","&::placeholder":{color:"#393939",opacity:1}},"&:hover":{borderColor:"#000"}}},De={prefinedContainer:{maxWidth:840,width:"100%"},predefinedTitle:{fontSize:16,fontWeight:600,color:"#000",margin:"10px 0"},predefinedList:{backgroundColor:"#eaeaea",padding:"12px 10px",color:"#393939",fontSize:12,fontWeight:600,minHeight:41},innerContent:{width:"100%",overflowX:"auto",whiteSpace:"nowrap",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},innerContentMultiline:{width:"100%",maxHeight:100,overflowY:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}},Le={obTitleSection:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",marginBottom:20},sectionTitle:{fontSize:22,color:"#000",fontWeight:600,height:40,lineHeight:"40px"},breadcrumbs:{fontSize:10,color:"#000",marginTop:2,"& a":{textDecoration:"none",color:"#000","&:hover":{textDecoration:"underline"}}}},Be={multiSelectTable:{height:200}},Re={customTitle:{fontSize:18,color:"#000",fontWeight:600,padding:"12px 0",borderBottom:"#eaedee 1px solid",marginBottom:10,margin:"15px 38px 27px"},settingsFormContainer:{height:"calc(100vh - 421px)",padding:"15px 38px",overflowY:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},settingsButtonContainer:{borderTop:"1px solid #EAEAEA",padding:"15px 38px",textAlign:"right"},innerSettingsButtonContainer:{maxWidth:840,textAlign:"right"},settingsOptionsContainer:{height:"calc(100vh - 244px)",backgroundColor:"#fff",border:"#EAEDEE 1px solid",borderRadius:3,marginTop:15},backButton:{cursor:"pointer",fontSize:10,fontWeight:600,color:"#000",backgroundColor:"transparent",border:0,padding:0,display:"flex",alignItems:"center","&:active, &:focus":{outline:0},"& svg":{width:10,marginRight:4}},backContainer:{margin:"20px 38px 0"}},Pe={iconContainer:{display:"flex",flexDirection:"row",maxWidth:455,justifyContent:"space-between",flexWrap:"wrap",width:"100%"},nonIconContainer:{marginBottom:16,width:455,marginTop:15,"& button":{marginRight:16}},pickTitle:{fontWeight:600,color:"#393939",fontSize:14,marginBottom:16},centerElements:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},logoButton:{height:"80px"},lambdaNotif:{backgroundColor:"#fff",border:"#393939 1px solid",borderRadius:5,width:101,height:91,display:"flex",alignItems:"center",justifyContent:"center",marginBottom:16,cursor:"pointer","& img":{maxWidth:71,maxHeight:71}}},ze={logsSubContainer:{height:"calc(100vh - 230px)",padding:"15px 0"}},Ke={singleValueContainer:{position:"relative",flexGrow:1,width:"100%",height:"100%",border:"#EAEAEA 1px solid",borderRadius:5,backgroundColor:"#fff"},titleContainer:{color:"#393939",fontWeight:600,height:15,textAlign:"center",fontSize:10},contentContainer:{flexGrow:2,justifyContent:"center",alignItems:"center",display:"flex",position:"absolute",width:"100%",height:"calc(100% - 15px)"},contentContainerWithLabel:{height:"calc(100% - 25px)"},legendBlock:{position:"absolute",bottom:5,display:"flex",width:"100%",height:15,flexWrap:"wrap",overflowY:"auto"},singleLegendContainer:{display:"flex",alignItems:"center",padding:"0 10px",maxWidth:"100%"},colorContainer:{width:8,height:8,minWidth:8,borderRadius:"100%",marginRight:5},legendLabel:{fontSize:"80%",color:"#393939",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},Ue={customTooltip:{backgroundColor:"rgba(255, 255, 255, 0.90)",border:"#eaeaea 1px solid",borderRadius:3,padding:"5px 10px",maxHeight:300,overflowY:"auto"},labelContainer:{display:"flex",alignItems:"center"},labelColor:{width:6,height:6,display:"block",borderRadius:"100%",marginRight:5},itemValue:{fontSize:"75%",color:"#393939"},valueContainer:{fontWeight:600},timeStampTitle:{fontSize:"80%",color:"#9c9c9c",textAlign:"center",marginBottom:6}},We={snackBar:{backgroundColor:"#081F44",fontWeight:400,fontFamily:"Lato, sans-serif",fontSize:14,padding:"0px 20px 0px 20px;",boxShadow:"none","&.MuiPaper-root.MuiSnackbarContent-root":{borderRadius:"0px 0px 5px 5px"},"& div":{textAlign:"center",padding:"6px 30px",width:"100%",overflowX:"hidden",textOverflow:"ellipsis"}},errorSnackBar:{backgroundColor:"#C72C48",color:"#fff"},snackBarExternal:{top:"-17px",position:"absolute",minWidth:"348px",whiteSpace:"nowrap",height:"33px"},snackDiv:{top:"17px",left:"50%",position:"absolute"},snackBarModal:{top:0,position:"absolute",minWidth:"348px",whiteSpace:"nowrap",height:"33px",maxWidth:"calc(100% - 140px)"}},Ve={multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},sizeFactorContainer:{marginLeft:8,alignSelf:"flex-start"},headerElement:{position:"sticky",top:0,paddingTop:5,marginBottom:10,zIndex:500,backgroundColor:"#fff"},tableTitle:{fontWeight:700,width:"30%"},poolError:{color:"#dc1f2e",fontSize:"0.75rem",paddingLeft:120},error:{color:"#dc1f2e",fontSize:"0.75rem"},h3Section:{marginTop:0},descriptionText:{fontSize:13,color:"#777777"},container:{padding:"77px 0 0 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}},Ge={anchorButton:{textDecoration:"underline",textTransform:"unset",fontWeight:"normal",padding:0,lineHeight:"unset",height:"unset",width:"unset",textAlign:"left",border:0,minWidth:"unset"}},qe={hrClass:{borderTop:0,borderLeft:0,borderRight:0,borderColor:"#999999",backgroundColor:"transparent"}},He=a(996),Ye=a(964);function Qe(){return Object(n.jsxs)(v.a,{variant:"body2",color:"textSecondary",align:"center",children:["Copyright \xa9 ",Object(n.jsx)(Ye.a,{color:"inherit",href:"https://material-ui.com/",children:"MinIO"})," ",(new Date).getFullYear(),"."]})}var Ze=Object(N.a)((function(e){return{"@global":{body:{backgroundColor:e.palette.common.white}},paper:{marginTop:e.spacing(8),display:"flex",flexDirection:"column",alignItems:"center"}}})),Je=function(){var e=Ze();return Object(n.jsxs)(Ce.a,{component:"main",children:[Object(n.jsx)(ye.a,{}),Object(n.jsx)("div",{className:e.paper,children:Object(n.jsx)(v.a,{variant:"h1",component:"h1",children:"404 Not Found"})}),Object(n.jsx)(He.a,{mt:5,children:Object(n.jsx)(Qe,{})})]})},$e=a(19),Xe=a(975),et=a(30),tt=a.n(et),at=a(401),nt=a.n(at),ct=a(77),it=a.n(ct),rt=a(452),ot=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",children:[Object(n.jsx)("title",{children:"ic_h_copy-new_sl"}),Object(n.jsx)("g",{id:"Layer_2","data-name":"Layer 2",children:Object(n.jsx)("g",{id:"Layer_1-2","data-name":"Layer 1",children:Object(n.jsx)("path",{className:"cls-1",d:"M0,0V16H16V0ZM11.886,9.048H9.048v2.838h-2.1V9.048H4.114v-2.1H6.952V4.114h2.1V6.952h2.838Z"})})})]})})},st=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 12",children:Object(n.jsxs)("g",{id:"Group_55","data-name":"Group 55",transform:"translate(1002 -2555)",children:[Object(n.jsx)("rect",{id:"Rectangle_29",width:"2",height:"12",transform:"translate(-997 2555)",fill:"#fff"}),Object(n.jsx)("rect",{id:"Rectangle_30",width:"2",height:"12",transform:"translate(-990 2560) rotate(90)",fill:"#fff"})]})})})},lt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10.402 13",children:Object(n.jsx)("path",{d:"M6.761 1V0H3.64v1H.004v1h10.4V1zM.004 2.998l1.672 10h7.052l1.673-10zm3.412 8.243l-.552-6.478h.653l.553 6.472zm3.569 0h-.653l.551-6.472h.654z",className:"a"})})})},dt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsxs)("g",{transform:"translate(249 720)",children:[Object(n.jsx)("rect",{width:"6",height:"5",transform:"translate(-244 -720) rotate(90)"}),Object(n.jsx)("rect",{width:"4",height:"4",transform:"translate(-243 -720)"}),Object(n.jsx)("rect",{width:"5",height:"4",transform:"translate(-239 -715) rotate(90)"}),Object(n.jsx)("rect",{width:"5",height:"3",transform:"translate(-244 -710) rotate(180)"})]})})})},bt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsx)("path",{d:"M8.392,10H1.608L0,0H10Z"})})})},ut=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 6.131 10",children:Object(n.jsx)("g",{transform:"translate(193 719.787)",children:Object(n.jsxs)("g",{transform:"translate(-193 -719.787)",children:[Object(n.jsx)("path",{d:"M3,0h.131a3,3,0,0,1,3,3V5a0,0,0,0,1,0,0H0A0,0,0,0,1,0,5V3A3,3,0,0,1,3,0Z",transform:"translate(0 5)"}),Object(n.jsx)("ellipse",{cx:"2.065",cy:"2",rx:"2.065",ry:"2",transform:"translate(1 0)"})]})})})})},jt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 9.5",children:Object(n.jsxs)("g",{transform:"translate(231 719.516)",children:[Object(n.jsx)("path",{d:"M-125.5,7.984a4.5,4.5,0,0,1,4.5-4.5,4.5,4.5,0,0,1,4.5,4.5Z",transform:"translate(-105 -720)"}),Object(n.jsx)("rect",{width:"10",height:"1",transform:"translate(-231 -711.016)"}),Object(n.jsx)("path",{d:"M-119.5.484h-3v1h1v1h1v-1h1Z",transform:"translate(-105 -720)"})]})})})},mt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 9.787",children:Object(n.jsx)("g",{transform:"translate(177 719.787)",children:Object(n.jsxs)("g",{transform:"translate(-105 -720)",children:[Object(n.jsx)("path",{d:"M-65,5a3,3,0,0,0-1.131.224A3.981,3.981,0,0,1-65,8v2h3V8A3,3,0,0,0-65,5Z"}),Object(n.jsx)("path",{d:"M-72,10h6V8a3,3,0,0,0-3-3,3,3,0,0,0-3,3Z"}),Object(n.jsx)("path",{className:"a",d:"M-65,.213a1.993,1.993,0,0,0-1.384.561A2.967,2.967,0,0,1-66,2.213a2.964,2.964,0,0,1-.384,1.439A1.989,1.989,0,0,0-65,4.213a2,2,0,0,0,2-2A2,2,0,0,0-65,.213Z"}),Object(n.jsx)("circle",{cx:"2",cy:"2",r:"2",transform:"translate(-71 0.213)"})]})})})})},ht=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 8.75 10",children:Object(n.jsx)("path",{d:"M-44.625,10l-4.353-2.419L-53.375,10V0h8.75Z",transform:"translate(53.375)"})})})},pt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 9.998 10",children:Object(n.jsx)("g",{transform:"translate(140.999 720)",children:Object(n.jsxs)("g",{transform:"translate(-105 -720)",children:[Object(n.jsx)("rect",{width:"1.114",height:"1.667",transform:"translate(-27.116 8.333)"}),Object(n.jsx)("path",{d:"M-28.184,10H-29.3V8.154l2.182-3.037V3.147H-26V5.476l-2.182,3.037Z"}),Object(n.jsx)("rect",{width:"1.114",height:"2.963",transform:"translate(-31.531)"}),Object(n.jsx)("rect",{width:"1.114",height:"2.132",transform:"translate(-27.115 0)"}),Object(n.jsx)("rect",{width:"1.114",height:"5.389",transform:"translate(-29.298)"}),Object(n.jsx)("path",{d:"M-30.417,10h-1.114V5.722l-2.233-3V0h1.114V2.353l2.233,3Z"}),Object(n.jsx)("path",{d:"M-32.65,10h-1.114V6.185l-2.234-3V0h1.114V2.815l2.234,3Z"}),Object(n.jsx)("rect",{width:"1.114",height:"4.463",transform:"translate(-35.999 5.537)"})]})})})})},Ot=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:[Object(n.jsx)("rect",{width:"1.433",height:"1"}),Object(n.jsx)("rect",{width:"7.828",height:"1",transform:"translate(2.172)"}),Object(n.jsx)("rect",{width:"1.433",height:"1",transform:"translate(0 6)"}),Object(n.jsx)("rect",{width:"1.433",height:"1",transform:"translate(0 3)"}),Object(n.jsx)("rect",{width:"1.433",height:"1",transform:"translate(0 9)"}),Object(n.jsx)("rect",{width:"1.368",height:"0.569",transform:"translate(6.316 9)"}),Object(n.jsx)("path",{d:"M5.566,9.569v-.31l-.238-.138-.269.155-.65.375L4.034,9V9H2.172v1H5.566Z"}),Object(n.jsx)("path",{d:"M9.966,9l-.375.65-.65-.375-.269-.155-.238.138V10H10V9H9.967Z"}),Object(n.jsx)("path",{d:"M3.625,6.793l.269-.155V6.362l-.269-.155L3.266,6H2.172V7H3.266Z"}),Object(n.jsx)("path",{d:"M8.434,3.431v.31l.238.138.269-.155.649-.375L9.966,4V4H10V3H8.434Z"}),Object(n.jsx)("path",{d:"M4.034,4l.375-.65.65.375.269.155.238-.138V3H2.172V4H4.033Z"}),Object(n.jsx)("path",{d:"M9.356,5.929,10,5.558,9.316,4.373l-.644.372-.988-.571V3.431H6.316v.743l-.988.571-.644-.372L4,5.558l.644.371V7.071L4,7.442l.684,1.185.644-.372.988.571v.743H7.684V8.826l.988-.571.644.372L10,7.442l-.644-.371ZM7,7.278A.778.778,0,1,1,7.778,6.5.779.779,0,0,1,7,7.278Z"})]})})},gt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 9",children:Object(n.jsxs)("g",{transform:"translate(79 438.479)",children:[Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("rect",{x:"-77.9",y:"-434.5",width:"7.8",height:"1"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("rect",{x:"-77.9",y:"-434.5",transform:"matrix(0.4999 -0.8661 0.8661 0.4999 338.8698 -281.1237)",width:"7.8",height:"1"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("rect",{x:"-74.5",y:"-437.9",transform:"matrix(0.866 -0.5001 0.5001 0.866 207.1129 -95.1668)",width:"1",height:"7.8"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-71.8-430.1h-4.5l-2.2-3.9l2.2-3.9h4.5l2.2,3.9L-71.8-430.1z M-75.7-431.1h3.3l1.7-2.9l-1.7-2.9h-3.3 l-1.7,2.9L-75.7-431.1z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-72.3-434c0,0.9-0.7,1.7-1.7,1.7c-0.9,0-1.7-0.7-1.7-1.7c0-0.9,0.7-1.7,1.7-1.7 C-73.1-435.7-72.3-434.9-72.3-434z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-76.8-434c0,0.6-0.5,1.1-1.1,1.1c0,0,0,0,0,0c-0.6,0-1.1-0.5-1.1-1.1c0,0,0,0,0,0c0-0.6,0.5-1.1,1.1-1.1 c0,0,0,0,0,0C-77.3-435.1-76.8-434.6-76.8-434C-76.8-434-76.8-434-76.8-434z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-69-434c0,0.6-0.5,1.1-1.1,1.1c0,0,0,0,0,0c-0.6,0-1.1-0.5-1.1-1.1c0,0,0,0,0,0c0-0.6,0.5-1.1,1.1-1.1 c0,0,0,0,0,0C-69.5-435.1-69-434.6-69-434C-69-434-69-434-69-434z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-75.4-431.6c0.5,0.3,0.7,1,0.4,1.5c-0.3,0.5-1,0.7-1.5,0.4c0,0,0,0,0,0c-0.5-0.3-0.7-1-0.4-1.5 C-76.6-431.7-75.9-431.9-75.4-431.6C-75.4-431.6-75.4-431.6-75.4-431.6z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-71.5-438.3c0.5,0.3,0.7,1,0.4,1.5c-0.3,0.5-1,0.7-1.5,0.4c0,0,0,0,0,0c-0.5-0.3-0.7-1-0.4-1.5 C-72.7-438.5-72-438.6-71.5-438.3C-71.5-438.3-71.5-438.3-71.5-438.3z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-72.6-431.6c0.5-0.3,1.2-0.1,1.5,0.4c0,0,0,0,0,0c0.3,0.5,0.1,1.2-0.4,1.5c-0.5,0.3-1.2,0.1-1.5-0.4 c0,0,0,0,0,0C-73.3-430.6-73.1-431.3-72.6-431.6z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-76.5-438.3c0.5-0.3,1.2-0.1,1.5,0.4c0,0,0,0,0,0c0.3,0.5,0.1,1.2-0.4,1.5c-0.5,0.3-1.2,0.1-1.5-0.4 c0,0,0,0,0,0C-77.2-437.3-77-438-76.5-438.3z"})})})]})})})},ft=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsx)("g",{transform:"translate(213 720)",children:Object(n.jsxs)("g",{transform:"translate(-105 -720)",children:[Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-108)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-108 6)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-99.5 6)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-99.5)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-98) rotate(90)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-104) rotate(90)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-104 8.5) rotate(90)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-98 8.5) rotate(90)"}),Object(n.jsx)("circle",{cx:"2",cy:"2",r:"2",transform:"translate(-105 3)"})]})})})})},xt="ADD_BUCKET_OPEN",vt="ADD_BUCKET_NAME",yt="ADD_BUCKET_VERSIONED",St="ADD_BUCKET_LOCKING",Ct="ADD_BUCKET_QUOTA",kt="ADD_BUCKET_QUOTA_TYPE",Nt="ADD_BUCKET_QUOTA_SIZE",wt="ADD_BUCKET_QUOTA_UNIT",Tt="ADD_BUCKET_RESET",Et="ADD_BUCKET_RETENTION",At="ADD_BUCKET_RETENTION_MODE",_t="ADD_BUCKET_RETENTION_UNIT",It="ADD_BUCKET_RETENTION_VALIDITY",Mt="BUCKET_DETAILS/SET_TAB";var Ft=a(126),Dt=a.n(Ft),Lt=a(912),Bt=a(957),Rt=a(1002),Pt=a(86),zt=a(398),Kt=a.n(zt),Ut=a(219),Wt=a.n(Ut),Vt=a(397),Gt=a.n(Vt),qt=a(34),Ht="#081C42",Yt="#081C42",Qt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 11.856",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M-54,8l1.764,2.614A7.52,7.52,0,0,0-46,13.928h0a7.52,7.52,0,0,0,6.234-3.314L-38,8l-1.764-2.614A7.52,7.52,0,0,0-46,2.072h0a7.52,7.52,0,0,0-6.234,3.314Zm10.286,0A2.285,2.285,0,0,1-46,10.286,2.285,2.285,0,0,1-48.286,8,2.285,2.285,0,0,1-46,5.714,2.285,2.285,0,0,1-43.714,8Zm1.3,0A3.59,3.59,0,0,1-46,11.59,3.59,3.59,0,0,1-49.59,8,3.59,3.59,0,0,1-46,4.41,3.59,3.59,0,0,1-42.41,8Z",transform:"translate(54 -2.072)"})})},Zt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 13.833 13.833",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M2.934,16H0V13.066L10.607,2.459a1,1,0,0,1,1.414,0l1.52,1.52a1,1,0,0,1,0,1.414Z",transform:"translate(0 -2.167)"})})},Jt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 13 13",children:[Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M11.05 8.617v2.429h-9.1v-9.1h2.429v-1.95H0v13h13V8.617z",className:"a"}),Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M3.854 9.256h1.95a4.945 4.945 0 013.6-4.74v1.3l.6-.487 2.474-2.012L9.4.817v1.7a6.9 6.9 0 00-5.546 6.739z",className:"a"})]})},$t=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 10.402 13",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M6.761 1V0H3.64v1H.004v1h10.4V1zM.004 2.998l1.672 10h7.052l1.673-10zm3.412 8.243l-.552-6.478h.653l.553 6.472zm3.569 0h-.653l.551-6.472h.654z"})})},Xt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 10 11.429",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M-43.375,11.429-48.35,8.664l-5.025,2.764V0h10Z",transform:"translate(53.375)"})})},ea=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96z"})})},ta=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3v-3h18v3z"})})},aa=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 13 12.996",children:[Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M11.05 9.096v1.95h-9.1v-1.95H0v3.9h13v-3.9z"}),Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M6.5 9.75L9 6.672H7.475V0h-1.95v6.672H4z"})]})},na=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11H7v-2h10v2z"})})},ca=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M20 16h2v-2h-2v2zm0-9v5h2V7h-2zM10 4c-4.42 0-8 3.58-8 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm0 10c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"})})},ia=function(e,t){switch(e){case"view":return Object(n.jsx)(Qt,{active:t});case"edit":return Object(n.jsx)(Zt,{active:t});case"delete":return Object(n.jsx)($t,{active:t});case"description":return Object(n.jsx)(Xt,{active:t});case"share":return Object(n.jsx)(Jt,{active:t});case"cloud":return Object(n.jsx)(ea,{active:t});case"console":return Object(n.jsx)(ta,{active:t});case"download":return Object(n.jsx)(aa,{active:t});case"disable":return Object(n.jsx)(na,{active:t});case"format":return Object(n.jsx)(ca,{active:t})}return null},ra=Object(w.a)((function(){return Object(k.a)({spacing:{margin:"0 8px"},buttonDisabled:{"&.MuiButtonBase-root.Mui-disabled":{cursor:"not-allowed",filter:"grayscale(100%)",opacity:"30%"}}})}))((function(e){var t=e.type,a=e.onClick,c=e.valueToSend,i=e.idField,r=e.selected,o=e.to,s=e.sendOnlyId,l=void 0!==s&&s,d=e.disabled,b=void 0!==d&&d,u=e.classes,j=l?c[i]:c,m=Object(n.jsx)(Lt.a,{"aria-label":t,size:"small",onClick:a?function(e){e.stopPropagation(),b?e.preventDefault():a(j)}:function(){return null},className:"".concat(u.spacing," ").concat(b?u.buttonDisabled:""),disabled:b,children:ia(t,r)});return a?m:Dt()(o)?b?m:Object(n.jsx)(qt.a,{to:"".concat(o,"/").concat(j),onClick:function(e){e.stopPropagation()},children:m}):null})),oa=a(1015),sa=a(1009),la=function(e){return Object(n.jsxs)(rt.a,Object(j.a)(Object(j.a)({},e),{},{viewBox:"0 0 12 12",children:[Object(n.jsx)("path",{d:"M357.14,346a5,5,0,1,1-5,5,5,5,0,0,1,5-5m0-1a6,6,0,1,0,6,6,6,6,0,0,0-6-6Z",transform:"translate(-351.14 -345.03)"}),Object(n.jsx)("path",{d:"M356.21,352.42v-1.86h.52c1.23,0,1.92-.45,1.92-1.29s-.68-1.18-1.89-1.18a8.07,8.07,0,0,0-.93.06l-.1-1.25a9.13,9.13,0,0,1,1.08-.08c2,0,3.19.94,3.19,2.4s-.93,2.24-2.64,2.46l-.05.74Zm1.56,1.8a1,1,0,1,1-1-1A1,1,0,0,1,357.77,354.22Z",transform:"translate(-351.14 -345.03)"})]}))},da=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),Ae),{},{fieldContainer:Object(j.a)(Object(j.a)({},Ne.fieldContainer),{},{display:"flex",justifyContent:"flex-start",alignItems:"center",margin:"15px 0",marginBottom:0,flexBasis:"initial"})}))}))((function(e){var t=e.label,a=e.onChange,c=e.value,r=e.id,o=e.name,s=e.checked,l=void 0!==s&&s,d=e.disabled,b=void 0!==d&&d,u=e.tooltip,j=void 0===u?"":u,m=e.classes;return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:m.fieldContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Rt.a,{name:o,id:r,value:c,color:"primary",inputProps:{"aria-label":"secondary checkbox"},checked:l,onChange:a,checkedIcon:Object(n.jsx)("span",{className:m.checkedIcon}),icon:Object(n.jsx)("span",{className:m.unCheckedIcon}),disabled:b})}),""!==t&&Object(n.jsxs)(oa.a,{htmlFor:r,className:m.inputLabel,children:[Object(n.jsx)("span",{children:t}),""!==j&&Object(n.jsx)("div",{className:m.tooltipContainer,children:Object(n.jsx)(sa.a,{title:j,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:m.tooltip})})})})]})]})})})),ba="#9c9c9c80",ua={fontWeight:400,fontSize:14,borderColor:ba,borderWidth:"0.5px",height:40,transitionDuration:"0.3s",padding:"initial",paddingRight:6,paddingLeft:6},ja=function(e,t,a,i,r,o,s,l,d,b,u){var j=function(e,t,a,n,c,i,r){var o=Object($e.a)(e);i&&(o=e.filter((function(e){return r.includes(e.elementKey)})));var s=t;return n&&(s-=45),c&&(s-=a),o.reduce((function(e,t){return t.width?e-t.width:e}),s)/o.filter((function(e){return!e.width})).length}(e,t,a,i,r,l,d);return e.map((function(e,t){if(l&&!d.includes(e.elementKey))return null;var a=!e.enableSort||!e.enableSort;return Object(n.jsx)(Pt.b,{dataKey:e.elementKey,headerClassName:"titleHeader ".concat(e.headerTextAlign?"text-".concat(e.headerTextAlign):""),headerRenderer:function(){return Object(n.jsxs)(c.Fragment,{children:[b===e.elementKey&&Object(n.jsx)(c.Fragment,{children:"ASC"===u?Object(n.jsx)(Gt.a,{}):Object(n.jsx)(Wt.a,{})}),e.label]})},className:e.contentTextAlign?"text-".concat(e.contentTextAlign):"",cellRenderer:function(t){var a=t.rowData,i=!!o&&o.includes(Dt()(a)?a:a[s]);return function(e,t,a){var i=Dt()(e)?e:Z()(e,t.elementKey,null),r=t.renderFullObject?e:i,o=t.renderFunction?t.renderFunction(r):r;return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)("span",{className:a?"selected":"",children:o})})}(a,e,i)},width:e.width||j,disableSort:a,defaultSortDirection:"ASC"},"col-tb-".concat(t.toString()))}))},ma=Object(w.a)((function(){return Object(k.a)(Object(j.a)(Object(j.a)({dialogContainer:{padding:"12px 26px 22px"},paper:{display:"flex",overflow:"auto",flexDirection:"column",padding:"19px 38px",boxShadow:"none",border:"#EAEDEE 1px solid",borderRadius:3,minHeight:200,overflowY:"scroll",position:"relative","&::-webkit-scrollbar":{width:3,height:3}},noBackground:{backgroundColor:"transparent",border:0},defaultPaperHeight:{height:"calc(100vh - 205px)"},allTableSettings:{"& .MuiTableCell-sizeSmall:last-child":{paddingRight:"initial"},"& .MuiTableCell-body.MuiTableCell-sizeSmall:last-child":{paddingRight:6}},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:700,fontSize:14,borderColor:"#39393980",borderWidth:"0.5px",padding:"6px 0 10px"}}},rowUnselected:Object(j.a)(Object(j.a)({},ua),{},{color:"#393939"}),rowSelected:Object(j.a)(Object(j.a)({},ua),{},{color:"#081C42",fontWeight:600}),paginatorContainer:{display:"flex",justifyContent:"flex-end",padding:"5px 38px"},checkBoxHeader:{width:50,textAlign:"left",paddingRight:10,"&.MuiTableCell-paddingCheckbox":{paddingBottom:4,paddingLeft:0}},actionsContainer:{width:150,borderColor:ba},paginatorComponent:{borderBottom:0},checkBoxRow:{borderColor:ba,padding:"0 10px 0 0"},loadingBox:{paddingTop:"100px",paddingBottom:"100px"},overlayColumnSelection:{position:"absolute",right:0,top:0},popoverContainer:{position:"relative"},popoverContent:{maxHeight:250,overflowY:"auto",padding:"0 10px 10px"},shownColumnsLabel:{color:"#9c9c9c",fontSize:12,padding:10,borderBottom:"#eaeaea 1px solid",width:"100%"},"@global":{".rowLine":{borderBottom:"1px solid ".concat(ba),height:40,color:"#393939",fontSize:14,transitionDuration:.3,"&:focus":{outline:"initial"},"&:hover:not(.ReactVirtualized__Table__headerRow)":{userSelect:"none",backgroundColor:"#ececec",fontWeight:600,"&.canClick":{cursor:"pointer"},"&.canSelectText":{userSelect:"text"}},"& .selected":{color:"#081C42",fontWeight:600}},".headerItem":{userSelect:"none",fontWeight:700,fontSize:14,fontStyle:"initial",display:"flex",alignItems:"center",outline:"none"},".ReactVirtualized__Table__headerRow":{fontWeight:700,fontSize:14,borderColor:"#39393980",textTransform:"initial"},".optionsAlignment":{textAlign:"center"},".text-center":{textAlign:"center"},".text-right":{textAlign:"right"},".progress-enabled":{paddingTop:3,display:"inline-block",margin:"0 10px",position:"relative",width:18,height:18},".progress-enabled > .MuiCircularProgress-root":{position:"absolute",left:0,top:3}}},Ae),Ie))}))((function(e){var t=e.itemActions,a=e.columns,r=e.onSelect,o=e.records,s=e.isLoading,l=e.loadingMessage,d=void 0===l?Object(n.jsx)(v.a,{component:"h3",children:"Loading..."}):l,j=e.entityName,m=e.selectedItems,h=e.idField,p=e.classes,O=e.radioSelection,g=void 0!==O&&O,f=e.customEmptyMessage,k=void 0===f?"":f,N=e.customPaperHeight,w=void 0===N?"":N,T=e.noBackground,E=void 0!==T&&T,A=e.columnsSelector,_=void 0!==A&&A,I=e.textSelectable,M=void 0!==I&&I,F=e.columnsShown,D=void 0===F?[]:F,L=e.onColumnChange,B=void 0===L?function(e,t){}:L,R=e.infiniteScrollConfig,P=e.sortConfig,z=e.autoScrollToBottom,K=void 0!==z&&z,U=Object(c.useState)(!1),W=Object(u.a)(U,2),V=W[0],G=W[1],q=i.a.useState(null),H=Object(u.a)(q,2),Y=H[0],Q=H[1],Z=t?t.find((function(e){return"view"===e.type})):null,J=function(e){G(!V),Q(e.currentTarget)},$=function(){G(!1),Q(null)};return Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:"".concat(p.paper," ").concat(E?p.noBackground:""," ").concat(""!==w?w:p.defaultPaperHeight),children:[s&&Object(n.jsxs)(x.a,{container:!0,className:p.loadingBox,children:[Object(n.jsx)(x.a,{item:!0,xs:12,style:{textAlign:"center"},children:d}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]}),_&&!s&&o.length>0&&Object(n.jsx)("div",{className:p.overlayColumnSelection,children:function(e){return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Lt.a,{"aria-describedby":"columnsSelector",color:"primary",onClick:J,children:Object(n.jsx)(Kt.a,{fontSize:"inherit"})}),Object(n.jsxs)(Bt.a,{anchorEl:Y,id:"columnsSelector",open:V,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:$,className:p.popoverContainer,children:[Object(n.jsx)("div",{className:p.shownColumnsLabel,children:"Shown Columns"}),Object(n.jsx)("div",{className:p.popoverContent,children:e.map((function(e){return Object(n.jsx)(da,{label:e.label,checked:D.includes(e.elementKey),onChange:function(t){B(e.elementKey,t.target.checked)},id:"chbox-".concat(e.label),name:"chbox-".concat(e.label),value:e.label},"tableColumns-".concat(e.label))}))})]})]})}(a)}),o&&!s&&o.length>0?Object(n.jsx)(Pt.c,{isRowLoaded:function(e){var t=e.index;return!!o[t]},loadMoreRows:R?R.loadMoreRecords:function(){return new Promise((function(){return!0}))},rowCount:R?R.recordsCount:o.length,children:function(e){var i=e.onRowsRendered,s=e.registerChild;return Object(n.jsx)(Pt.a,{children:function(e){var l=e.width,d=e.height,u=function(e,t){var a=45*t;return a<80?80:a>e?e:a}(l,t?t.filter((function(e){return"view"!==e.type})).length:0),O=!(!r||!m),f=!!(t&&t.length>1||t&&1===t.length&&"view"!==t[0].type);return Object(n.jsxs)(Pt.d,{ref:s,disableHeader:!1,headerClassName:"headerItem",headerHeight:40,height:d,noRowsRenderer:function(){return Object(n.jsx)(c.Fragment,{children:""!==k?k:"There are no ".concat(j," yet.")})},overscanRowCount:10,rowHeight:40,width:l,rowCount:o.length,rowGetter:function(e){var t=e.index;return o[t]},onRowClick:function(e){!function(e){if(Z){var t=Z.sendOnlyId?e[h]:e;if(Z.to)return void b.push("".concat(Z.to,"/").concat(t));Z.onClick&&Z.onClick(t)}}(e.rowData)},rowClassName:"rowLine ".concat(Z?"canClick":""," ").concat(!Z&&M?"canSelectText":""),onRowsRendered:i,sort:P?P.triggerSort:void 0,sortBy:P?P.currentSort:void 0,sortDirection:P?P.currentDirection:void 0,scrollToIndex:K?o.length-1:-1,children:[O&&Object(n.jsx)(Pt.b,{headerRenderer:function(){return Object(n.jsx)(c.Fragment,{children:"Select"})},dataKey:h,width:45,cellRenderer:function(e){var t=e.rowData,a=!!m&&m.includes(Dt()(t)?t:t[h]);return Object(n.jsx)(Rt.a,{value:Dt()(t)?t:t[h],color:"primary",inputProps:{"aria-label":"secondary checkbox"},checked:a,onChange:r,onClick:function(e){e.stopPropagation()},checkedIcon:Object(n.jsx)("span",{className:g?p.radioSelectedIcon:p.checkedIcon}),icon:Object(n.jsx)("span",{className:g?p.radioUnselectedIcon:p.unCheckedIcon})})}}),ja(a,l,u,O,f,m||[],h,_,D,P?P.currentSort:"",P?P.currentDirection:void 0),f&&Object(n.jsx)(Pt.b,{headerRenderer:function(){return Object(n.jsx)(c.Fragment,{children:"Options"})},dataKey:h,width:u,headerClassName:"optionsAlignment",className:"optionsAlignment",cellRenderer:function(e){var a=e.rowData,c=!!m&&m.includes(Dt()(a)?a:a[h]);return function(e,t,a,c){return e.map((function(e,i){if("view"===e.type)return null;var r="string"===typeof t?t:t[c],o=!1;return e.disableButtonFunction&&e.disableButtonFunction(r)&&(o=!0),e.showLoaderFunction&&e.showLoaderFunction(r)?Object(n.jsx)("div",{className:"progress-enabled",children:Object(n.jsx)(S.a,{color:"primary",size:18,variant:"indeterminate"},"actions-loader-".concat(e.type,"-").concat(i.toString()))}):Object(n.jsx)(ra,{type:e.type,onClick:e.onClick,to:e.to,valueToSend:t,selected:a,idField:c,sendOnlyId:!!e.sendOnlyId,disabled:o},"actions-".concat(e.type,"-").concat(i.toString()))}))}(t||[],a,c,h)}})]})}})}}):Object(n.jsx)(c.Fragment,{children:!s&&Object(n.jsx)("div",{children:""!==k?k:"There are no ".concat(j," yet.")})})]})})})),ha=a(967),pa=a(968),Oa=a(969),ga={content:'" "',borderLeft:"2px solid #9C9C9C",height:33,width:1,position:"absolute"},fa=Object(s.b)((function(e){return{modalSnackMessage:e.system.modalSnackBar}}),{setModalSnackMessage:G}),xa=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({dialogContainer:{padding:"8px 15px 22px"},closeContainer:{textAlign:"right"},closeButton:{width:45,height:45,padding:0,backgroundColor:"initial","&:hover":{backgroundColor:"initial"},"&:active":{backgroundColor:"initial"}},modalCloseIcon:{fontSize:35,color:"#9C9C9C",fontWeight:300,"&:hover":{color:"#9C9C9C"}},closeIcon:{"&::before":Object(j.a)(Object(j.a)({},ga),{},{transform:"rotate(45deg)"}),"&::after":Object(j.a)(Object(j.a)({},ga),{},{transform:"rotate(-45deg)"}),"&:hover::before, &:hover::after":{borderColor:"#9C9C9C"},width:24,height:24,display:"block",position:"relative"},titleClass:{padding:"0px 50px 12px","& h2":{fontWeight:600,color:"#000",fontSize:22}},modalContent:{padding:"0 50px"},customDialogSize:{width:"100%",maxWidth:765}},We))}))(fa((function(e){var t=e.onClose,a=e.modalOpen,i=e.title,r=e.children,o=e.classes,s=e.wideLimit,l=void 0===s||s,d=e.modalSnackMessage,b=e.noContentPadding,m=e.setModalSnackMessage,h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],g=p[1];Object(c.useEffect)((function(){if(d){if(""===d.message)return void g(!1);g(!0)}}),[d]);var f=l?{classes:{paper:o.customDialogSize}}:{maxWidth:"md",fullWidth:!0};return Object(n.jsx)(ha.a,Object(j.a)(Object(j.a)({open:a,onClose:t,"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description"},f),{},{children:Object(n.jsxs)("div",{className:o.dialogContainer,children:[Object(n.jsx)(ke.a,{open:O,className:o.snackBarModal,onClose:function(){g(!1),m("")},message:d?d.message:"",ContentProps:{className:"".concat(o.snackBar," ").concat(d&&"error"===d.type?o.errorSnackBar:"")},autoHideDuration:d&&"error"===d.type?1e4:5e3}),Object(n.jsx)("div",{className:o.closeContainer,children:Object(n.jsx)(Lt.a,{"aria-label":"close",className:o.closeButton,onClick:t,disableRipple:!0,children:Object(n.jsx)("span",{className:o.closeIcon})})}),Object(n.jsx)(pa.a,{id:"alert-dialog-title",className:o.titleClass,children:i}),Object(n.jsx)(Oa.a,{className:b?"":o.modalContent,children:r})]})}))}))),va=Object(N.a)((function(e){return Object(k.a)({root:{borderRadius:0,"&::before":{borderColor:"#9c9c9c"}},disabled:{"&.MuiInput-underline::before":{borderColor:"#eaeaea",borderBottomStyle:"solid"}},input:{padding:"15px 30px 10px 5px",color:"#393939",fontSize:13,fontWeight:600,"&:placeholder":{color:"#393939",opacity:1}},error:{color:"#b53b4b"}})}));function ya(e){var t=va();return Object(n.jsx)(f.a,Object(j.a)({InputProps:{classes:t}},e))}var Sa=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{textBoxContainer:{flexGrow:1},textBoxWithIcon:{position:"relative",paddingRight:25},errorState:{color:"#b53b4b",fontSize:14,position:"absolute",top:7,right:7},overlayAction:{position:"absolute",right:0,top:15,"& svg":{maxWidth:15,maxHeight:15}}}))}))((function(e){var t=e.label,a=e.onChange,c=e.value,r=e.id,o=e.name,s=e.type,l=void 0===s?"text":s,d=e.autoComplete,b=void 0===d?"off":d,u=e.disabled,j=void 0!==u&&u,m=e.multiline,h=void 0!==m&&m,p=e.tooltip,O=void 0===p?"":p,g=e.index,f=void 0===g?0:g,v=e.error,y=void 0===v?"":v,S=e.required,C=void 0!==S&&S,k=e.placeholder,N=void 0===k?"":k,w=e.min,T=e.max,E=e.overlayIcon,A=void 0===E?null:E,_=e.overlayAction,I=e.classes,M={"data-index":f};return"number"===l&&w&&(M.min=w),"number"===l&&T&&(M.max=T),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(I.fieldContainer," ").concat(""!==y?I.errorInField:""),children:[""!==t&&Object(n.jsxs)(oa.a,{htmlFor:r,className:I.inputLabel,children:[Object(n.jsxs)("span",{children:[t,C?"*":""]}),""!==O&&Object(n.jsx)("div",{className:I.tooltipContainer,children:Object(n.jsx)(sa.a,{title:O,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:I.tooltip})})})})]}),Object(n.jsx)("div",{className:I.textBoxContainer,children:Object(n.jsx)(ya,{id:r,name:o,fullWidth:!0,value:c,disabled:j,onChange:a,type:l,multiline:h,autoComplete:b,inputProps:M,error:""!==y,helperText:y,placeholder:N,className:I.inputRebase})}),A&&Object(n.jsx)("div",{className:I.overlayAction,children:Object(n.jsx)(Lt.a,{onClick:_?function(){_()}:function(){return null},size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:A})})]})})})),Ca=a(457),ka=a(956),Na=a(1001),wa=a(970),Ta=Object(w.a)((function(e){return Object(k.a)({root:{lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{position:"relative",color:"#393939",fontSize:13,fontWeight:600,padding:"15px 20px 10px 10px",borderBottom:"1px solid #9c9c9c",display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(Ca.a),Ea=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ne),Te))}))((function(e){var t=e.classes,a=e.id,c=e.name,r=e.onChange,o=e.options,s=e.label,l=e.tooltip,d=void 0===l?"":l,b=e.value,u=e.disabled,j=void 0!==u&&u;return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.fieldContainer,children:[""!==s&&Object(n.jsxs)(oa.a,{htmlFor:a,className:t.inputLabel,children:[Object(n.jsx)("span",{children:s}),""!==d&&Object(n.jsx)("div",{className:t.tooltipContainer,children:Object(n.jsx)(sa.a,{title:d,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:t.tooltip})})})})]}),Object(n.jsx)(ka.a,{fullWidth:!0,children:Object(n.jsx)(Na.a,{id:a,name:c,value:b,onChange:r,input:Object(n.jsx)(Ta,{}),disabled:j,children:o.map((function(e){return Object(n.jsx)(wa.a,{value:e.value,children:e.label},"select-".concat(c,"-").concat(e.label))}))})})]})})})),Aa=a(1014),_a=a(971),Ia=a(1e3),Ma=Object(N.a)(Object(j.a)({root:{"&:hover":{backgroundColor:"transparent"}}},Ie)),Fa=function(e){var t=Ma();return Object(n.jsx)(Ia.a,Object(j.a)({className:t.root,disableRipple:!0,color:"default",checkedIcon:Object(n.jsx)("span",{className:t.radioSelectedIcon}),icon:Object(n.jsx)("span",{className:t.radioUnselectedIcon})},e))},Da=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{radioBoxContainer:{},fieldContainer:Object(j.a)(Object(j.a)({},Ne.fieldContainer),{},{display:"flex",justifyContent:"space-between",borderBottom:"#9c9c9c 1px solid",paddingBottom:10,marginTop:11}),optionLabel:{"&.Mui-disabled":{"& .MuiFormControlLabel-label":{color:"#9c9c9c"}},"&:last-child":{marginRight:0},"& .MuiFormControlLabel-label":{fontSize:12,color:"#000"}},checkedOption:{"& .MuiFormControlLabel-label":{fontSize:12,color:"#000",fontWeight:700}}}))}))((function(e){var t=e.selectorOptions,a=void 0===t?[]:t,c=e.currentSelection,r=e.label,o=e.id,s=e.name,l=e.onChange,d=e.tooltip,b=void 0===d?"":d,u=e.disableOptions,j=void 0!==u&&u,m=e.classes,h=e.displayInColumn,p=void 0!==h&&h;return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:m.fieldContainer,children:[Object(n.jsxs)(oa.a,{htmlFor:o,className:m.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==b&&Object(n.jsx)("div",{className:m.tooltipContainer,children:Object(n.jsx)(sa.a,{title:b,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:m.tooltip})})})})]}),Object(n.jsx)("div",{className:m.radioBoxContainer,children:Object(n.jsx)(Aa.a,{"aria-label":o,id:o,name:s,value:c,onChange:l,row:!p,children:a.map((function(e){return Object(n.jsx)(_a.a,{value:e.value,control:Object(n.jsx)(Fa,{}),label:e.label,disabled:j,className:Object(ve.a)(m.optionLabel,Object(xe.a)({},m.checkedOption,e.value===c))},"rd-".concat(s,"-").concat(e.value))}))})})]})})})),La=a(1007),Ba=a(972),Ra=Object(w.a)({root:{alignItems:"flex-start",height:18,padding:"0 12px",display:"flex",position:"relative"},switchBase:{color:"#fff",padding:0,top:"initial","&$checked":{color:"#fff"},"&$checked + $track":{backgroundColor:"#081C42",opacity:1,height:15},"&:hover":{backgroundColor:"#fff"}},checked:{},track:{height:15,backgroundColor:"#9C9C9C",border:"#081C42 1px solid",opacity:1,padding:0,marginTop:1.5,"&$checked":{backgroundColor:"#081C42"}},thumb:{backgroundColor:"#fff",border:"#081C42 1px solid",boxShadow:"none",width:18,height:18,padding:0,marginLeft:10}})(Ba.a),Pa=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#081C42",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#081C42"}}},divContainer:{borderBottom:"#9c9c9c 1px solid",paddingBottom:14,marginBottom:20,maxWidth:840},wrapperContainer:{display:"flex",justifyContent:"space-between",alignItems:"center",maxWidth:840},indicatorLabel:{fontSize:12,fontWeight:600,color:"#081C42",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"}},Me),Ne))}))((function(e){var t=e.label,a=void 0===t?"":t,c=e.onChange,r=e.value,o=e.id,s=e.name,l=e.checked,d=void 0!==l&&l,b=e.disabled,u=void 0!==b&&b,j=e.switchOnly,m=void 0!==j&&j,h=e.tooltip,p=void 0===h?"":h,O=e.description,g=void 0===O?"":O,f=e.indicatorLabels,y=void 0===f?[]:f,S=e.containerClass,C=void 0===S?"":S,k=e.classes,N=Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)("div",{className:"".concat(k.switchContainer," ").concat(C),children:[Object(n.jsx)(Ra,{checked:d,onChange:c,color:"primary",name:s,inputProps:{"aria-label":"primary checkbox"},disabled:u,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:r}),2===y.length&&Object(n.jsx)("span",{className:k.indicatorLabel,children:d?y[0]:y[1]})]})});return m?N:Object(n.jsxs)("div",{className:k.divContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:k.wrapperContainer,children:[""!==a&&Object(n.jsxs)(oa.a,{htmlFor:o,className:k.inputLabel,children:[Object(n.jsx)("span",{children:a}),""!==p&&Object(n.jsx)("div",{className:k.tooltipContainer,children:Object(n.jsx)(sa.a,{title:p,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:k.tooltip})})})})]}),N]}),""!==g&&Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(v.a,{component:"p",className:k.fieldDescription,children:g})})]})})),za=Object(s.b)((function(e){return{addBucketModalOpen:e.buckets.open,bucketName:e.buckets.addBucketName,versioningEnabled:e.buckets.addBucketVersioningEnabled,lockingEnabled:e.buckets.addBucketLockingEnabled,quotaEnabled:e.buckets.addBucketQuotaEnabled,quotaType:e.buckets.addBucketQuotaType,quotaSize:e.buckets.addBucketQuotaSize,quotaUnit:e.buckets.addBucketQuotaUnit,retentionEnabled:e.buckets.addBucketRetentionEnabled,retentionMode:e.buckets.addBucketRetentionMode,retentionUnit:e.buckets.addBucketRetentionUnit,retentionValidity:e.buckets.addBucketRetentionValidity}}),{addBucketName:function(e){return{type:vt,name:e}},addBucketVersioned:function(e){return{type:yt,versioned:e}},enableObjectLocking:function(e){return{type:St,locking:e}},addBucketQuota:function(e){return{type:Ct,quota:e}},addBucketQuotaType:function(e){return{type:kt,quotaType:e}},addBucketQuotaSize:function(e){return{type:Nt,quotaSize:e}},addBucketQuotaUnit:function(e){return{type:wt,quotaUnit:e}},addBucketRetention:function(e){return{type:Et,retention:e}},addBucketRetentionMode:function(e){return{type:At,retentionMode:e}},addBucketRetentionUnit:function(e){return{type:_t,retentionUnit:e}},addBucketRetentionValidity:function(e){return{type:It,retentionValidity:e}},setModalError:q})(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},quotaSizeContainer:{flexGrow:1},sizeFactorContainer:{flexGrow:0,maxWidth:80,marginLeft:8,alignSelf:"flex-start"}},we))}))((function(e){var t=e.classes,a=e.open,r=e.closeModalAndRefresh,o=e.addBucketName,s=e.addBucketVersioned,l=e.enableObjectLocking,d=e.addBucketQuota,b=e.addBucketQuotaType,j=e.addBucketQuotaSize,m=e.addBucketQuotaUnit,h=e.addBucketRetention,p=e.addBucketRetentionMode,O=e.addBucketRetentionUnit,f=e.addBucketRetentionValidity,S=e.setModalError,C=e.bucketName,k=e.versioningEnabled,N=e.lockingEnabled,w=e.quotaEnabled,T=e.quotaType,E=e.quotaSize,A=e.quotaUnit,_=e.retentionEnabled,I=e.retentionMode,M=e.retentionUnit,F=e.retentionValidity,D=Object(c.useState)(!1),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)(!1),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(!1),V=Object(u.a)(W,2),G=V[0],q=V[1],H=Object(La.a)(C,1e3),Y=Object(u.a)(H,1)[0];Object(c.useEffect)((function(){o(Y)}),[Y,o]);var Q=function(){o(""),s(!1),l(!1),d(!1),b("hard"),j("1"),m("TiB"),h(!1),p("compliance"),O("days"),f(1)};return Object(c.useEffect)((function(){var e=!1;""!==C.trim()&&(e=!0),w&&e&&(""!==E.trim()&&0!==parseInt(E)||(e=!1)),k&&_||(h(!1),p("compliance"),O("days"),f(1)),_?(l(!0),q(!0)):q(!1),_&&(Number.isNaN(F)||F<1)&&(e=!1),U(e)}),[C,_,N,T,E,A,w,h,p,O,f,F,k,l]),Object(n.jsx)(xa,{title:"Create Bucket",modalOpen:a,onClose:function(){r(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){if(e.preventDefault(),!B){R(!0);var t={name:C,versioning:k,locking:N};if(w){var a=se(E,A,!1);t.quota={enabled:!0,quota_type:T,amount:parseInt(a)}}_&&(t.retention={mode:I,unit:M,validity:F}),pe.invoke("POST","/api/v1/buckets",t).then((function(e){R(!1),r(!0)})).catch((function(e){R(!1),S(e)})),Q()}}(e)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"bucket-name",name:"bucket-name",onChange:function(e){o(e.target.value)},label:"Bucket Name",value:C})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(v.a,{component:"h6",variant:"h6",children:"Features"}),Object(n.jsx)("hr",{})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"versioned",id:"versioned",name:"versioned",checked:k,onChange:function(e){s(e.target.checked)},description:"Allows to keep multiple versions of the same object under the same key.",label:"Versioning",indicatorLabels:["On","Off"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"locking",id:"locking",name:"locking",disabled:G,checked:N,onChange:function(e){l(e.target.checked)},label:"Object Locking",description:"Required to support retention and legal hold. Can only be enabled at bucket creation.",indicatorLabels:["On","Off"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"bucket_quota",id:"bucket_quota",name:"bucket_quota",checked:w,onChange:function(e){d(e.target.checked)},label:"Quota",description:"Limit the amount of data in the bucket.",indicatorLabels:["On","Off"]})}),w&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:T,id:"quota_type",name:"quota_type",label:"Quota Type",onChange:function(e){b(e.target.value)},selectorOptions:[{value:"hard",label:"Hard"},{value:"fifo",label:"FIFO"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:t.multiContainer,children:[Object(n.jsx)("div",{className:t.quotaSizeContainer,children:Object(n.jsx)(Sa,{type:"number",id:"quota_size",name:"quota_size",onChange:function(e){j(e.target.value)},label:"Quota",value:E,required:!0,min:"1"})}),Object(n.jsx)("div",{className:t.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"\xa0",id:"quota_unit",name:"quota_unit",value:A,onChange:function(e){m(e.target.value)},options:te.map((function(e){return{label:e,value:e}}))})})]})})]}),k&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"bucket_retention",id:"bucket_retention",name:"bucket_retention",checked:_,onChange:function(e){h(e.target.checked)},label:"Retention",description:"Impose rules to prevent object deletion for a period of time.",indicatorLabels:["On","Off"]})}),_&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:I,id:"retention_mode",name:"retention_mode",label:"Retention Mode",onChange:function(e){p(e.target.value)},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:M,id:"retention_unit",name:"retention_unit",label:"Retention Unit",onChange:function(e){O(e.target.value)},selectorOptions:[{value:"days",label:"Days"},{value:"years",label:"Years"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(e){f(e.target.valueAsNumber)},label:"Retention Validity",value:String(F),required:!0,min:"1"})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:Q,children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:B||!K,children:"Save"})]}),B&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),Ka=a(973),Ua=a(974),Wa={setErrorSnackMessage:V},Va=Object(s.b)(null,Wa)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Bucket"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete bucket ",Object(n.jsx)("b",{children:i}),"? ",Object(n.jsx)("br",{}),"A bucket can only be deleted if it's empty."]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){l||(d(!0),pe.invoke("DELETE","/api/v1/buckets/".concat(i),{name:i}).then((function(e){d(!1),t(!0)})).catch((function(e){d(!1),r(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),Ga=Object(w.a)((function(e){return Object(k.a)({headerContainer:{position:"absolute",width:"100%",height:77,display:"flex",backgroundColor:"#fff",borderBottom:"#E3E3E3 1px solid",left:0},label:{display:"flex",justifyContent:"flex-start",alignItems:"center"},labelStyle:{color:"#000",fontSize:18,fontWeight:700,marginLeft:55,marginTop:8}})}))((function(e){var t=e.classes,a=e.label;return Object(n.jsx)(x.a,{container:!0,className:t.headerContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.label,children:Object(n.jsx)(v.a,{variant:"h4",className:t.labelStyle,children:a})})})})),qa=a(400),Ha=a.n(qa),Ya=a(399),Qa=a.n(Ya),Za=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},De))}))((function(e){var t=e.classes,a=e.label,i=void 0===a?"":a,r=e.content,o=e.multiLine,s=void 0!==o&&o;return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{className:t.prefinedContainer,children:[""!==i&&Object(n.jsx)(x.a,{item:!0,xs:12,className:t.predefinedTitle,children:i}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.predefinedList,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:s?t.innerContentMultiline:t.innerContent,children:r})})]})})})),Ja=Object(w.a)((function(e){return Object(k.a)({wizardStepContainer:{display:"flex",flexDirection:"column"},wizardComponent:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 435px)",maxWidth:840,width:"100%"},wizardModal:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 515px)"},buttonsContainer:{display:"flex",flexDirection:"row",justifyContent:"flex-start",padding:"10px 0",borderTop:"#EAEAEA 1px solid","& button":{marginLeft:10},"&.forModal":{paddingBottom:0}},buttonInnerContainer:{maxWidth:840,width:"100%",textAlign:"right"}})}))((function(e){var t=e.classes,a=e.page,c=e.pageChange,i=e.loadingStep,r=e.forModal;return Object(n.jsxs)("div",{className:t.wizardStepContainer,children:[Object(n.jsx)("div",{className:r?t.wizardModal:t.wizardComponent,children:a.componentRender}),i&&Object(n.jsx)("div",{children:Object(n.jsx)(y.a,{})}),Object(n.jsx)("div",{className:"".concat(t.buttonsContainer," ").concat(r?"forModal":""),children:Object(n.jsx)("div",{className:t.buttonInnerContainer,children:a.buttons.map((function(e){return Object(n.jsx)(g.a,{variant:"contained",color:"primary",size:"small",onClick:function(){!function(e){switch(e.type){case"next":c("++");break;case"back":c("--");break;case"to":c(e.toPage||0)}e.action&&e.action(c)}(e)},disabled:!e.enabled,children:e.label},"button-".concat(a.label,"-").concat(e.label))}))})})]})})),$a=Object(w.a)((function(e){return Object(k.a)({wizardMain:{display:"flex",width:"100%",height:"100%",flexGrow:1},wizFromContainer:{height:"calc(100vh - 365px)",minHeight:450,padding:"0 30px"},wizFromModal:{position:"relative"},wizardSteps:{minWidth:180,marginRight:10,borderRight:"#eaeaea 1px solid",display:"flex",flexGrow:1,flexDirection:"column",height:"100%","& ul":{padding:"0 15px 0 40px",marginTop:0,"& li":{listStyle:"lower-roman",marginBottom:12}}},modalWizardSteps:{padding:5,borderBottom:"#eaeaea 1px solid","& ul":{padding:0,marginTop:0,display:"flex",justifyContent:"space-evenly","& li":{listStyle:"lower-roman","&::marker":{paddingLeft:15}}}},buttonList:{backgroundColor:"transparent",border:"none",cursor:"pointer","&:not(:disabled):hover":{textDecoration:"underline"},"&:selected, &:active, &:focus, &:focus:active":{border:"none",outline:0,boxShadow:"none"}},paddedContentGrid:{padding:"0 10px"},stepsLabel:{fontSize:20,color:"#393939",fontWeight:600,margin:"15px 12px","&.stepsModalTitle":{textAlign:"center",width:"100%",marginTop:0,marginBottom:10}},stepsMasterContainer:{position:"sticky",top:0,backgroundColor:"#FFFFFF",width:"100%",maxHeight:90}})}))((function(e){var t=e.classes,a=e.wizardSteps,i=e.loadingStep,r=e.forModal,o=Object(c.useState)(0),s=Object(u.a)(o,2),l=s[0],d=s[1],b=function(e){var t=a.length-1;if("++"===e){var n=l+1;n>t&&(n=t),d(n)}if("--"===e){var c=l-1;c<0&&(c=0),d(c)}if("number"===typeof e){var i=e;e<0&&(i=0),e>t&&(i=t),d(i)}};if(0===a.length)return null;var j=function(){return Object(n.jsx)("ul",{children:a.map((function(e,a){return Object(n.jsx)("li",{children:Object(n.jsx)("button",{onClick:function(){return b(a)},disabled:a>l,className:t.buttonList,children:e.label})},"wizard-".concat(a.toString()))}))})};return Object(n.jsxs)(x.a,{container:!0,className:r?t.wizFromModal:t.wizFromContainer,children:[r?Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("div",{className:t.stepsMasterContainer,children:[Object(n.jsx)("div",{className:"".concat(t.stepsLabel," stepsModalTitle"),children:"Steps"}),Object(n.jsx)("div",{className:t.modalWizardSteps,children:j()})]})}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,sm:3,md:3,lg:3,xl:2,children:Object(n.jsxs)("div",{className:t.wizardSteps,children:[Object(n.jsx)("span",{className:t.stepsLabel,children:"Steps"}),j()]})})}),Object(n.jsx)(x.a,{item:!0,xs:12,sm:r?12:9,md:r?12:9,lg:r?12:9,xl:r?12:10,className:r?"":t.paddedContentGrid,children:Object(n.jsx)(Ja,{page:a[l],pageChange:b,loadingStep:i,forModal:r})})]})})),Xa=Object(s.b)(null,{setModalErrorSnackMessage:q}),en=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"},remoteBucketList:{display:"grid",gridTemplateColumns:"auto auto 45px",alignItems:"center",justifyContent:"stretch"},errorIcon:{color:"#C72C48"},successIcon:{color:"#42C91A"},hide:{opacity:0,transitionDuration:"0.3s"}},we),Ve))}))(Xa((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.buckets,o=e.setModalErrorSnackMessage,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!1),g=Object(u.a)(O,2),f=g[0],v=g[1],y=Object(c.useState)(""),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(""),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(""),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)(""),D=Object(u.a)(F,2),L=D[0],B=D[1],R=Object(c.useState)(!0),P=Object(u.a)(R,2),z=P[0],K=P[1],U=Object(c.useState)("async"),W=Object(u.a)(U,2),V=W[0],G=W[1],q=Object(c.useState)("100"),H=Object(u.a)(q,2),Y=H[0],Q=H[1],J=Object(c.useState)("Gi"),$=Object(u.a)(J,2),X=$[0],ee=$[1],te=Object(c.useState)("60"),ae=Object(u.a)(te,2),ne=ae[0],ce=ae[1],ie=Object(c.useState)([]),re=Object(u.a)(ie,2),le=re[0],de=re[1],be=Object(c.useState)([]),ue=Object(u.a)(be,2),je=ue[0],me=ue[1],he=Object(c.useState)([]),Oe=Object(u.a)(he,2),ge=Oe[0],fe=Oe[1],xe=je.map((function(e){return{label:e,value:e}}));Object(c.useEffect)((function(){if(0===le.length){var e=[],t=[];r.forEach((function(a){e.push(a),t.push("")})),de(t),b(e)}}),[r,le.length]);var ve=function(e){var t=e.errString;switch(t){case"":return Object(n.jsx)("div",{className:i.successIcon,children:Object(n.jsx)(Qa.a,{})});case"n/a":return null;default:if(t)return Object(n.jsx)("div",{className:i.errorIcon,children:Object(n.jsx)(sa.a,{title:t,placement:"top-start",children:Object(n.jsx)(Ha.a,{})})})}return null},ye=function(e,t){var a=Object($e.a)(le);a[e]=t,de(a)},Se=function(e){var t=Object($e.a)(d),a=Object($e.a)(le);e.forEach((function(e){var n=Z()(e,"errorString","");if(!n||""===n){var c=t.indexOf(e.originBucket);t.splice(c,1),a.splice(c,1)}})),b(t),de(a)};return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){a(!1)},title:"Set Multiple Bucket Replication",children:Object(n.jsx)($a,{loadingStep:h||f,wizardSteps:[{label:"Remote Configuration",componentRender:Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Za,{label:"Local Buckets to replicate",content:d.join(", ")})}),Object(n.jsx)("h4",{children:"Remote Endpoint Configuration"}),Object(n.jsx)("span",{className:i.descriptionText,children:"Please avoid the use of root credentials for this feature"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",onChange:function(e){k(e.target.value)},label:"Access Key",value:C})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",onChange:function(e){E(e.target.value)},label:"Secret Key",value:T})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"targetURL",name:"targetURL",onChange:function(e){M(e.target.value)},placeholder:"play.min.io:9000",label:"Target URL",value:I})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:z,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){K(e.target.checked)},value:"yes"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"region",name:"region",onChange:function(e){B(e.target.value)},label:"Region",value:L})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"replication_mode",name:"replication_mode",onChange:function(e){G(e.target.value)},label:"Replication Mode",value:V,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]})}),"async"===V&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:i.multiContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){Q(e.target.value)},label:"Bandwidth",value:Y,min:"0"})}),Object(n.jsx)("div",{className:i.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"Unit",id:"bandwidth_unit",name:"bandwidth_unit",value:X,onChange:function(e){ee(e.target.value)},options:oe()})})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"healthCheck",name:"healthCheck",onChange:function(e){ce(e.target.value)},label:"Health Check Duration",value:ne})})]}),buttons:[{type:"custom",label:"Next",enabled:!f,action:function(e){var t={accessKey:C,secretKey:T,targetURL:I,useTLS:z};v(!0),pe.invoke("POST","api/v1/list-external-buckets",t).then((function(t){var a=Z()(t,"buckets",[]);if(a&&a.length>0){var n=a.map((function(e){return e.name}));me(n)}e("++"),v(!1)})).catch((function(e){v(!1),o(e)}))}}]},{label:"Buckets Assignation",componentRender:Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("h3",{children:"Remote Buckets Assignation"}),Object(n.jsx)("span",{className:i.descriptionText,children:"Please select / type the desired remote bucket were you want the local data to be replicated."}),Object(n.jsx)("div",{className:i.remoteBucketList,children:d.map((function(e,t){var a,r=function(e){if(ge.length>0){var t=ge.find((function(t){return t.originBucket===e}));if(t)return Z()(t,"errorString","")||""}return"n/a"}(e);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("div",{className:""===r?i.hide:"",children:e}),Object(n.jsx)("div",{className:""===r?i.hide:"",children:(a=t,je.length>0?Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(Ea,{label:"",id:"assign-bucket-".concat(a),name:"assign-bucket-".concat(a),value:le[a],onChange:function(e){ye(a,e.target.value)},options:xe,disabled:h})}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(Sa,{id:"assign-bucket-".concat(a),name:"assign-bucket-".concat(a),label:"",onChange:function(e){ye(a,e.target.value)},value:le[a],disabled:h})}))}),Object(n.jsx)("div",{className:""===r?i.hide:"",children:ge.length>0&&Object(n.jsx)(ve,{errString:r})})]},"buckets-assignation-".concat(t.toString(),"-").concat(e))}))})]}),buttons:[{type:"back",label:"Back",enabled:!0},{type:"next",label:"Create",enabled:!h,action:function(){p(!0);var e=d.map((function(e,t){return{originBucket:e,destinationBucket:le[t]}})),t="".concat(z?"https://":"http://").concat(I),n=parseInt(ne),c={accessKey:C,secretKey:T,targetURL:t,region:L,bucketsRelation:e,syncMode:V,bandwidth:"async"===V?parseInt(se(Y,X,!0)):0,healthCheckPeriod:n};pe.invoke("POST","/api/v1/buckets-replication",c).then((function(e){p(!1);var t=e.replicationState;fe(t),0===t.filter((function(e){return e.errorString&&""!==e.errorString})).length?a(!0):setTimeout((function(){Se(t)}),500)})).catch((function(e){p(!1),o(e)}))}}]}],forModal:!0})})}))),tn=Object(s.b)((function(e){return{addBucketModalOpen:e.buckets.open}}),{addBucketOpen:function(e){return{type:xt,open:e}},addBucketReset:function(){return{type:Tt}},setErrorSnackMessage:V})(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.addBucketOpen,i=e.addBucketModalOpen,r=e.addBucketReset,o=e.setErrorSnackMessage,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!0),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!1),v=Object(u.a)(O,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(!0),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(!1),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)([]),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!1),G=Object(u.a)(V,2),q=G[0],H=G[1];Object(c.useEffect)((function(){F&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"createBucket",action:"s3:CreateBucket"}]}).then((function(e){if(D(!1),e.permissions){var t=(e.permissions?e.permissions:[]).find((function(e){return"createBucket"===e.id}));t&&t.can?P(!0):P(!1),D(!1)}})).catch((function(e){D(!1),o(e)}))}),[F,o]),Object(c.useEffect)((function(){if(h){p(!0),pe.invoke("GET","/api/v1/buckets").then((function(e){p(!1),b(e.buckets||[])})).catch((function(e){p(!1),o(e)}))}}),[h,o]);var Y=[{type:"view",to:"/buckets",sendOnlyId:!0},{type:"delete",onClick:function(e){S(!0),w(e)},sendOnlyId:!0}],Q=d.filter((function(e){return""===A||e.name.indexOf(A)>=0}));return Object(n.jsxs)(c.Fragment,{children:[i&&Object(n.jsx)(za,{open:i,closeModalAndRefresh:function(e){a(!1),r(),e&&(p(!0),W([]))}}),y&&Object(n.jsx)(Va,{deleteOpen:y,selectedBucket:N,closeDeleteModalAndRefresh:function(e){!function(e){S(!1),e&&(p(!0),W([]))}(e)}}),q&&Object(n.jsx)(en,{open:q,buckets:U,closeModalAndRefresh:function(e){H(!1),e&&W([])}}),Object(n.jsx)(Ga,{label:"Buckets"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Buckets",className:t.searchField,id:"search-resource",label:"",onChange:function(e){_(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(nt.a,{}),onClick:function(){H(!0)},disabled:0===U.length,children:"Set Replication"}),R&&Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){a(!0)},children:"Create Bucket"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:Y,columns:[{label:"Name",elementKey:"name"},{label:"Creation Date",elementKey:"creation_date",renderFunction:function(e){return Object(n.jsx)(it.a,{children:e})}},{label:"Size",elementKey:"size",renderFunction:ce,width:60,contentTextAlign:"right"}],isLoading:h,records:Q,entityName:"Buckets",idField:"name",selectedItems:U,onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(U);return n?c.push(a):c=c.filter((function(e){return e!==a})),W(c),c}})})]})})]})}))),an=a(998),nn=a(976),cn=a(447),rn=function(e){var t=e.children,a=e.value,i=e.index,r=Object(cn.a)(e,["children","value","index"]);return Object(n.jsx)("div",Object(j.a)(Object(j.a)({role:"tabpanel",hidden:a!==i,id:"simple-tabpanel-".concat(i),"aria-labelledby":"simple-tab-".concat(i),style:{marginTop:"5px"}},r),{},{children:a===i&&Object(n.jsx)(c.Fragment,{children:t})}))},on=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V});function sn(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var ln=Object(w.a)((function(e){return Object(k.a)({})}))(on((function(e){e.classes;var t,a=e.match,i=e.setErrorSnackMessage,r=e.session,o=Object(c.useState)(0),s=Object(u.a)(o,2),l=s[0],d=s[1],m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)([]),f=Object(u.a)(g,2),x=f[0],v=f[1],y=Object(c.useState)(!0),S=Object(u.a)(y,2),k=S[0],N=S[1],w=Object(c.useState)([]),T=Object(u.a)(w,2),E=T[0],A=T[1],_=a.params.bucketName,I=(null===(t=r.pages)||void 0===t?void 0:t.indexOf("/users"))>-1,M=[{type:"view",onClick:function(e){b.push("/policies/".concat(e.name))}}],F=[{type:"view",onClick:function(e){b.push("/users/".concat(e))}}];return Object(c.useEffect)((function(){k&&I&&pe.invoke("GET","/api/v1/bucket-users/".concat(_)).then((function(e){A(e),N(!1)})).catch((function(e){i(e),N(!1)}))}),[k,i,_,I]),Object(c.useEffect)((function(){p&&pe.invoke("GET","/api/v1/bucket-policy/".concat(_)).then((function(e){v(e.policies),O(!1)})).catch((function(e){i(e),O(!1)}))}),[p,i,_]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsxs)(C.a,{children:[Object(n.jsxs)(an.a,{value:l,onChange:function(e,t){d(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,Object(j.a)({label:"Policies"},sn(0))),I&&Object(n.jsx)(nn.a,Object(j.a)({label:"Users"},sn(1)))]}),Object(n.jsx)(rn,{index:0,value:l,children:Object(n.jsx)(ma,{noBackground:!0,itemActions:M,columns:[{label:"Name",elementKey:"name"}],isLoading:p,records:x,entityName:"Policies",idField:"name"})}),I&&Object(n.jsx)(rn,{index:1,value:l,children:Object(n.jsx)(ma,{noBackground:!0,itemActions:F,columns:[{label:"User",elementKey:"accessKey"}],isLoading:k,records:E,entityName:"Users",idField:"accessKey"})})]})]})}))),dn=Object(s.b)(null,{setModalErrorSnackMessage:q}),bn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))(dn((function(e){var t=e.classes,a=e.open,i=e.bucketName,r=e.actualPolicy,o=e.closeModalAndRefresh,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1];return Object(c.useEffect)((function(){O(r)}),[O,r]),Object(n.jsx)(xa,{title:"Change Access Policy",modalOpen:a,onClose:function(){o()},children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),pe.invoke("PUT","/api/v1/buckets/".concat(i,"/set-policy"),{access:p}).then((function(e){j(!1),o()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.formScrollable,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{value:p,label:"Access Policy",id:"select-access-policy",name:"select-access-policy",onChange:function(e){O(e.target.value)},options:[{value:"PRIVATE",label:"Private"},{value:"PUBLIC",label:"Public"}]})})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",fullWidth:!0,disabled:b,children:"Set"})}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),un=Object(s.b)(null,{setModalErrorSnackMessage:q}),jn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))(un((function(e){var t=e.classes,a=e.open,i=e.bucketName,r=e.closeModalAndRefresh,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)("compliance"),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)("days"),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(1),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(!1),E=Object(u.a)(T,2),A=E[0],_=E[1];return Object(c.useEffect)((function(){Number.isNaN(N)||N<1?_(!1):_(!0)}),[N]),Object(n.jsx)(xa,{title:"Set Retention Configuration",modalOpen:a,onClose:function(){r()},children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d||(b(!0),pe.invoke("PUT","/api/v1/buckets/".concat(i,"/retention"),{mode:h,unit:v,validity:N}).then((function(){b(!1),r()})).catch((function(e){b(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:h,id:"retention_mode",name:"retention_mode",label:"Retention Mode",onChange:function(e){p(e.target.value)},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:v,id:"retention_unit",name:"retention_unit",label:"Retention Unit",onChange:function(e){S(e.target.value)},selectorOptions:[{value:"days",label:"Days"},{value:"years",label:"Years"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(e){w(e.target.valueAsNumber)},label:"Retention Validity",value:String(N),required:!0,min:"1"})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",fullWidth:!0,disabled:d||!A,children:"Set"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),mn=Object(s.b)(null,{setModalErrorSnackMessage:q}),hn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(mn((function(e){var t=e.classes,a=e.open,i=(e.encryptionEnabled,e.encryptionCfg),r=e.selectedBucket,o=e.closeModalAndRefresh,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)("disabled"),v=Object(u.a)(f,2),S=v[0],C=v[1];Object(c.useEffect)((function(){i&&("AES256"===i.algorithm?C("sse-s3"):(C("sse-kms"),O(i.kmsMasterKeyID)))}),[i]);return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){o()},title:"Enable Bucket Encryption",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||("disabled"===S?pe.invoke("POST","/api/v1/buckets/".concat(r,"/encryption/disable")).then((function(){j(!1),o()})).catch((function(e){j(!1),s(e)})):pe.invoke("POST","/api/v1/buckets/".concat(r,"/encryption/enable"),{encType:S,kmsKeyID:p}).then((function(){j(!1),o()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{onChange:function(e){C(e.target.value)},id:"select-encryption-type",name:"select-encryption-type",label:"Encryption Type",value:S,options:[{label:"Disabled",value:"disabled"},{label:"SSE-S3",value:"sse-s3"},{label:"SSE-KMS",value:"sse-kms"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),"sse-kms"===S&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"kms-key-id",name:"kms-key-id",label:"KMS Key ID",value:p,onChange:function(e){O(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b,children:"Save"})}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),pn=Object(s.b)(null,{setErrorSnackMessage:V})((function(e){var t=e.closeVersioningModalAndRefresh,a=e.modalOpen,i=e.selectedBucket,r=e.versioningCurrentState,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Edit Versioning"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to"," ",Object(n.jsx)("strong",{children:r?"disable":"enable"})," ","versioning for this bucket?",r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("strong",{children:"File versions won't be automatically deleted"})]})]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){d||(b(!0),pe.invoke("PUT","/api/v1/buckets/".concat(i,"/versioning"),{versioning:!r}).then((function(){b(!1),t(!0)})).catch((function(e){b(!1),o(e)})))},color:"secondary",autoFocus:!0,children:r?"Disable":"Enable"})]})]})})),On=function(){return Object(n.jsxs)(rt.a,{viewBox:"0 0 16.172 17.187",children:[Object(n.jsx)("defs",{children:Object(n.jsxs)("linearGradient",{id:"a",y1:"0.5",x2:"1",y2:"0.5",gradientUnits:"objectBoundingBox",children:[Object(n.jsx)("stop",{offset:"0.044",stopColor:"#362585"}),Object(n.jsx)("stop",{offset:"0.301",stopColor:"#281b6f"}),Object(n.jsx)("stop",{offset:"1",stopColor:"#1e1560"})]})}),Object(n.jsx)("path",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.5px"},d:"M-4778.1,2239.582v6.425h6.425",transform:"translate(4787.594 -2239.582)"}),Object(n.jsx)("path",{fill:"#707070",d:"M-4784.238,2247.532v-.581c0-.027.009-.054.012-.081.039-.313.055-.632.121-.939a6.744,6.744,0,0,1,3.064-4.441,6.514,6.514,0,0,1,3.293-1.032,6.923,6.923,0,0,1,2.667.423,6.793,6.793,0,0,1,4.119,4.333,6.053,6.053,0,0,1,.279,1.337c.006.083.014.164.021.247v.86c-.011.131-.018.261-.032.392a6.494,6.494,0,0,1-.626,2.147,6.807,6.807,0,0,1-4.044,3.528,6.052,6.052,0,0,1-1.663.3,6.576,6.576,0,0,1-2.565-.325,6.73,6.73,0,0,1-3.947-3.451,6.627,6.627,0,0,1-.658-2.288C-4784.212,2247.816-4784.225,2247.674-4784.238,2247.532Zm13.025-.306c-.024-.309-.021-.661-.082-1a6.206,6.206,0,0,0-1.658-3.293,6.153,6.153,0,0,0-4.1-1.9,5.984,5.984,0,0,0-2.476.355,6.188,6.188,0,0,0-4.134,5.708,6.453,6.453,0,0,0,.228,1.881,6.127,6.127,0,0,0,1.984,3.052,6.046,6.046,0,0,0,3.806,1.445,6.043,6.043,0,0,0,1.235-.065,6.249,6.249,0,0,0,3.783-2.2,6.2,6.2,0,0,0,1.352-3.048C-4771.228,2247.863-4771.233,2247.563-4771.212,2247.226Z",transform:"translate(4786.834 -2240.452)"}),Object(n.jsx)("ellipse",{style:{opacity:.1,fill:"url(#a)"},cx:"6.151",cy:"6.151",rx:"6.151",ry:"6.151",transform:"translate(0 4.886)"})]})},gn=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),fn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({paperContainer:{padding:15,paddingLeft:50,display:"flex"},elementTitle:{fontWeight:500,color:"#777777",fontSize:14,marginTop:-9},consumptionValue:{color:"#000000",fontSize:"48px",fontWeight:"bold"},reportedUsage:{padding:"15px"}},qe),Ge))}))(gn((function(e){var t=e.classes,a=e.match,r=e.setErrorSnackMessage,o=Object(c.useState)(null),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(null),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)("0"),O=Object(u.a)(p,2),f=O[0],y=O[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(!0),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!0),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(!0),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)(!0),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)(!0),te=Object(u.a)(ee,2),ae=te[0],ne=te[1],ie=Object(c.useState)(!0),re=Object(u.a)(ie,2),oe=re[0],se=re[1],le=Object(c.useState)(!1),de=Object(u.a)(le,2),be=de[0],ue=de[1],je=Object(c.useState)(!1),me=Object(u.a)(je,2),he=me[0],Oe=me[1],ge=Object(c.useState)(!1),fe=Object(u.a)(ge,2),xe=fe[0],ve=fe[1],ye=Object(c.useState)(!1),Se=Object(u.a)(ye,2),Ce=Se[0],ke=Se[1],Ne=Object(c.useState)(!1),we=Object(u.a)(Ne,2),Te=we[0],Ee=we[1],Ae=a.params.bucketName,_e="n/a";null!==l&&(_e=l.access),Object(c.useEffect)((function(){H&&pe.invoke("GET","/api/v1/buckets/".concat(Ae)).then((function(e){Y(!1),d(e)})).catch((function(e){Y(!1),r(e)}))}),[H,r,Ae]),Object(c.useEffect)((function(){$&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/encryption/info")).then((function(e){e.algorithm&&(Oe(!0),h(e)),X(!1)})).catch((function(e){"The server side encryption configuration was not found"===e&&(Oe(!1),h(null)),X(!1)}))}),[$,Ae]),Object(c.useEffect)((function(){ae&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/versioning")).then((function(e){ue(e.is_versioned),ne(!1)})).catch((function(e){r(e),ne(!1)}))}),[ae,r,Ae]),Object(c.useEffect)((function(){ae&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/object-locking")).then((function(e){T(e.object_locking_enabled),z(!1)})).catch((function(e){r(e),z(!1)}))}),[P,r,Ae,ae]),Object(c.useEffect)((function(){W&&pe.invoke("GET","/api/v1/buckets").then((function(e){var t=Z()(e,"buckets",[]).find((function(e){return e.name===Ae})),a=Z()(t,"size","0");V(!1),y(a)})).catch((function(e){V(!1),r(e)}))}),[W,r,Ae]),Object(c.useEffect)((function(){oe&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/replication")).then((function(e){var t=e.rules?e.rules:[];L(t.length>0),se(!1)})).catch((function(e){r(e),se(!1)}))}),[oe,r,Ae]);var Ie=function(){Y(!0),V(!0),ne(!0),X(!0)};return Object(n.jsxs)(c.Fragment,{children:[Ce&&Object(n.jsx)(hn,{open:Ce,selectedBucket:Ae,encryptionEnabled:he,encryptionCfg:m,closeModalAndRefresh:function(){ke(!1),Ie()}}),_&&Object(n.jsx)(bn,{bucketName:Ae,open:_,actualPolicy:_e,closeModalAndRefresh:function(){I(!1),Ie()}}),xe&&Object(n.jsx)(jn,{bucketName:Ae,open:xe,closeModalAndRefresh:function(){ve(!1),Ie()}}),Te&&Object(n.jsx)(pn,{closeVersioningModalAndRefresh:function(e){Ee(!1),e&&Ie()},modalOpen:Te,selectedBucket:Ae,versioningCurrentState:be}),Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:9,children:[Object(n.jsx)("h2",{children:"Details"}),Object(n.jsx)("hr",{className:t.hrClass}),Object(n.jsx)("table",{width:"100%",children:Object(n.jsxs)("tbody",{children:[Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Access Policy:"}),Object(n.jsx)("td",{className:t.capitalizeFirst,children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){I(!0)},children:H?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):_e.toLowerCase()})}),Object(n.jsx)("td",{className:t.titleCol,children:"Encryption:"}),Object(n.jsx)("td",{children:$?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ke(!0)},children:he?"Enabled":"Disabled"})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Replication:"}),Object(n.jsx)("td",{className:t.doubleElement,children:Object(n.jsx)("span",{children:D?"Enabled":"Disabled"})}),w?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("td",{colSpan:2})}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Object Locking:"}),Object(n.jsx)("td",{children:"Disabled"})]})]})]})})]}),Object(n.jsxs)(x.a,{item:!0,xs:3,className:t.reportedUsage,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,xs:2,children:Object(n.jsx)(On,{})}),Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(v.a,{className:t.elementTitle,children:"Reported Usage"})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:ce(f)})]})]})}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("h2",{children:"Versioning"}),Object(n.jsx)("hr",{className:t.hrClass}),Object(n.jsx)("table",{children:Object(n.jsx)("tbody",{children:Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Versioning:"}),Object(n.jsx)("td",{children:ae?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){Ee(!0)},children:be?"Enabled":"Disabled"})})})]})})})]})})}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),w&&Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("h2",{children:"Object Locking"}),Object(n.jsx)("hr",{className:t.hrClass}),Object(n.jsx)("table",{children:Object(n.jsx)("tbody",{children:Object(n.jsxs)("tr",{className:t.gridContainer,children:[Object(n.jsx)("td",{className:t.titleCol,children:"Retention:"}),Object(n.jsx)("td",{children:ae?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ve(!0)},children:"Configure"})})})]})})})]})})})]})}))),xn=Object(s.b)(null,{setErrorSnackMessage:V})((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.bucketEvent,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Event"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsx)(Ka.a,{id:"alert-dialog-description",children:"Are you sure you want to delete this event?"})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){!function(){if(!d&&null!=r){b(!0);var e=Z()(r,"events",[]),a=Z()(r,"prefix",""),n=Z()(r,"suffix","");pe.invoke("DELETE","/api/v1/buckets/".concat(i,"/events/").concat(r.arn),{events:e,prefix:a,suffix:n}).then((function(e){b(!1),t(!0)})).catch((function(e){b(!1),o(e)}))}}()},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),vn=a(978),yn=a(979),Sn=a(980),Cn=a(981),kn=a(977),Nn=Object(s.b)(null,{setModalErrorSnackMessage:q}),wn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(Nn((function(e){var t=e.classes,a=e.open,i=e.selectedBucket,r=e.closeModalAndRefresh,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)([]),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)([]),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useCallback)((function(){b(!0),pe.invoke("GET","/api/v1/admin/arns").then((function(e){var t=[];null!==e.arns&&(t=e.arns),b(!1),D(t)})).catch((function(e){b(!1),o(e)}))}),[o]);Object(c.useEffect)((function(){L()}),[L]);var B=function(e,t){var a=A.indexOf(t),n=[];-1===a?n=n.concat(A,t):0===a?n=n.concat(A.slice(1)):a===A.length-1?n=n.concat(A.slice(0,-1)):a>0&&(n=n.concat(A.slice(0,a),A.slice(a+1))),_(n)},R=F.map((function(e){return{label:e,value:e}}));return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){r()},title:"Subscribe To Event",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d||(b(!0),pe.invoke("POST","/api/v1/buckets/".concat(i,"/events"),{configuration:{arn:N,events:A,prefix:h,suffix:v},ignoreExisting:!0}).then((function(){b(!1),r()})).catch((function(e){b(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{onChange:function(e){w(e.target.value)},id:"select-access-policy",name:"select-access-policy",label:"ARN",value:N,options:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(kn.a,{size:"medium",children:[Object(n.jsx)(vn.a,{className:t.minTableHeader,children:Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{children:"Select"}),Object(n.jsx)(Sn.a,{children:"Event"})]})}),Object(n.jsx)(Cn.a,{children:[{label:"PUT - Object Uploaded",value:"put"},{label:"GET - Object accessed",value:"get"},{label:"DELETE - Object Deleted",value:"delete"}].map((function(e){return Object(n.jsxs)(yn.a,{onClick:function(t){return B(0,e.value)},children:[Object(n.jsx)(Sn.a,{padding:"checkbox",children:Object(n.jsx)(Rt.a,{value:e.value,color:"primary",inputProps:{"aria-label":"secondary checkbox"},onChange:function(t){return B(0,e.value)},checked:A.includes(e.value)})}),Object(n.jsx)(Sn.a,{className:t.wrapCell,children:e.label})]},"group-".concat(e.value))}))})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prefix-input",name:"prefix-input",label:"Prefix",value:h,onChange:function(e){p(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"suffix-input",name:"suffix-input",label:"Suffix",value:v,onChange:function(e){S(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d,children:"Save"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),Tn=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),En=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})}))}))(Tn((function(e){var t=e.classes,a=e.match,i=e.setErrorSnackMessage,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!0),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)([]),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!1),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(null),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(""),_=Object(u.a)(A,2),I=(_[0],_[1]),M=a.params.bucketName;Object(c.useEffect)((function(){j&&pe.invoke("GET","/api/v1/buckets/".concat(M,"/events")).then((function(e){var t=Z()(e,"events",[]);m(!1),v(t||[])})).catch((function(e){m(!1),i(e)}))}),[j,i,M]);var F=[{type:"delete",onClick:function(e){k(!0),E(e)}}];return Object(n.jsxs)(c.Fragment,{children:[C&&Object(n.jsx)(xn,{deleteOpen:C,selectedBucket:M,bucketEvent:T,closeDeleteModalAndRefresh:function(e){k(!1),e&&m(!0)}}),s&&Object(n.jsx)(wn,{open:s,selectedBucket:M,closeModalAndRefresh:function(){l(!1),m(!0)}}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){I(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){l(!0)},children:"Subscribe to Event"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:F,columns:[{label:"SQS",elementKey:"arn"},{label:"Events",elementKey:"events",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:e.join(", ")})}},{label:"Prefix",elementKey:"prefix"},{label:"Suffix",elementKey:"suffix"}],isLoading:j,records:O,entityName:"Events",idField:"id"})})]})]})}))),An=a(148),_n=a.n(An),In=a(402),Mn=a.n(In),Fn=function(){return Object(n.jsx)(rt.a,{viewBox:"0 0 12 12",children:Object(n.jsx)("path",{fill:"#081c42",className:"a",d:"M-13160.269,1885.114h-3.235v-4.381h-4.382V1877.5h4.382v-4.381h3.235v4.381h4.383v3.238h-4.383v4.38Z",transform:"translate(13167.886 -1873.114)"})})},Dn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{inputWithBorder:{border:"1px solid #EAEAEA",padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},labelContainer:{display:"flex"},lineInputBoxes:{display:"flex"},queryDiv:{alignSelf:"center",margin:"0 4px",fontWeight:600}}))}))((function(e){var t=e.elements,a=e.name,r=e.label,o=e.tooltip,s=void 0===o?"":o,l=e.keyPlaceholder,d=void 0===l?"":l,b=e.valuePlaceholder,j=void 0===b?"":b,m=e.onChange,h=e.withBorder,p=void 0!==h&&h,O=e.classes,g=Object(c.useState)([""]),f=Object(u.a)(g,2),v=f[0],y=f[1],S=Object(c.useState)([""]),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.createRef)();Object(c.useEffect)((function(){if(1===v.length&&""===v[0]&&1===k.length&&""===k[0]&&t&&""!==t){var e=t.split("&"),a=[],n=[];e.forEach((function(e){var t=e.split("=");2===t.length&&(a.push(t[0]),n.push(t[1]))})),a.push(""),n.push(""),y(a),N(n)}}),[v,k,t]),Object(c.useEffect)((function(){var e=w.current;e&&v.length>1&&e.scrollIntoView(!1)}),[v]);var T=Object(c.useRef)(!0);Object(c.useLayoutEffect)((function(){T.current?T.current=!1:_()}),[v,k]);var E=function(e){e.persist();var t=Object($e.a)(v);t[Z()(e.target,"dataset.index",0)]=e.target.value,y(t)},A=function(e){e.persist();var t=Object($e.a)(k);t[Z()(e.target,"dataset.index",0)]=e.target.value,N(t)},_=_n()((function(){var e="";v.forEach((function(t,a){if(v[a]&&k[a]){var n="".concat(t,"=").concat(k[a]);0!==a&&(n="&".concat(n)),e="".concat(e).concat(n)}})),m(e)}),500),I=k.map((function(e,t){return Object(n.jsxs)(x.a,{item:!0,xs:12,className:O.lineInputBoxes,children:[Object(n.jsx)(Sa,{id:"".concat(a,"-key-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:v[t],onChange:E,index:t,placeholder:d}),Object(n.jsx)("span",{className:O.queryDiv,children:":"}),Object(n.jsx)(Sa,{id:"".concat(a,"-value-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:k[t],onChange:A,index:t,placeholder:j,overlayIcon:t===k.length-1?Object(n.jsx)(Fn,{}):null,overlayAction:function(){!function(){if(""!==v[v.length-1].trim()&&""!==k[k.length-1].trim()){var e=Object($e.a)(v),t=Object($e.a)(k);e.push(""),t.push(""),y(e),N(t)}}()}})]},"query-pair-".concat(a,"-").concat(t.toString()))}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:O.fieldContainer,children:[Object(n.jsxs)(oa.a,{className:O.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==s&&Object(n.jsx)("div",{className:O.tooltipContainer,children:Object(n.jsx)(sa.a,{title:s,placement:"top-start",children:Object(n.jsx)(Mn.a,{className:O.tooltip})})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(p?O.inputWithBorder:""),children:[I,Object(n.jsx)("div",{ref:w})]})]})})})),Ln=Object(s.b)(null,{setModalErrorSnackMessage:q}),Bn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"}},we))}))(Ln((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.bucketName,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(""),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(""),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!0),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(!0),Q=Object(u.a)(Y,2),J=Q[0],$=Q[1],X=Object(c.useState)(!0),ee=Object(u.a)(X,2),te=ee[0],ae=ee[1],ne=Object(c.useState)(!0),ce=Object(u.a)(ne,2),ie=ce[0],re=(ce[1],Object(c.useState)("")),le=Object(u.a)(re,2),de=le[0],be=le[1],ue=Object(c.useState)("async"),je=Object(u.a)(ue,2),me=je[0],he=je[1],Oe=Object(c.useState)("100"),ge=Object(u.a)(Oe,2),fe=ge[0],xe=ge[1],ve=Object(c.useState)("Gi"),ye=Object(u.a)(ve,2),Se=ye[0],Ce=ye[1],ke=Object(c.useState)("60"),Ne=Object(u.a)(ke,2),we=Ne[0],Te=Ne[1];return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){a()},title:"Set Bucket Replication",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b(!0),function(){var e=[{originBucket:r,destinationBucket:R}],t=parseInt(we),n="".concat(q?"https://":"http://").concat(N),c={accessKey:h,secretKey:v,targetURL:n,region:U,bucketsRelation:e,syncMode:me,bandwidth:"async"===me?parseInt(se(fe,Se,!0)):0,healthCheckPeriod:t,prefix:F,tags:de,replicateDeleteMarkers:J,replicateDeletes:te,replicateMetadata:ie};pe.invoke("POST","/api/v1/buckets-replication",c).then((function(e){b(!1);var t=Z()(e,"replicationState",[]);if(t.length>0){var n=t[0];return b(!1),n.errorString&&""!==n.errorString?void o(n.errorString):void a()}o("No changes applied")})).catch((function(e){b(!1),o(e)}))}()},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"targetURL",name:"targetURL",onChange:function(e){w(e.target.value)},placeholder:"play.min.io",label:"Target URL",value:N})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:q,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){H(e.target.checked)},value:"yes"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",onChange:function(e){p(e.target.value)},label:"Access Key",value:h})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",onChange:function(e){S(e.target.value)},label:"Secret Key",value:v})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"targetBucket",name:"targetBucket",onChange:function(e){P(e.target.value)},label:"Target Bucket",value:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"region",name:"region",onChange:function(e){W(e.target.value)},label:"Region",value:U})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"replication_mode",name:"replication_mode",onChange:function(e){he(e.target.value)},label:"Replication Mode",value:me,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]})}),"async"===me&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:i.multiContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){xe(e.target.value)},label:"Bandwidth",value:fe,min:"0"})}),Object(n.jsx)("div",{className:i.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"Unit",id:"bandwidth_unit",name:"bandwidth_unit",value:Se,onChange:function(e){Ce(e.target.value)},options:oe()})})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"healthCheck",name:"healthCheck",onChange:function(e){Te(e.target.value)},label:"Health Check Duration",value:we})}),Object(n.jsx)("h3",{children:"Object Filters"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prefix",name:"prefix",onChange:function(e){D(e.target.value)},placeholder:"prefix",label:"Prefix",value:F})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Dn,{name:"tags",label:"Tags",elements:"",onChange:function(e){be(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})}),Object(n.jsx)("h3",{children:"Storage Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"storageClass",name:"storageClass",onChange:function(e){_(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:A})}),Object(n.jsx)("h3",{children:"Replication Options"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:J,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:function(e){console.log(e),console.log(e.target.checked),$(e.target.checked)},value:J,description:"Replicate soft deletes"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:te,id:"repDelete",name:"repDelete",label:"Deletes",onChange:function(e){ae(e.target.checked)},value:te,description:"Replicate versioned deletes"})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d,children:"Save"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),Rn={setErrorSnackMessage:V},Pn=Object(s.b)(null,Rn)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.ruleToDelete,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Replication Rule"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete replication rule ",Object(n.jsx)("b",{children:r}),"? ",Object(n.jsx)("br",{}),"Remember, at lease one rule must be present once replication has been enabled"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){d||(b(!0),pe.invoke("DELETE","/api/v1/buckets/".concat(i,"/replication/").concat(r)).then((function(){b(!1),t(!0)})).catch((function(e){b(!1),o(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),zn=a(70),Kn=a.n(zn),Un=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),Wn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})}))}))(Un((function(e){var t=e.classes,a=e.match,i=e.setErrorSnackMessage,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!0),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)([]),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!0),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(!1),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(!1),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)(!1),D=Object(u.a)(F,2),L=D[0],B=D[1],R=Object(c.useState)(""),P=Object(u.a)(R,2),z=P[0],K=P[1],U=a.params.bucketName;if(Object(c.useEffect)((function(){C&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"PutReplicationConfiguration",action:"s3:PutReplicationConfiguration",bucket_name:U},{id:"GetReplicationConfiguration",action:"s3:GetReplicationConfiguration",bucket_name:U}]}).then((function(e){if(k(!1),e.permissions){var t=e.permissions?e.permissions:[],a=t.find((function(e){return"PutReplicationConfiguration"===e.id}));a&&a.can?l(!0):l(!1);var n=t.find((function(e){return"GetReplicationConfiguration"===e.id}));n&&n.can?E(!0):E(!1),k(!1)}})).catch((function(e){k(!1),i(e)}))}),[U,C,i]),Object(c.useEffect)((function(){j&&pe.invoke("GET","/api/v1/buckets/".concat(U,"/replication")).then((function(e){var t=e.rules?e.rules:[];v(t),m(!1)})).catch((function(e){i(e),m(!1)}))}),[j,i,U]),!T)return null;var W=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];B(e)},V=[{type:"delete",onClick:function(e){K(e.id),M(!0)},disableButtonFunction:function(){return O.length>1}}];return Object(n.jsxs)(c.Fragment,{children:[L&&Object(n.jsx)(Bn,{closeModalAndRefresh:function(){W(!1),m(!0)},open:L,bucketName:U}),I&&Object(n.jsx)(Pn,{deleteOpen:I,selectedBucket:U,closeDeleteModalAndRefresh:function(e){M(!1),e&&m(!0)},ruleToDelete:z}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh Replication Rules",component:"span",onClick:function(){m(!0)},children:Object(n.jsx)(Kn.a,{})}),s&&Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){W(!0)},children:"Add Replication Rule"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:V,columns:[{label:"Priority",elementKey:"priority"},{label:"Destination",elementKey:"destination",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:e.bucket.replace("arn:aws:s3:::","")})}},{label:"Prefix",elementKey:"prefix"},{label:"Tags",elementKey:"tags",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:e&&""!==e.tags?"Yes":"No"})}},{label:"Status",elementKey:"status"}],isLoading:j,records:O,entityName:"Replication Rules",idField:"id"})})]})]})}))),Vn={setModalErrorSnackMessage:q},Gn=Object(s.b)(null,Vn),qn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(Gn((function(e){var t=e.classes,a=e.closeModalAndRefresh,r=e.selectedBucket,o=e.lifecycle,s=e.open,l=e.setModalErrorSnackMessage,d=Object(c.useState)(!1),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],f=p[1],v=Object(c.useState)(!1),S=Object(u.a)(v,2),C=S[0],k=S[1];Object(c.useEffect)((function(){if("Enabled"===o.status&&k(!0),o.tags){var e=o.tags.reduce((function(e,t,a){return"".concat(e).concat(0!==a?"&":"").concat(t.key,"=").concat(t.value)}),"");f(e)}}),[o]);return Object(n.jsxs)(xa,{onClose:function(){a(!1)},modalOpen:s,title:"Edit Lifecycle Configuration",children:[Object(n.jsx)("div",{className:t.floatingEnabled,children:Object(n.jsx)(Pa,{indicatorLabels:["Enabled","Disabled"],checked:C,value:"user_enabled",id:"user-status",name:"user-status",onChange:function(e){k(e.target.checked)},switchOnly:!0})}),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),j||(m(!0),null!==r&&null!==o&&pe.invoke("PUT","/api/v1/buckets/".concat(r,"/lifecycle/").concat(o.id),{disable:!C,tags:O}).then((function(e){m(!1),a(!0)})).catch((function(e){m(!1),l(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"id",name:"id",label:"Id",value:o.id,onChange:function(){},disabled:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Dn,{name:"tags",label:"Tags",elements:O,onChange:function(e){f(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:j,children:"Save"})}),j&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})]})}))),Hn=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}],Yn=Array.from(Array(31),(function(e,t){return t+1})),Qn=(new Date).getFullYear(),Zn=Array.from(Array(25),(function(e,t){return t+Qn})),Jn=Object(w.a)((function(e){return Object(k.a)({root:{"& .MuiSelect-icon":{color:"#000","&.Mui-disabled":{color:"#9c9c9c"}}},input:{borderBottom:0,fontSize:12}})}))(Ca.a),$n=Object(c.forwardRef)((function(e,t){var a=e.classes,i=e.id,r=e.label,o=e.disableOptions,s=void 0!==o&&o,l=e.addSwitch,d=void 0!==l&&l,b=e.tooltip,j=void 0===b?"":b,m=e.borderBottom,h=void 0!==m&&m,p=e.onDateChange,O=e.value,g=void 0===O?"":O;Object(c.useImperativeHandle)(t,(function(){return{resetDate:L}}));var f=Object(c.useState)(!1),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1];Object(c.useEffect)((function(){if(""!==g){var e=g.split("-");D(e[0]),w(e[1]),_("".concat(parseInt(e[2])))}}),[g]),Object(c.useEffect)((function(){var e=function(e,t,a){var n=Date.parse("".concat(e,"-").concat(t,"-").concat(a));if(isNaN(n))return[!1,""];var c=parseInt(t),i=parseInt(a),r=c<10?"0".concat(c):c,o=i<10?"0".concat(i):i,s=new Date(n).toISOString().split("T")[0],l="".concat(e,"-").concat(r,"-").concat(o);return[s===l,l]}(F,N,A),t=Object(u.a)(e,2),a=t[0],n=t[1];p(n,a)}),[N,A,F,p]);var L=function(){w(""),_(""),D("")},B=function(){return s||!!d&&!y};return Object(n.jsxs)(x.a,{item:!0,xs:12,className:Object(ve.a)(a.fieldContainer,Object(xe.a)({},a.fieldContainerBorder,h)),children:[Object(n.jsx)("div",{className:a.labelContainer,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(oa.a,{htmlFor:i,className:a.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==j&&Object(n.jsx)("div",{className:a.tooltipContainer,children:Object(n.jsx)(sa.a,{title:j,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:a.tooltip})})})})]}),d&&Object(n.jsx)(Pa,{indicatorLabels:["Specific Date","Default (7 Days)"],checked:y,value:"date_enabled",id:"date-status",name:"date-status",onChange:function(e){S(e.target.checked),e.target.checked||p("",!0)},switchOnly:!0})]})}),Object(n.jsxs)("div",{children:[Object(n.jsx)(ka.a,{disabled:B(),className:a.dateInput,children:Object(n.jsxs)(Na.a,{id:"".concat(i,"-month"),name:"".concat(i,"-month"),value:N,displayEmpty:!0,onChange:function(e){w(e.target.value)},input:Object(n.jsx)(Jn,{}),children:[Object(n.jsx)(wa.a,{value:"",disabled:!0,children:""}),Hn.map((function(e){return Object(n.jsx)(wa.a,{value:e.value,children:e.label},"select-".concat(i,"-monthOP-").concat(e.label))}))]})}),Object(n.jsx)(ka.a,{disabled:B(),className:a.dateInput,children:Object(n.jsxs)(Na.a,{id:"".concat(i,"-day"),name:"".concat(i,"-day"),value:A,displayEmpty:!0,onChange:function(e){_(e.target.value)},input:Object(n.jsx)(Jn,{}),children:[Object(n.jsx)(wa.a,{value:"",disabled:!0,children:""}),Yn.map((function(e){return Object(n.jsx)(wa.a,{value:e,children:e},"select-".concat(i,"-dayOP-").concat(e))}))]})}),Object(n.jsx)(ka.a,{disabled:B(),className:a.dateInput,children:Object(n.jsxs)(Na.a,{id:"".concat(i,"-year"),name:"".concat(i,"-year"),value:F,displayEmpty:!0,onChange:function(e){D(e.target.value)},input:Object(n.jsx)(Jn,{}),children:[Object(n.jsx)(wa.a,{value:"",disabled:!0,children:""}),Zn.map((function(e){return Object(n.jsx)(wa.a,{value:e,children:e},"select-".concat(i,"-yearOP-").concat(e))}))]})})]})]})})),Xn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({dateInput:{"&:not(:last-child)":{marginRight:22}}},Ne),Te),{},{labelContainer:{flex:1},fieldContainer:Object(j.a)(Object(j.a)({},Ne.fieldContainer),{},{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:10,marginTop:11,marginBottom:6}),fieldContainerBorder:{borderBottom:"#9c9c9c 1px solid",marginBottom:20}}))}))($n),ec=Object(s.b)(null,{setModalErrorSnackMessage:q}),tc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(ec((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.bucketName,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!0),l=Object(u.a)(s,2),d=l[0],b=l[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(!1),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(""),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(""),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(""),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(""),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!1),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)("0"),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)("0"),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)("expiry"),te=Object(u.a)(ee,2),ae=te[0],ne=te[1],ce=Object(c.useState)("date"),ie=Object(u.a)(ce,2),re=ie[0],oe=ie[1],se=Object(c.useState)("0"),le=Object(u.a)(se,2),de=le[0],be=le[1],ue=Object(c.useState)(""),je=Object(u.a)(ue,2),me=je[0],he=je[1],Oe=Object(c.useState)("0"),ge=Object(u.a)(Oe,2),fe=ge[0],xe=ge[1],ve=Object(c.useState)(""),ye=Object(u.a)(ve,2),Se=ye[0],Ce=ye[1],ke=Object(c.useState)("date"),Ne=Object(u.a)(ke,2),we=Ne[0],Te=Ne[1],Ee=Object(c.useState)(!1),Ae=Object(u.a)(Ee,2),_e=Ae[0],Ie=Ae[1];Object(c.useEffect)((function(){d&&pe.invoke("GET","/api/v1/admin/tiers").then((function(e){var t=Z()(e,"items",[]);if(null!==t&&t.length>=1){var a=t.map((function(e){var t=e.type,a=Z()(e,"".concat(t,".name"),"");return{label:a,value:a}}));O(a),a.length>0&&L(a[0].value)}b(!1)})).catch((function(e){b(!1)}))}),[d]),Object(c.useEffect)((function(){var e=!0;"expiry"===ae?("date"===re&&""===me&&(e=!1),"days"===re&&parseInt(de)<1&&(e=!1)):("date"===we&&""===Se&&(e=!1),"days"===we&&parseInt(fe)<1&&(e=!1),""===D&&(e=!1)),Ie(e)}),[ae,re,me,de,we,Se,fe,D]);return Object(n.jsxs)(xa,{modalOpen:t,onClose:function(){a(!1)},title:"Add Lifecycle Rule",children:[d&&Object(n.jsx)(x.a,{container:!0,className:i.loadingBox,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})}),!d&&Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),C(!0),function(){var e={};if("expiry"===ae){var t={};t="date"===re?{expiry_date:"".concat(me,"T23:59:59Z")}:{expiry_days:parseInt(de)},e=Object(j.a)(Object(j.a)({},t),{},{noncurrentversion_expiration_days:parseInt(H)})}else{var n={};n="date"===we?{transition_date:"".concat(Se,"T23:59:59Z")}:{transition_days:parseInt(fe)},e=Object(j.a)(Object(j.a)({},n),{},{noncurrentversion_transition_days:parseInt($),noncurrentversion_transition_storage_class:P,storage_class:D})}var c=Object(j.a)({prefix:w,tags:_,expired_object_delete_marker:W},e);pe.invoke("POST","/api/v1/buckets/".concat(r,"/lifecycle"),c).then((function(){C(!1),a(!0)})).catch((function(e){C(!1),o(e)}))}()},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:[Object(n.jsx)("h3",{children:"Lifecycle Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:ae,id:"quota_type",name:"quota_type",label:"ILM Rule",onChange:function(e){ne(e.target.value)},selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}]})}),"expiry"===ae?Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:re,id:"expiryType",name:"expiryType",label:"Expiry Type",onChange:function(e){oe(e.target.value)},selectorOptions:[{value:"date",label:"Date"},{value:"days",label:"Days"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:"date"===re?Object(n.jsx)(Xn,{id:"expiry_date",label:"Expiry Date",value:me,borderBottom:!0,onDateChange:function(e,t){t&&he(e)}}):Object(n.jsx)(Sa,{type:"number",id:"expiry_days",name:"expiry_days",onChange:function(e){be(e.target.value)},label:"Expiry Days",value:de,min:"0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"noncurrentversion_expiration_days",name:"noncurrentversion_expiration_days",onChange:function(e){Y(e.target.value)},label:"Non-current Expiration Days",value:H,min:"0"})})]}):Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:we,id:"transitionType",name:"transitionType",label:"Transition Type",onChange:function(e){Te(e.target.value)},selectorOptions:[{value:"date",label:"Date"},{value:"days",label:"Days"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:"date"===we?Object(n.jsx)(Xn,{id:"transition_date",label:"Transition Date",value:Se,borderBottom:!0,onDateChange:function(e,t){t&&Ce(e)}}):Object(n.jsx)(Sa,{type:"number",id:"transition_days",name:"transition_days",onChange:function(e){xe(e.target.value)},label:"Transition Days",value:fe,min:"0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"noncurrentversion_transition_days",name:"noncurrentversion_transition_days",onChange:function(e){X(e.target.value)},label:"Non-current Transition Days",value:$,min:"0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"noncurrentversion_t_SC",name:"noncurrentversion_t_SC",onChange:function(e){z(e.target.value)},placeholder:"Set Non-current Version Transition Storage Class",label:"Non-current Version Transition Storage Class",value:P})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Storage Class",id:"storage_class",name:"storage_class",value:D,onChange:function(e){L(e.target.value)},options:p})})]}),Object(n.jsx)("h3",{children:"File Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prefix",name:"prefix",onChange:function(e){T(e.target.value)},label:"Prefix",value:w})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Dn,{name:"tags",label:"Tags",elements:"",onChange:function(e){I(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:W,onChange:function(e){V(e.target.checked)},label:"Expired Object Delete Marker",indicatorLabels:["On","Off"]})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:S||!_e,children:"Save"})}),S&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})]})}))),ac=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),nc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})}))}))(ac((function(e){var t=e.classes,a=e.match,i=(e.setErrorSnackMessage,Object(c.useState)(!0)),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)([]),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],v=Object(c.useState)(!1),y=Object(u.a)(v,2),S=y[0],C=y[1],k=a.params.bucketName;Object(c.useEffect)((function(){o&&pe.invoke("GET","/api/v1/buckets/".concat(k,"/lifecycle")).then((function(e){var t=Z()(e,"lifecycle",[]);j(t||[]),s(!1)})).catch((function(e){console.error(e),s(!1)}))}),[o,s,k]);var N=[{label:"ID",elementKey:"id"},{label:"Prefix",elementKey:"prefix"},{label:"Status",elementKey:"status"},{label:"Expiration",elementKey:"expiration",renderFunction:function(e){return e.days?"".concat(e.days," day").concat(e.days>1?"s":""):"0001-01-01T00:00:00Z"===e.date?"":Object(n.jsx)(it.a,{children:e.date})}},{label:"Transition",elementKey:"transition",renderFunction:function(e){return e.days?"".concat(e.days," day").concat(e.days>1?"s":""):"0001-01-01T00:00:00Z"===e.date?"":Object(n.jsx)(it.a,{children:e.date})}},{label:"Storage Class",elementKey:"storage_class",renderFunction:function(e){return Z()(e,"transition.storage_class","")},renderFullObject:!0}];return Object(n.jsxs)(c.Fragment,{children:[S&&Object(n.jsx)(qn,{open:S,closeModalAndRefresh:function(e){C(!1),e&&s(!0)},selectedBucket:k,lifecycle:{id:""}}),p&&Object(n.jsx)(tc,{open:p,bucketName:k,closeModalAndRefresh:function(e){O(!1),e&&s(!0)}}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){O(!0)},children:"Add Lifecycle Rule"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[],columns:N,isLoading:o,records:b,entityName:"Lifecycle",customEmptyMessage:"There are no Lifecycle rules yet",idField:"id"})})]})]})})));function cc(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var ic=Object(s.b)((function(e){return{session:e.console.session,selectedTab:e.buckets.bucketDetails.selectedTab}}),{setErrorSnackMessage:V,setBucketDetailsTab:function(e){return{type:Mt,tab:e}}}),rc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noRecords:{lineHeight:"24px",textAlign:"center",padding:"20px"},gridWrapper:{width:320},gridContainer:{display:"grid",gridTemplateColumns:"auto auto",gridGap:8,justifyContent:"flex-start",alignItems:"center","& div:not(.MuiCircularProgress-root)":{display:"flex",alignItems:"center"},"& div:nth-child(odd)":{justifyContent:"flex-end",fontWeight:700},"& div:nth-child(2n)":{minWidth:150}},masterActions:{width:"25%",minWidth:"120px","& div":{margin:"5px 0px"}},headerContainer:{display:"flex",justifyContent:"space-between"},capitalizeFirst:{textTransform:"capitalize"},doubleElement:{display:"flex",justifyContent:"space-between"},encCheckbox:{margin:0,padding:0},tabPan:{marginTop:"5px"},fixedHeight:{height:165,minWidth:247,padding:"25px 28px","& svg":{maxHeight:18}},routerContainer:{marginTop:5},titleCol:{fontWeight:"bold"}},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})},qe),Ge),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(ic((function(e){var t=e.classes,a=e.match,i=e.history,r=(e.session,e.selectedTab),o=e.setErrorSnackMessage,s=e.setBucketDetailsTab,d=Object(c.useState)(!0),b=Object(u.a)(d,2),m=b[0],h=b[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),g=O[0],f=O[1],v=a.params.bucketName;Object(c.useEffect)((function(){var e=a.params?a.params[0]:"summary";e||(e="");var t=e.split("/");r!==t[0]&&s(t[0])}),[a,v,s,r]),Object(c.useEffect)((function(){m&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"GetReplicationConfiguration",action:"s3:GetReplicationConfiguration",bucket_name:v}]}).then((function(e){if(h(!1),e.permissions){var t=(e.permissions?e.permissions:[]).find((function(e){return"GetReplicationConfiguration"===e.id}));t&&t.can?f(!0):f(!1),h(!1)}})).catch((function(e){h(!1),o(e)}))}),[v,m,o]);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Bucket > ".concat(a.params.bucketName)}),Object(n.jsxs)(x.a,{container:!0,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:""!==r?r:"summary",onChange:function(e,t){!function(e){var t="/buckets/".concat(v);switch(e){case"events":t+="/events";break;case"replication":t+="/replication";break;case"lifecycle":t+="/lifecycle";break;case"access":t+="/access";break;default:t+="/summary"}s(e),i.push(t)}(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,Object(j.a)({value:"summary",label:"Summary"},cc(0))),Object(n.jsx)(nn.a,Object(j.a)({value:"events",label:"Events"},cc(1))),Object(n.jsx)(nn.a,Object(j.a)(Object(j.a)({value:"replication",label:"Replication"},cc(2)),{},{disabled:!g})),Object(n.jsx)(nn.a,Object(j.a)({value:"lifecycle",label:"Lifecycle"},cc(3))),Object(n.jsx)(nn.a,Object(j.a)({value:"access",label:"Access"},cc(4)))]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.routerContainer,children:Object(n.jsx)(l.c,{history:i,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/buckets/:bucketName/summary",component:fn}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/events",component:En}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/replication",component:Wn}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/lifecycle",component:nc}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/access",component:ln}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/access",component:ln}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName",component:function(){return Object(n.jsx)(l.a,{to:"/buckets/".concat(v,"/summary")})}})]})})})})]})]})}))),oc=Object(s.b)((function(e){return{open:e.system.sidebarOpen}}),{setMenuOpen:z}),sc=Object(l.g)(oc((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/buckets/:bucketName/*",component:rc}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName",component:rc}),Object(n.jsx)(l.b,{path:"/",component:tn}),Object(n.jsx)(l.b,{component:Je})]})})}))),lc=a(403);a(554);a(555);var dc,bc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Ne))}))((function(e){var t=e.value,a=e.label,c=void 0===a?"":a,r=e.tooltip,o=void 0===r?"":r,s=e.mode,l=void 0===s?"javascript":s,d=e.classes,b=e.onChange,u=void 0===b?function(){}:b,j=e.onBeforeChange,m=e.readOnly,h=void 0!==m&&m;return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(oa.a,{className:d.inputLabel,children:[Object(n.jsx)("span",{children:c}),""!==o&&Object(n.jsx)("div",{className:d.tooltipContainer,children:Object(n.jsx)(sa.a,{title:o,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:d.tooltip})})})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lc.Controlled,{value:t,options:{mode:l,lineNumbers:!0,readOnly:h},onBeforeChange:j,onChange:u})})]})})),uc={setModalErrorSnackMessage:q},jc=Object(s.b)(null,uc),mc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({jsonPolicyEditor:{minHeight:400,width:"100%"},buttonContainer:{textAlign:"right"}},we),Ne))}))(jc((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.policyEdit,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1];Object(c.useEffect)((function(){r&&(p(r.name),S(r?JSON.stringify(JSON.parse(r.policy),null,4):""))}),[r]);var C=""!==h.trim();return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){i(!1)},title:"".concat(r?"Info":"Create"," Policy"),children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d||(b(!0),pe.invoke("POST","/api/v1/policies",{name:h,policy:v}).then((function(e){b(!1),i(!0)})).catch((function(e){b(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"policy-name",name:"policy-name",label:"Policy Name",placeholder:"Enter Policy Name",onChange:function(e){p(e.target.value)},value:h,disabled:!!r})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(bc,{label:"".concat(r?"Edit":"Write"," Policy"),value:v,onBeforeChange:function(e,t,a){S(a)}})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[!r&&Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){p(""),S("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d||!C,children:"Save"})]}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),hc={setErrorSnackMessage:V},pc=Object(s.b)(null,hc)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedPolicy,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Policy"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete policy ",Object(n.jsx)("b",{children:i}),"?."]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){l||(d(!0),pe.invoke("DELETE","/api/v1/policy?name=".concat(i)).then((function(e){d(!1),t(!0)})).catch((function(e){d(!1),r(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),Oc={setErrorSnackMessage:V},gc=Object(s.b)(null,Oc),fc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(gc((function(e){var t=e.classes,a=e.setErrorSnackMessage,r=Object(c.useState)([]),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!1),j=Object(u.a)(d,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),v=O[0],y=O[1],S=Object(c.useState)(!1),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(""),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(""),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(null),L=Object(u.a)(D,2),B=L[0],R=L[1];Object(c.useEffect)((function(){P()}),[]),Object(c.useEffect)((function(){m&&pe.invoke("GET","/api/v1/policies").then((function(e){var t=Z()(e,"policies",[]);t.sort((function(e,t){return e.name>t.name?1:e.name ".concat(a.params.policyName)]})}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:d,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){j(t)},"aria-label":"policy-tabs",children:[Object(n.jsx)(nn.a,{label:"Details"}),Object(n.jsx)(nn.a,{label:"Users"})]})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===d&&Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),T||(E(!0),pe.invoke("POST","/api/v1/policies",{name:I,policy:L}).then((function(e){E(!1),r(!0)})).catch((function(e){E(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.formScrollable,children:Object(n.jsx)(bc,{label:"".concat(p?"Edit":"Write"," Policy"),value:L,onBeforeChange:function(e,t,a){B(a)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[!p&&Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){M(""),B("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:T||!U,children:"Save"})]}),T&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})}),1===d&&Object(n.jsx)(ma,{itemActions:W,columns:[{label:"Name",elementKey:"name"}],isLoading:!1,records:S,entityName:"Users",idField:"name"})]})]})})]})}))),yc=Object(s.b)((function(e){return{open:e.system.sidebarOpen}}),{setMenuOpen:z}),Sc=Object(l.g)(yc((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/policies/:policyName",component:vc}),Object(n.jsx)(l.b,{path:"/",component:fc}),Object(n.jsx)(l.b,{component:Je})]})})}))),Cc=a(404),kc=a.n(Cc);!function(e){e.singleValue="singleValue",e.linearGraph="linearGraph",e.barChart="barChart",e.pieChart="pieChart",e.singleRep="singleRep"}(dc||(dc={}));var Nc="dashboardConfig",wc=[{w:1,h:2,x:0,y:0,i:"panel-0",minW:1,moved:!1,static:!1},{w:1,h:1,x:1,y:2,i:"panel-1",minW:1,moved:!1,static:!1},{w:1,h:1,x:1,y:3,i:"panel-2",minW:1,moved:!1,static:!1},{w:1,h:2,x:2,y:0,i:"panel-3",minW:1,moved:!1,static:!1},{w:2,h:2,x:3,y:0,i:"panel-4",minW:2,moved:!1,static:!1},{w:2,h:2,x:5,y:0,i:"panel-5",minW:2,moved:!1,static:!1},{w:1,h:1,x:0,y:2,i:"panel-6",minW:1,moved:!1,static:!1},{w:1,h:1,x:0,y:3,i:"panel-7",minW:1,moved:!1,static:!1},{w:1,h:1,x:2,y:2,i:"panel-8",minW:1,moved:!1,static:!1},{w:1,h:1,x:2,y:3,i:"panel-9",minW:1,moved:!1,static:!1},{w:2,h:2,x:3,y:2,i:"panel-10",minW:2,moved:!1,static:!1},{w:1,h:1,x:7,y:0,i:"panel-11",minW:1,moved:!1,static:!1},{w:1,h:1,x:7,y:1,i:"panel-12",minW:1,moved:!1,static:!1},{w:4,h:3,x:0,y:10,i:"panel-13",minW:2,moved:!1,static:!1},{w:4,h:3,x:0,y:4,i:"panel-14",minW:2,moved:!1,static:!1},{w:2,h:2,x:5,y:2,i:"panel-15",minW:2,moved:!1,static:!1},{w:8,h:3,x:0,y:7,i:"panel-16",minW:2,moved:!1,static:!1},{w:8,h:3,x:0,y:19,i:"panel-19",minW:2,moved:!1,static:!1},{w:1,h:1,x:7,y:2,i:"panel-20",minW:1,moved:!1,static:!1},{w:1,h:1,x:7,y:3,i:"panel-21",minW:1,moved:!1,static:!1},{w:4,h:3,x:4,y:4,i:"panel-22",minW:2,moved:!1,static:!1},{w:4,h:3,x:4,y:10,i:"panel-23",minW:2,moved:!1,static:!1},{w:4,h:3,x:0,y:13,i:"panel-24",minW:2,moved:!1,static:!1},{w:4,h:3,x:4,y:13,i:"panel-25",minW:2,moved:!1,static:!1},{w:4,h:3,x:0,y:16,i:"panel-26",minW:2,moved:!1,static:!1},{w:4,h:3,x:4,y:16,i:"panel-27",minW:2,moved:!1,static:!1},{w:1,h:1,x:1,y:0,i:"panel-28",minW:1,moved:!1,static:!1},{w:1,h:1,x:1,y:1,i:"panel-29",minW:1,moved:!1,static:!1}],Tc=["#6992B7","#E2AD17","#22B573","#F7655E","#0071BC","#F9E6C5","#A6E8C4","#F4CECE","#ADD5E0"],Ec=function(e){return ue(e,"ns")},Ac=function(e){return parseInt(e).toString(10)},_c=[{id:1,title:"Uptime",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-0",labelDisplayFunction:ue},{id:9,title:"Total Online Disks",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-1"},{id:78,title:"Total Offline Disks",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-2"},{id:50,title:"Current Usable Capacity",data:[],dataOuter:[{name:"outer",value:100}],widgetConfiguration:{outerChart:{colorList:["#9c9c9c"],innerRadius:51,outerRadius:54,startAngle:-15,endAngle:195},innerChart:{colorList:Tc,innerRadius:35,outerRadius:50,startAngle:-15,endAngle:195}},type:dc.pieChart,layoutIdentifier:"panel-3",innerLabel:"N/A",labelDisplayFunction:ce},{id:68,title:"Data Usage Growth",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-4",yAxisFormatter:ce,xAxisFormatter:je},{id:52,title:"Object size distribution",data:[],widgetConfiguration:[{dataKey:"a",color:Tc[0],background:{fill:"rgba(0,0,0,0.1)"}}],customStructure:[{originTag:"LESS_THAN_1024_B",displayTag:"Less than 1024B"},{originTag:"BETWEEN_1024_B_AND_1_MB",displayTag:"Between 1024B and 1MB"},{originTag:"BETWEEN_1_MB_AND_10_MB",displayTag:"Between 1MB and 10MB"},{originTag:"BETWEEN_10_MB_AND_64_MB",displayTag:"Between 10MB and 64MB"},{originTag:"BETWEEN_64_MB_AND_128_MB",displayTag:"Between 64MB and 128MB"},{originTag:"BETWEEN_128_MB_AND_512_MB",displayTag:"Between 128MB and 512MB"},{originTag:"GREATER_THAN_512_MB",displayTag:"Greater than 512MB"}],type:dc.barChart,layoutIdentifier:"panel-5"},{id:53,title:"Total Online Servers",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-6"},{id:69,title:"Total Offline Servers",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-7"},{id:66,title:"Number of Buckets",data:[],innerLabel:"N/A",type:dc.singleRep,color:"#0071BC",fillColor:"#ADD5E0",layoutIdentifier:"panel-8"},{id:44,title:"Number of Objects",data:[],innerLabel:"N/A",type:dc.singleRep,color:"#0071BC",fillColor:"#ADD5E0",layoutIdentifier:"panel-9"},{id:63,title:"S3 API Data Received Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-10",xAxisFormatter:je,yAxisFormatter:ce},{id:61,title:"Total Open FDs",data:[],innerLabel:"N/A",type:dc.singleRep,layoutIdentifier:"panel-11",color:"#22B573",fillColor:"#A6E8C4"},{id:62,title:"Total Goroutines",data:[],innerLabel:"N/A",type:dc.singleRep,layoutIdentifier:"panel-12",color:"#F7655E",fillColor:"#F4CECE"},{id:77,title:"Node CPU Usage",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-13",yAxisFormatter:Ac,xAxisFormatter:je},{id:60,title:"S3 API Request Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-14",xAxisFormatter:je},{id:70,title:"S3 API Data Sent Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-15",xAxisFormatter:je,yAxisFormatter:ce},{id:17,title:"Internode Data Transfer",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-16",yAxisFormatter:ce,xAxisFormatter:je},{id:73,title:"Node IO",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-19",yAxisFormatter:ce,xAxisFormatter:je},{id:80,title:"Time Since Last Heal Activity",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-20",labelDisplayFunction:Ec},{id:81,title:"Time Since Last Scan Activity",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-21",labelDisplayFunction:Ec},{id:71,title:"S3 API Request Error Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-22",xAxisFormatter:je},{id:76,title:"Node Memory Usage",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-23",xAxisFormatter:je,yAxisFormatter:ce},{id:74,title:"Drive Used Capacity",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-24",xAxisFormatter:je,yAxisFormatter:ce},{id:82,title:"Drives Free Inodes",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-25",disableYAxis:!0,xAxisFormatter:je},{id:11,title:"Node Syscalls",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-26",yAxisFormatter:Ac,xAxisFormatter:je},{id:8,title:"Node File Descriptors",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-27",yAxisFormatter:Ac,xAxisFormatter:je},{id:65,title:"Total S3 Traffic Inbound",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-28",labelDisplayFunction:ce},{id:64,title:"Total S3 Traffic Outbound",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-29",labelDisplayFunction:ce}],Ic=function(e,t){if(0===e.length)return["","0"];switch(t){case"mean":var a=e.reduce((function(e,t){return e+parseFloat(t[1])}),0);return["",Math.floor(a/e.length).toString()];default:var n=e.sort((function(e,t){return e[0]-t[0]}));return n[n.length-1]}},Mc=function(e,t){if(!e)return t;var a=e.type;switch(t.type){case dc.singleValue:if("stat"===a||"singlestat"===a){var n=Z()(e,"targets[0].result[0].values",[]);null===n&&(n=[]);var c=Z()(e,"options.reduceOptions.calcs[0]","lastNotNull"),i=Ic(n,c),r=t.labelDisplayFunction?t.labelDisplayFunction(i[1]):i[1];return Object(j.a)(Object(j.a)({},t),{},{data:r})}break;case dc.pieChart:if("gauge"===a){var o=Z()(e,"targets[0].result",[]);null===o&&(o=[]);var s=Z()(e,"options.reduceOptions.calcs[0]","lastNotNull"),l=o.length>0?o[0].values:[],d=Ic(l,s),b=o.map((function(e){var t=Z()(e,"values",[]),a=Object.keys(e.metric),n=t.sort((function(e,t){return e[0]-t[0]})),c=e.metric[a[0]],i=n[n.length-1];return{name:c,value:parseInt(i)}})),u=t.labelDisplayFunction?t.labelDisplayFunction(d[1]):d[1];return Object(j.a)(Object(j.a)({},t),{},{data:b,innerLabel:u})}break;case dc.linearGraph:if("graph"===a){var m=Z()(e,"targets",[]);null===m&&(m=[]);var h=[],p=[];m.forEach((function(e,t){var a=Z()(e,"result",[]),n=e.legendFormat;null===a&&(a=[]),a.forEach((function(e){var a=function(e,t){var a=Object.keys(e),n=new RegExp("{{(".concat(a.join("|"),")}}"),"g"),c=t.replace(n,(function(t){var a=t.replace(/({{|}})/g,"");return e[a]})),i=(c.match(/{{/g)||[]).length,r=(c.match(/}}/g)||[]).length,o=c.replace(/{{(.*?)}}/g,"");return i===r&&0!==i&&0!==r&&(a.forEach((function(t){c=c.replace(t,e[t])})),o=c),o}(e.metric,n),c="key_".concat(t).concat(a);h.push({dataKey:c,keyLabel:a,lineColor:"",fillColor:""});var i=Z()(e,"values",[]);null===i&&(i=[]),i.forEach((function(e){var t=p.findIndex((function(t){return t.name===e[0]}));if(-1===t){var a={name:e[0]};a[c]=e[1],p.push(a)}else p[t][c]=e[1]}))}))}));var O=h.sort((function(e,t){return e.keyLabelt.keyLabel?1:0})).map((function(e,t){return Object(j.a)(Object(j.a)({},e),{},{lineColor:Tc[t]||he(e.keyLabel),fillColor:Tc[t]||he(e.keyLabel)})})),g=p.sort((function(e,t){return e.name-t.name}));return Object(j.a)(Object(j.a)({},t),{},{widgetConfiguration:O,data:g})}break;case dc.barChart:if("bargauge"===a){var f=Z()(e,"targets[0].result",[]);null===f&&(f=[]);var x=function(e,t){return e[0]-t[0]},v=[];return v=t.customStructure?t.customStructure.map((function(e){var t=f.find((function(t){var a=Object.keys(t.metric);return t.metric[a[0]]===e.originTag})),a=Z()(t,"values",[]).sort(x),n=a[a.length-1]||["","0"];return{name:e.displayTag,a:parseInt(n[1])}})):f.map((function(e){var t=Object.keys(e.metric),a=e.metric[t[0]],n=Z()(e,"values",[]).sort(x),c=n[n.length-1]||["","0"];return{name:a,a:parseInt(c[1])}})),Object(j.a)(Object(j.a)({},t),{},{data:v})}break;case dc.singleRep:if("stat"===a){var y=Z()(e,"targets[0].result[0].values",[]);null===y&&(y=[]);var S=Z()(e,"options.reduceOptions.calcs[0]","lastNotNull"),C=Ic(y,S),k=y.sort((function(e,t){return e[0]-t[0]})),N=[];1===k.length&&N.push({value:0}),k.forEach((function(e){N.push({value:parseInt(e[1])})}));var w=t.labelDisplayFunction?t.labelDisplayFunction(C[1]):C[1];return Object(j.a)(Object(j.a)({},t),{},{data:N,innerLabel:w})}}return t},Fc=function(e){localStorage.setItem(Nc,btoa(JSON.stringify(e)))},Dc=Object(s.b)(null,{displayErrorMessage:V}),Lc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{contentContainer:Object(j.a)(Object(j.a)({},Ke.contentContainer),{},{fontWeight:700,color:"#072045",fontSize:18,textAlign:"center"}),loadingAlign:{width:"100%",paddingTop:"15px",textAlign:"center",margin:"auto"}}))}))(Dc((function(e){var t=e.title,a=e.panelItem,i=e.timeStart,r=e.timeEnd,o=e.displayErrorMessage,s=e.classes,l=Object(c.useState)(!0),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1];return Object(c.useEffect)((function(){if(b){var e=0;if(null!==i&&null!==r){var t=r.unix()-i.unix(),n=Math.floor(t/60);e=n<1?15:n}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(a.id,"/?step=").concat(e,"&").concat(null!==i?"&start=".concat(i.unix()):"").concat(null!==i&&null!==r?"&":"").concat(null!==r?"end=".concat(r.unix()):"")).then((function(e){var t=Mc(e,a);O(t.data),j(!1)})).catch((function(e){o(e),j(!1)}))}}),[b,a,r,i,o]),Object(n.jsxs)("div",{className:s.singleValueContainer,children:[Object(n.jsx)("div",{className:s.titleContainer,children:t}),b&&Object(n.jsx)("div",{className:s.loadingAlign,children:Object(n.jsx)(S.a,{})}),!b&&Object(n.jsx)("div",{className:s.contentContainer,children:p})]})}))),Bc=a(999),Rc=a(982),Pc=a(986),zc=a(224),Kc=a(225),Uc=a(417),Wc=a(232),Vc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Ue))}))((function(e){var t=e.active,a=e.payload,c=e.label,i=e.linearConfiguration,r=e.yAxisFormatter,o=e.classes;return t?Object(n.jsxs)("div",{className:o.customTooltip,children:[Object(n.jsx)("div",{className:o.timeStampTitle,children:je(c,!0)}),a&&a.map((function(e,t){return Object(n.jsxs)("div",{className:o.labelContainer,children:[Object(n.jsx)("div",{className:o.labelColor,style:{backgroundColor:i[t].lineColor}}),Object(n.jsx)("div",{className:o.itemValue,children:Object(n.jsxs)("span",{className:o.valueContainer,children:[i[t].keyLabel,":"," ",r(e.value)]})})]},"lbPl-".concat(t,"-").concat(i[t].keyLabel))}))]}):null})),Gc=Object(s.b)(null,{displayErrorMessage:V}),qc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{containerElements:{display:"flex",flexDirection:"column",height:"calc(100% - 18px)"},chartCont:{position:"relative",flexGrow:1,minHeight:"65%",height:1},legendChart:{display:"flex",flexWrap:"wrap",flex:"0 1 auto",maxHeight:"35%",margin:0,overflowY:"auto",position:"relative",textAlign:"center"},loadingAlign:{margin:"auto"}}))}))(Gc((function(e){var t=e.classes,a=e.title,r=e.displayErrorMessage,o=e.timeStart,s=e.timeEnd,l=e.panelItem,d=e.hideYAxis,b=void 0!==d&&d,j=e.yAxisFormatter,m=void 0===j?function(e){return e}:j,h=e.xAxisFormatter,p=void 0===h?function(e){return e}:h,O=e.panelWidth,g=void 0===O?0:O,f=Object(c.useState)(!0),x=Object(u.a)(f,2),v=x[0],y=x[1],C=Object(c.useState)([]),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(null),E=Object(u.a)(T,2),A=E[0],_=E[1];Object(c.useEffect)((function(){if(v){var e=0;if(null!==o&&null!==s){var t=s.unix()-o.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(l.id,"/?step=").concat(e,"&").concat(null!==o?"&start=".concat(o.unix()):"").concat(null!==o&&null!==s?"&":"").concat(null!==s?"end=".concat(s.unix()):"")).then((function(e){var t=Mc(e,l);w(t.data),_(t),y(!1)})).catch((function(e){r(e),y(!1)}))}}),[v,l,s,o,r]);var I=5;0!==g&&(I=g>400?5:g>350?10:g>300?15:g>250?20:30);var M=A?null===A||void 0===A?void 0:A.widgetConfiguration:[];return Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),Object(n.jsxs)("div",{className:t.containerElements,children:[v&&Object(n.jsx)(S.a,{className:t.loadingAlign}),!v&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("div",{className:t.chartCont,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Rc.a,{data:N,margin:{top:5,right:20,left:b?20:5,bottom:0},children:[Object(n.jsx)(Pc.a,{strokeDasharray:"3 3",strokeWidth:1,strokeOpacity:.5}),Object(n.jsx)(zc.a,{dataKey:"name",tickFormatter:function(e){return p(e)},interval:I,tick:{fontSize:"70%"},tickCount:10}),Object(n.jsx)(Kc.a,{domain:[0,function(e){return 4*e}],hide:b,tickFormatter:function(e){return m(e)},tick:{fontSize:"70%"}}),M.map((function(e,t){return Object(n.jsx)(Uc.a,{type:"monotone",dataKey:e.dataKey,stroke:e.lineColor,fill:e.fillColor,fillOpacity:.3},"area-".concat(e.dataKey,"-").concat(t.toString()))})),Object(n.jsx)(Wc.a,{content:Object(n.jsx)(Vc,{linearConfiguration:M,yAxisFormatter:m}),wrapperStyle:{zIndex:5e3}})]})})}),Object(n.jsx)("div",{className:t.legendChart,children:M.map((function(e,a){return Object(n.jsxs)("div",{className:t.singleLegendContainer,children:[Object(n.jsx)("div",{className:t.colorContainer,style:{backgroundColor:e.lineColor}}),Object(n.jsx)("div",{className:t.legendLabel,children:e.keyLabel})]},"legend-".concat(e.keyLabel,"-").concat(a.toString()))}))})]})]})]})}))),Hc=a(987),Yc=a(449),Qc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Ue))}))((function(e){var t=e.active,a=e.payload,c=e.label,i=e.barChartConfiguration,r=e.classes;return t?Object(n.jsxs)("div",{className:r.customTooltip,children:[Object(n.jsx)("div",{className:r.timeStampTitle,children:c}),a&&a.map((function(e,t){return Object(n.jsxs)("div",{className:r.labelContainer,children:[Object(n.jsx)("div",{className:r.labelColor,style:{backgroundColor:i[t].color}}),Object(n.jsx)("div",{className:r.itemValue,children:Object(n.jsx)("span",{className:r.valueContainer,children:e.value})})]},"pltiem-".concat(t,"-").concat(c))}))]}):null})),Zc=function(e){var t=e.x,a=e.y,c=e.payload;return Object(n.jsx)("text",{width:50,fontSize:"63%",textAnchor:"end",fill:"#333",transform:"translate(".concat(t,",").concat(a,")"),dy:3,children:c.value})},Jc=Object(s.b)(null,{displayErrorMessage:V}),$c=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{loadingAlign:{width:"100%",paddingTop:"15px",textAlign:"center",margin:"auto"}}))}))(Jc((function(e){var t=e.classes,a=e.title,i=e.panelItem,r=e.timeStart,o=e.timeEnd,s=e.displayErrorMessage,l=Object(c.useState)(!0),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)(null),f=Object(u.a)(g,2),x=f[0],v=f[1];Object(c.useEffect)((function(){if(b){var e=0;if(null!==r&&null!==o){var t=o.unix()-r.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(i.id,"/?step=").concat(e,"&").concat(null!==r?"&start=".concat(r.unix()):"").concat(null!==r&&null!==o?"&":"").concat(null!==o?"end=".concat(o.unix()):"")).then((function(e){var t=Mc(e,i);O(t.data),v(t),j(!1)})).catch((function(e){s(e),j(!1)}))}}),[b,i,o,r,s]);var y=x?x.widgetConfiguration:[];return Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),b&&Object(n.jsx)("div",{className:t.loadingAlign,children:Object(n.jsx)(S.a,{})}),!b&&Object(n.jsx)("div",{className:t.contentContainer,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Hc.a,{data:p,layout:"vertical",barCategoryGap:1,children:[Object(n.jsx)(zc.a,{type:"number",hide:!0}),Object(n.jsx)(Kc.a,{dataKey:"name",type:"category",interval:0,tick:Object(n.jsx)(Zc,{}),tickLine:!1,axisLine:!1,width:150}),y.map((function(e){return Object(n.jsx)(Yc.a,{dataKey:e.dataKey,fill:e.color,background:e.background},"bar-".concat(e.dataKey))})),Object(n.jsx)(Wc.a,{cursor:{fill:"rgba(255, 255, 255, 0.3)"},content:Object(n.jsx)(Qc,{barChartConfiguration:y})})]})})})]})}))),Xc=a(1003),ei=a(419),ti=a(226),ai=Object(s.b)(null,{displayErrorMessage:V}),ni=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{loadingAlign:{width:"100%",paddingTop:"15px",textAlign:"center",margin:"auto"}}))}))(ai((function(e){var t=e.classes,a=e.title,i=e.panelItem,r=e.timeStart,o=e.timeEnd,s=e.displayErrorMessage,l=Object(c.useState)(!0),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)([]),f=Object(u.a)(g,2),x=f[0],v=f[1],y=Object(c.useState)(null),C=Object(u.a)(y,2),k=C[0],N=C[1];Object(c.useEffect)((function(){if(b){var e=0;if(null!==r&&null!==o){var t=o.unix()-r.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(i.id,"/?step=").concat(e,"&").concat(null!==r?"&start=".concat(r.unix()):"").concat(null!==r&&null!==o?"&":"").concat(null!==o?"end=".concat(o.unix()):"")).then((function(e){var t=Mc(e,i);O(t.data),v(t.dataOuter),N(t),j(!1)})).catch((function(e){s(e),j(!1)}))}}),[b,i,o,r,s]);var w=k?k.widgetConfiguration:[],T=null===k||void 0===k?void 0:k.innerLabel,E=Z()(w,"innerChart.colorList",[]),A=Z()(w,"outerChart.colorList",[]);return Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),b&&Object(n.jsx)("div",{className:t.loadingAlign,children:Object(n.jsx)(S.a,{})}),!b&&Object(n.jsx)("div",{className:t.contentContainer,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Xc.a,{margin:{top:5,bottom:5},children:[x&&Object(n.jsx)(ei.a,{data:x,cx:"50%",cy:"50%",dataKey:"value",innerRadius:Z()(w,"outerChart.innerRadius",0),outerRadius:Z()(w,"outerChart.outerRadius","80%"),startAngle:Z()(w,"outerChart.startAngle",0),endAngle:Z()(w,"outerChart.endAngle",360),fill:"#201763",children:x.map((function(e,t){return Object(n.jsx)(ti.a,{fill:"undefined"==typeof A[t]?"#393939":A[t]},"cellOuter-".concat(t))}))}),p&&Object(n.jsx)(ei.a,{data:p,dataKey:"value",cx:"50%",cy:"50%",innerRadius:Z()(w,"innerChart.innerRadius",0),outerRadius:Z()(w,"innerChart.outerRadius","80%"),startAngle:Z()(w,"innerChart.startAngle",0),endAngle:Z()(w,"innerChart.endAngle",360),fill:"#201763",children:p.map((function(e,t){return Object(n.jsx)(ti.a,{fill:"undefined"==typeof E[t]?"#393939":E[t]},"cell-".concat(t))}))}),T&&Object(n.jsx)("text",{x:"50%",y:"50%",textAnchor:"middle",dominantBaseline:"middle",fontWeight:600,fontSize:14,children:T})]})})})]})}))),ci=Object(s.b)(null,{displayErrorMessage:V}),ii=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{loadingAlign:{width:"100%",paddingTop:"5px",textAlign:"center",margin:"auto"}}))}))(ci((function(e){var t=e.classes,a=e.title,i=e.panelItem,r=e.timeStart,o=e.timeEnd,s=e.displayErrorMessage,l=e.color,d=e.fillColor,b=Object(c.useState)(!0),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)([]),O=Object(u.a)(p,2),g=O[0],f=O[1],x=Object(c.useState)(null),v=Object(u.a)(x,2),y=v[0],C=v[1];return Object(c.useEffect)((function(){if(m){var e=0;if(null!==r&&null!==o){var t=o.unix()-r.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(i.id,"/?step=").concat(e,"&").concat(null!==r?"&start=".concat(r.unix()):"").concat(null!==r&&null!==o?"&":"").concat(null!==o?"end=".concat(o.unix()):"")).then((function(e){var t=Mc(e,i);C(t),f(t.data),h(!1)})).catch((function(e){s(e),h(!1)}))}}),[m,i,o,r,s]),Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),m&&Object(n.jsx)("div",{className:t.loadingAlign,children:Object(n.jsx)(S.a,{})}),!m&&Object(n.jsx)("div",{className:t.contentContainer,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Rc.a,{data:g,children:[Object(n.jsx)(Kc.a,{domain:[0,function(e){return 2*e}],hide:!0}),Object(n.jsx)(Uc.a,{type:"monotone",dataKey:"value",stroke:l,fill:d,fillOpacity:1}),Object(n.jsx)("text",{x:"50%",y:"50%",textAnchor:"middle",dominantBaseline:"middle",fontWeight:600,fontSize:18,fill:l,children:y?y.innerLabel:""})]})})})]})}))),ri=a(423),oi=a(60),si=a(995),li=a(424),di=a.n(li),bi=Object(w.a)((function(e){return Object(k.a)({dateSelectorOverride:{height:40,border:"#EAEDEE 1px solid",marginLeft:15,backgroundColor:"#fff",padding:"0 16px",borderRadius:5,"&.MuiInput-underline:hover:not(.Mui-disabled):before":{borderBottom:0},"&:hover":{borderColor:"#000","&:before, &:after":{borderColor:"transparent",borderBottom:0}},"&:before, &:after":{borderColor:"transparent",borderBottom:0},"& input":{fontSize:12,fontWeight:600,color:"#393939"}},parentDateOverride:{flexGrow:1}})}))((function(e){var t=e.value,a=e.onChange,c=e.classes;return Object(n.jsx)(oi.a,{utils:ri.a,children:Object(n.jsx)(si.a,{value:t,onChange:a,InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(di.a,{})}),className:c.dateSelectorOverride},label:"",ampm:!1,variant:"inline",className:c.parentDateOverride,format:"MMMM Do YYYY, h:mm a"})})})),ui=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{d:"M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"})})})},ji=Object(s.b)(null,{displayErrorMessage:V}),mi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Me),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})),{},{widgetsContainer:{height:"calc(100vh - 250px)",paddingBottom:235},syncButton:{"&.MuiButton-root .MuiButton-iconSizeMedium > *:first-child":{fontSize:18}},actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"0 10px"})}))}))(ji((function(e){var t=e.classes,a=e.displayErrorMessage,i=Object(c.useState)(null),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(null),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(_c),v=Object(u.a)(f,2),y=v[0],S=v[1],C=function(e){var t=localStorage.getItem(Nc);if(!t)return wc;var a=JSON.parse(atob(t));return 0===a.length||a.length>0&&!a[0].minW||0!==e&&a.length!==e?wc:a}(y.length),k=Object(c.useCallback)((function(e){var t=e/8+5,a=function(e,a){switch(e.type){case dc.singleValue:return Object(n.jsx)(Lc,{title:e.title,panelItem:e,timeStart:o,timeEnd:b});case dc.pieChart:return Object(n.jsx)(ni,{title:e.title,panelItem:e,timeStart:o,timeEnd:b});case dc.linearGraph:return Object(n.jsx)(qc,{title:e.title,panelItem:e,timeStart:o,timeEnd:b,hideYAxis:e.disableYAxis,xAxisFormatter:e.xAxisFormatter,yAxisFormatter:e.yAxisFormatter,panelWidth:C[a]?t*C[a].w:t});case dc.barChart:return Object(n.jsx)($c,{title:e.title,panelItem:e,timeStart:o,timeEnd:b});case dc.singleRep:var c=e.fillColor?e.fillColor:e.color;return Object(n.jsx)(ii,{title:e.title,panelItem:e,timeStart:o,timeEnd:b,color:e.color,fillColor:c});default:return null}};return y.map((function(e,t){return Object(n.jsx)("div",{children:a(e,t)},e.layoutIdentifier)}))}),[y,C,b,o]),N=Object(c.useCallback)((function(){var e=0;if(null!==o&&null!==b){var t=b.unix()-o.unix(),n=Math.floor(t/60);e=n<1?15:n}pe.invoke("GET","/api/v1/admin/info?step=".concat(e,"&").concat(null!==o?"&start=".concat(o.unix()):"").concat(null!==o&&null!==b?"&":"").concat(null!==b?"end=".concat(b.unix()):"")).then((function(e){if(e.widgets){var t=(n=e.widgets,_c.map((function(e){var t=n.find((function(t){return t.title.toLowerCase().trim()===e.title.toLowerCase().trim()}));return Mc(t,e)})));S(t)}else a("Widget information could not be retrieved at this time. Please try again");var n;O(!1)})).catch((function(e){a(e),O(!1)}))}),[o,b,a]);return Object(c.useEffect)((function(){p&&N()}),[p,N]),Object(n.jsxs)(x.a,{container:!0,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(t.actionsTray," ").concat(t.timeContainers),children:[Object(n.jsx)("span",{className:t.label,children:"Start Time"}),Object(n.jsx)(bi,{value:o,onChange:s}),Object(n.jsx)("span",{className:t.label,children:"End Time"}),Object(n.jsx)(bi,{value:b,onChange:j}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",onClick:function(){O(!0)},startIcon:Object(n.jsx)(ui,{}),className:t.syncButton,children:"Sync"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.widgetsContainer,children:Object(n.jsx)(Pt.a,{style:{width:"100%",height:"auto",paddingBottom:45},children:function(e){var t=e.width,a=e.height,c=a<600?600:a;c>380&&(c=480);var i=t>1920?1920:t;return Object(n.jsx)(kc.a,{width:i,cols:8,containerPadding:[10,10],onLayoutChange:Fc,layout:C,rowHeight:c/6,style:{margin:"0 auto",width:i},children:k(t)})}})})]})}))),hi=function(){return Object(n.jsxs)(rt.a,{viewBox:"0 0 15.834 17.375",children:[Object(n.jsx)("defs",{children:Object(n.jsxs)("linearGradient",{id:"a",y1:"0.5",x2:"1",y2:"0.5",gradientUnits:"objectBoundingBox",children:[Object(n.jsx)("stop",{offset:"0.044",stopColor:"#362585"}),Object(n.jsx)("stop",{offset:"0.301",stopColor:"#281b6f"}),Object(n.jsx)("stop",{offset:"1",stopColor:"#1e1560"})]})}),Object(n.jsxs)("g",{transform:"translate(0 0.375)",children:[Object(n.jsx)("circle",{style:{opacity:.1,fill:"url(#a)"},cx:"6.625",cy:"6.625",r:"6.625",transform:"translate(0 3.75)"}),Object(n.jsxs)("g",{transform:"translate(3.092)",children:[Object(n.jsx)("ellipse",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.75px"},cx:"6.183",cy:"1.244",rx:"6.183",ry:"1.244",transform:"translate(0)"}),Object(n.jsx)("path",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.75px"},d:"M-3722.174,1225.225l-1.687,10.292a.858.858,0,0,1-.578.669,12.182,12.182,0,0,1-3.918.647,12.187,12.187,0,0,1-3.894-.639.878.878,0,0,1-.6-.678q-.843-5.145-1.687-10.291",transform:"translate(3734.541 -1223.981)"})]})]})]})},pi=function(){return Object(n.jsxs)(rt.a,{viewBox:"0 0 18.344 17.009",children:[Object(n.jsx)("defs",{children:Object(n.jsxs)("linearGradient",{id:"a",y1:"0.5",x2:"1",y2:"0.5",gradientUnits:"objectBoundingBox",children:[Object(n.jsx)("stop",{offset:"0.044",stopColor:"#362585"}),Object(n.jsx)("stop",{offset:"0.301",stopColor:"#281b6f"}),Object(n.jsx)("stop",{offset:"1",stopColor:"#1e1560"})]})}),Object(n.jsxs)("g",{transform:"translate(0 0.25)",children:[Object(n.jsx)("ellipse",{style:{opacity:.1,fill:"url(#a)"},cx:"7.462",cy:"7.462",rx:"7.462",ry:"7.462",transform:"translate(0 1.835)"}),Object(n.jsx)("rect",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.5px"},width:"9.323",height:"9.323",transform:"translate(4.083)"}),Object(n.jsx)("rect",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.5px"},width:"8.223",height:"8.223",transform:"translate(9.871 5.307)"})]})]})},Oi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})),{},{paper:{padding:e.spacing(2),display:"flex",overflow:"auto",flexDirection:"column",border:"#eaedee 1px solid",borderRadius:5,boxShadow:"none"},fixedHeight:{height:165,minWidth:247,marginRight:20,padding:"25px 28px","& svg":{maxHeight:18}},consumptionValue:{color:"#000000",fontSize:"60px",fontWeight:"bold"},icon:{marginRight:10,color:"#777777"},notationContainer:{display:"flex"},dashboardBG:{width:390,height:255,zIndex:500,position:"absolute",backgroundSize:"fill",backgroundImage:"url(/images/BG_IllustrationDarker.svg)",backgroundPosition:"right bottom",right:0,bottom:0,backgroundRepeat:"no-repeat"},dashboardContainer:{zIndex:600,position:"absolute"},elementTitle:{fontWeight:500,color:"#777777",fontSize:14,marginTop:-9},smallUnit:{fontSize:20}}))}))((function(e){var t=e.classes,a=e.usage,i=Object(ve.a)(t.paper,t.fixedHeight),r=function(e){return void 0===e?0:e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")};return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("div",{className:t.dashboardBG}),Object(n.jsx)(x.a,{container:!0,className:t.dashboardContainer,children:Object(n.jsx)(x.a,{container:!0,spacing:3,className:t.container,children:Object(n.jsxs)(x.a,{item:!0,className:t.notationContainer,children:[Object(n.jsxs)(C.a,{className:i,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,children:Object(n.jsx)(hi,{})}),Object(n.jsx)(x.a,{item:!0,children:Object(n.jsx)(v.a,{className:t.elementTitle,children:"All buckets"})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:a?r(a.buckets):0})]}),Object(n.jsxs)(C.a,{className:i,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,children:Object(n.jsx)(On,{})}),Object(n.jsx)(x.a,{item:!0,children:Object(n.jsx)(v.a,{className:t.elementTitle,children:"Usage"})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:a?function(e){if(void 0===e)return"0";var a=ce(e).split(" ");return 2!==a.length?a.join(" "):Object(n.jsxs)(c.Fragment,{children:[a[0],Object(n.jsx)("span",{className:t.smallUnit,children:a[1]})]})}(a.usage+""):0})]}),Object(n.jsxs)(C.a,{className:i,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,children:Object(n.jsx)(pi,{})}),Object(n.jsx)(x.a,{item:!0,children:Object(n.jsxs)(v.a,{className:t.elementTitle,children:[" ","Total Objects"]})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:a?r(a.objects):0})]})]})})})]})})),gi=Object(s.b)(null,{displayErrorMessage:V}),fi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(gi((function(e){var t=e.classes,a=e.displayErrorMessage,i=Object(c.useState)(!0),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(null),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useCallback)((function(){pe.invoke("GET","/api/v1/admin/info").then((function(e){j(e),s(!1)})).catch((function(e){a(e),s(!1)}))}),[j,s,a]);Object(c.useEffect)((function(){o&&m()}),[o,m]);var h=Z()(b,"widgets",null);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Dashboard"}),Object(n.jsx)(x.a,{container:!0,children:o?Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container,children:Object(n.jsx)(y.a,{})}):Object(n.jsx)(c.Fragment,{children:null!==h?Object(n.jsx)(mi,{}):Object(n.jsx)(Oi,{usage:b})})})]})}))),xi=a(914),vi=a(989),yi=a(425),Si=a.n(yi),Ci=a(988),ki=a(990),Ni=a(959),wi=a(991),Ti=a.p+"static/media/minio_console_logo.0837460e.svg",Ei=a.p+"static/media/minio_operator_logo.1312b7c9.svg",Ai=[{label:"",group:"common",collapsible:!1},{label:"User",group:"User",collapsible:!0},{label:"Admin",group:"Admin",collapsible:!0},{label:"Tools",group:"Tools",collapsible:!0},{label:"Operator",group:"Operator",collapsible:!1},{label:"",group:"License",collapsible:!1}],_i=a(428),Ii=a.n(_i),Mi=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 11",children:[Object(n.jsx)("path",{fill:"#fff",d:"M11 11H0V2h11v9zM2 8v1h7V8zm0-3v1h5V5z"}),Object(n.jsxs)("g",{fill:"#07274a",stroke:"#fdfdfd",strokeWidth:"0.5",transform:"translate(7)",children:[Object(n.jsx)("circle",{cx:"3",cy:"3",r:"3",stroke:"none"}),Object(n.jsx)("circle",{cx:"3",cy:"3",r:"2.75",fill:"none"})]}),Object(n.jsx)("path",{fill:"none",stroke:"#fff",strokeWidth:"0.5",d:"M8.73 2.794l.954.953 1.471-1.471"})]})})},Fi=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12.122 10.571",children:Object(n.jsxs)("g",{transform:"translate(0 0.5)",children:[Object(n.jsx)("path",{style:{fill:"none",stroke:"rgba(255,255,255,0.8)"},d:"M4816.27,3755.205v-2.939h8.539v9.571h-8.539v-2.932",transform:"translate(-4813.187 -3752.266)"}),Object(n.jsx)("path",{style:{fill:"none",stroke:"rgba(255,255,255,0.8)"},d:"M4813.187,3757.052h8.081",transform:"translate(-4813.187 -3752.266)"}),Object(n.jsx)("path",{style:{fill:"none",stroke:"rgba(255,255,255,0.8)"},d:"M4806.5,3756.511l2.265,2.063-2.265,2.063",transform:"translate(-4800.808 -3753.863)"})]})})})},Di=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsxs)("g",{transform:"translate(-518 -361)",children:[Object(n.jsx)("path",{d:"M-126,0V10h10V0Zm1.5,8.5V2.95h7V8.5Z",transform:"translate(644 361)"}),Object(n.jsx)("rect",{width:"2",height:"1",transform:"translate(520.272 364.772)"})]})})})},Li=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10.014 9.993",children:[Object(n.jsx)("path",{className:"a",d:"M9.162,5.971h0L8.192,5,9.346,3.846a2.257,2.257,0,0,0,0-3.192,2.311,2.311,0,0,0-3.192,0L5,1.808,4.029.837,3.846.654a2.311,2.311,0,0,0-3.192,0,2.257,2.257,0,0,0,0,3.192l.184.183h0L1.808,5,.654,6.154A2.257,2.257,0,0,0,3.846,9.346L5,8.192l.971.971.183.183A2.257,2.257,0,0,0,9.346,6.154Zm-2.29-4.6a1.27,1.27,0,0,1,1.757,0,1.242,1.242,0,0,1,0,1.757L7.475,4.283,5.717,2.525Zm-5.5,1.757A1.243,1.243,0,0,1,3.129,1.371l.183.183L1.555,3.312Zm1.757,5.5a1.27,1.27,0,0,1-1.757,0,1.242,1.242,0,0,1,0-1.757L2.525,5.717,4.283,7.475Zm2.843-.9-.254-.253L2.525,4.283l-.253-.254L4.029,2.272l.254.253L7.475,5.717l.253.254Zm2.657.9a1.271,1.271,0,0,1-1.757,0l-.183-.183L8.446,6.688l.183.183h0a1.241,1.241,0,0,1,0,1.757Z",transform:"translate(0.007 -0.014)"}),Object(n.jsx)("circle",{cx:"0.5",cy:"0.5",r:"0.5",transform:"translate(4.507 4.486)"}),Object(n.jsx)("circle",{cx:"0.5",cy:"0.5",r:"0.5",transform:"translate(3.507 3.486)"}),Object(n.jsx)("circle",{cx:"0.5",cy:"0.5",r:"0.5",transform:"translate(5.507 5.486)"})]})})},Bi=a(426),Ri=a.n(Bi),Pi=a(427),zi=a.n(Pi),Ki=Object(s.b)((function(e){return{open:e.system.loggedIn,operatorMode:e.system.operatorMode}}),{userLoggedIn:P}),Ui=Ki(Object(w.a)((function(e){return Object(k.a)({logo:{paddingTop:25,marginBottom:30,paddingLeft:45,"& img":{width:120}},menuList:{"& .active":{borderTopLeftRadius:2,borderBottomLeftRadius:2,color:"#fff",backgroundColor:"rgba(255, 255, 255, .18)","& .MuiSvgIcon-root":{color:"white"},"& .MuiTypography-root":{color:"#fff",fontWeight:700}},"& .MuiSvgIcon-root":{fontSize:16,color:"rgba(255, 255, 255, 0.8)",maxWidth:14},"& .MuiListItemIcon-root":{minWidth:25},"& .MuiTypography-root":{fontSize:12,color:"rgba(255, 255, 255, 0.8)"},"& .MuiListItem-gutters":{paddingRight:0,fontWeight:300},"& .MuiListItem-root":{padding:"2px 0 2px 16px",marginBottom:8,marginLeft:30,width:"calc(100% - 30px)"},"& .MuiCollapse-container .MuiCollapse-wrapper .MuiCollapse-wrapperInner .MuiDivider-root":{backgroundColor:"rgba(112,112,112,0.5)",marginBottom:12,height:1}},extraMargin:{"&.MuiListItem-gutters":{marginLeft:5}},groupTitle:{color:"#fff",fontSize:10,textTransform:"uppercase",fontWeight:700,marginBottom:3,cursor:"pointer",userSelect:"none",display:"flex",justifyContent:"space-between"},subTitleMenu:{fontWeight:700,marginLeft:10,"&.MuiTypography-root":{fontSize:13,color:"#fff"}},selectorArrow:{marginRight:20,marginTop:1,display:"inline-block",width:0,height:0,borderStyle:"solid",borderWidth:"4px 4px 0 4px",borderColor:"rgba(255, 255, 255, .29) transparent transparent transparent",transform:"rotateZ(0deg)",transitionDuration:"0.2s"},selectorArrowOpen:{transform:"rotateZ(180deg)"}})}))((function(e){var t=e.userLoggedIn,a=e.classes,r=e.pages,o=e.operatorMode,s=Object(c.useState)(function(){var e=[];return Ai.forEach((function(t){t.collapsible&&(e[t.group]=!0)})),e}()),l=Object(u.a)(s,2),d=l[0],m=l[1],h=[{group:"common",type:"item",component:qt.b,to:"/dashboard",name:"Dashboard",icon:Object(n.jsx)(dt,{})},{group:"User",type:"item",component:qt.b,to:"/object-browser",name:"Object Browser",icon:Object(n.jsx)(Si.a,{})},{group:"User",type:"item",component:qt.b,to:"/account",name:"Account",icon:Object(n.jsx)(jt,{})},{group:"Admin",type:"item",component:qt.b,to:"/buckets",name:"Buckets",icon:Object(n.jsx)(bt,{})},{group:"Admin",type:"item",component:qt.b,to:"/users",name:"Users",icon:Object(n.jsx)(ut,{})},{group:"Admin",type:"item",component:qt.b,to:"/groups",name:"Groups",icon:Object(n.jsx)(mt,{})},{group:"Admin",type:"item",component:qt.b,to:"/policies",name:"IAM Policies",icon:Object(n.jsx)(ht,{})},{group:"Tools",type:"item",component:qt.b,to:"/logs",name:"Logs",icon:Object(n.jsx)(Di,{})},{group:"Tools",type:"item",component:qt.b,to:"/watch",name:"Watch",icon:Object(n.jsx)(ft,{})},{group:"Tools",type:"item",component:qt.b,to:"/trace",name:"Trace",icon:Object(n.jsx)(pt,{})},{group:"Tools",type:"item",component:qt.b,to:"/heal",name:"Heal",icon:Object(n.jsx)(Li,{})},{group:"Tools",type:"item",component:qt.b,to:"/health-info",name:"Diagnostic",icon:Object(n.jsx)(Ri.a,{})},{group:"Admin",type:"item",component:qt.b,to:"/settings",name:"Settings",icon:Object(n.jsx)(Ot,{})},{group:"Operator",type:"item",component:qt.b,to:"/tenants",name:"Tenants",icon:Object(n.jsx)(gt,{})},{group:"Operator",type:"item",component:qt.b,to:"/storage",name:"Storage",icon:Object(n.jsx)(zi.a,{})}],p=r.reduce((function(e,t){return e[t]=!0,e}),{}),O={group:"License",type:"item",component:qt.b,to:"/documentation",name:"Documentation",icon:Object(n.jsx)(Ii.a,{}),forceDisplay:!0};p.hasOwnProperty("/tenants")?h.push({group:"Operator",type:"item",component:qt.b,to:"/license",name:"License",icon:Object(n.jsx)(Mi,{})},Object(j.a)(Object(j.a)({},O),{},{group:"Operator",onClick:function(e){e.preventDefault(),window.open("https://docs.min.io/?ref=".concat(o?"op":"con"),"_blank")}})):h.push({group:"License",type:"item",component:qt.b,to:"/license",name:"License",icon:Object(n.jsx)(Mi,{})},Object(j.a)(Object(j.a)({},O),{},{group:"License",onClick:function(e){e.preventDefault(),window.open("https://docs.min.io/?ref=".concat(o?"op":"con"),"_blank")}}));var g=h.filter((function(e){return p[e.to]||e.forceDisplay||"item"!==e.type}));return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("div",{className:a.logo,children:Object(n.jsx)("img",{src:o?Ei:Ti,alt:"logo"})}),Object(n.jsxs)(Ni.a,{className:a.menuList,children:[Ai.map((function(e,t){var c=(g||[]).filter((function(t){return t.group===e.group}));return 0===c.filter((function(e){return"title"!==e.type})).length?null:Object(n.jsxs)(i.a.Fragment,{children:[""!==e.label&&Object(n.jsxs)(xi.a,{className:a.groupTitle,onClick:function(){e.collapsible&&function(e){var t=Object(j.a)({},d);t[e]=!t[e],m(t)}(e.group)},children:[Object(n.jsx)("span",{children:e.label}),e.collapsible&&Object(n.jsx)("span",{className:"".concat(a.selectorArrow," ").concat(d[e.group]?a.selectorArrowOpen:"")})]}),Object(n.jsxs)(Ci.a,{in:!e.collapsible||d[e.group],timeout:"auto",unmountOnExit:!0,children:[c.map((function(e){switch(e.type){case"item":return Object(n.jsxs)(xi.a,{button:!0,onClick:e.onClick,component:e.component,to:e.to,className:e.extraMargin?a.extraMargin:null,children:[e.icon&&Object(n.jsx)(vi.a,{children:e.icon}),e.name&&Object(n.jsx)(ki.a,{primary:e.name})]},e.to);case"title":return Object(n.jsx)(xi.a,{component:e.component,className:a.subTitleMenu,children:e.name},e.name);default:return null}})),Object(n.jsx)(wi.a,{})]},"menuGroup-".concat(e.group))]},"menuElem-".concat(t.toString()))})),Object(n.jsxs)(xi.a,{button:!0,onClick:function(){var e=function(){ie(),t(!1),localStorage.setItem("userLoggedIn",""),b.push("/login")};pe.invoke("POST","/api/v1/logout").then((function(){e()})).catch((function(t){console.log(t),e()}))},children:[Object(n.jsx)(vi.a,{children:Object(n.jsx)(Fi,{})}),Object(n.jsx)(ki.a,{primary:"Logout"})]})]})]})}))),Wi={setModalErrorSnackMessage:q},Vi=Object(s.b)(null,Wi),Gi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({jsonPolicyEditor:{minHeight:400,width:"100%"},buttonContainer:{textAlign:"right"},infoDetails:{color:"#393939",fontSize:12,fontStyle:"italic",marginBottom:"8px"},containerScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto"}},we))}))(Vi((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.setModalErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),f=O[0],v=O[1];Object(c.useEffect)((function(){l&&pe.invoke("POST","/api/v1/service-accounts",{policy:m}).then((function(e){d(!1),i(e)})).catch((function(e){d(!1),r(e)}))}),[l,d,r,m,i]);return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){i(null)},title:"Create Service Account",children:Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),d(!0)}(e)},children:[Object(n.jsxs)(x.a,{container:!0,className:t.containerScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.infoDetails,children:"Service Accounts inherit the policy explicitly attached to the parent user and the policy attached to each group in which the parent user has membership. You can specify an optional JSON-formatted policy below to restrict the Service Account access to a subset of actions and resources explicitly allowed for the parent user. You cannot modify the Service Account optional policy after saving."})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"locking",id:"locking",name:"locking",checked:f,onChange:function(e){v(e.target.checked)},label:"Restrict with policy",indicatorLabels:["On","Off"]})}),f&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(bc,{value:m,onBeforeChange:function(e,t,a){h(a)}})})]}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){h("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l,children:"Create"})]}),l&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})]})})}))),qi={setErrorSnackMessage:V},Hi=Object(s.b)(null,qi),Yi=Object(w.a)((function(e){return Object(k.a)({wrapText:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"}})}))(Hi((function(e){var t=e.classes,a=e.closeDeleteModalAndRefresh,i=e.deleteOpen,r=e.selectedServiceAccount,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];Object(c.useEffect)((function(){d&&pe.invoke("DELETE","/api/v1/service-accounts/".concat(r)).then((function(){b(!1),a(!0)})).catch((function(e){b(!1),o(e)}))}),[d,a,r,o]);return Object(n.jsxs)(ha.a,{open:i,onClose:function(){a(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete ServiceAccount"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete service account"," ",Object(n.jsx)("b",{className:t.wrapText,children:r}),"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){a(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){null!=r&&b(!0)},color:"secondary",autoFocus:!0,children:"Delete"})]})]})}))),Qi=Object(w.a)((function(e){return Object(k.a)({warningBlock:{color:"red"},buttonContainer:{textAlign:"right"},credentialsPanel:{overflowY:"auto",maxHeight:350}})}))((function(e){var t=e.classes,a=e.newServiceAccount,c=e.open,r=e.closeModal,o=e.entity;if(!a)return null;var s=Z()(a,"console",null);return Object(n.jsx)(xa,{modalOpen:c,onClose:function(){r()},title:"New ".concat(o," Created"),children:Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:["A new ",o," has been created with the following details:",s&&Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.credentialsPanel,children:[Object(n.jsx)("strong",{children:"Console Credentials"}),Array.isArray(s)&&s.map((function(e,t){return Object(n.jsxs)("ul",{children:[Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Access Key:"})," ",e.accessKey]}),Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Secret Key:"})," ",e.secretKey]})]},"creds-item-".concat(t.toString()))})),!Array.isArray(s)&&Object(n.jsxs)("ul",{children:[Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Access Key:"})," ",s.accessKey]}),Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Secret Key:"})," ",s.secretKey]})]})]})}),Object(n.jsx)(v.a,{component:"p",variant:"body1",className:t.warningBlock,children:"Write these down, as this is the only time the secret will be displayed."})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)(g.a,{onClick:function(){var e={};if(s)if(Array.isArray(s)){var t=s.map((function(e){return{access_key:e.accessKey,secret_key:e.secretKey}}));e={console:Object($e.a)(t)}}else e={console:[{access_key:s.accessKey,secret_key:s.secretKey}]};!function(e,t){var a=document.createElement("a");a.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(t)),a.setAttribute("download",e),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a)}("credentials.json",JSON.stringify(Object(j.a)({},e)))},color:"primary",children:"Download"}),Object(n.jsx)(g.a,{onClick:function(){r()},color:"secondary",autoFocus:!0,children:"Done"})]})]})})})})),Zi=function(e,t){return e.accessKey>t.accessKey?1:e.accessKeyt.name?1:e.namet?1:e0&&m.length>0&&f.length>0),children:"Save"})}),k&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})}):null}))),nr=Object(s.b)(null,{displayErrorMessage:V}),cr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"480px",minWidth:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},imageIcon:{height:"100%"},iconRoot:{textAlign:"center"}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(nr((function(e){var t=e.classes,a=e.displayErrorMessage,r=e.changePassword,o=Object(c.useState)([]),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(!1),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(""),O=Object(u.a)(p,2),y=O[0],S=O[1],C=Object(c.useState)(!1),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(!1),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(null),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(!1),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(null),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!1),G=Object(u.a)(V,2),q=G[0],H=G[1];Object(c.useEffect)((function(){Y()}),[]),Object(c.useEffect)((function(){m&&pe.invoke("GET","/api/v1/service-accounts").then((function(e){var t=e.sort($i);h(!1),d(t)})).catch((function(e){a(e),h(!1)}))}),[m,h,d,a]);var Y=function(){h(!0)},Q=[{type:"delete",onClick:function(e){D(e),_(!0)}}],Z=l.filter((function(e){return e.toLowerCase().includes(y.toLowerCase())}));return Object(n.jsxs)(i.a.Fragment,{children:[N&&Object(n.jsx)(Gi,{open:N,closeModalAndRefresh:function(e){!function(e){if(w(!1),Y(),null!==e){var t={console:{accessKey:"".concat(e.accessKey),secretKey:"".concat(e.secretKey)}};W(t),P(!0)}}(e)}}),A&&Object(n.jsx)(Yi,{deleteOpen:A,selectedServiceAccount:F,closeDeleteModalAndRefresh:function(e){!function(e){_(!1),e&&Y()}(e)}}),R&&Object(n.jsx)(Qi,{newServiceAccount:U,open:R,closeModal:function(){P(!1),W(null)},entity:"Service Account"}),Object(n.jsx)(Ga,{label:"Account"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[r&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"h5",component:"h5",children:"Settings"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(ar,{open:q,closeModal:function(){return H(!1)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(er.a,{}),onClick:function(){return H(!0)},children:"Change Password"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsx)(wi.a,{}),Object(n.jsx)("br",{})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"h5",component:"h5",children:"Service Accounts"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Service Accounts",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){S(e.target.value)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){w(!0),D(null)},children:"Create service account"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{isLoading:m,records:Z,entityName:"Service Accounts",idField:"",columns:[{label:"Service Account",elementKey:""}],itemActions:Q})})]})})]})}))),ir=a(227),rr=a.n(ir),or={setModalErrorSnackMessage:q},sr=Object(s.b)(null,or),lr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#000",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#000"}}}},Me),Be))}))(sr((function(e){var t=e.classes,a=e.selectedGroups,r=e.setSelectedGroups,o=e.setModalErrorSnackMessage,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),g=Object(u.a)(O,2),v=g[0],S=g[1],k=Object(c.useCallback)((function(){pe.invoke("GET","/api/v1/groups").then((function(e){var t=Z()(e,"groups",[]);t||(t=[]),b(t.sort($i)),p(!1)})).catch((function(e){o(e),p(!1)}))}),[o]);Object(c.useEffect)((function(){p(!0)}),[]),Object(c.useEffect)((function(){h&&k()}),[h,k]);var N=a||[],w=d.filter((function(e){return e.includes(v)}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:t.paper,children:[h&&Object(n.jsx)(y.a,{}),null!=d&&d.length>0?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)("span",{className:t.actionsTitle,children:"Assign Groups"}),Object(n.jsx)(f.a,{placeholder:"Filter by Group",className:t.filterField,id:"search-resource",label:"",InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){S(e.target.value)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tableBlock,children:Object(n.jsx)(ma,{columns:[{label:"Group",elementKey:""}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(N);return n?c.push(a):c=c.filter((function(e){return e!==a})),r(c),c},selectedItems:N,isLoading:h,records:w,entityName:"Groups",idField:"",customPaperHeight:t.multiSelectTable})})]}):Object(n.jsx)("div",{className:t.noFound,children:"No Groups Available"})]})})})}))),dr={setModalErrorSnackMessage:q},br=Object(s.b)(null,dr),ur=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(br((function(e){var t=e.classes,a=e.closeModalAndRefresh,r=e.selectedUser,o=e.open,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)([]),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)([]),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useCallback)((function(){if(!r)return null;pe.invoke("GET","/api/v1/users/".concat(r.accessKey)).then((function(e){j(!1),O(e.accessKey),I(e.memberOf||[]),L(e.memberOf||[]),T("enabled"===e.status)})).catch((function(e){j(!1),s(e)}))}),[r,s]);Object(c.useEffect)((function(){null==r?(O(""),C(""),I([])):B()}),[r,B]);var R=""!==p.trim()&&(""!==S.trim()&&null===r||null!==r);return Object(n.jsxs)(xa,{onClose:function(){a()},modalOpen:o,title:null!==r?"Edit User":"Create User",children:[null!==r&&Object(n.jsx)("div",{className:t.floatingEnabled,children:Object(n.jsx)(Pa,{indicatorLabels:["Enabled","Disabled"],checked:w,value:"user_enabled",id:"user-status",name:"user-status",onChange:function(e){T(e.target.checked)},switchOnly:!0})}),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),null!==r?pe.invoke("PUT","/api/v1/users/".concat(r.accessKey),{status:w?"enabled":"disabled",groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})):pe.invoke("POST","/api/v1/users",{accessKey:p,secretKey:S,groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(Sa,{id:"accesskey-input",name:"accesskey-input",label:"Access Key",value:p,onChange:function(e){O(e.target.value)},disabled:null!==r}),null!==r?Object(n.jsx)(Za,{label:"Current Groups",content:D.join(", ")}):Object(n.jsx)(Sa,{id:"standard-multiline-static",name:"standard-multiline-static",label:"Secret Key",type:"password",value:S,onChange:function(e){C(e.target.value)},autoComplete:"current-password"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lr,{selectedGroups:_,setSelectedGroups:function(e){I(e)}})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){null===r?(O(""),C(""),I([])):I([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||!R,children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})]})}))),jr={setErrorSnackMessage:V},mr=Object(s.b)(null,jr)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedUser,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1];return null===i?Object(n.jsx)("div",{}):Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete User"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete user ",Object(n.jsx)("b",{children:i.accessKey}),"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){l||null!=i&&(d(!0),pe.invoke("DELETE","/api/v1/users/".concat(i.accessKey),{id:i.id}).then((function(e){d(!1),t(!0)})).catch((function(e){d(!1),r(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),hr={setModalErrorSnackMessage:q},pr=Object(s.b)(null,hr),Or=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(pr((function(e){var t=e.open,a=e.checkedUsers,r=e.closeModalAndRefresh,o=e.classes,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)([]),v=Object(u.a)(f,2),S=v[0],C=v[1];Object(c.useEffect)((function(){b&&(S.length>0?pe.invoke("PUT","/api/v1/users-groups-bulk",{groups:S,users:a}).then((function(){j(!1),O(!0)})).catch((function(e){j(!1),s(e)})):(j(!1),s("You need to select at least one group to assign")))}),[b,j,r,S,a,s]);return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){r(p)},title:p?"The selected users were added to the following groups.":"Add Users to Group",children:p?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(Za,{label:"Groups",content:S.join(", ")}),Object(n.jsx)(Za,{label:"Users",content:a.join(", ")})]}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{})]}):Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),j(!0)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.formScrollable,children:[Object(n.jsx)(Za,{label:"Selected Users",content:a.join(", ")}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lr,{selectedGroups:S,setSelectedGroups:C})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:o.clearButton,onClick:function(){C([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||S.length<1,children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),gr=Object(s.b)(null,{setModalErrorSnackMessage:q}),fr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#000",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#000"}}}},Me),Be))}))(gr((function(e){var t=e.classes,a=e.selectedPolicy,r=void 0===a?[]:a,o=e.setSelectedPolicy,s=e.setModalErrorSnackMessage,l=Object(c.useState)([]),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)(""),v=Object(u.a)(g,2),S=v[0],k=v[1],N=Object(c.useCallback)((function(){O(!0),pe.invoke("GET","/api/v1/policies?limit=1000").then((function(e){var t=null===e.policies?[]:e.policies;O(!1),j(t.sort(Ji))})).catch((function(e){O(!1),s(e)}))}),[s]);Object(c.useEffect)((function(){O(!0)}),[]),Object(c.useEffect)((function(){p&&N()}),[p,N]);var w=b.filter((function(e){return e.name.includes(S)}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:t.paper,children:[p&&Object(n.jsx)(y.a,{}),b.length>0?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)("span",{className:t.actionsTitle,children:"Assign Policies"}),Object(n.jsx)(f.a,{placeholder:"Filter by Policy",className:t.filterField,id:"search-resource",label:"",InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){k(e.target.value)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tableBlock,children:Object(n.jsx)(ma,{columns:[{label:"Policy",elementKey:"name"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(r);n?c.push(a):c=c.filter((function(e){return e!==a})),c=c.filter((function(e){return""!==e})),o(c)},selectedItems:r,isLoading:p,records:w,entityName:"Policies",idField:"name",customPaperHeight:t.multiSelectTable})})]}):Object(n.jsx)("div",{className:t.noFound,children:"No Policies Available"})]})})})}))),xr={setModalErrorSnackMessage:q},vr=Object(s.b)(null,xr),yr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},we),{},{buttonContainer:{textAlign:"right"}}))}))(vr((function(e){var t=e.classes,a=e.closeModalAndRefresh,i=e.selectedUser,r=e.selectedGroup,o=e.setModalErrorSnackMessage,s=e.open,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)([]),v=Object(u.a)(f,2),S=v[0],C=v[1];Object(c.useEffect)((function(){if(s){if(null!==r)return void(r&&pe.invoke("GET","/api/v1/groups/".concat(r)).then((function(e){var t=Z()(e,"policy","");O(t.split(",")),C(t.split(","))})).catch((function(e){o(e),j(!1)})));var e=Z()(i,"policy",[]);O(e),C(e)}}),[s,r,i]);var k=Z()(i,"accessKey","");return Object(n.jsxs)(xa,{onClose:function(){a()},modalOpen:s,title:"Set Policies",children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Za,{label:"Selected ".concat(null!==r?"Group":"User"),content:null!==r?r:k})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Za,{label:"Current Policy",content:p.join(", ")})}),Object(n.jsx)(fr,{selectedPolicy:S,setSelectedPolicy:C}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){C(p)},children:"Clear"}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",disabled:b,onClick:function(){var e="user",t=null;null!==r?(e="group",t=r):null!==i&&(t=i.accessKey),j(!0),pe.invoke("PUT","/api/v1/set-policy/".concat(S),{entityName:t,entityType:e}).then((function(){j(!1),a()})).catch((function(e){j(!1),o(e)}))},children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})}))),Sr={setErrorSnackMessage:V},Cr=Object(s.b)(null,Sr),kr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Cr((function(e){var t=e.classes,a=e.setErrorSnackMessage,r=Object(c.useState)([]),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!1),j=Object(u.a)(d,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),v=O[0],y=O[1],S=Object(c.useState)(!1),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(null),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(!1),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(""),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)([]),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(!1),V=Object(u.a)(W,2),G=V[0],q=V[1],H=Object(c.useCallback)((function(){h(!0),pe.invoke("GET","/api/v1/users").then((function(e){var t=null===e.users?[]:e.users;h(!1),l(t.sort(Zi))})).catch((function(e){h(!1),a(e)}))}),[h,l,a]);Object(c.useEffect)((function(){H()}),[H]);var Y=s.filter((function(e){return e.accessKey.includes(B)})),Q=atob(localStorage.getItem("userLoggedIn")||""),Z=[{type:"view",onClick:function(e){b.push("/users/".concat(e.accessKey))}},{type:"delete",onClick:function(e){N(!0),A(e)},disableButtonFunction:function(e){return e===Q}}];return Object(n.jsxs)(i.a.Fragment,{children:[v&&Object(n.jsx)(ur,{open:v,selectedUser:E,closeModalAndRefresh:function(){y(!1),H()}}),G&&Object(n.jsx)(yr,{open:G,selectedUser:E,selectedGroup:null,closeModalAndRefresh:function(){q(!1),H()}}),k&&Object(n.jsx)(mr,{deleteOpen:k,selectedUser:E,closeDeleteModalAndRefresh:function(e){!function(e){N(!1),e&&H()}(e)}}),M&&Object(n.jsx)(Or,{open:M,checkedUsers:K,closeModalAndRefresh:function(e){!function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];F(!1),e&&U([])}(e)}}),Object(n.jsx)(Ga,{label:"Users"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Users",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){R(e.target.value)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(rr.a,{}),disabled:K.length<=0,onClick:function(){K.length>0&&F(!0)},children:"Add to Group"}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){y(!0),A(null)},children:"Create User"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:Z,columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(K);return n?c.push(a):c=c.filter((function(e){return e!==a})),U(c),c},selectedItems:K,isLoading:m,records:Y,entityName:"Users",idField:"accessKey"})})]})})]})}))),Nr=a(47),wr={setModalErrorSnackMessage:q},Tr=Object(s.b)(null,wr),Er=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(Tr((function(e){var t=e.classes,a=e.closeModalAndRefresh,r=e.selectedUser,o=e.open,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)([]),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useCallback)((function(){if(!r)return null;pe.invoke("GET","/api/v1/users/".concat(r)).then((function(e){j(!1),O(e.accessKey),I(e.memberOf||[]),T("enabled"===e.status)})).catch((function(e){j(!1),s(e)}))}),[r,s]);Object(c.useEffect)((function(){null==r?(O(""),C(""),I([])):M()}),[r,M]);var F=""!==p.trim()&&(""!==S.trim()&&null===r||null!==r);return Object(n.jsx)(xa,{onClose:function(){a()},modalOpen:o,title:"Set Groups",children:Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),null!==r?pe.invoke("PUT","/api/v1/users/".concat(r),{status:w?"enabled":"disabled",groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})):pe.invoke("POST","/api/v1/users",{accessKey:p,secretKey:S,groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.formScrollable,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lr,{selectedGroups:_,setSelectedGroups:function(e){I(e)}})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){null===r?(O(""),C(""),I([])):I([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||!F,children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})})}))),Ar={setModalErrorSnackMessage:q},_r=Object(s.b)(null,Ar),Ir=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},we),{},{buttonContainer:{textAlign:"right"}}))}))(_r((function(e){var t=e.classes,a=e.closeModalAndRefresh,i=e.selectedUser,r=e.currentPolicies,o=e.setModalErrorSnackMessage,s=e.open,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)([]),v=Object(u.a)(f,2),S=v[0],C=v[1];return Object(c.useEffect)((function(){if(s){var e,t=[],a=Object(Nr.a)(r);try{for(a.s();!(e=a.n()).done;){var n=e.value;t.push(n.policy)}}catch(c){a.e(c)}finally{a.f()}O(t),C(t)}}),[s,i]),Object(n.jsxs)(xa,{onClose:function(){a()},modalOpen:s,title:"Set Policies",children:[Object(n.jsx)(fr,{selectedPolicy:S,setSelectedPolicy:C}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){C(p)},children:"Clear"}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",disabled:b,onClick:function(){var e=i;j(!0),pe.invoke("PUT","/api/v1/set-policy/".concat(S),{entityName:e,entityType:"user"}).then((function(){j(!1),a()})).catch((function(e){j(!1),o(e)}))},children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})}))),Mr=a(992);function Fr(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var Dr,Lr={setErrorSnackMessage:V},Br=Object(s.b)(null,Lr),Rr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},fixedHeight:{height:165,minWidth:247,padding:"25px 28px","& svg":{maxHeight:18}},paperContainer:{padding:15,paddingLeft:50,display:"flex"},gridContainer:{display:"grid",gridTemplateColumns:"auto auto",gridGap:8,justifyContent:"flex-start",alignItems:"center","& div:not(.MuiCircularProgress-root)":{display:"flex",alignItems:"center"},"& div:nth-child(odd)":{justifyContent:"flex-end",fontWeight:700},"& div:nth-child(2n)":{minWidth:150}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Br((function(e){var t=e.classes,a=e.match,r=Object(c.useState)(0),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!1),m=Object(u.a)(d,2),h=m[0],p=m[1],O=Object(c.useState)(!1),f=Object(u.a)(O,2),v=f[0],y=f[1],S=Object(c.useState)(!1),k=Object(u.a)(S,2),N=k[0],w=k[1],T=Object(c.useState)(!1),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(!1),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)([]),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)([]),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)([]),G=Object(u.a)(V,2),H=G[0],Y=G[1],Q=a.params.userName,Z=Object(c.useCallback)((function(){if(""===Q)return null;p(!0),pe.invoke("GET","/api/v1/users/".concat(Q)).then((function(e){_(!1);var t=e.memberOf||[];P(t);var a,n=[],c=Object(Nr.a)(t);try{for(c.s();!(a=c.n()).done;){var i=a.value;n.push({group:i})}}catch(d){c.e(d)}finally{c.f()}W(n);var r,o=[],s=Object(Nr.a)(e.policy);try{for(s.s();!(r=s.n()).done;){var l=r.value;o.push({policy:l})}}catch(d){s.e(d)}finally{s.f()}Y(o),D("enabled"===e.status),p(!1)})).catch((function(e){_(!1),p(!1),q(e)}))}),[Q]);Object(c.useEffect)((function(){Z()}),[Z]);var J=atob(localStorage.getItem("userLoggedIn")||"");return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"User: ".concat(Q)}),v&&Object(n.jsx)(Er,{open:v,selectedUser:Q,closeModalAndRefresh:function(){y(!1),Z()}}),N&&Object(n.jsx)(Ir,{open:N,selectedUser:Q,currentPolicies:H,closeModalAndRefresh:function(){w(!1),Z()}}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{container:!0,spacing:2,children:Object(n.jsx)(x.a,{item:!0,children:Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsxs)("div",{className:t.gridContainer,children:[Object(n.jsx)("div",{children:"Enabled:"}),Object(n.jsx)("div",{className:t.capitalizeFirst,children:Object(n.jsx)(Pa,{checked:F,value:"user_enabled",id:"user-status",name:"user-status",disabled:J===Q,onChange:function(e){var t;D(e.target.checked),t=e.target.checked,A||(_(!0),pe.invoke("PUT","/api/v1/users/".concat(Q),{status:t?"enabled":"disabled",groups:R}).then((function(e){_(!1)})).catch((function(e){_(!1),q(e)})))},switchOnly:!0})})]})})})})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:9,children:Object(n.jsxs)(an.a,{value:s,onChange:function(e,t){l(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,Object(j.a)({label:"Groups"},Fr(0))),Object(n.jsx)(nn.a,Object(j.a)({label:"Policies"},Fr(0)))]})}),Object(n.jsxs)(x.a,{item:!0,xs:3,className:t.actionsTray,children:[0===s&&Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){y(!0)},children:"Add to Groups"}),1===s&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(Mr.a,{}),size:"medium",onClick:function(){w(!0)},children:"Assign Policies"})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(rn,{index:0,value:s,children:Object(n.jsx)(ma,{columns:[{label:"Name",elementKey:"group"}],isLoading:h,records:U,entityName:"Groups",idField:"group"})}),Object(n.jsx)(rn,{index:1,value:s,children:Object(n.jsx)(ma,{itemActions:[{type:"view",onClick:function(e){b.push("/policies/".concat(e.policy))}}],columns:[{label:"Name",elementKey:"policy"}],isLoading:h,records:H,entityName:"Policies",idField:"policy"})})]})]})})]})}))),Pr=Object(s.b)((function(e){return{open:e.system.sidebarOpen}}),{setMenuOpen:z}),zr=Object(l.g)(Pr((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/users/:userName",component:Rr}),Object(n.jsx)(l.b,{path:"/",component:kr}),Object(n.jsx)(l.b,{component:Je})]})})}))),Kr={setModalErrorSnackMessage:q},Ur=Object(s.b)(null,Kr),Wr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#000",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#000"}}}},Me),Be))}))(Ur((function(e){var t=e.classes,a=e.selectedUsers,r=e.setSelectedUsers,o=e.editMode,s=void 0!==o&&o,l=e.setModalErrorSnackMessage,d=Object(c.useState)([]),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],g=p[1],v=Object(c.useState)(""),S=Object(u.a)(v,2),k=S[0],N=S[1],w=Object(c.useCallback)((function(){pe.invoke("GET","/api/v1/users").then((function(e){var t=Z()(e,"users",[]);t||(t=[]),m(t.sort(Zi)),g(!1)})).catch((function(e){l(e),g(!1)}))}),[l]);Object(c.useEffect)((function(){g(!0)}),[]),Object(c.useEffect)((function(){O&&w()}),[O,w]);var T=a||[],E=j.filter((function(e){return e.accessKey.includes(k)}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:t.paper,children:[O&&Object(n.jsx)(y.a,{}),null!=j&&j.length>0?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)("span",{className:t.actionsTitle,children:s?"Edit Members":"Assign Users"}),Object(n.jsx)(f.a,{placeholder:"Filter Users",className:t.filterField,id:"search-resource",label:"",InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){N(e.target.value)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tableBlock,children:Object(n.jsx)(ma,{columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(T);return n?c.push(a):c=c.filter((function(e){return e!==a})),r(c),c},selectedItems:T,isLoading:O,records:E,entityName:"Users",idField:"accessKey",customPaperHeight:t.multiSelectTable})})]}):Object(n.jsx)("div",{className:t.noFound,children:"No Users Available"})]})})})}))),Vr={setModalErrorSnackMessage:q},Gr=Object(s.b)(null,Vr),qr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(Gr((function(e){var t=e.open,a=e.selectedGroup,r=e.closeModalAndRefresh,o=e.classes,s=e.setModalErrorSnackMessage,l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(!1),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)([]),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1];Object(c.useEffect)((function(){null!==a?I(!0):(j(""),T([]))}),[a]),Object(c.useEffect)((function(){L(""!==b.trim())}),[b,w]),Object(c.useEffect)((function(){if(S){null!==a?pe.invoke("PUT","/api/v1/groups/".concat(b),{group:b,members:w,status:p?"enabled":"disabled"}).then((function(e){C(!1),r()})).catch((function(e){C(!1),s(e)})):pe.invoke("POST","/api/v1/groups",{group:b,members:w}).then((function(e){C(!1),r()})).catch((function(e){C(!1),s(e)}))}}),[S,b,w,p,a,r,s]),Object(c.useEffect)((function(){if(a&&_){pe.invoke("GET","/api/v1/groups/".concat(a)).then((function(e){O("enabled"===e.status),j(e.name),T(e.members)})).catch((function(e){s(e),I(!1)}))}}),[_,a,s]);return Object(n.jsxs)(xa,{modalOpen:t,onClose:r,title:null!==a?"Edit Group":"Create Group",children:[null!==a&&Object(n.jsx)("div",{className:o.floatingEnabled,children:Object(n.jsx)(Pa,{indicatorLabels:["Enabled","Disabled"],checked:p,value:"group_enabled",id:"group-status",name:"group-status",onChange:function(e){O(e.target.checked)},switchOnly:!0})}),Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),C(!0)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.formScrollable,children:[null===a?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"group-name",name:"group-name",label:"Group Name",value:b,onChange:function(e){j(e.target.value)}})})}):Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(Za,{label:"Group Name",content:a})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Wr,{selectedUsers:w,setSelectedUsers:T,editMode:null!==a})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:o.clearButton,onClick:function(){null===a&&j(""),T([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:S||!D,children:"Save"})]}),S&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})]})}))),Hr={setErrorSnackMessage:V},Yr=Object(s.b)(null,Hr),Qr=Yr((function(e){var t=e.selectedGroup,a=e.deleteOpen,r=e.closeDeleteModalAndRefresh,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];Object(c.useEffect)((function(){if(d){t&&pe.invoke("DELETE","/api/v1/groups/".concat(t)).then((function(){b(!1),r(!0)})).catch((function(e){b(!1),o(e)}))}}),[d,t,r,o]);var j=function(){r(!1)};return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(ha.a,{open:a,onClose:j,"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete User"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete group ",Object(n.jsx)("b",{children:t}),"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:j,color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){b(!0)},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})})),Zr={setErrorSnackMessage:V},Jr=Object(s.b)(null,Zr),$r=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Jr((function(e){var t=e.classes,a=e.setErrorSnackMessage,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(null),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!1),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)([]),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(""),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)(!1),D=Object(u.a)(F,2),L=D[0],B=D[1];Object(c.useEffect)((function(){k(!0)}),[]),Object(c.useEffect)((function(){k(!0)}),[]),Object(c.useEffect)((function(){if(C){pe.invoke("GET","/api/v1/groups").then((function(e){var t=[];null!==e.groups&&(t=e.groups.sort($i)),E(t),k(!1)})).catch((function(e){a(e),k(!1)}))}}),[C,a]);var R=T.filter((function(e){return e.includes(I)})),P=[{type:"view",onClick:function(e){l(!0),m(e)}},{type:"description",onClick:function(e){B(!0),m(e)}},{type:"delete",onClick:function(e){v(!0),m(e)}}];return Object(n.jsxs)(i.a.Fragment,{children:[s&&Object(n.jsx)(qr,{open:s,selectedGroup:j,closeModalAndRefresh:function(){l(!1),k(!0)}}),O&&Object(n.jsx)(Qr,{deleteOpen:O,selectedGroup:j,closeDeleteModalAndRefresh:function(e){v(!1),e&&k(!0)}}),B&&Object(n.jsx)(yr,{open:L,selectedGroup:j,selectedUser:null,closeModalAndRefresh:function(){B(!1)}}),Object(n.jsx)(Ga,{label:"Groups"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Groups",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){M(e.target.value)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){m(null),l(!0)},children:"Create Group"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:P,columns:[{label:"Name",elementKey:""}],isLoading:C,records:R,entityName:"Groups",idField:""})})]})})]})}))),Xr="notify_postgres",eo="notify_mysql",to="notify_kafka",ao="notify_amqp",no="notify_mqtt",co="notify_redis",io="notify_nats",ro="notify_elasticsearch",oo="notify_webhooks",so="notify_nsq",lo=[{configuration_id:"region",configuration_label:"Edit Region Configuration"},{configuration_id:"cache",configuration_label:"Edit Cache Configuration"},{configuration_id:"compression",configuration_label:"Edit Compression Configuration"},{configuration_id:"etcd",configuration_label:"Edit Etcd Configuration"},{configuration_id:"identity_openid",configuration_label:"Edit Identity Openid Configuration"},{configuration_id:"identity_ldap",configuration_label:"Edit Identity LDAP Configuration"},{configuration_id:"logger_webhook",configuration_label:"Edit Logger Webhook Configuration"},{configuration_id:"audit_webhook",configuration_label:"Edit Audit Webhook Configuration"}],bo={region:[{name:"name",required:!0,label:"Server Location",tooltip:'Name of the location of the server e.g. "us-west-rack2"',type:"string",placeholder:"e.g. us-west-rack-2"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",placeholder:"Enter Comment"}],cache:[{name:"drives",required:!0,label:"Drives",tooltip:'Mountpoints e.g. "/optane1" or "/optane2", you can write one per field',type:"csv",placeholder:"Enter Mount Point"},{name:"expiry",required:!1,label:"Expiry",tooltip:'Cache expiry duration in days e.g. "90"',type:"number",placeholder:"Enter Number of Days"},{name:"quota",required:!1,label:"Quota",tooltip:'Limit cache drive usage in percentage e.g. "90"',type:"number",placeholder:"Enter in %"},{name:"exclude",required:!1,label:"Exclude",tooltip:'Wildcard exclusion patterns e.g. "bucket/*.tmp" or "*.exe", you can write one per field',type:"csv",placeholder:"Enter Wildcard Exclusion Patterns"},{name:"after",required:!1,label:"After",tooltip:"Minimum number of access before caching an object",type:"number",placeholder:"Enter Number of Attempts"},{name:"watermark_low",required:!1,label:"Watermark Low",tooltip:"Watermark Low",type:"number",placeholder:"Enter Watermark Low"},{name:"watermark_high",required:!1,label:"Watermark High",tooltip:"Watermark High",type:"number",placeholder:"Enter Watermark High"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",multiline:!0,placeholder:"Enter Comment"}],compression:[{name:"extensions",required:!1,label:"Extensions",tooltip:'Extensions to compress e.g. ".txt",".log" or ".csv", you can write one per field',type:"csv",placeholder:"Enter an Extension",withBorder:!0},{name:"mime_types",required:!1,label:"Mime Types",tooltip:'Mime types e.g. "text/*","application/json" or "application/xml", you can write one per field',type:"csv",placeholder:"Enter a Mime Type",withBorder:!0}],etcd:[{name:"endpoints",required:!0,label:"Endpoints",tooltip:'List of etcd endpoints e.g. "http://localhost:2379", you can write one per field',type:"csv",placeholder:"Enter Endpoint"},{name:"path_prefix",required:!1,label:"Path Prefix",tooltip:'namespace prefix to isolate tenants e.g. "customer1/"',type:"string",placeholder:"Enter Path Prefix"},{name:"coredns_path",required:!1,label:"Coredns Path",tooltip:'Shared bucket DNS records, default is "/skydns"',type:"string",placeholder:"Enter Coredns Path"},{name:"client_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_cert_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",multiline:!0,placeholder:"Enter Comment"}],identity_openid:[{name:"config_url",required:!1,label:"Config URL",tooltip:"Config URL for Client ID configuration",type:"string",placeholder:"Enter Config URL"},{name:"client_id",required:!1,label:"Client ID",type:"string",placeholder:"Enter Client ID"},{name:"claim_name",required:!1,label:"Claim Name",tooltip:"Claim Name",type:"string",placeholder:"Enter Claim Name"},{name:"claim_prefix",required:!1,label:"Claim Prefix",tooltip:"Claim Prefix",type:"string",placeholder:"Enter Claim Prefix"}],identity_ldap:[{name:"server_addr",required:!0,label:"Server Addr",tooltip:'AD/LDAP server address e.g. "myldapserver.com:636"',type:"string",placeholder:"Enter Server Address"},{name:"username_format",required:!0,label:"Username Format",tooltip:'List of username bind DNs e.g. "uid=%s","cn=accounts","dc=myldapserver" or "dc=com", you can write one per field',type:"csv",placeholder:"Enter Username Format"},{name:"username_search_filter",required:!0,label:"Username Search Filter",tooltip:'User search filter, for example "(cn=%s)" or "(sAMAccountName=%s)" or "(uid=%s)"',type:"string",placeholder:"Enter Username Search Filter"},{name:"group_search_filter",required:!0,label:"Group Search Filter",tooltip:'Search filter for groups e.g. "(&(objectclass=groupOfNames)(memberUid=%s))"',type:"string",placeholder:"Enter Group Search Filter"},{name:"username_search_base_dn",required:!1,label:"Username Search Base DN",tooltip:"List of username search DNs, you can write one per field",type:"csv",placeholder:"Enter Username Search Base DN"},{name:"group_name_attribute",required:!1,label:"Group Name Attribute",tooltip:'Search attribute for group name e.g. "cn"',type:"string",placeholder:"Enter Group Name Attribute"},{name:"sts_expiry",required:!1,label:"STS Expiry",tooltip:'temporary credentials validity duration in s,m,h,d. Default is "1h"',type:"string",placeholder:"Enter STS Expiry"},{name:"tls_skip_verify",required:!1,label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "off" (verify)',type:"on|off"},{name:"server_insecure",required:!1,label:"Server Insecure",tooltip:'Allow plain text connection to AD/LDAP server, defaults to "off"',type:"on|off"},{name:"comment",required:!1,label:"Comment",tooltip:"Optionally add a comment to this setting",type:"comment",placeholder:"Enter Comment"}],logger_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}],audit_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}]},uo=[{name:"queue-dir",label:"Queue Directory",required:!0,tooltip:"staging dir for undelivered messages e.g. '/home/events'",type:"string",placeholder:"Enter Queue Directory"},{name:"queue-limit",label:"Queue Limit",required:!1,tooltip:"maximum limit for undelivered messages, defaults to '10000'",type:"number",placeholder:"Enter Queue Limit"},{name:"comment",label:"Comment",required:!1,type:"comment",placeholder:"Enter Comment"}],jo=(Dr={},Object(xe.a)(Dr,to,[{name:"brokers",label:"Brokers",required:!0,tooltip:"Comma separated list of Kafka broker addresses",type:"string",placeholder:"Enter Brokers"},{name:"topic",label:"Topic",tooltip:"Kafka topic used for bucket notifications",type:"string",placeholder:"Enter Topic"},{name:"sasl_username",label:"SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Username"},{name:"sasl_password",label:"SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Password"},{name:"sasl_mechanism",label:"SASL Mechanism",tooltip:"SASL authentication mechanism, default 'PLAIN'",type:"string"},{name:"tls_client_auth",label:"TLS Client Auth",tooltip:"Client Auth determines the Kafka server's policy for TLS client auth",type:"string",placeholder:"Enter TLS Client Auth"},{name:"sasl",label:"SASL",tooltip:"Set to 'on' to enable SASL authentication",type:"on|off"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS skip verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"client_tls_cert",label:"client TLS cert",tooltip:"Path to client certificate for mTLS auth",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS auth",type:"path",placeholder:"Enter TLS Client Key"},{name:"version",label:"Version",tooltip:"Specify the version of the Kafka cluster e.g '2.2.0'",type:"string",placeholder:"Enter Kafka Version"}].concat(uo)),Object(xe.a)(Dr,ao,[{name:"url",required:!0,label:"URL",tooltip:"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`",type:"url"},{name:"exchange",label:"Exchange",tooltip:"Name of the AMQP exchange",type:"string",placeholder:"Enter Exchange"},{name:"exchange_type",label:"Exchange Type",tooltip:"AMQP exchange type",type:"string",placeholder:"Enter Exchange Type"},{name:"routing_key",label:"Routing Key",tooltip:"Routing key for publishing",type:"string",placeholder:"Enter Routing Key"},{name:"mandatory",label:"Mandatory",tooltip:"Quietly ignore undelivered messages when set to 'off', default is 'on'",type:"on|off"},{name:"durable",label:"Durable",tooltip:"Persist queue across broker restarts when set to 'on', default is 'off'",type:"on|off"},{name:"no_wait",label:"No Wait",tooltip:"Non-blocking message delivery when set to 'on', default is 'off'",type:"on|off"},{name:"internal",label:"Internal",tooltip:"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges",type:"on|off"},{name:"auto_deleted",label:"Auto Deleted",tooltip:"Auto delete queue when set to 'on', when there are no consumers",type:"on|off"},{name:"delivery_mode",label:"Delivery Mode",tooltip:"Set to '1' for non-persistent or '2' for persistent queue",type:"number",placeholder:"Enter Delivery Mode"}].concat(uo)),Object(xe.a)(Dr,co,[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address. For example: `localhost:6379`",type:"address",placeholder:"Enter Address"},{name:"key",required:!0,label:"Key",tooltip:"Redis key to store/update events, key is auto-created",type:"string",placeholder:"Enter Key"},{name:"password",label:"Password",tooltip:"Redis server password",type:"string",placeholder:"Enter Password"}].concat(uo)),Object(xe.a)(Dr,no,[{name:"broker",required:!0,label:"Broker",tooltip:"MQTT server endpoint e.g. `tcp://localhost:1883`",type:"uri",placeholder:"Enter Brokers"},{name:"topic",required:!0,label:"Topic",tooltip:"name of the MQTT topic to publish",type:"string",placeholder:"Enter Topic"},{name:"username",label:"Username",tooltip:"MQTT username",type:"string",placeholder:"Enter Username"},{name:"password",label:"Password",tooltip:"MQTT password",type:"string",placeholder:"Enter Password"},{name:"qos",label:"QOS",tooltip:"Set the quality of service priority, defaults to '0'",type:"number",placeholder:"Enter QOS"},{name:"keep_alive_interval",label:"Keep Alive Interval",tooltip:"Keep-alive interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Keep Alive Internal"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"}].concat(uo)),Object(xe.a)(Dr,io,[{name:"address",required:!0,label:"Address",tooltip:"NATS server address e.g. '0.0.0.0:4222'",type:"address",placeholder:"Enter Address"},{name:"subject",required:!0,label:"Subject",tooltip:"NATS subscription subject",type:"string",placeholder:"Enter NATS Subject"},{name:"username",label:"Username",tooltip:"NATS username",type:"string",placeholder:"Enter NATS Username"},{name:"password",label:"Password",tooltip:"NATS password",type:"string",placeholder:"Enter NATS password"},{name:"token",label:"Token",tooltip:"NATS token",type:"string",placeholder:"Enter NATS token"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"ping_interval",label:"Ping Interval",tooltip:"Client ping commands interval in s,m,h,d. Disabled by default",type:"duration",placeholder:"Enter Ping Interval"},{name:"streaming",label:"Streaming",tooltip:"Set to 'on', to use streaming NATS server",type:"on|off"},{name:"streaming_async",label:"Streaming async",tooltip:"Set to 'on', to enable asynchronous publish",type:"on|off"},{name:"streaming_max_pub_acks_in_flight",label:"Streaming max publish ACKS in flight",tooltip:"Number of messages to publish without waiting for ACKs",type:"number",placeholder:"Enter Streaming in flight value"},{name:"streaming_cluster_id",label:"Streaming Cluster ID",tooltip:"Unique ID for NATS streaming cluster",type:"string",placeholder:"Enter Streaming Cluster ID"},{name:"cert_authority",label:"Cert Authority",tooltip:"Path to certificate chain of the target NATS server",type:"string",placeholder:"Enter Cert Authority"},{name:"client_cert",label:"Client Cert",tooltip:"Client cert for NATS mTLS auth",type:"string",placeholder:"Enter Client Cert"},{name:"client_key",label:"Client Key",tooltip:"Client cert key for NATS mTLS auth",type:"string",placeholder:"Enter Client Key"}].concat(uo)),Object(xe.a)(Dr,ro,[{name:"url",required:!0,label:"URL",tooltip:"Elasticsearch server's address, with optional authentication info",type:"url",placeholder:"Enter URL"},{name:"index",required:!0,label:"Index",tooltip:"Elasticsearch index to store/update events, index is auto-created",type:"string",placeholder:"Enter Index"},{name:"format",required:!0,label:"Format",tooltip:"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'",type:"enum",placeholder:"Enter Format"}].concat(uo)),Object(xe.a)(Dr,oo,[{name:"endpoint",required:!0,label:"Endpoint",tooltip:"webhook server endpoint e.g. http://localhost:8080/minio/events",type:"url",placeholder:"Enter Endpoint"},{name:"auth_token",label:"Auth Token",tooltip:"opaque string or JWT authorization token",type:"string",placeholder:"Enter auth_token"}].concat(uo)),Object(xe.a)(Dr,so,[{name:"nsqd_address",required:!0,label:"NSQD Address",tooltip:"NSQ server address e.g. '127.0.0.1:4150'",type:"address",placeholder:"Enter nsqd_address"},{name:"topic",required:!0,label:"Topic",tooltip:"NSQ topic",type:"string",placeholder:"Enter Topic"},{name:"tls",label:"TLS",tooltip:"set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'trust server TLS without verification, defaults to "on" (verify)',type:"on|off"}].concat(uo)),Dr),mo=function(e){return e.filter((function(e){return""!==e.value}))},ho=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{inputWithBorder:{border:"1px solid #EAEAEA",padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},labelContainer:{display:"flex"}}))}))((function(e){var t=e.elements,a=e.name,r=e.label,o=e.tooltip,s=void 0===o?"":o,l=e.commonPlaceholder,d=void 0===l?"":l,b=e.onChange,j=e.withBorder,m=void 0!==j&&j,h=e.classes,p=Object(c.useState)([""]),O=Object(u.a)(p,2),g=O[0],f=O[1],v=Object(c.createRef)();Object(c.useEffect)((function(){if(1===g.length&&""===g[0]&&t&&""!==t){var e=t.split(",");e.push(""),f(e)}}),[t,g]),Object(c.useEffect)((function(){if(g.length>1){var e=v.current;e&&e.scrollIntoView(!1)}}),[g,v]);var y=Object(c.useRef)(!0);Object(c.useLayoutEffect)((function(){y.current?y.current=!1:C()}),[g]);var S=function(e){e.persist();var t=Object($e.a)(g);t[Z()(e.target,"dataset.index",0)]=e.target.value,f(t)},C=_n()((function(){var e=g.filter((function(e){return""!==e.trim()})).join(",");b(e)}),500),k=g.map((function(e,t){return Object(n.jsx)(Sa,{id:"".concat(a,"-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:g[t],onChange:S,index:t,placeholder:d,overlayIcon:t===g.length-1?Object(n.jsx)(Fn,{}):null,overlayAction:function(){!function(e){if(""!==e[e.length-1].trim()){var t=Object($e.a)(e);t.push(""),f(t)}}(g)}},"csv-".concat(a,"-").concat(t.toString()))}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:h.fieldContainer,children:[Object(n.jsxs)(oa.a,{className:h.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==s&&Object(n.jsx)("div",{className:h.tooltipContainer,children:Object(n.jsx)(sa.a,{title:s,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:h.tooltip})})})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(m?h.inputWithBorder:""),children:[k,Object(n.jsx)("div",{ref:v})]})]})})})),po=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{inputLabel:Object(j.a)(Object(j.a)({},Ne.inputLabel),{},{marginBottom:16,fontSize:14}),textBoxContainer:{flexGrow:1,position:"relative"},errorState:{color:"#b53b4b",fontSize:14,position:"absolute",top:7,right:7},cssOutlinedInput:{borderColor:"#9C9C9C",padding:16},rootContainer:{"& .MuiOutlinedInput-inputMultiline":Object(j.a)(Object(j.a)({},Ne.inputLabel),{},{fontSize:13,minHeight:150})}}))}))((function(e){var t=e.label,a=e.onChange,c=e.value,r=e.id,o=e.name,s=e.disabled,l=void 0!==s&&s,d=e.tooltip,b=void 0===d?"":d,u=e.index,j=void 0===u?0:u,m=e.error,h=void 0===m?"":m,p=e.required,O=void 0!==p&&p,g=e.placeholder,v=void 0===g?"":g,y=e.classes,S={"data-index":j};return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(y.fieldContainer," ").concat(""!==h?y.errorInField:""),children:[""!==t&&Object(n.jsxs)(oa.a,{htmlFor:r,className:y.inputLabel,children:[Object(n.jsxs)("span",{children:[t,O?"*":""]}),""!==b&&Object(n.jsx)("div",{className:y.tooltipContainer,children:Object(n.jsx)(sa.a,{title:b,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:y.tooltip})})})})]}),Object(n.jsx)("div",{className:y.textBoxContainer,children:Object(n.jsx)(f.a,{id:r,name:o,fullWidth:!0,value:c,disabled:l,onChange:a,multiline:!0,inputProps:S,error:""!==h,helperText:h,placeholder:v,InputLabelProps:{shrink:!0},InputProps:{classes:{notchedOutline:y.cssOutlinedInput,root:y.rootContainer}},variant:"outlined"})})]})})})),Oo=function(e,t,a){var n="on|off"===t?"false":"";if(a.length>0){var c=a.find((function(t){return t.key===e}));c&&(n=c.value)}return n},go=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))((function(e){var t=e.onChange,a=e.fields,i=e.defaultVals,r=(e.classes,Object(c.useState)([])),o=Object(u.a)(r,2),s=o[0],l=o[1],d=a||[],b=i||[];Object(c.useEffect)((function(){var e=[];a.forEach((function(t){var a={key:t.name,value:Oo(t.name,t.type,b)};e.push(a)})),l(e)}),[a,i]),Object(c.useEffect)((function(){t(s)}),[s]);var j=function(e,t,a){var n=Object($e.a)(s);n[a]={key:e,value:t},l(n)},m=function(e,t){switch(e.type){case"on|off":var a=s[t]?s[t].value:"false";return Object(n.jsx)(Pa,{indicatorLabels:["On","Off"],onChange:function(a){var n=a.target.checked?"true":"false";j(e.name,n,t)},id:e.name,name:e.name,label:e.label,value:"switch_on",tooltip:e.tooltip,checked:"true"===a});case"csv":return Object(n.jsx)(ho,{elements:s[t]?s[t].value:"",label:e.label,name:e.name,onChange:function(a){return j(e.name,a,t)},tooltip:e.tooltip,commonPlaceholder:e.placeholder,withBorder:!!e.withBorder});case"comment":return Object(n.jsx)(po,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:s[t]?s[t].value:"",onChange:function(a){return j(e.name,a.target.value,t)},placeholder:e.placeholder});default:return Object(n.jsx)(Sa,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:s[t]?s[t].value:"",onChange:function(a){return j(e.name,a.target.value,t)},multiline:!!e.multiline,placeholder:e.placeholder})}};return Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{xs:12,item:!0,children:d.map((function(e,t){return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:m(e,t)})},e.name)}))})})})),fo={serverNeedsRestart:K,setErrorSnackMessage:V},xo=Object(s.b)(null,fo),vo=xo(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Re),{},{strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"},logoButton:{height:"80px"},customTitle:Object(j.a)(Object(j.a)({},Re.customTitle),{},{marginTop:0})}))}))((function(e){var t=e.closeModalAndRefresh,a=e.serverNeedsRestart,i=e.selectedConfiguration,r=e.setErrorSnackMessage,o=e.classes,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!0),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)([]),k=Object(u.a)(C,2),N=k[0],w=k[1];Object(c.useEffect)((function(){var e=Z()(i,"configuration_id",!1);e&&pe.invoke("GET","/api/v1/configs/".concat(e)).then((function(e){var t=Z()(e,"key_values",[]);w(t)})).catch((function(e){S(!1),r(e)})),S(!1)}),[i,r]),Object(c.useEffect)((function(){if(h){var e={key_values:mo(d)};pe.invoke("PUT","/api/v1/configs/".concat(i.configuration_id),e).then((function(){p(!1),a(!0),t()})).catch((function(e){p(!1),r(e)}))}}),[h,a,i,d,t,r]);var T=Object(c.useCallback)((function(e){b(e)}),[b]);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:o.customTitle,children:i.configuration_label}),Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),p(!0)},children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.settingsFormContainer,children:[v&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})}),Object(n.jsx)(go,{fields:bo[i.configuration_id],onChange:T,defaultVals:N})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:o.settingsButtonContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:o.innerSettingsButtonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:h,children:"Save"})})})]})})]})}))),yo=Object(w.a)((function(){return Object(k.a)({masterContainer:{overflowX:"hidden",overflowY:"auto"},sliderContainer:{width:"auto",transitionDuration:"0.3s",position:"relative"},slide:{float:"left"}})}))((function(e){var t=e.classes,a=e.slideOptions,i=e.currentSlide;return Object(n.jsx)(Pt.a,{children:function(e){var r=e.width,o=e.height,s=i*r,l=r*a.length;return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)("div",{className:t.masterContainer,style:{width:r,height:o},children:Object(n.jsx)("div",{className:t.sliderContainer,style:{left:"-".concat(s,"px"),width:"".concat(l,"px")},children:a.map((function(e,a){return Object(n.jsx)("div",{className:t.slide,style:{width:r},children:e},"slide-panel-".concat(a.toString()))}))})})})}})})),So=function(){return Object(n.jsx)(rt.a,{viewBox:"0 0 10.847 6.572",children:Object(n.jsxs)("g",{transform:"translate(-84.793 -81.193)",children:[Object(n.jsx)("line",{x2:"9.64",transform:"translate(85.5 84.5)",fill:"none",stroke:"#000",strokeLinecap:"round",strokeWidth:"1"}),Object(n.jsx)("line",{y1:"2.558",x2:"2.645",transform:"translate(85.5 81.9)",fill:"none",stroke:"#000",strokeLinecap:"round",strokeWidth:"1"}),Object(n.jsx)("line",{x2:"2.645",y2:"2.558",transform:"translate(85.5 84.5)",fill:"none",stroke:"#000",strokeLinecap:"round",strokeWidth:"1"})]})})},Co={configuration_id:"",configuration_label:""},ko=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},iconText:{lineHeight:"24px"},customConfigurationPage:{height:"calc(100vh - 324px)",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}},Fe),Me),Re),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=Object(c.useState)(Co),i=Object(u.a)(a,2),r=i[0],o=i[1],s=Object(c.useState)(0),l=Object(u.a)(s,2),d=l[0],j=l[1],m=[{type:"edit",onClick:function(e){var t=Z()(e,"url","");""!==t?b.push(t):(j(1),o(e))}}];return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.settingsOptionsContainer,children:Object(n.jsx)(yo,{slideOptions:[Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(ma,{itemActions:m,columns:[{label:"Configuration",elementKey:"configuration_id"}],isLoading:!1,records:lo,entityName:"Configurations",idField:"configuration_id",customPaperHeight:t.customConfigurationPage,noBackground:!0})}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:function(){j(0),o(Co)},className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Configurations"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:1===d?Object(n.jsx)(vo,{closeModalAndRefresh:function(){j(0)},selectedConfiguration:r}):null})]})],currentSlide:d})})})})})})})),No=a(229),wo=a(430),To=a.n(wo),Eo=[{actionTrigger:Xr,targetTitle:"Postgres SQL",logo:"/postgres.png"},{actionTrigger:to,targetTitle:"Kafka",logo:"/kafka.png"},{actionTrigger:ao,targetTitle:"AMQP",logo:"/amqp.png"},{actionTrigger:no,targetTitle:"MQTT",logo:"/mqtt.png"},{actionTrigger:co,targetTitle:"Redis",logo:"/redis.png"},{actionTrigger:io,targetTitle:"NATS",logo:"/nats.png"},{actionTrigger:eo,targetTitle:"Mysql",logo:"/mysql.png"},{actionTrigger:ro,targetTitle:"Elastic Search",logo:"/elasticsearch.png"},{actionTrigger:oo,targetTitle:"Webhook",logo:""},{actionTrigger:so,targetTitle:"NSQ",logo:""}],Ao=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))((function(e){var t=e.onChange,a=e.classes,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(""),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],g=p[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(" "),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(""),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)("namespace"),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(""),Q=Object(u.a)(Y,2),Z=Q[0],J=Q[1],$=Object(c.useState)(""),X=Object(u.a)($,2),ee=X[0],te=X[1],ae=Object(c.useState)(""),ne=Object(u.a)(ae,2),ce=ne[0],ie=ne[1],re=Object(c.useCallback)((function(){var e="";return""!==O&&(e="".concat(e," host=").concat(O)),""!==y&&(e="".concat(e," dbname=").concat(y)),""!==A&&(e="".concat(e," user=").concat(A)),""!==F&&(e="".concat(e," password=").concat(F)),""!==N&&(e="".concat(e," port=").concat(N))," "!==R&&(e="".concat(e," sslmode=").concat(R)),(e="".concat(e," ")).trim()}),[O,y,A,F,N,R]);return Object(c.useEffect)((function(){""!==j&&t([{key:"connection_string",value:j},{key:"table",value:U},{key:"format",value:q},{key:"queue_dir",value:Z},{key:"queue_limit",value:ee},{key:"comment",value:ce}])}),[j,U,q,Z,ee,ce,t]),Object(c.useEffect)((function(){var e=re();m(e)}),[A,y,F,N,R,O,m,re]),Object(c.useEffect)((function(){if(s){var e=re();m(e)}else{var t=function(e,t){var a,n=[],c=Object(Nr.a)(t);try{for(c.s();!(a=c.n()).done;){var i=a.value,r=e.indexOf(i+"=");-1!==r&&n.push(r)}}catch(p){c.e(p)}finally{c.f()}n.sort((function(e,t){return e-t}));for(var o=new Map,s=new Array(n.length),l=0;l=0})),A=function(){T(""),C(S-1)};return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.settingsOptionsContainer,children:Object(n.jsx)(yo,{slideOptions:[Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.lambdaContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){j(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){O(!0)},children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){C(1)},children:"Add Notification Target"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[],columns:[{label:"Status",elementKey:"status",renderFunction:function(e){return Object(n.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[Object(n.jsx)(To.a,{style:"Offline"===e?{color:No.a[500]}:{}}),e]})},width:150},{label:"Service",elementKey:"service_name"}],isLoading:p,records:E,entityName:"Lambda Notification Targets",idField:"service_name",customPaperHeight:t.customConfigurationPage,noBackground:!0})})]})}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:A,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Lambda Notifications"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Bo,{setService:function(e){T(e),C(2)}})})]}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:A,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Supported Services"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Fo,{service:w,saveAndRefresh:function(){O(!0),C(0),T("")}})})]})],currentSlide:S})})})})})})}))),Ko=a(432),Uo=a.n(Ko),Wo=a(431),Vo=a.n(Wo),Go=Object(w.a)((function(e){return Object(k.a)({errorBlock:{color:e.palette.error.main}})}))((function(e){var t=e.classes,a=e.errorMessage,c=e.withBreak,r=void 0===c||c;return Object(n.jsxs)(i.a.Fragment,{children:[r&&Object(n.jsx)("br",{}),Object(n.jsx)(v.a,{component:"p",variant:"body1",className:t.errorBlock,children:a})]})})),qo=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{textBoxContainer:{flexGrow:1,position:"relative",flexDirection:"column"},errorState:{color:"#b53b4b",fontSize:14,position:"absolute",top:7,right:7},errorText:{margin:"0",fontSize:"0.75rem",marginTop:3,textAlign:"left",fontFamily:"Lato,sans-serif",fontWeight:400,lineHeight:"1.66",color:"#dc1f2e"},valueString:{maxWidth:350,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",marginTop:2},fileReselect:{display:"flex",alignItems:"center"},fieldBottom:{borderBottom:"#9c9c9c 1px solid"},fileInputField:{margin:"13px 0"}}))}))((function(e){var t=e.label,a=e.classes,r=e.onChange,o=e.id,s=e.name,l=e.disabled,d=void 0!==l&&l,b=e.tooltip,j=void 0===b?"":b,m=e.required,h=e.error,p=void 0===h?"":h,O=e.accept,g=void 0===O?"":O,f=e.value,v=void 0===f?"":f,y=Object(c.useState)(!1),S=Object(u.a)(y,2),C=S[0],k=S[1];return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(a.fieldBottom," ").concat(a.fieldContainer," ").concat(""!==p?a.errorInField:""),children:[""!==t&&Object(n.jsxs)(oa.a,{htmlFor:o,className:"".concat(""!==p?a.fieldLabelError:""," ").concat(a.inputLabel),children:[Object(n.jsxs)("span",{children:[t,m?"*":""]}),""!==j&&Object(n.jsx)("div",{className:a.tooltipContainer,children:Object(n.jsx)(sa.a,{title:j,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:a.tooltip})})})})]}),C||""===v?Object(n.jsxs)("div",{className:a.textBoxContainer,children:[Object(n.jsx)("input",{type:"file",name:s,onChange:function(e){var t=Z()(e,"target.files[0].name","");!function(e,t){var a=e.target.files[0],n=new FileReader;n.readAsDataURL(a),n.onload=function(){var e=n.result;if(e){var a=e.toString().split("base64,");2===a.length&&t(a[1])}}}(e,(function(e){r(e,t)}))},accept:g,required:m,disabled:d,className:a.fileInputField}),""!==v&&Object(n.jsx)(Lt.a,{color:"primary","aria-label":"upload picture",component:"span",onClick:function(){k(!1)},disableRipple:!1,disableFocusRipple:!1,children:Object(n.jsx)(Vo.a,{})}),""!==p&&Object(n.jsx)(Go,{errorMessage:p})]}):Object(n.jsxs)("div",{className:a.fileReselect,children:[Object(n.jsx)("div",{className:a.valueString,children:v}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"upload picture",component:"span",onClick:function(){k(!0)},disableRipple:!1,disableFocusRipple:!1,children:Object(n.jsx)(Uo.a,{})})]})]})})})),Ho={setErrorSnackMessage:V},Yo=Object(s.b)(null,Ho),Qo=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},we),Re),{},{strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"},customTitle:Object(j.a)(Object(j.a)({},Re.customTitle),{},{marginTop:0}),settingsFormContainer:Object(j.a)(Object(j.a)({},Re.settingsFormContainer),{},{height:"calc(100vh - 422px)"})}))}))(Yo((function(e){var t=e.saveAndRefresh,a=e.classes,i=e.setErrorSnackMessage,r=e.type,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),m=Object(u.a)(b,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],y=f[1],S=Object(c.useState)(""),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(""),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(""),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(""),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)(""),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(""),V=Object(u.a)(W,2),G=V[0],q=V[1],H=Object(c.useState)(""),Y=Object(u.a)(H,2),Q=Y[0],Z=Y[1],J=Object(c.useState)(""),$=Object(u.a)(J,2),X=$[0],ee=$[1],te=Object(c.useState)(""),ae=Object(u.a)(te,2),ne=ae[0],ce=ae[1],ie=Object(c.useState)(""),re=Object(u.a)(ie,2),oe=re[0],se=re[1],le=Object(c.useState)(""),de=Object(u.a)(le,2),be=de[0],ue=de[1],je=Object(c.useState)(!0),me=Object(u.a)(je,2),he=me[0],Oe=me[1];Object(c.useEffect)((function(){if(l){var e={},a={name:h,endpoint:v,bucket:k,prefix:E,region:M},n=r;switch("minio"===r&&(n="s3"),r){case"minio":case"s3":e={s3:Object(j.a)(Object(j.a)({},a),{},{accesskey:K,secretkey:G,storageclass:B})};break;case"gcs":e={gcs:Object(j.a)(Object(j.a)({},a),{},{creds:X})};break;case"azure":e={azure:Object(j.a)(Object(j.a)({},a),{},{accountname:ne,accountkey:oe})}}var c=Object(j.a)({type:n},e);pe.invoke("POST","/api/v1/admin/tiers",c).then((function(){d(!1),t()})).catch((function(e){d(!1),i(e)}))}}),[K,oe,ne,k,X,v,h,E,M,t,l,G,i,B,r]),Object(c.useEffect)((function(){var e=!0;""===r&&(e=!1),""===r&&(e=!1),""===h&&(e=!1),""===v&&(e=!1),""===k&&(e=!1),""===E&&(e=!1),""===M&&(e=!1),"s3"!==r&&"minio"!==r||(""===K&&(e=!1),""===G&&(e=!1)),"gcs"===r&&""===X&&(e=!1),"azure"===r&&(""===ne&&(e=!1),""===oe&&(e=!1)),Oe(e)}),[K,oe,ne,k,X,v,he,h,E,M,G,B,r]),Object(c.useEffect)((function(){switch(r){case"gcs":y("https://storage.googleapis.com/"),ue("Google Cloud");break;case"s3":y("https://s3.amazonaws.com"),ue("Amazon S3");break;case"azure":y("http://blob.core.windows.net"),ue("Azure");break;case"minio":y(""),ue("MinIO")}}),[r]);return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),d(!0)},children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:a.customTitle,children:[be," - Add Tier Configuration"]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:a.settingsFormContainer,children:Object(n.jsx)(x.a,{container:!0,children:""!==r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"name",name:"name",label:"Name",placeholder:"Enter Name",value:h,onChange:function(e){p(e.target.value)}}),Object(n.jsx)(Sa,{id:"endpoint",name:"endpoint",label:"Endpoint",placeholder:"Enter Endpoint",value:v,onChange:function(e){y(e.target.value)}}),"s3"===r||"minio"===r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",label:"Access Key",placeholder:"Enter Access Key",value:K,onChange:function(e){U(e.target.value)}}),Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",label:"Secret Key",placeholder:"Enter Secret Key",value:G,onChange:function(e){q(e.target.value)}})]}),"gcs"===r&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(qo,{accept:".json",id:"creds",label:"Credentials",name:"creds",onChange:function(e,t){ee(e),Z(t)},value:Q})}),"azure"===r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accountName",name:"accountName",label:"Account Name",placeholder:"Enter Account Name",value:ne,onChange:function(e){ce(e.target.value)}}),Object(n.jsx)(Sa,{id:"accountKey",name:"accountKey",label:"Account Key",placeholder:"Enter Account Key",value:oe,onChange:function(e){se(e.target.value)}})]}),Object(n.jsx)(Sa,{id:"bucket",name:"bucket",label:"Bucket",placeholder:"Enter Bucket",value:k,onChange:function(e){N(e.target.value)}}),Object(n.jsx)(Sa,{id:"prefix",name:"prefix",label:"Prefix",placeholder:"Enter Prefix",value:E,onChange:function(e){A(e.target.value)}}),Object(n.jsx)(Sa,{id:"region",name:"region",label:"Region",placeholder:"Enter Region",value:M,onChange:function(e){F(e.target.value)}}),"s3"===r||"minio"===r&&Object(n.jsx)(Sa,{id:"storageClass",name:"storageClass",label:"Storage Class",placeholder:"Enter Storage Class",value:B,onChange:function(e){R(e.target.value)}})]})})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:a.settingsButtonContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:a.innerSettingsButtonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l||!he,children:"Save"})})})]})})}))),Zo=Object(s.b)(null,{setModalErrorSnackMessage:q}),Jo=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(Zo((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.tierData,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(""),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(!0),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Z()(r,"type",""),G=Z()(r,"".concat(V,".name"),"");Object(c.useEffect)((function(){var e=!0;"s3"===V||"azure"===V?""!==F&&""!==R||(e=!1):"gcs"===V&&""===A&&(e=!1),W(e)}),[R,F,A,V]);return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){a(!1)},title:"Update Credentials - ".concat(V," / ").concat(G),children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b(!0),function(){var e={};"s3"===V||"azure"===V?e={access_key:F,secret_key:R}:"gcs"===V&&(e={creds:A}),""!==G?pe.invoke("PUT","/api/v1/admin/tiers/".concat(V,"/").concat(G,"/credentials"),e).then((function(){b(!1),a(!0)})).catch((function(e){b(!1),o(e)})):o("There was an error retrieving tier information")}()},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:["s3"===V&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",label:"Access Key",placeholder:"Enter Access Key",value:h,onChange:function(e){p(e.target.value)}}),Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",label:"Secret Key",placeholder:"Enter Secret Key",value:v,onChange:function(e){S(e.target.value)}})]}),"gcs"===V&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(qo,{accept:".json",id:"creds",label:"Credentials",name:"creds",onChange:function(e,t){_(e),w(t)},value:N})}),"azure"===V&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accountName",name:"accountName",label:"Account Name",placeholder:"Enter Account Name",value:F,onChange:function(e){D(e.target.value)}}),Object(n.jsx)(Sa,{id:"accountKey",name:"accountKey",label:"Account Key",placeholder:"Enter Account Key",value:R,onChange:function(e){P(e.target.value)}})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d||!U,children:"Save"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),$o={setErrorSnackMessage:V},Xo=Object(s.b)(null,$o),es=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Me),Fe),Re),Pe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})),{},{strongText:{fontWeight:700},keyName:{marginLeft:5},iconText:{lineHeight:"24px"},customConfigurationPage:{height:"calc(100vh - 410px)",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},lambdaContainer:{padding:"15px 0"},actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"0 38px"}),customTitle:Object(j.a)(Object(j.a)({},Re.customTitle),{},{marginTop:0})}))}))(Xo((function(e){var t=e.classes,a=e.setErrorSnackMessage,i=Object(c.useState)([]),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],v=Object(c.useState)(0),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)({type:"unsupported"}),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(""),F=Object(u.a)(M,2),D=F[0],L=F[1];Object(c.useEffect)((function(){if(p){pe.invoke("GET","/api/v1/admin/tiers").then((function(e){s(e.items||[]),O(!1)})).catch((function(e){a(e),O(!1)}))}}),[p,a]);var B=o.filter((function(e){if(""===b)return!0;var t=Z()(e,"".concat(e.type,".name"),""),a=Z()(e,"type","");return t.indexOf(b)>=0||a.indexOf(b)>=0})),R=function(){C(S-1)},P=function(e){L(e),C(2)};return Object(n.jsxs)(c.Fragment,{children:[w&&Object(n.jsx)(Jo,{open:w,tierData:_,closeModalAndRefresh:function(){T(!1)}}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.settingsOptionsContainer,children:Object(n.jsx)(yo,{slideOptions:[Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.lambdaContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){j(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){O(!0)},children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){C(1)},children:"Add Tier"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"edit",onClick:function(e){I(e),T(!0)}}],columns:[{label:"Tier Name",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".name"),"");return null!==t?t:""},renderFullObject:!0},{label:"Type",elementKey:"type",width:150},{label:"Endpoint",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".endpoint"),"");return null!==t?t:""},renderFullObject:!0},{label:"Bucket",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".bucket"),"");return null!==t?t:""},renderFullObject:!0},{label:"Prefix",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".prefix"),"");return null!==t?t:""},renderFullObject:!0},{label:"Region",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".region"),"");return null!==t?t:""},renderFullObject:!0}],isLoading:p,records:B,entityName:"Tiers",idField:"service_name",customPaperHeight:t.customConfigurationPage,noBackground:!0})})]})}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:R,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Tiers"]})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.customTitle,children:"Add Tier Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.settingsFormContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.centerElements,children:Object(n.jsxs)("div",{className:t.iconContainer,children:[Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("minio")},children:Object(n.jsx)("img",{src:"/minioTier.png",className:t.logoButton,alt:"MinIO"})}),Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("gcs")},children:Object(n.jsx)("img",{src:"/gcs.png",className:t.logoButton,alt:"GCS"})}),Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("s3")},children:Object(n.jsx)("img",{src:"/amazon.png",className:t.logoButton,alt:"s3"})}),Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("azure")},children:Object(n.jsx)("img",{src:"/azure.png",className:t.logoButton,alt:"Azure"})})]})})})})]})]}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:R,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Tier Type Selection"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:2===S&&Object(n.jsx)(Qo,{type:D,saveAndRefresh:function(){C(0),O(!0)}})})]})],currentSlide:S})})})})})]})}))),ts=Object(s.b)((function(e){return{session:e.console.session}}),{}),as=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(ts((function(e){var t=e.classes,a=(e.session,Object(c.useState)(0)),i=Object(u.a)(a,2),r=i[0],o=i[1];return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Settings"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(an.a,{value:r,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){o(t)},"aria-label":"tenant-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Configurations"}),Object(n.jsx)(nn.a,{label:"Lambda Notifications"}),Object(n.jsx)(nn.a,{label:"Tiers"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ko,{})}),1===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(zo,{})}),2===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(es,{})})]})]})})]})}))),ns=a(154),cs=a.n(ns),is={logger:{main:"logger",title:"Logger Webhook Configuration",modalTitle:"Logger Webhook",apiURL:"",configuration:{configuration_id:"logger_webhook",configuration_label:"Logger Webhook"}},audit:{main:"audit",title:"Audit Webhook Configuration",modalTitle:"Audit Webhook",apiURL:"",configuration:{configuration_id:"audit_webhook",configuration_label:"Audit Webhook"}}},rs=Object(w.a)((function(e){return Object(k.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},actionsTray:{textAlign:"right","& button":{marginLeft:10}},searchField:{background:"#FFFFFF",padding:12,borderRadius:5,boxShadow:"0px 3px 6px #00000012"},iconText:{lineHeight:"24px"}})}))((function(e){var t=e.match,a=e.classes,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(""),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],y=p[1],S=Z()(t,"path","").split("/"),C=Z()(is,S[2],!1);if(!C)return null;var k=[].filter((function(e){return e.name.toLocaleLowerCase().includes(j.toLocaleLowerCase())}));return Object(n.jsxs)(i.a.Fragment,{children:[s&&Object(n.jsx)(vo,{closeModalAndRefresh:function(){y(!0),l(!1)},selectedConfiguration:C.configuration}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"h6",children:C.title})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:a.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:a.searchField,id:"search-resource",label:"",onChange:function(e){m(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(cs.a,{}),onClick:function(){l(!0)},children:"Add Webhook Configuration"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"edit",onClick:function(){}}],columns:[{label:"Name",elementKey:"name"}],isLoading:O,records:k,entityName:"Webhook Configurations",idField:"name"})})]})]})})),os=Object(s.b)(null,{setErrorSnackMessage:V})((function(e){var t=e.deleteOpen,a=e.selectedTenant,i=e.closeDeleteModalAndRefresh,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1];Object(c.useEffect)((function(){l&&pe.invoke("DELETE","/api/v1/namespaces/".concat(a.namespace,"/tenants/").concat(a.name)).then((function(){d(!1),i(!0)})).catch((function(e){d(!1),r(e)}))}),[l]);return Object(n.jsxs)(ha.a,{open:t,onClose:function(){i(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Tenant"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["To continue please type ",Object(n.jsx)("b",{children:a.name})," in the box.",Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"retype-tenant",name:"retype-tenant",onChange:function(e){h(e.target.value)},label:"",value:m})})]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){i(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){m===a.name?d(!0):r("Tenant name is not correct")},color:"secondary",autoFocus:!0,disabled:m!==a.name,children:"Delete"})]})]})})),ss=function(e,t){return{podAntiAffinity:{requiredDuringSchedulingIgnoredDuringExecution:[{labelSelector:{matchExpressions:[{key:"v1.min.io/tenant",operator:"In",values:[e]},{key:"v1.min.io/pool",operator:"In",values:[t]}]},topologyKey:"kubernetes.io/hostname"}]}}},ls=function(e,t,a,n){var c=e.split("&"),i=[];c.forEach((function(e){var t=e.split("=");2===t.length&&i.push({key:t[0],operator:"In",values:[t[1]]})}));var r={nodeAffinity:{requiredDuringSchedulingIgnoredDuringExecution:{nodeSelectorTerms:[{matchExpressions:i}]}}};if(t){var o=ss(a,n);r.podAntiAffinity=o.podAntiAffinity}return console.log(r),r},ds="ADD_TENANT/SET_CURRENT_PAGE",bs="ADD_TENANT/SET_ADVANCED_MODE",us="ADD_TENANT/UPDATE_FIELD",js="ADD_TENANT/SET_PAGE_VALID",ms="ADD_TENANT/RESET_FORM",hs="ADD_TENANT/SET_STORAGE_CLASSES_LIST",ps="ADD_TENANT/ADD_MINIO_KEYPAIR",Os="ADD_TENANT/ADD_FILE_MINIO_KEYPAIR",gs="ADD_TENANT/DELETE_MINIO_KEYPAIR",fs="ADD_TENANT/ADD_CA_KEYPAIR",xs="ADD_TENANT/ADD_FILE_TO_CA_KEYPAIR",vs="ADD_TENANT/DELETE_CA_KEYPAIR",ys="ADD_TENANT/ADD_CONSOLE_CERT",Ss="ADD_TENANT/ENCRYPTION_SERVER_CERT",Cs="ADD_TENANT/ENCRYPTION_CLIENT_CERT",ks="ADD_TENANT/ENCRYPTION_VAULT_CERT",Ns="ADD_TENANT/ENCRYPTION_VAULT_CA",ws="ADD_TENANT/ENCRYPTION_GEMALTO_CA",Ts=function(e,t,a){return{type:us,pageName:e,field:t,value:a}},Es=function(e,t){return{type:js,pageName:e,valid:t}},As=function(e,t,a){return{type:ys,key:e,fileName:t,value:a}},_s=function(e){var t={};return e.forEach((function(e){if(e.required&&""===e.value.trim())t[e.fieldKey]="Field cannot be empty";else if(e.required||""!==e.value.trim())if(e.customValidation&&e.customValidationMessage)t[e.fieldKey]=e.customValidationMessage;else if(e.pattern&&e.customPatternMessage){var a=new RegExp(e.pattern,"g");e.value.match(a)||(t[e.fieldKey]=e.customPatternMessage)}else;})),t},Is=function(e,t){var a=Object(j.a)({},e);return delete a[t],a},Ms=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:16,t="",a="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n=0;n0)return k(!1),void E(!1);k(!0),pe.invoke("GET","/api/v1/namespaces/".concat(s,"/resourcequotas/").concat(s,"-storagequota")).then((function(e){var t=Z()(e,"elements",[]);m(function(e){var t=Z()(e,"elements",[]),a={};return t.forEach((function(e){var t=e.name.split(".storageclass.storage.k8s.io/requests.storage")[0],n=Z()(e,"hard",0),c=Z()(e,"used",0);a[t]=n-c})),a}(e));var a=t.map((function(e){var t=Z()(e,"name","").split(".storageclass.storage.k8s.io/requests.storage")[0];return{label:t,value:t}}));j(a),a.length>0&&A("selectedStorageClass",a[0].value),E(!1)})).catch((function(e){E(!1),console.error("Namespace error: ",e)}))})).catch((function(e){console.error(e),p("Error validating if namespace already has tenants")}))}),[s,m,p,j,A]),I=Object(c.useMemo)((function(){return _n()(_,500)}),[_]);Object(c.useEffect)((function(){if(""!==s)return I(),E(!0),I.cancel}),[I,s]),Object(c.useEffect)((function(){var e=!1,t="";C||T?a.length<1&&C&&!T&&(e=!0,t="Please enter a valid namespace"):(e=!0,t="You can only create one tenant per namespace");var n=_s([{fieldKey:"tenant-name",required:!0,pattern:/^[a-z0-9-]{3,63}$/,customPatternMessage:"Name only can contain lowercase letters, numbers and '-'. Min. Length: 3",value:o},{fieldKey:"namespace",required:!0,value:s,customValidation:e,customValidationMessage:t}]),c=!("tenant-name"in n)&&!("namespace"in n)&&a.length>0;h("nameTenant",c),v(n)}),[a,s,o,h,C,T]);var M=function(e){v(Is(f,e))};return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Name Tenant"}),Object(n.jsx)("span",{className:t.descriptionText,children:"How would you like to name this new tenant?"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"tenant-name",name:"tenant-name",onChange:function(e){A("tenantName",e.target.value),M("tenant-name")},label:"Name",value:o,required:!0,error:f["tenant-name"]||""})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"namespace",name:"namespace",onChange:function(e){A("namespace",e.target.value),M("namespace")},label:"Namespace",value:s,error:f.namespace||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"storage_class",name:"storage_class",onChange:function(e){A("selectedStorageClass",e.target.value)},label:"Storage Class",value:l,options:a,disabled:a.length<1})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsxs)("span",{className:t.descriptionText,children:["Check 'Advanced Mode' for additional configuration options, such as configuring an Identity Provider, Encryption at rest, and customized TLS/SSL Certificates.",Object(n.jsx)("br",{}),"Leave 'Advanced Mode' unchecked to use the secure default settings for the tenant."]}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(Pa,{value:"adv_mode",id:"adv_mode",name:"adv_mode",checked:r,onChange:function(e){var t=e.target.checked;d(t)},label:"Advanced Mode"})]})]})}))),Ls=Object(s.b)((function(e){return{storageClasses:e.tenants.createTenant.storageClasses,customImage:e.tenants.createTenant.fields.configure.customImage,imageName:e.tenants.createTenant.fields.configure.imageName,consoleImage:e.tenants.createTenant.fields.configure.consoleImage,customDockerhub:e.tenants.createTenant.fields.configure.customDockerhub,imageRegistry:e.tenants.createTenant.fields.configure.imageRegistry,imageRegistryUsername:e.tenants.createTenant.fields.configure.imageRegistryUsername,imageRegistryPassword:e.tenants.createTenant.fields.configure.imageRegistryPassword,exposeMinIO:e.tenants.createTenant.fields.configure.exposeMinIO,exposeConsole:e.tenants.createTenant.fields.configure.exposeConsole,prometheusCustom:e.tenants.createTenant.fields.configure.prometheusCustom,logSearchCustom:e.tenants.createTenant.fields.configure.logSearchCustom,logSearchVolumeSize:e.tenants.createTenant.fields.configure.logSearchVolumeSize,logSearchSizeFactor:e.tenants.createTenant.fields.configure.logSearchSizeFactor,prometheusVolumeSize:e.tenants.createTenant.fields.configure.prometheusVolumeSize,prometheusSizeFactor:e.tenants.createTenant.fields.configure.prometheusSizeFactor,logSearchSelectedStorageClass:e.tenants.createTenant.fields.configure.logSearchSelectedStorageClass,logSearchImage:e.tenants.createTenant.fields.configure.logSearchImage,kesImage:e.tenants.createTenant.fields.configure.kesImage,logSearchPostgresImage:e.tenants.createTenant.fields.configure.logSearchPostgresImage,prometheusSelectedStorageClass:e.tenants.createTenant.fields.configure.prometheusSelectedStorageClass,prometheusImage:e.tenants.createTenant.fields.configure.prometheusImage,selectedStorageClass:e.tenants.createTenant.fields.nameTenant.selectedStorageClass}}),{updateAddField:Ts,isPageValid:Es}),Bs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Ls((function(e){var t=e.classes,a=e.storageClasses,i=e.customImage,r=e.imageName,o=e.consoleImage,s=e.customDockerhub,l=e.imageRegistry,d=e.imageRegistryUsername,b=e.imageRegistryPassword,j=e.exposeMinIO,m=e.exposeConsole,h=e.prometheusCustom,p=e.logSearchCustom,O=e.logSearchVolumeSize,g=(e.logSearchSizeFactor,e.logSearchImage),f=e.kesImage,v=e.logSearchPostgresImage,y=e.prometheusVolumeSize,S=(e.prometheusSizeFactor,e.logSearchSelectedStorageClass),C=e.prometheusSelectedStorageClass,k=e.prometheusImage,N=e.updateAddField,w=e.isPageValid,T=e.selectedStorageClass,E=Object(c.useState)({}),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useCallback)((function(e,t){N("configure",e,t)}),[N]);Object(c.useEffect)((function(){var e=[];h&&(e=[].concat(Object($e.a)(e),[{fieldKey:"prometheus_storage_class",required:!0,value:C,customValidation:""===C,customValidationMessage:"Field cannot be empty"},{fieldKey:"prometheus_volume_size",required:!0,value:y,customValidation:""===y||parseInt(y)<=0,customValidationMessage:"Volume size must be present and be greatter than 0"}])),p&&(e=[].concat(Object($e.a)(e),[{fieldKey:"log_search_storage_class",required:!0,value:S,customValidation:""===S,customValidationMessage:"Field cannot be empty"},{fieldKey:"log_search_volume_size",required:!0,value:O,customValidation:""===O||parseInt(O)<=0,customValidationMessage:"Volume size must be present and be greatter than 0"}])),i&&(e=[].concat(Object($e.a)(e),[{fieldKey:"image",required:!1,value:r,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/minio:VERSION'"},{fieldKey:"consoleImage",required:!1,value:o,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/console:VERSION'"},{fieldKey:"logSearchImage",required:!1,value:g,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/logsearchapi:VERSION'"},{fieldKey:"kesImage",required:!1,value:f,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/kes:VERSION'"},{fieldKey:"logSearchPostgresImage",required:!1,value:v,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'library/postgres:VERSION'"},{fieldKey:"prometheusImage",required:!1,value:k,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/prometheus:VERSION'"}]),s&&(e=[].concat(Object($e.a)(e),[{fieldKey:"registry",required:!0,value:l},{fieldKey:"registryUsername",required:!0,value:d},{fieldKey:"registryPassword",required:!0,value:b}])));var t=_s(e);w("configure",0===Object.keys(t).length),I(t)}),[i,r,o,g,f,v,k,s,l,d,b,w,h,p,C,y,S,O]),Object(c.useEffect)((function(){a.length>0&&(0===a.filter((function(e){return e.value===C})).length&&M("prometheusSelectedStorageClass",T),0===a.filter((function(e){return e.value===S})).length&&M("logSearchSelectedStorageClass",T))}),[S,C,T,a,M]);var F=function(e){I(Is(_,e))};return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Configure"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Basic configurations for tenant management"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"custom_image",id:"custom_image",name:"custom_image",checked:i,onChange:function(e){var t=e.target.checked;M("customImage",t)},label:"Use custom image"})}),i&&Object(n.jsxs)(c.Fragment,{children:["Please enter the MinIO docker image to use",Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"image",name:"image",onChange:function(e){M("imageName",e.target.value),F("image")},label:"MinIO's Image",value:r,error:_.image||"",placeholder:"E.g. minio/minio:RELEASE.2021-04-22T15-44-28Z"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"consoleImage",name:"consoleImage",onChange:function(e){M("consoleImage",e.target.value),F("consoleImage")},label:"Console's Image",value:o,error:_.consoleImage||"",placeholder:"E.g. minio/console:v0.7.2"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"logSearchImage",name:"logSearchImage",onChange:function(e){M("logSearchImage",e.target.value),F("logSearchImage")},label:"Log Search API's Image",value:g,error:_.logSearchImage||"",placeholder:"E.g. minio/logsearchapi:v4.0.9"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"kesImage",name:"kesImage",onChange:function(e){M("kesImage",e.target.value),F("kesImage")},label:"KES Image",value:f,error:_.kesImage||"",placeholder:"E.g. minio/kes:v0.14.0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"logSearchPostgresImage",name:"logSearchPostgresImage",onChange:function(e){M("logSearchPostgresImage",e.target.value),F("logSearchPostgresImage")},label:"Log Search Postgres's Image",value:v,error:_.logSearchPostgresImage||"",placeholder:"E.g. library/postgres:13"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prometheusImage",name:"prometheusImage",onChange:function(e){M("prometheusImage",e.target.value),F("prometheusImage")},label:"Prometheus Image",value:k,error:_.prometheusImage||"",placeholder:"E.g. quay.io/prometheus/prometheus:latest"})})]}),i&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"custom_docker_hub",id:"custom_docker_hub",name:"custom_docker_hub",checked:s,onChange:function(e){var t=e.target.checked;M("customDockerhub",t)},label:"Set/Update Image Registry"})})}),s&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"registry",name:"registry",onChange:function(e){M("imageRegistry",e.target.value)},label:"Endpoint",value:l,error:_.registry||"",placeholder:"E.g. https://index.docker.io/v1/",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"registryUsername",name:"registryUsername",onChange:function(e){M("imageRegistryUsername",e.target.value)},label:"Username",value:d,error:_.registryUsername||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"registryPassword",name:"registryPassword",onChange:function(e){M("imageRegistryPassword",e.target.value)},label:"Password",value:b,error:_.registryPassword||"",required:!0})})]}),Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Expose Services"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Whether the tenant's services should request an external IP."})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"expose_minio",id:"expose_minio",name:"expose_minio",checked:j,onChange:function(e){var t=e.target.checked;M("exposeMinIO",t)},label:"Expose MiniO Service"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"expose_console",id:"expose_console",name:"expose_console",checked:m,onChange:function(e){var t=e.target.checked;M("exposeConsole",t)},label:"Expose Console Service"})}),Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Additional Configurations"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Configure Storage Classes & Storage size for Log Search and Prometheus add-ons"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"logSearchConfig",id:"log_search_configuration",name:"log_search_configuration",checked:p,onChange:function(e){var t=e.target.checked;M("logSearchCustom",t)},label:"Override Log Search defaults"})}),p&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"log_search_storage_class",name:"log_search_storage_class",onChange:function(e){M("logSearchSelectedStorageClass",e.target.value)},label:"Log Search Storage Class",value:S,options:a,disabled:a.length<1})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.multiContainer,children:Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"log_search_volume_size",name:"log_search_volume_size",onChange:function(e){M("logSearchVolumeSize",e.target.value),F("log_search_volume_size")},label:"Storage Size [Gi]",value:O,required:!0,error:_.log_search_volume_size||"",min:"0"})})})}),Object(n.jsx)("br",{})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"prometheusConfig",id:"prometheus_configuration",name:"prometheus_configuration",checked:h,onChange:function(e){var t=e.target.checked;M("prometheusCustom",t)},label:"Override Prometheus defaults"})}),h&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"prometheus_storage_class",name:"prometheus_storage_class",onChange:function(e){M("prometheusSelectedStorageClass",e.target.value)},label:"Prometheus Storage Class",value:C,options:a,disabled:a.length<1})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.multiContainer,children:Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"prometheus_volume_size",name:"prometheus_volume_size",onChange:function(e){M("prometheusVolumeSize",e.target.value),F("prometheus_volume_size")},label:"Storage Size [Gi]",value:y,required:!0,error:_.prometheus_volume_size||"",min:"0"})})})}),Object(n.jsx)("br",{})]})]})}))),Rs=a(433),Ps=a.n(Rs),zs=a(434),Ks=a.n(zs),Us=Object(s.b)((function(e){return{idpSelection:e.tenants.createTenant.fields.identityProvider.idpSelection,accessKeys:e.tenants.createTenant.fields.identityProvider.accessKeys,secretKeys:e.tenants.createTenant.fields.identityProvider.secretKeys,openIDURL:e.tenants.createTenant.fields.identityProvider.openIDURL,openIDClientID:e.tenants.createTenant.fields.identityProvider.openIDClientID,openIDSecretID:e.tenants.createTenant.fields.identityProvider.openIDSecretID,ADURL:e.tenants.createTenant.fields.identityProvider.ADURL,ADSkipTLS:e.tenants.createTenant.fields.identityProvider.ADSkipTLS,ADServerInsecure:e.tenants.createTenant.fields.identityProvider.ADServerInsecure,ADUserNameFilter:e.tenants.createTenant.fields.identityProvider.ADUserNameFilter,ADGroupBaseDN:e.tenants.createTenant.fields.identityProvider.ADGroupBaseDN,ADGroupSearchFilter:e.tenants.createTenant.fields.identityProvider.ADGroupSearchFilter,ADNameAttribute:e.tenants.createTenant.fields.identityProvider.ADNameAttribute}}),{updateAddField:Ts,isPageValid:Es}),Ws=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"},shortened:{gridTemplateColumns:"auto auto 50px 50px",display:"grid",gridGap:20},buttonTray:{gridTemplateColumns:"auto auto 10px 10px",display:"grid",gridGap:0,height:16,marginTop:12}},we),Ve))}))(Us((function(e){var t=e.classes,a=e.idpSelection,i=e.accessKeys,r=e.secretKeys,o=e.openIDURL,s=e.openIDClientID,l=e.openIDSecretID,d=e.ADURL,b=e.ADSkipTLS,j=e.ADServerInsecure,m=e.ADUserNameFilter,h=e.ADGroupBaseDN,p=e.ADGroupSearchFilter,O=e.ADNameAttribute,g=e.updateAddField,f=e.isPageValid,y=Object(c.useState)({}),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useCallback)((function(e,t){g("identityProvider",e,t)}),[g]),w=function(e,t){var a=Object($e.a)(i);a[e]=t,N("accessKeys",a)},T=function(e,t){var a=Object($e.a)(r);a[e]=t,N("secretKeys",a)},E=function(e){k(Is(C,e))};Object(c.useEffect)((function(){var e=[];if("Built-in"===a){e=Object($e.a)(e);for(var t=0;t1&&(i.splice(a,1),r.splice(a,1),w(i.length-1,i[i.length-1]))},children:Object(n.jsx)(Ks.a,{})})})]})]})},"identityField-".concat(a.toString()))}))),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Identity Provider"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Access to the tenant can be controlled via an external Identity Manager."})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Da,{currentSelection:a,id:"idp-options",name:"idp-options",label:"Protocol",onChange:function(e){N("idpSelection",e.target.value)},selectorOptions:[{label:"Built-in",value:"Built-in"},{label:"OpenID",value:"OpenID"},{label:"Active Directory",value:"AD"}]}),"Add additional users"]})," ","Built-in"===a&&Object(n.jsx)(c.Fragment,{children:A}),"OpenID"===a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"openID_URL",name:"openID_URL",onChange:function(e){N("openIDURL",e.target.value),E("openID_URL")},label:"URL",value:o,error:C.openID_URL||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"openID_clientID",name:"openID_clientID",onChange:function(e){N("openIDClientID",e.target.value),E("openID_clientID")},label:"Client ID",value:s,error:C.openID_clientID||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"openID_secretID",name:"openID_secretID",onChange:function(e){N("openIDSecretID",e.target.value),E("openID_secretID")},label:"Secret ID",value:l,error:C.openID_secretID||"",required:!0})})]}),"AD"===a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"AD_URL",name:"AD_URL",onChange:function(e){N("ADURL",e.target.value),E("AD_URL")},label:"URL",value:d,error:C.AD_URL||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"ad_skipTLS",id:"ad_skipTLS",name:"ad_skipTLS",checked:b,onChange:function(e){var t=e.target.checked;N("ADSkipTLS",t)},label:"Skip TLS Verification"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"ad_serverInsecure",id:"ad_serverInsecure",name:"ad_serverInsecure",checked:j,onChange:function(e){var t=e.target.checked;N("ADServerInsecure",t)},label:"Server Insecure"})}),j?Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(v.a,{className:t.error,variant:"caption",display:"block",gutterBottom:!0,children:"Warning: All traffic with Active Directory will be unencrypted"}),Object(n.jsx)("br",{})]}):null,Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_userNameFilter",name:"ad_userNameFilter",onChange:function(e){N("ADUserNameFilter",e.target.value),E("ad_userNameFilter")},label:"User Search Filter",value:m,error:C.ad_userNameFilter||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_groupBaseDN",name:"ad_groupBaseDN",onChange:function(e){N("ADGroupBaseDN",e.target.value),E("ad_groupBaseDN")},label:"Group Search Base DN",value:h,error:C.ad_groupBaseDN||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_groupSearchFilter",name:"ad_groupSearchFilter",onChange:function(e){N("ADGroupSearchFilter",e.target.value),E("ad_groupSearchFilter")},label:"Group Search Filter",value:p,error:C.ad_groupSearchFilter||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_nameAttribute",name:"ad_nameAttribute",onChange:function(e){N("ADNameAttribute",e.target.value),E("ad_nameAttribute")},label:"Group Name Attribute",value:O,error:C.ad_nameAttribute||"",required:!0})})]})]})}))),Vs=Object(s.b)((function(e){return{enableTLS:e.tenants.createTenant.fields.security.enableTLS,enableAutoCert:e.tenants.createTenant.fields.security.enableAutoCert,enableCustomCerts:e.tenants.createTenant.fields.security.enableCustomCerts,minioCertificates:e.tenants.createTenant.certificates.minioCertificates,caCertificates:e.tenants.createTenant.certificates.caCertificates,consoleCertificate:e.tenants.createTenant.certificates.consoleCertificate}}),{updateAddField:Ts,isPageValid:Es,addFileToCaCertificates:function(e,t,a,n){return{type:xs,id:e,key:t,fileName:a,value:n}},deleteCaCertificate:function(e){return{type:vs,id:e}},addCaCertificate:function(){return{type:fs}},addKeyPair:function(){return{type:ps}},addFileToKeyPair:function(e,t,a,n){return{type:Os,id:e,key:t,fileName:a,value:n}},deleteKeyPair:function(e){return{type:gs,id:e}},addConsoleCertificate:As}),Gs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Vs((function(e){var t=e.classes,a=e.enableTLS,i=e.enableAutoCert,r=e.enableCustomCerts,o=e.minioCertificates,s=e.caCertificates,l=e.consoleCertificate,d=e.updateAddField,b=e.isPageValid,u=e.addFileToCaCertificates,j=e.deleteCaCertificate,m=e.addCaCertificate,h=e.addKeyPair,p=e.addFileToKeyPair,O=e.deleteKeyPair,f=Object(c.useCallback)((function(e,t){d("security",e,t)}),[d]);return Object(c.useEffect)((function(){b("security",!a||(!!i||!!r))}),[a,i,r,b]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("div",{className:t.headerElement,children:Object(n.jsx)("h3",{className:t.h3Section,children:"Security"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Pa,{value:"enableTLS",id:"enableTLS",name:"enableTLS",checked:a,onChange:function(e){var t=e.target.checked;f("enableTLS",t)},label:"Enable TLS"}),"Enable TLS for the tenant, this is required for Encryption Configuration",a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(v.a,{variant:"caption",display:"block",gutterBottom:!0,children:"AutoCert: MinIO Operator will generate all TLS certificates automatically"}),Object(n.jsx)(v.a,{variant:"caption",display:"block",gutterBottom:!0,children:"Custom certificates: Allow user to provide your own certificates"}),Object(n.jsx)("br",{})]})]}),a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Pa,{value:"enableAutoCert",id:"enableAutoCert",name:"enableAutoCert",checked:i,onChange:function(e){var t=e.target.checked;f("enableAutoCert",t)},label:"Enable AutoCert"}),Object(n.jsx)(Pa,{value:"enableCustomCerts",id:"enableCustomCerts",name:"enableCustomCerts",checked:r,onChange:function(e){var t=e.target.checked;f("enableCustomCerts",t)},label:"Custom Certificates"})]}),r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"MinIO Certificates"})}),o.map((function(e){return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:5,children:Object(n.jsx)(qo,{onChange:function(t,a){p(e.id,"key",a,t)},accept:".key,.pem",id:"tlsKey",name:"tlsKey",label:"Key",value:e.key})}),Object(n.jsx)(x.a,{item:!0,xs:5,children:Object(n.jsx)(qo,{onChange:function(t,a){p(e.id,"cert",a,t)},accept:".cer,.crt,.cert,.pem",id:"tlsCert",name:"tlsCert",label:"Cert",value:e.cert})}),Object(n.jsx)(x.a,{item:!0,xs:1,children:Object(n.jsx)(g.a,{onClick:function(){O(e.id)},color:"secondary",children:"Remove"})})]},e.id)})),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{onClick:h,color:"primary",children:"Add More"})})]}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsx)(wi.a,{}),Object(n.jsx)("br",{})]})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"CA Certificates"})}),s.map((function(e){return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(qo,{onChange:function(t,a){u(e.id,"cert",a,t)},accept:".cer,.crt,.cert,.pem",id:"tlsCert",name:"tlsCert",label:"Cert",value:e.cert})}),Object(n.jsx)(x.a,{item:!0,xs:1,children:Object(n.jsx)(g.a,{onClick:function(){j(e.id)},color:"secondary",children:"Remove"})})]},e.id)})),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{onClick:m,color:"primary",children:"Add More"})})]}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsx)(wi.a,{}),Object(n.jsx)("br",{})]})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"Console Certificates"})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){As("key",t,e)},accept:".key,.pem",id:"consoleKey",name:"consoleKey",label:"Key",value:l.key})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){As("cert",t,e)},accept:".cer,.crt,.cert,.pem",id:"consoleCert",name:"consoleCert",label:"Cert",value:l.cert})})]})]})]})]})}))),qs=Object(s.b)((function(e){return{enableEncryption:e.tenants.createTenant.fields.encryption.enableEncryption,encryptionType:e.tenants.createTenant.fields.encryption.encryptionType,gemaltoEndpoint:e.tenants.createTenant.fields.encryption.gemaltoEndpoint,gemaltoToken:e.tenants.createTenant.fields.encryption.gemaltoToken,gemaltoDomain:e.tenants.createTenant.fields.encryption.gemaltoDomain,gemaltoRetry:e.tenants.createTenant.fields.encryption.gemaltoRetry,awsEndpoint:e.tenants.createTenant.fields.encryption.awsEndpoint,awsRegion:e.tenants.createTenant.fields.encryption.awsRegion,awsKMSKey:e.tenants.createTenant.fields.encryption.awsKMSKey,awsAccessKey:e.tenants.createTenant.fields.encryption.awsAccessKey,awsSecretKey:e.tenants.createTenant.fields.encryption.awsSecretKey,awsToken:e.tenants.createTenant.fields.encryption.awsToken,vaultEndpoint:e.tenants.createTenant.fields.encryption.vaultEndpoint,vaultEngine:e.tenants.createTenant.fields.encryption.vaultEngine,vaultNamespace:e.tenants.createTenant.fields.encryption.vaultNamespace,vaultPrefix:e.tenants.createTenant.fields.encryption.vaultPrefix,vaultAppRoleEngine:e.tenants.createTenant.fields.encryption.vaultAppRoleEngine,vaultId:e.tenants.createTenant.fields.encryption.vaultId,vaultSecret:e.tenants.createTenant.fields.encryption.vaultSecret,vaultRetry:e.tenants.createTenant.fields.encryption.vaultRetry,vaultPing:e.tenants.createTenant.fields.encryption.vaultPing,gcpProjectID:e.tenants.createTenant.fields.encryption.gcpProjectID,gcpEndpoint:e.tenants.createTenant.fields.encryption.gcpEndpoint,gcpClientEmail:e.tenants.createTenant.fields.encryption.gcpClientEmail,gcpClientID:e.tenants.createTenant.fields.encryption.gcpClientID,gcpPrivateKeyID:e.tenants.createTenant.fields.encryption.gcpPrivateKeyID,gcpPrivateKey:e.tenants.createTenant.fields.encryption.gcpPrivateKey,enableCustomCertsForKES:e.tenants.createTenant.fields.encryption.enableCustomCertsForKES,enableAutoCert:e.tenants.createTenant.fields.security.enableAutoCert,enableTLS:e.tenants.createTenant.fields.security.enableTLS,minioCertificates:e.tenants.createTenant.certificates.minioCertificates,serverCertificate:e.tenants.createTenant.certificates.serverCertificate,clientCertificate:e.tenants.createTenant.certificates.clientCertificate,vaultCertificate:e.tenants.createTenant.certificates.vaultCertificate,vaultCA:e.tenants.createTenant.certificates.vaultCA,gemaltoCA:e.tenants.createTenant.certificates.gemaltoCA,enableCustomCerts:e.tenants.createTenant.fields.security.enableCustomCerts}}),{updateAddField:Ts,isPageValid:Es,addFileServerCert:function(e,t,a){return{type:Ss,key:e,fileName:t,value:a}},addFileClientCert:function(e,t,a){return{type:Cs,key:e,fileName:t,value:a}},addFileVaultCert:function(e,t,a){return{type:ks,key:e,fileName:t,value:a}},addFileVaultCa:function(e,t){return{type:Ns,fileName:e,value:t}},addFileGemaltoCa:function(e,t){return{type:ws,fileName:e,value:t}}}),Hs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(qs((function(e){var t=e.classes,a=e.updateAddField,i=e.isPageValid,r=e.addFileServerCert,o=e.addFileClientCert,s=e.addFileVaultCert,l=e.addFileVaultCa,d=e.addFileGemaltoCa,b=e.enableEncryption,j=e.enableCustomCerts,m=e.encryptionType,h=e.gemaltoEndpoint,p=e.gemaltoToken,O=e.gemaltoDomain,g=e.gemaltoRetry,f=e.awsEndpoint,y=e.awsRegion,S=e.awsKMSKey,C=e.awsAccessKey,k=e.awsSecretKey,N=e.awsToken,w=e.vaultEndpoint,T=e.vaultEngine,E=e.vaultNamespace,A=e.vaultPrefix,_=e.vaultAppRoleEngine,I=e.vaultId,M=e.vaultSecret,F=e.vaultRetry,D=e.vaultPing,L=e.gcpProjectID,B=e.gcpEndpoint,R=e.gcpClientEmail,P=e.gcpClientID,z=e.gcpPrivateKeyID,K=e.gcpPrivateKey,U=e.enableCustomCertsForKES,W=e.enableAutoCert,V=e.enableTLS,G=e.minioCertificates,q=e.serverCertificate,H=e.clientCertificate,Y=e.vaultCertificate,Q=e.vaultCA,Z=e.gemaltoCA,J=Object(c.useState)({}),$=Object(u.a)(J,2),X=$[0],ee=$[1],te=!1;V&&(W||G&&G.filter((function(e){return e.encoded_key&&e.encoded_cert})).length>0)&&(te=!0);var ae=Object(c.useCallback)((function(e,t){a("encryption",e,t)}),[a]),ne=function(e){ee(Is(X,e))};return Object(c.useEffect)((function(){var e=[];b&&(j&&(e=[].concat(Object($e.a)(e),[{fieldKey:"serverKey",required:!W,value:q.encoded_key},{fieldKey:"serverCert",required:!W,value:q.encoded_cert},{fieldKey:"clientKey",required:!W,value:H.encoded_key},{fieldKey:"clientCert",required:!W,value:H.encoded_cert}])),"vault"===m&&(e=[].concat(Object($e.a)(e),[{fieldKey:"vault_endpoint",required:!0,value:w},{fieldKey:"vault_id",required:!0,value:I},{fieldKey:"vault_secret",required:!0,value:M},{fieldKey:"vault_ping",required:!1,value:D,customValidation:parseInt(D)<0,customValidationMessage:"Value needs to be 0 or greater"},{fieldKey:"vault_retry",required:!1,value:F,customValidation:parseInt(F)<0,customValidationMessage:"Value needs to be 0 or greater"}])),"aws"===m&&(e=[].concat(Object($e.a)(e),[{fieldKey:"aws_endpoint",required:!0,value:f},{fieldKey:"aws_region",required:!0,value:y},{fieldKey:"aws_accessKey",required:!0,value:C},{fieldKey:"aws_secretKey",required:!0,value:k}])),"gemalto"===m&&(e=[].concat(Object($e.a)(e),[{fieldKey:"gemalto_endpoint",required:!0,value:h},{fieldKey:"gemalto_token",required:!0,value:p},{fieldKey:"gemalto_domain",required:!0,value:O},{fieldKey:"gemalto_retry",required:!1,value:g,customValidation:parseInt(g)<0,customValidationMessage:"Value needs to be 0 or greater"}])));var t=_s(e);i("encryption",0===Object.keys(t).length),ee(t)}),[b,m,w,T,I,M,D,F,f,y,k,C,h,p,O,g,L,i,W,j,q.encoded_key,q.encoded_cert,H.encoded_key,H.encoded_cert]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Encryption"}),Object(n.jsx)("span",{className:t.descriptionText,children:"How would you like to encrypt the information at rest."})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"enableEncryption",id:"enableEncryption",name:"enableEncryption",checked:b,onChange:function(e){var t=e.target.checked;ae("enableEncryption",t)},label:"Enable Server Side Encryption",disabled:!te})}),b&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:m,id:"encryptionType",name:"encryptionType",label:"Encryption Options",onChange:function(e){ae("encryptionType",e.target.value)},selectorOptions:[{label:"Vault",value:"vault"},{label:"AWS",value:"aws"},{label:"Gemalto",value:"gemalto"},{label:"GCP",value:"gcp"}]})}),"vault"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"enableCustomCertsForKES",id:"enableCustomCertsForKES",name:"enableCustomCertsForKES",checked:U||!W,onChange:function(e){var t=e.target.checked;ae("enableCustomCertsForKES",t)},label:"Custom Certificates",disabled:!W})}),(U||!W)&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"Encryption Service Certificates"})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){r("key",t,e),ne("serverKey")},accept:".key,.pem",id:"serverKey",name:"serverKey",label:"Key",error:X.serverKey||"",value:q.key,required:!W})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){r("cert",t,e),ne("serverCert")},accept:".cer,.crt,.cert,.pem",id:"serverCert",name:"serverCert",label:"Cert",error:X.serverCert||"",value:q.cert,required:!W})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"Mutual TLS authentication"})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){o("key",t,e),ne("clientKey")},accept:".key,.pem",id:"clientKey",name:"clientKey",label:"Key",error:X.clientKey||"",value:H.key,required:!W})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){o("cert",t,e),ne("clientCert")},accept:".cer,.crt,.cert,.pem",id:"clientCert",name:"clientCert",label:"Cert",error:X.clientCert||"",value:H.cert,required:!W})})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_endpoint",name:"vault_endpoint",onChange:function(e){ae("vaultEndpoint",e.target.value),ne("vault_endpoint")},label:"Endpoint",value:w,error:X.vault_endpoint||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_engine",name:"vault_engine",onChange:function(e){ae("vaultEngine",e.target.value),ne("vault_engine")},label:"Engine",value:T})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_namespace",name:"vault_namespace",onChange:function(e){ae("vaultNamespace",e.target.value)},label:"Namespace",value:E})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_prefix",name:"vault_prefix",onChange:function(e){ae("vaultPrefix",e.target.value)},label:"Prefix",value:A})}),Object(n.jsx)("h5",{children:"App Role"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_approle_engine",name:"vault_approle_engine",onChange:function(e){ae("vaultAppRoleEngine",e.target.value)},label:"Engine",value:_})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_id",name:"vault_id",onChange:function(e){ae("vaultId",e.target.value),ne("vault_id")},label:"AppRole ID",value:I,error:X.vault_id||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_secret",name:"vault_secret",onChange:function(e){ae("vaultSecret",e.target.value),ne("vault_secret")},label:"AppRole Secret",value:M,error:X.vault_secret||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",min:"0",id:"vault_retry",name:"vault_retry",onChange:function(e){ae("vaultRetry",e.target.value),ne("vault_retry")},label:"Retry (Seconds)",value:F,error:X.vault_retry||""})}),Object(n.jsx)("h5",{children:"Mutual TLS authentication (optional)"}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){s("key",t,e),ne("vault_key")},accept:".key,.pem",id:"vault_key",name:"vault_key",label:"Key",value:Y.key})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){s("cert",t,e),ne("vault_cert")},accept:".cer,.crt,.cert,.pem",id:"vault_cert",name:"vault_cert",label:"Cert",value:Y.cert})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(qo,{onChange:function(e,t){l(t,e),ne("vault_ca")},accept:".cer,.crt,.cert,.pem",id:"vault_ca",name:"vault_ca",label:"CA",value:Q.cert})}),Object(n.jsx)("h5",{children:"Status"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",min:"0",id:"vault_ping",name:"vault_ping",onChange:function(e){ae("vaultPing",e.target.value),ne("vault_ping")},label:"Ping (Seconds)",value:D,error:X.vault_ping||""})})]}),"gcp"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_project_id",name:"gcp_project_id",onChange:function(e){ae("gcpProjectID",e.target.value)},label:"Project ID",value:L})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_endpoint",name:"gcp_endpoint",onChange:function(e){ae("gcpEndpoint",e.target.value)},label:"Endpoint",value:B})}),Object(n.jsx)("h5",{children:"Credentials"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_client_email",name:"gcp_client_email",onChange:function(e){ae("gcpClientEmail",e.target.value)},label:"Client Email",value:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_client_id",name:"gcp_client_id",onChange:function(e){ae("gcpClientID",e.target.value)},label:"Client ID",value:P})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_private_key_id",name:"gcp_private_key_id",onChange:function(e){ae("gcpPrivateKeyID",e.target.value)},label:"Private Key ID",value:z})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_private_key",name:"gcp_private_key",onChange:function(e){ae("gcpPrivateKey",e.target.value)},label:"Private Key",value:K})})]}),"aws"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_endpoint",name:"aws_endpoint",onChange:function(e){ae("awsEndpoint",e.target.value),ne("aws_endpoint")},label:"Endpoint",value:f,error:X.aws_endpoint||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_region",name:"aws_region",onChange:function(e){ae("awsRegion",e.target.value),ne("aws_region")},label:"Region",value:y,error:X.aws_region||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_kmsKey",name:"aws_kmsKey",onChange:function(e){ae("awsKMSKey",e.target.value)},label:"KMS Key",value:S})}),Object(n.jsx)("h5",{children:"Credentials"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_accessKey",name:"aws_accessKey",onChange:function(e){ae("awsAccessKey",e.target.value),ne("aws_accessKey")},label:"Access Key",value:C,error:X.aws_accessKey||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_secretKey",name:"aws_secretKey",onChange:function(e){ae("awsSecretKey",e.target.value),ne("aws_secretKey")},label:"Secret Key",value:k,error:X.aws_secretKey||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_token",name:"aws_token",onChange:function(e){ae("awsToken",e.target.value)},label:"Token",value:N})})]}),"gemalto"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gemalto_endpoint",name:"gemalto_endpoint",onChange:function(e){ae("gemaltoEndpoint",e.target.value),ne("gemalto_endpoint")},label:"Endpoint",value:h,error:X.gemalto_endpoint||"",required:!0})}),Object(n.jsx)("h5",{children:"Credentials"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gemalto_token",name:"gemalto_token",onChange:function(e){ae("gemaltoToken",e.target.value),ne("gemalto_token")},label:"Token",value:p,error:X.gemalto_token||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gemalto_domain",name:"gemalto_domain",onChange:function(e){ae("gemaltoDomain",e.target.value),ne("gemalto_domain")},label:"Domain",value:O,error:X.gemalto_domain||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",min:"0",id:"gemalto_retry",name:"gemalto_retry",onChange:function(e){ae("gemaltoRetry",e.target.value),ne("gemalto_retry")},label:"Retry (seconds)",value:g,error:X.gemalto_retry||""})}),Object(n.jsx)("h5",{children:"Custom CA Root certificate verification"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(qo,{onChange:function(e,t){d(t,e),ne("gemalto_ca")},accept:".cer,.crt,.cert,.pem",id:"gemalto_ca",name:"gemalto_ca",label:"CA",value:Z.cert})})]})]})]})}))),Ys=Object(s.b)((function(e){return{advancedMode:e.tenants.createTenant.advancedModeOn,volumeSize:e.tenants.createTenant.fields.tenantSize.volumeSize,sizeFactor:e.tenants.createTenant.fields.tenantSize.sizeFactor,drivesPerServer:e.tenants.createTenant.fields.tenantSize.drivesPerServer,nodes:e.tenants.createTenant.fields.tenantSize.nodes,memoryNode:e.tenants.createTenant.fields.tenantSize.memoryNode,ecParity:e.tenants.createTenant.fields.tenantSize.ecParity,ecParityChoices:e.tenants.createTenant.fields.tenantSize.ecParityChoices,cleanECChoices:e.tenants.createTenant.fields.tenantSize.cleanECChoices,maxAllocableMemo:e.tenants.createTenant.fields.tenantSize.maxAllocableMemo,memorySize:e.tenants.createTenant.fields.tenantSize.memorySize,distribution:e.tenants.createTenant.fields.tenantSize.distribution,ecParityCalc:e.tenants.createTenant.fields.tenantSize.ecParityCalc,limitSize:e.tenants.createTenant.fields.tenantSize.limitSize,selectedStorageClass:e.tenants.createTenant.fields.nameTenant.selectedStorageClass}}),{updateAddField:Ts,isPageValid:Es}),Qs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Ys((function(e){var t=e.classes,a=e.updateAddField,i=e.isPageValid,r=e.advancedMode,o=e.volumeSize,s=e.sizeFactor,l=e.drivesPerServer,d=e.nodes,b=e.memoryNode,j=e.ecParity,m=e.ecParityChoices,h=e.cleanECChoices,p=e.maxAllocableMemo,O=e.memorySize,g=e.distribution,f=e.ecParityCalc,v=e.limitSize,y=e.selectedStorageClass,S=Object(c.useState)({}),C=Object(u.a)(S,2),k=C[0],N=C[1],w=f.storageFactors.find((function(e){return e.erasureCode===j})),T=Object(c.useCallback)((function(e,t){a("tenantSize",e,t)}),[a]),E=function(e){N(Is(k,e))},A=Object(c.useCallback)((function(){var e=parseInt(b)||0,t=p||0,a=s,n=function(e,t,a){var n=se(e.toString(10),"Gi",!0),c=parseInt(n,10);if(0===a)return{error:"There is no memory available for the selected number of nodes",request:0,limit:0};if(aa)return{error:"The requested memory is greater than the max available memory for the selected number of nodes",request:0,limit:0};var i=parseInt(t,10),r=c;return i>=parseInt(se("1","Pi",!0),10)?r=Math.max(c,parseInt(se("64","Gi",!0),10)):i>=parseInt(se("100","Ti"),10)?r=Math.max(c,parseInt(se("32","Gi",!0),10)):i>=parseInt(se("10","Ti"),10)?r=Math.max(c,parseInt(se("16","Gi",!0),10)):i>=parseInt(se("1","Ti"),10)&&(r=Math.max(c,parseInt(se("8","Gi",!0),10))),{error:"",request:c,limit:r}}(e,se((o||0).toString(10),a),t);T("memorySize",n)}),[p,b,s,T,o]);Object(c.useEffect)((function(){A()}),[b,A]),Object(c.useEffect)((function(){A()}),[p,A]),Object(c.useEffect)((function(){if(m.length>0&&""===g.error){var e=function(e,t,a,n){if(e.length<1)return{error:1,defaultEC:"",erasureCodeSet:0,maxEC:"",rawCapacity:"0",storageFactors:[]};var c=t*a,i=e[0],r=2*parseInt(i.split(":")[1],10),o=e.map((function(e){var a=parseInt(e.split(":")[1],10),n=r/(r-a),i=Math.floor(c/n),o=t-Math.floor(t/n);return{erasureCode:e,storageFactor:n,maxCapacity:i.toString(10),maxFailureTolerations:o}})),s=i,l=e.find((function(e){return"EC:4"===e}));return t>=8&&n>16&&l&&(s="EC:4"),{error:0,storageFactors:o,maxEC:i,rawCapacity:c.toString(10),erasureCodeSet:r,defaultEC:s}}(h,g.persistentVolumes,g.pvSize,g.nodes);T("ecParityCalc",e),T("ecParity",e.defaultEC)}}),[m.length,g,h,T]),Object(c.useEffect)((function(){_(),I(),function(e){""===e||isNaN(parseInt(e))||pe.invoke("GET","/api/v1/cluster/max-allocatable-memory?num_nodes=".concat(e)).then((function(e){var t=e.max_memory?e.max_memory:0;T("maxAllocableMemo",t)})).catch((function(e){T("maxAllocableMemo",0),console.error(e)}))}(d)}),[d,o,s,l]);var _=function(){var e=o,t=s,a=se("12","Ti",!0),n=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,c=se(e.value,e.unit,!0);return parseInt(c,10)v[y],customValidationMessage:"Volume size must be greater than 1Gi and less than ".concat(ce(v[y],!0))},{fieldKey:"memory_per_node",required:!0,value:b,customValidation:parseInt(b)<2,customValidationMessage:"Memory size must be greater than 2Gi"},{fieldKey:"drivesps",required:!0,value:l,customValidation:parseInt(l)<1,customValidationMessage:"There must be at least one drive"}]);i("tenantSize",!("nodes"in t)&&!("volume_size"in t)&&!("memory_per_node"in t)&&!("drivesps"in t)&&""===g.error&&0===f.error&&""===O.error),N(t)}),[d,o,s,b,g,l,f,O,v,y,i]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Tenant Size"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Please select the desired capacity"})]}),Object(n.jsx)("span",{className:t.error,children:g.error}),Object(n.jsx)("span",{className:t.error,children:O.error}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"nodes",name:"nodes",type:"number",onChange:function(e){T("nodes",e.target.value),E("nodes")},label:"Number of Servers",value:d,min:"4",required:!0,error:k.nodes||""})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"drivesps",name:"drivesps",type:"number",onChange:function(e){T("drivesPerServer",e.target.value),E("drivesps")},label:"Number of Drives per Server",value:l,min:"1",required:!0,error:k.drivesps||""})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:t.multiContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"volume_size",name:"volume_size",onChange:function(e){T("volumeSize",e.target.value),E("volume_size")},label:"Total Size",value:o,required:!0,error:k.volume_size||"",min:"0"})}),Object(n.jsx)("div",{className:t.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"Unit",id:"size_factor",name:"size_factor",value:s,onChange:function(e){T("sizeFactor",e.target.value)},options:oe()})})]})}),r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"memory_per_node",name:"memory_per_node",onChange:function(e){T("memoryNode",e.target.value),E("memory_per_node")},label:"Memory per Node [Gi]",value:b,required:!0,error:k.memory_per_node||"",min:"2"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Ea,{id:"ec_parity",name:"ec_parity",onChange:function(e){T("ecParity",e.target.value)},label:"Erasure Code Parity",value:j,options:m}),Object(n.jsx)("span",{className:t.descriptionText,children:"Please select the desired parity. This setting will change the max usable capacity in the cluster"})]})]}),Object(n.jsx)("h4",{children:"Resource Allocation"}),Object(n.jsx)(kn.a,{className:t.table,"aria-label":"simple table",children:Object(n.jsxs)(Cn.a,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Number of Servers"}),Object(n.jsx)(Sn.a,{align:"right",children:parseInt(d)>0?d:"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Drives per Server"}),Object(n.jsx)(Sn.a,{align:"right",children:g?g.disks:"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Drive Capacity"}),Object(n.jsx)(Sn.a,{align:"right",children:g?ce(g.pvSize):"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Total Number of Volumes"}),Object(n.jsx)(Sn.a,{align:"right",children:g?g.persistentVolumes:"-"})]}),!r&&Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Memory per Node"}),Object(n.jsxs)(Sn.a,{align:"right",children:[b," Gi"]})]})]})}),0===f.error&&w&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("h4",{children:"Erasure Code Configuration"}),Object(n.jsx)(kn.a,{className:t.table,"aria-label":"simple table",children:Object(n.jsxs)(Cn.a,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"EC Parity"}),Object(n.jsx)(Sn.a,{align:"right",children:""!==j?j:"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Raw Capacity"}),Object(n.jsx)(Sn.a,{align:"right",children:ce(f.rawCapacity)})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Usable Capacity"}),Object(n.jsx)(Sn.a,{align:"right",children:ce(w.maxCapacity)})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Number of server failures to tolerate"}),Object(n.jsx)(Sn.a,{align:"right",children:g?Math.floor(w.maxFailureTolerations/g.disks):"-"})]})]})})]})]})}))),Zs=Object(s.b)((function(e){return{advancedMode:e.tenants.createTenant.advancedModeOn,enableTLS:e.tenants.createTenant.fields.security.enableTLS,tenantName:e.tenants.createTenant.fields.nameTenant.tenantName,selectedStorageClass:e.tenants.createTenant.fields.nameTenant.selectedStorageClass,customImage:e.tenants.createTenant.fields.configure.customImage,imageName:e.tenants.createTenant.fields.configure.imageName,consoleImage:e.tenants.createTenant.fields.configure.consoleImage,namespace:e.tenants.createTenant.fields.nameTenant.namespace,volumeSize:e.tenants.createTenant.fields.tenantSize.volumeSize,sizeFactor:e.tenants.createTenant.fields.tenantSize.sizeFactor}}),{}),Js=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Zs((function(e){var t=e.classes,a=e.tenantName,i=e.customImage,r=e.imageName,o=e.consoleImage,s=e.namespace,l=e.selectedStorageClass,d=e.volumeSize,b=e.sizeFactor,u=e.advancedMode,j=e.enableTLS;return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Review"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Review the details of the new tenant"})]}),Object(n.jsx)(kn.a,{size:"small",children:Object(n.jsxs)(Cn.a,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Tenant Name"}),Object(n.jsx)(Sn.a,{children:a})]}),i&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"MinIO Image"}),Object(n.jsx)(Sn.a,{children:r})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Console Image"}),Object(n.jsx)(Sn.a,{children:o})]})]}),""!==s&&Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Namespace"}),Object(n.jsx)(Sn.a,{children:s})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Storage Class"}),Object(n.jsx)(Sn.a,{children:l})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Total Size"}),Object(n.jsxs)(Sn.a,{children:[d," ",b]})]}),u&&Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Enable TLS"}),Object(n.jsx)(Sn.a,{children:j?"Enabled":"Disabled"})]})})]})})]})}))),$s=Object(s.b)((function(e){return{podAffinity:e.tenants.createTenant.fields.affinity.podAffinity,nodeSelectorLabels:e.tenants.createTenant.fields.affinity.nodeSelectorLabels,withPodAntiAffinity:e.tenants.createTenant.fields.affinity.withPodAntiAffinity}}),{setModalErrorSnackMessage:q,updateAddField:Ts,isPageValid:Es}),Xs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))($s((function(e){var t=e.classes,a=e.podAffinity,i=e.nodeSelectorLabels,r=e.withPodAntiAffinity,o=(e.setModalErrorSnackMessage,e.updateAddField),s=e.isPageValid,l=Object(c.useState)({}),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useCallback)((function(e,t){o("affinity",e,t)}),[o]);return Object(c.useEffect)((function(){var e=[];if("nodeSelector"===a){var t=!0,n=i.split("&");1===n.length&&""===n[0]&&(t=!1),n.forEach((function(e,a){var c=e.split("=");2!==c.length&&(t=!1),a+1!==n.length&&(""!==c[0]&&""!==c[1]||(t=!1))})),e=[].concat(Object($e.a)(e),[{fieldKey:"labels",required:!0,value:i,customValidation:!t,customValidationMessage:"You need to add at least one label key-pair"}])}var c=_s(e);s("affinity",0===Object.keys(c).length),j(c)}),[s,a,i]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Pod Affinity"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Configure how pods will be assigned to nodes"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Da,{currentSelection:a,id:"affinity-options",name:"affinity-options",label:"Type",onChange:function(e){m("podAffinity",e.target.value)},selectorOptions:[{label:"None",value:"none"},{label:"Default (Pod Anti-afinnity)",value:"default"},{label:"Node Selector",value:"nodeSelector"}]}),"MinIO supports multiple configurations for Pod Afinnity"]}),"nodeSelector"===a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"with_pod_anti_affinity",id:"with_pod_anti_affinity",name:"with_pod_anti_affinity",checked:r,onChange:function(e){var t=e.target.checked;m("withPodAntiAffinity",t)},label:"With Pod Anti-Affinity"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Dn,{name:"labels",label:"Labels",elements:i,onChange:function(e){m("nodeSelectorLabels",e)},keyPlaceholder:"Label Key",valuePlaceholder:"Label Value",tooltip:"Labels to be used in nodeSelector assignation. Invalid key-pairs will be ignored",withBorder:!0}),Object(n.jsx)("span",{className:t.error,children:b.labels})]})]})]})}))),el=Object(s.b)((function(e){return{advancedMode:e.tenants.createTenant.advancedModeOn,namespace:e.tenants.createTenant.fields.nameTenant.namespace,validPages:e.tenants.createTenant.validPages,fields:e.tenants.createTenant.fields,certificates:e.tenants.createTenant.certificates}}),{setModalErrorSnackMessage:q,updateAddField:Ts}),tl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve),Re))}))(el((function(e){var t=e.classes,a=e.advancedMode,i=e.fields,r=e.certificates,o=e.namespace,s=e.validPages,l=e.setModalErrorSnackMessage,d=e.closeAndRefresh,b=Object(c.useState)(!1),m=Object(u.a)(b,2),h=m[0],p=m[1],O=Object(c.useState)(null),g=Object(u.a)(O,2),f=g[0],v=g[1],S=Object(c.useState)(!1),C=Object(u.a)(S,2),k=C[0],N=C[1];Object(c.useEffect)((function(){var e=i.nameTenant.tenantName,t=i.nameTenant.selectedStorageClass,a=i.configure.imageName,n=i.configure.consoleImage,c=i.configure.customDockerhub,s=i.configure.imageRegistry,d=i.configure.imageRegistryUsername,b=i.configure.imageRegistryPassword,u=i.configure.exposeMinIO,m=i.configure.exposeConsole,h=i.identityProvider.idpSelection,O=i.identityProvider.openIDURL,g=i.identityProvider.openIDClientID,f=i.identityProvider.openIDSecretID,x=i.identityProvider.ADURL,y=i.identityProvider.ADSkipTLS,S=i.identityProvider.ADServerInsecure,C=i.identityProvider.ADUserNameFilter,w=i.identityProvider.ADGroupBaseDN,T=i.identityProvider.ADGroupSearchFilter,E=i.identityProvider.ADNameAttribute,A=i.identityProvider.accessKeys,_=i.identityProvider.secretKeys,I=r.minioCertificates,M=r.caCertificates,F=r.consoleCertificate,D=r.serverCertificate,L=r.clientCertificate,B=r.vaultCertificate,R=r.vaultCA,P=r.gemaltoCA,z=i.encryption.enableEncryption,K=i.encryption.encryptionType,U=i.encryption.gemaltoEndpoint,W=i.encryption.gemaltoToken,V=i.encryption.gemaltoDomain,G=i.encryption.gemaltoRetry,q=i.encryption.awsEndpoint,H=i.encryption.awsRegion,Y=i.encryption.awsKMSKey,Q=i.encryption.awsAccessKey,J=i.encryption.awsSecretKey,$=i.encryption.awsToken,X=i.encryption.vaultEndpoint,ee=i.encryption.vaultEngine,te=i.encryption.vaultNamespace,ae=i.encryption.vaultPrefix,ne=i.encryption.vaultAppRoleEngine,ce=i.encryption.vaultId,ie=i.encryption.vaultSecret,re=i.encryption.vaultRetry,oe=i.encryption.vaultPing,se=i.encryption.gcpProjectID,le=i.encryption.gcpEndpoint,de=i.encryption.gcpClientEmail,ue=i.encryption.gcpClientID,je=i.encryption.gcpPrivateKeyID,me=i.encryption.gcpPrivateKey,he=i.security.enableAutoCert,Oe=i.security.enableTLS,ge=i.tenantSize.ecParity,fe=i.tenantSize.distribution,xe=i.tenantSize.memorySize,ve=i.configure.logSearchCustom,ye=i.configure.prometheusCustom,Se=i.configure.logSearchVolumeSize,Ce=i.configure.logSearchSelectedStorageClass,ke=i.configure.logSearchImage,Ne=i.configure.kesImage,we=i.configure.logSearchPostgresImage,Te=i.configure.prometheusImage,Ee=i.configure.prometheusSelectedStorageClass,Ae=i.configure.prometheusVolumeSize,_e=i.affinity.podAffinity,Ie=i.affinity.nodeSelectorLabels,Me=i.affinity.withPodAntiAffinity;if(k){var Fe=be([]),De={};switch(_e){case"default":De={affinity:ss(e,Fe)};break;case"nodeSelector":De={affinity:ls(Ie,Me,e,Fe)}}var Le=ge.split(":")[1],Be={name:e,namespace:o,access_key:"",secret_key:"",access_keys:[],secret_keys:[],enable_tls:Oe&&he,enable_console:!0,enable_prometheus:!0,service_name:"",image:a,console_image:n,expose_minio:u,expose_console:m,pools:[Object(j.a)({name:Fe,servers:fe.nodes,volumes_per_server:fe.disks,volume_configuration:{size:fe.pvSize,storage_class_name:t},resources:{requests:{memory:xe.request},limits:{memory:xe.limit}}},De)],erasureCodingParity:parseInt(Le,10)};c&&(Be=Object(j.a)(Object(j.a)({},Be),{},{image_registry:{registry:s,username:d,password:b}})),Be=ve?Object(j.a)(Object(j.a)({},Be),{},{logSearchConfiguration:{storageClass:Ce,storageSize:parseInt(Se),image:ke,postgres_image:we}}):Object(j.a)(Object(j.a)({},Be),{},{logSearchConfiguration:{image:ke,postgres_image:we}}),Be=ye?Object(j.a)(Object(j.a)({},Be),{},{prometheusConfiguration:{storageClass:Ee,storageSize:parseInt(Ae),image:Te}}):Object(j.a)(Object(j.a)({},Be),{},{prometheusConfiguration:{image:Te}});var Re=null,Pe=null,ze=null;if(M.length>0&&(ze={ca_certificates:M.map((function(e){return e.encoded_cert})).filter((function(e){return e}))}),Oe&&I.length>0&&(Re={minio:I.map((function(e){return{crt:e.encoded_cert,key:e.encoded_key}})).filter((function(e){return e.crt&&e.key}))}),Oe&&""!==F.encoded_cert&&""!==F.encoded_key&&(Pe={console:{crt:F.encoded_cert,key:F.encoded_key}}),(Re||Pe||ze)&&(Be=Object(j.a)(Object(j.a)({},Be),{},{tls:Object(j.a)(Object(j.a)(Object(j.a)({},Re),Pe),ze)})),z){var Ke={};switch(K){case"gemalto":var Ue={};""!==P.encoded_cert&&(Ue={ca:P.encoded_cert}),Ke={gemalto:{keysecure:{endpoint:U,credentials:{token:W,domain:V,retry:parseInt(G)},tls:Object(j.a)({},Ue)}}};break;case"aws":Ke={aws:{secretsmanager:{endpoint:q,region:H,kmskey:Y,credentials:{accesskey:Q,secretkey:J,token:$}}}};break;case"gcp":Ke={gcp:{secretmanager:{project_id:se,endpoint:le,credentials:{client_email:de,client_id:ue,private_key_id:je,private_key:me}}}};break;case"vault":var We=null,Ve=null;""!==B.encoded_key&&""!==B.encoded_cert&&(We={key:B.encoded_key,crt:B.encoded_cert}),""!==R.encoded_cert&&(Ve={ca:R.encoded_cert});var Ge=null;(We||R)&&(Ge={tls:Object(j.a)(Object(j.a)({},We),Ve)}),Ke={vault:Object(j.a)(Object(j.a)({endpoint:X,engine:ee,namespace:te,prefix:ae,approle:{engine:ne,id:ce,secret:ie,retry:parseInt(re)}},Ge),{},{status:{ping:parseInt(oe)}})}}var qe={},He={};""!==L.encoded_key&&""!==L.encoded_cert&&(He={client:{key:L.encoded_key,crt:L.encoded_cert}}),""!==D.encoded_key&&""!==D.encoded_cert&&(qe={server:{key:D.encoded_key,crt:D.encoded_cert}}),Be=Object(j.a)(Object(j.a)({},Be),{},{encryption:Object(j.a)(Object(j.a)(Object(j.a)({image:Ne},He),qe),Ke)})}var Ye={};switch(h){case"Built-in":for(var Qe=[],Ze=0;Ze=0}));Object(c.useEffect)((function(){if(k){pe.invoke("GET","/api/v1/tenants").then((function(e){if(null!==e){var t=[];null!==e.tenants&&(t=e.tenants);for(var a=0;a0&&A(t[0].value)})).catch((function(e){console.error(e)}))}),[t]),Object(n.jsx)(xa,{onClose:function(){return r(!1)},modalOpen:i,title:"Add Pool",children:Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d(!0);var a=be(t.pools),n=ss(t.name,a),c={name:a,servers:m,volumes_per_server:k,volume_configuration:{size:1073741824*f,storage_class_name:E,labels:null},affinity:n};pe.invoke("POST","/api/v1/namespaces/".concat(t.namespace,"/tenants/").concat(t.name,"/pools"),c).then((function(){d(!1),r(!0)})).catch((function(e){d(!1)}))},children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"number_of_nodes",name:"number_of_nodes",type:"number",onChange:function(e){h(parseInt(e.target.value))},label:"Number o Nodes",value:m.toString(10)})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"pool_size",name:"pool_size",type:"number",onChange:function(e){v(parseInt(e.target.value))},label:"Volume Size (Gi)",value:f.toString(10)})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"volumes_per_sever",name:"volumes_per_sever",type:"number",onChange:function(e){N(parseInt(e.target.value))},label:"Volumes per Server",value:k.toString(10)})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"storage_class",name:"storage_class",onChange:function(e){A(e.target.value)},label:"Storage Class",value:E,options:M,disabled:M.length<1})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:a.bottomContainer,children:[Object(n.jsxs)("div",{className:a.factorElements,children:[Object(n.jsxs)("div",{children:[Object(n.jsx)("div",{className:a.sizeNumber,children:ce(D.toString(10))}),Object(n.jsx)("div",{className:a.sizeDescription,children:"Instance Capacity"})]}),Object(n.jsxs)("div",{children:[Object(n.jsx)("div",{className:a.sizeNumber,children:ce(L.toString(10))}),Object(n.jsx)("div",{className:a.sizeDescription,children:"Total Capacity"})]})]}),Object(n.jsx)("div",{className:a.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l,children:"Save"})})]}),l&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})]})})})),ol=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},sizeFactorContainer:{marginLeft:8}},we))}))((function(e){var t=e.classes,a=e.open,r=e.closeModalAndRefresh,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(0),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(""),O=Object(u.a)(p,2),f=O[0],v=O[1],S=Object(c.useState)(""),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(""),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(""),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(""),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)(""),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(""),V=Object(u.a)(W,2),G=V[0],q=V[1];return Object(n.jsx)(xa,{modalOpen:a,title:"Add Pool",onClose:function(){r(!1)},children:Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d(!0)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Source Bucket",options:[],onChange:function(e){v(e.target.value)},value:f,name:"source_bucket",id:"source_bucket"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:m,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){h(t)},"aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Local Cluster"}),Object(n.jsx)(nn.a,{label:"Remote Cluster"})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),0===m&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Cluster",options:[],onChange:function(e){N(e.target.value)},value:k,name:"cluster",id:"cluster"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Destination Bucket",options:[],onChange:function(e){A(e.target.value)},value:E,name:"destination_bucket",id:"destination_bucket"})})]}),1===m&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"address",name:"address",onChange:function(e){F(e.target.value)},label:"Address",value:M})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"bucket",name:"bucket",onChange:function(e){R(e.target.value)},label:"Bucket",value:B})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",onChange:function(e){U(e.target.value)},label:"Access Key",value:K})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",onChange:function(e){q(e.target.value)},label:"Secret Key",value:G})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l,children:"Save"})}),l&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})),sl=Object(w.a)((function(e){return{root:{height:10,borderRadius:5},colorPrimary:{backgroundColor:"#F4F4F4"},bar:{borderRadius:5,backgroundColor:"#081C42"},padChart:{padding:"5px"}}}))(y.a),ll=Object(w.a)((function(e){return Object(k.a)({paperContainer:{padding:15},allValue:{fontSize:16,fontWeight:700,marginBottom:8},currentUsage:{fontSize:12,marginTop:8},centerItem:{textAlign:"center"}})}))((function(e){var t=e.classes,a=e.maxValue,c=e.currValue,r=e.label,o=e.renderFunction,s=e.loading,l=e.error,d=100*c/a;return Object(n.jsxs)(i.a.Fragment,{children:[s&&Object(n.jsx)("div",{className:t.padChart,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.centerItem,children:Object(n.jsx)(S.a,{color:"primary",size:40,variant:"indeterminate"})})}),s?null:""!==l?Object(n.jsx)(Go,{errorMessage:l,withBreak:!1}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.allValue,children:[r," ",o?o(a.toString()):a]}),Object(n.jsx)(sl,{variant:"determinate",value:d}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.currentUsage,children:["Used:"," ",o?o(c.toString()):c]})]})]})})),dl=Object(s.b)(null,{setModalErrorSnackMessage:q}),bl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we))}))(dl((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.namespace,r=e.idTenant,o=e.setModalErrorSnackMessage,s=e.classes,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],m=d[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],f=p[1],v=Object(c.useState)(""),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(""),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(""),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(""),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!0),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(!0),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useCallback)((function(e){var t=new RegExp("^$|^((.*?)/(.*?):(.+))$");switch(e){case"consoleImage":Y(t.test(S));break;case"minioImage":V(t.test(O))}}),[S,O]);Object(c.useEffect)((function(){Q("minioImage")}),[O,Q]),Object(c.useEffect)((function(){Q("consoleImage")}),[S,Q]);return Object(n.jsx)(xa,{title:"Update MinIO Version",modalOpen:t,onClose:function(){a(!1)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:s.formScrollable,children:[Object(n.jsx)("span",{children:"Please enter the MinIO image from dockerhub to use. If blank, then latest build will be used."}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:O,label:"MinIO's Image",id:"minioImage",name:"minioImage",placeholder:"E.g. minio/minio:RELEASE.2020-05-08T02-40-49Z",onChange:function(e){f(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:S,label:"Console's Image",id:"consoleImage",name:"consoleImage",placeholder:"E.g. minio/console:v0.3.13",onChange:function(e){C(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"imageRegistry",id:"setImageRegistry",name:"setImageRegistry",checked:w,onChange:function(e){T(!w)},label:"Set Custom Image Registry",indicatorLabels:["Yes","No"]})}),w&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:_,label:"Endpoint",id:"imageRegistry",name:"imageRegistry",placeholder:"E.g. https://index.docker.io/v1/",onChange:function(e){I(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:D,label:"Username",id:"imageRegistryUsername",name:"imageRegistryUsername",placeholder:"Enter image registry username",onChange:function(e){L(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:P,label:"Password",id:"imageRegistryPassword",name:"imageRegistryPassword",placeholder:"Enter image registry password",onChange:function(e){z(e.target.value)}})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:s.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:s.clearButton,onClick:function(){f(""),C(""),T(!1),I(""),L(""),z("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:!W||!H||w&&(""===_.trim()||""===D.trim()||""===P.trim())||b,onClick:function(){m(!0);var e={image:O,console_image:S,enable_prometheus:!0};if(w){var t={image_registry:{registry:_,username:D,password:P}};e=Object(j.a)(Object(j.a)({},e),t)}pe.invoke("PUT","/api/v1/namespaces/".concat(i,"/tenants/").concat(r),e).then((function(){m(!1),a(!0)})).catch((function(e){o(e),m(!1)}))},children:"Save"})]})]})})}))),ul=a(435),jl=a.n(ul),ml={setModalErrorSnackMessage:q},hl=Object(s.b)(null,ml),pl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({jsonPolicyEditor:{minHeight:400,width:"100%"},buttonContainer:{textAlign:"right"},errorState:{color:"#b53b4b",fontSize:14,fontWeight:"bold"}},we),Ne))}))(hl((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.tenant,o=e.namespace,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(""),N=Object(u.a)(k,2),w=N[0],T=N[1];Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/namespaces/".concat(o,"/tenants/").concat(r,"/yaml")).then((function(e){O(!1),C(e.yaml)})).catch((function(e){O(!1),s(e)}))}),[r,o,s]),Object(c.useEffect)((function(){}),[]);var E=""!==S.trim();return Object(n.jsxs)(xa,{modalOpen:a,onClose:function(){i(!1)},title:"YAML",children:[p&&Object(n.jsx)(y.a,{}),""!==w&&Object(n.jsx)("div",{className:t.errorState,children:w}),!p&&Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),T(""),pe.invoke("PUT","/api/v1/namespaces/".concat(o,"/tenants/").concat(r,"/yaml"),{yaml:S}).then((function(e){j(!1),i(!0),T("")})).catch((function(e){j(!1),console.log(e),T(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(bc,{label:"Tenant Specification",value:S,mode:"yaml",onBeforeChange:function(e,t,a){C(a)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||!E,children:"Save"})}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})]})}))),Ol=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({paperContainer:{padding:"15px 15px 15px 50px"},licenseInfoValue:{textTransform:"none",fontSize:14,fontWeight:"bold"},licenseContainer:{position:"relative",padding:"20px 52px 0px 28px",background:"#032F51",boxShadow:"0px 3px 7px #00000014","& h2":{color:"#FFF",marginBottom:67},"& a":{textDecoration:"none"},"& h3":{color:"#FFFFFF",marginBottom:"30px",fontWeight:"bold"},"& h6":{color:"#FFFFFF !important"}},licenseInfo:{color:"#FFFFFF",position:"relative"},licenseInfoTitle:{textTransform:"none",color:"#BFBFBF",fontSize:11},verifiedIcon:{width:96,position:"absolute",right:0,bottom:29},noUnderLine:{textDecoration:"none"}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.tenant,c=e.loadingActivateProduct,r=e.loadingLicenseInfo,o=e.licenseInfo,s=e.activateProduct;return Object(n.jsx)(C.a,{className:a&&a.subnet_license?t.licenseContainer:"",children:a&&a.subnet_license?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.licenseInfo,children:[Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"License"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:"Commercial License"}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Organization"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:a.subnet_license.organization}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Registered Capacity"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:ce((1099511627776*a.subnet_license.storage_capacity).toString(10))}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Expiry Date"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:Object(n.jsx)(it.a,{format:"YYYY-MM-DD",children:a.subnet_license.expires_at})})]}),Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Subscription Plan"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:a.subnet_license.plan}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Requester"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:a.subnet_license.email})]}),Object(n.jsx)("img",{className:t.verifiedIcon,src:"/verified.svg",alt:"verified"})]})}):!r&&Object(n.jsxs)(x.a,{className:t.paperContainer,children:[!o&&Object(n.jsx)(qt.a,{to:"/license",onClick:function(e){e.stopPropagation()},className:t.noUnderLine,children:Object(n.jsx)(g.a,{className:t.licenseButton,variant:"contained",color:"primary",children:"Activate Product"})}),o&&a&&Object(n.jsx)(g.a,{disabled:c,className:t.licenseButton,variant:"contained",color:"primary",onClick:function(){return s(a.namespace,a.name)},children:"Attach License"})]})})})),gl=Object(s.b)(null,{setErrorSnackMessage:V}),fl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},sizeFactorContainer:{marginLeft:8},containerHeader:{display:"flex",justifyContent:"space-between"},paperContainer:{padding:"15px 15px 15px 50px"},infoGrid:{display:"grid",gridTemplateColumns:"auto auto auto auto",gridGap:8,"& div":{display:"flex",alignItems:"center"},"& div:nth-child(odd)":{justifyContent:"flex-end",fontWeight:700},"& div:nth-child(2n)":{paddingRight:35}},masterActions:{width:"25%",minWidth:"120px","& div":{margin:"5px 0px"}},updateButton:{backgroundColor:"transparent",border:0,padding:"0 6px",cursor:"pointer","&:focus, &:active":{outline:"none"},"& svg":{height:12}},poolLabel:{color:"#666666"},titleCol:{fontWeight:"bold"},breadcrumLink:{textDecoration:"none",color:"black"}},we),Me),Ge),Fe),qe),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(gl((function(e){var t=e.classes,a=e.match,r=e.setErrorSnackMessage,o=Object(c.useState)(0),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(0),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(0),O=Object(u.a)(p,2),v=O[0],y=O[1],S=Object(c.useState)([]),k=Object(u.a)(S,2),N=k[0],w=k[1],T=Object(c.useState)([]),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(0),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(0),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(!1),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!1),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(!1),Q=Object(u.a)(Y,2),J=Q[0],$=Q[1],X=Object(c.useState)(null),ee=Object(u.a)(X,2),te=ee[0],ae=ee[1],ne=Object(c.useState)(!0),ie=Object(u.a)(ne,2),re=ie[0],oe=ie[1],se=Object(c.useState)(""),le=Object(u.a)(se,2),de=le[0],be=le[1],je=Object(c.useState)(0),me=Object(u.a)(je,2),he=me[0],Oe=me[1],ge=Object(c.useState)(!1),fe=Object(u.a)(ge,2),xe=fe[0],ve=fe[1],ye=Object(c.useState)(!1),Se=Object(u.a)(ye,2),Ce=Se[0],ke=Se[1],Ne=Object(c.useState)(),we=Object(u.a)(Ne,2),Te=we[0],Ee=we[1],Ae=Object(c.useState)(!0),_e=Object(u.a)(Ae,2),Ie=_e[0],Me=_e[1],Fe=Object(c.useState)(!1),De=Object(u.a)(Fe,2),Le=De[0],Be=De[1],Re=Object(c.useState)(!1),Pe=Object(u.a)(Re,2),ze=Pe[0],Ke=Pe[1],Ue=Object(c.useState)(!1),We=Object(u.a)(Ue,2),Ve=We[0],Ge=We[1],qe=Object(c.useState)(!1),He=Object(u.a)(qe,2),Ye=He[0],Qe=He[1],Ze=Object(c.useState)(!1),Je=Object(u.a)(Ze,2),$e=Je[0],et=Je[1],at=Object(c.useState)(!1),nt=Object(u.a)(at,2),ct=nt[0],it=nt[1],rt=a.params.tenantName,ot=a.params.tenantNamespace,lt=function(){pe.invoke("GET","/api/v1/namespaces/".concat(ot,"/tenants/").concat(rt)).then((function(e){var t,a=e.pools?e.pools:[],n=0,c=0,i=0,r=Object(Nr.a)(a);try{for(r.s();!(t=r.n()).done;){var o=t.value,s=o.volumes_per_server*o.servers*o.volume_configuration.size;o.label="pool-".concat(i),void 0!==o.name&&""!==o.name||(o.name=o.label),o.capacity=ce(s+""),o.volumes=o.servers*o.volumes_per_server,n+=o.servers,c+=o.volumes,i+=1}}catch(l){r.e(l)}finally{r.f()}h(e.total_size||0),y(a.length),P(c),D(n),w(a),Ke(e.logEnabled),Ge(e.monitoringEnabled),Qe(e.encryptionEnabled),et(e.idpAdEnabled),it(e.idpOicEnabled),ae(e)})).catch((function(e){r(e)}))},dt=function(){pe.invoke("GET","/api/v1/namespaces/".concat(ot,"/tenants/").concat(rt,"/usage")).then((function(e){var t=Z()(e,"disk_used","0");Oe(parseInt(t)),be(""),oe(!1)})).catch((function(e){be(e),Oe(0),oe(!1)}))};Object(c.useEffect)((function(){lt(),dt(),Me(!0),pe.invoke("GET","/api/v1/subscription/info").then((function(e){Ee(e),Me(!1)})).catch((function(e){Me(!1)})),pe.invoke("GET","/api/v1/namespaces/".concat(ot,"/tenants/").concat(rt,"/pods")).then((function(e){for(var t=0;t ".concat(a.params.tenantName),Object(n.jsx)(Lt.a,{"aria-label":"more","aria-controls":"long-menu","aria-haspopup":"true",onClick:function(e){mt(e.currentTarget)},children:Object(n.jsx)(jl.a,{})}),Object(n.jsx)(il.a,{id:"long-menu",anchorEl:jt,keepMounted:!0,open:Boolean(jt),onClose:ht,children:Object(n.jsx)(wa.a,{onClick:ht,children:"Edit YAML"},"yaml")})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:l,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){d(t)},"aria-label":"tenant-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Summary"}),Object(n.jsx)(nn.a,{label:"Pools"}),Object(n.jsx)(nn.a,{label:"Pods"}),Object(n.jsx)(nn.a,{label:"License"})]})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===l&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:8,children:Object(n.jsxs)("table",{width:"100%",children:[Object(n.jsx)("tr",{children:Object(n.jsxs)("td",{colSpan:4,children:[Object(n.jsx)("h2",{children:"Details"}),Object(n.jsx)("hr",{className:t.hrClass})]})}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Capacity:"}),Object(n.jsx)("td",{children:ce(m.toString(10))}),Object(n.jsx)("td",{className:t.titleCol,children:"MinIO:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ve(!0)},children:te?te.image:""})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Clusters:"}),Object(n.jsx)("td",{children:v}),Object(n.jsx)("td",{className:t.titleCol,children:"Console:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ve(!0)},children:te?te.console_image:""})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Instances:"}),Object(n.jsx)("td",{children:F}),Object(n.jsx)("td",{className:t.titleCol,children:"Volumes:"}),Object(n.jsx)("td",{children:R})]}),(null===te||void 0===te?void 0:te.endpoints)&&Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Endpoint:"}),Object(n.jsx)("td",{children:Object(n.jsx)("a",{href:null===te||void 0===te?void 0:te.endpoints.minio,target:"_blank",rel:"noopener noreferrer",children:null===te||void 0===te?void 0:te.endpoints.minio})}),Object(n.jsx)("td",{className:t.titleCol,children:"Console:"}),Object(n.jsx)("td",{children:Object(n.jsx)("a",{href:null===te||void 0===te?void 0:te.endpoints.console,target:"_blank",rel:"noopener noreferrer",children:null===te||void 0===te?void 0:te.endpoints.console})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"State:"}),Object(n.jsx)("td",{colSpan:3,children:null===te||void 0===te?void 0:te.currentState})]})]})}),Object(n.jsx)(x.a,{item:!0,xs:4,children:Object(n.jsx)(ll,{currValue:he,maxValue:te?te.total_size:0,label:"Storage",renderFunction:ce,error:de,loading:re})})]})}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("table",{width:"100%",children:[Object(n.jsx)("tr",{children:Object(n.jsxs)("td",{colSpan:4,children:[Object(n.jsx)("h2",{children:"Features"}),Object(n.jsx)("hr",{className:t.hrClass})]})}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Logs:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:ze?"Enabled":"Disabled"})}),Object(n.jsx)("td",{className:t.titleCol,children:"Monitoring:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:Ve?"Enabled":"Disabled"})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Encryption:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:Ye?"Enabled":"Disabled"})}),Object(n.jsx)("td",{}),Object(n.jsx)("td",{})]}),Object(n.jsxs)("tr",{children:[$e||!$e&&!ct&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Active Directory:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:$e?"Enabled":"Disabled"})})]}),ct||!ct&&!$e&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("td",{className:t.titleCol,children:"OpenID:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:ct?"Enabled":"Disabled"})})]})]})]})})})})]}),1===l&&Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){W(!0)},children:"Expand Tenant"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"delete",onClick:function(e){console.log(e)},sendOnlyId:!0}],columns:[{label:"Name",elementKey:"name"},{label:"Capacity",elementKey:"capacity"},{label:"# of Instances",elementKey:"servers"},{label:"# of Drives",elementKey:"volumes"}],isLoading:!1,records:N,entityName:"Servers",idField:"name"})})]}),2===l&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(ma,{columns:[{label:"Name",elementKey:"name"},{label:"Status",elementKey:"status"},{label:"Age",elementKey:"time"},{label:"Pod IP",elementKey:"podIP"},{label:"Restarts",elementKey:"restarts",renderFunction:function(e){return null!=e?e:0}},{label:"Node",elementKey:"node"}],isLoading:!1,records:A,entityName:"Servers",idField:"name"})]}),3===l&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ol,{tenant:te,loadingLicenseInfo:Ie,loadingActivateProduct:Le,licenseInfo:Te,activateProduct:function(e,t){Le||(Be(!0),pe.invoke("POST","/api/v1/subscription/namespaces/".concat(e,"/tenants/").concat(t,"/activate"),{}).then((function(){Be(!1),lt()})).catch((function(e){Be(!1),r(e)})))}})})})]})]})]})]})}))),xl="OBJECT_BROWSER/ADD_ROUTE",vl="OBJECT_BROWSER/RESET_ROUTES_LIST",yl="OBJECT_BROWSER/REMOVE_ROUTE_LEVEL",Sl="OBJECT_BROWSER/SET_ALL_ROUTES",Cl="OBJECT_BROWSER/CREATE_FOLDER",kl="OBJECT_BROWSER/SET_LAST_AS_FILE",Nl="OBJECT_BROWSER/DOWNLOAD_FILE_LOADER",wl="OBJECT_BROWSER/DOWNLOADED_FILE",Tl=function(e,t,a){return{type:xl,route:e,label:t,routeType:a}},El=function(e){return{type:yl,toRoute:e}},Al=function(e){return{type:Sl,currentRoute:e}},_l=function(e){return{type:Nl,path:e}},Il=function(e){return{type:wl,path:e}},Ml={removeRouteLevel:El},Fl=Object(s.b)((function(e){var t=e.objectBrowser;return{objectsList:Z()(t,"routesList",[])}}),Ml)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Le))}))((function(e){var t=e.classes,a=e.objectsList,c=e.removeRouteLevel,r=a.map((function(e,t){return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(qt.a,{to:e.route,onClick:function(){c(e.route)},children:e.label}),t0?a.slice(-1)[0].label:""})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.breadcrumbs,children:r})]})}))),Dl={addRoute:Tl,resetRoutesList:function(e){return{type:vl,reset:e}},displayErrorMessage:V},Ll=Object(s.b)(null,Dl),Bl=Object(l.g)(Ll(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},usedSpaceCol:{width:150,textAlign:"right"},subTitleLabel:{alignItems:"center",display:"flex"},bucketName:{display:"flex",alignItems:"center"},iconBucket:{backgroundImage:"url(/images/ob_bucket_clear.svg)",backgroundRepeat:"no-repeat",backgroundPosition:"center center",width:16,height:40,marginRight:10},"@global":{".rowLine:hover .iconBucketElm":{backgroundImage:"url(/images/ob_bucket_filled.svg)"}},browsePaper:{height:"calc(100vh - 280px)"}},Me),Fe),Le))}))((function(e){var t=e.classes,a=e.match,i=e.addRoute,r=e.resetRoutesList,o=e.displayErrorMessage,s=Object(c.useState)(!0),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)([]),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!1),v=Object(u.a)(O,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(!0),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(!1),M=Object(u.a)(I,2),F=M[0],D=M[1];Object(c.useEffect)((function(){A&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"createBucket",action:"s3:CreateBucket"}]}).then((function(e){var t=e.permissions.filter((function(e){return"createBucket"===e.id})).pop();t&&t.can?D(!0):D(!1),_(!1)})).catch((function(e){_(!1),V(e)}))}),[A]),Object(c.useEffect)((function(){r(!0)}),[a,r]),Object(c.useEffect)((function(){d&&pe.invoke("GET","/api/v1/buckets").then((function(e){b(!1),p(e.buckets||[])})).catch((function(e){b(!1),o(e)}))}),[d,o]);var L=h.filter((function(e){return""===N||e.name.indexOf(N)>=0}));return Object(n.jsxs)(c.Fragment,{children:[y&&Object(n.jsx)(za,{open:y,closeModalAndRefresh:function(e){S(!1),e&&b(!0)}}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.obTitleSection,children:Object(n.jsx)("div",{children:Object(n.jsx)(Fl,{})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Buckets",className:t.searchField,id:"search-resource",label:"",onChange:function(e){w(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){b(!0)},children:Object(n.jsx)(Kn.a,{})}),F&&Object(n.jsx)("div",{children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){S(!0)},children:"Create Bucket"})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"view",sendOnlyId:!0,onClick:function(e){var t=Z()(a,"url","/object-browser"),n="".concat(t,"/").concat(e);i(n,e,"path")}}],columns:[{label:"Name",elementKey:"name",renderFunction:function(e){return Object(n.jsxs)("div",{className:t.bucketName,children:[Object(n.jsx)("div",{className:"".concat(t.iconBucket," iconBucketElm")}),Object(n.jsx)("span",{children:e})]})}},{label:"Used Space",elementKey:"size",renderFunction:ce,globalClass:t.usedSpaceCol,rowClass:t.usedSpaceCol,width:100,contentTextAlign:"right",headerTextAlign:"right"}],isLoading:d,records:L,entityName:"Buckets",idField:"name",customPaperHeight:t.browsePaper})})]})]})})))),Rl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({watchList:{background:"white",maxHeight:"400",overflow:"auto","& ul":{margin:"4",padding:"0"},"& ul li":{listStyle:"none",margin:"0",padding:"0",borderBottom:"1px solid #dedede"}},actionsTray:{textAlign:"right","& button":{marginLeft:10}},inputField:{background:"#FFFFFF",padding:12,borderRadius:5,marginLeft:10,boxShadow:"0px 3px 6px #00000012"},fieldContainer:{background:"#FFFFFF",padding:0,borderRadius:5,marginLeft:10,textAlign:"left",minWidth:"206",boxShadow:"0px 3px 6px #00000012"},lastElementWPadding:{paddingRight:"78"}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.match,a=e.classes,c=Z()(t,"url","");return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"Object Browser"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:a.container,children:"/object-browser"===c&&Object(n.jsx)(Bl,{})})})]})})),Pl={setErrorSnackMessage:V},zl=Object(s.b)(null,Pl)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.selectedObject,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete: ",Object(n.jsx)("b",{children:r}),"?"," "]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){!function(){if(!d){var e=!1;r.endsWith("/")&&(e=!0),b(!0),pe.invoke("DELETE","/api/v1/buckets/".concat(i,"/objects?path=").concat(r,"&recursive=").concat(e)).then((function(){b(!1),t(!0)})).catch((function(e){b(!1),o(e)}))}}()},color:"secondary",disabled:d,children:"Delete"})]})]})})),Kl=a(953),Ul={createFolder:function(e){return{type:Cl,newRoute:e}}},Wl=Object(s.b)(null,Ul)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},pathLabel:{marginTop:0,marginBottom:32}},we))}))((function(e){var t=e.modalOpen,a=e.folderName,r=e.onClose,o=e.createFolder,s=e.classes,l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=a.split("/").slice(2).join("/");return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(xa,{modalOpen:t,title:"Add Folder",onClose:r,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)("h3",{className:s.pathLabel,children:["Current Path: ",m,"/"]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:b,label:"Folder Path",id:"folderPath",name:"folderPath",placeholder:"Enter Folder Path",onChange:function(e){j(e.target.value)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:s.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:s.clearButton,onClick:function(){j("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:""===b.trim(),onClick:function(){o(b),r()},children:"Save"})]})]})})})}))),Vl=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 12.996",children:Object(n.jsxs)("g",{transform:"translate(-63.686 -70.783)",children:[Object(n.jsx)("path",{className:"a",d:"M74.736,79.879v1.95h-9.1v-1.95h-1.95v3.9h13v-3.9Z"}),Object(n.jsx)("path",{className:"a",d:"M69.211,80.533h1.95V73.861h1.525l-2.5-3.078-2.5,3.078h1.525Z"})]})})})},Gl=a(436),ql=function(e,t,a,n,c){var i=document.createElement("a");document.body.appendChild(i);var r=new XMLHttpRequest,o=t.split("/"),s=o[o.length-1],l="/api/v1/buckets/".concat(e,"/objects/download?prefix=").concat(t);Object(Gl.isNullOrUndefined)(a)||"null"===a||(l=l.concat("&version_id=".concat(a))),r.open("GET",l,!0),r.responseType="blob",r.onload=function(r){if(200===this.status){var o=new Blob([this.response],{type:"octet/stream"}),l=window.URL.createObjectURL(o);i.href=l,i.download=s,i.click(),window.URL.revokeObjectURL(l),i.remove(),n&&n("".concat(e,"/").concat(t).concat(c?"-".concat(a):""))}},r.send()},Hl={backgroundRepeat:"no-repeat",backgroundPosition:"center center",width:16,minWidth:16,height:40,marginRight:10};var Yl=Object(n.jsx)(v.a,{component:"h3",children:"Loading..."}),Ql={addRoute:Tl,setAllRoutes:Al,setLastAsFile:function(){return{type:kl}},setLoadingProgress:function(e){return{type:M,loadingProgress:e}},setSnackBarMessage:W,setErrorSnackMessage:V,fileIsBeingPrepared:_l,fileDownloadStarted:Il},Zl=Object(s.b)((function(e){var t=e.objectBrowser;return{routesList:Z()(t,"routesList",[]),downloadingFiles:Z()(t,"downloadingFiles",[])}}),Ql),Jl=Object(l.g)(Zl(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},fileName:{display:"flex",alignItems:"center"},fileNameText:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},iconFolder:Object(j.a)({backgroundImage:"url(/images/ob_folder_clear.svg)"},Hl),iconFile:Object(j.a)({backgroundImage:"url(/images/ob_file_clear.svg)"},Hl),buttonsContainer:{"& .MuiButtonBase-root":{marginLeft:10}},browsePaper:{height:"calc(100vh - 280px)"},"@global":{".rowLine:hover .iconFileElm":{backgroundImage:"url(/images/ob_file_filled.svg)"},".rowLine:hover .iconFolderElm":{backgroundImage:"url(/images/ob_folder_filled.svg)"}},listButton:{marginLeft:"10px"}},Me),Fe),Le),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.match,r=e.addRoute,o=e.setAllRoutes,s=e.routesList,l=e.downloadingFiles,d=e.setLastAsFile,b=e.setLoadingProgress,j=e.setSnackBarMessage,m=e.setErrorSnackMessage,h=e.fileIsBeingPrepared,p=e.fileDownloadStarted,O=Object(c.useState)([]),y=Object(u.a)(O,2),S=y[0],C=y[1],k=Object(c.useState)(!0),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(""),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(""),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(""),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)(0),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)(Yl),te=Object(u.a)(ee,2),ae=te[0],ne=te[1];!function(e,t){var a=Object(c.useRef)(null);Object(c.useEffect)((function(){a.current=e}),[e]),Object(c.useEffect)((function(){if(null!==t){var e=setInterval((function(){void 0!==a&&a.current&&a.current()}),t);return function(){return clearInterval(e)}}}),[t])}((function(){w&&function(){var e=Date.now()-$;e/1e3>=6?ne(Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(v.a,{component:"h3",children:["This operation is taking longer than expected... (",Math.ceil(e/1e3),"s)"]})})):e/1e3>=3&&ne(Object(n.jsx)(v.a,{component:"h3",children:"This operation is taking longer than expected..."}))}()}),1e3),Object(c.useEffect)((function(){var e=a.params.bucket,t=a.params[0];if(w){var n="";t&&(n="?prefix=".concat(t,"/"));var c=Date.now()+0;X(c),ne(Yl),pe.invoke("GET","/api/v1/buckets/".concat(e,"/objects").concat(n)).then((function(t){V(e);var c=t.objects||[],i=[],r=[];c.forEach((function(e){e.name.endsWith("/")?i.push(e):r.push(e)}));var o=[].concat(i,r);C(o),t.objects||""===n?T(!1):function(){var e=a.params.bucket,t=a.params[0];pe.invoke("GET","/api/v1/buckets/".concat(e,"/objects?prefix=").concat(t)).then((function(e){null!==e.objects?d():T(!1)})).catch((function(e){T(!1),m(e)}))}()})).catch((function(e){T(!1),m(e)}))}}),[w,a,d,m]),Object(c.useEffect)((function(){var e=Z()(a,"url","/object-browser");e!==s[s.length-1].route&&o(e)}),[a,s,o]),Object(c.useEffect)((function(){T(!0)}),[s,T]);var ie=function(e){p(e)},re=function(e){var t=s[s.length-1].route.split("/").filter((function(e){return""!==e.trim()})),a="";t.length>2&&(a="".concat(t.slice(2).join("/"),"/")),function(e,t,a){if(null!==e&&void 0!==e&&null!==e.target&&void 0!==e.target){e.preventDefault();var n=e.target.files,c="/api/v1/buckets/".concat(t,"/objects/upload");""!==a&&(c="".concat(c,"?prefix=").concat(a));var i=new XMLHttpRequest,r=n.length>1,o="An error occurred while uploading the file".concat(r?"s":"","."),s="Object".concat(r?"s":""," uploaded successfully.");i.open("POST",c,!0),i.withCredentials=!1,i.onload=function(e){401!==i.status&&403!==i.status&&400!==i.status&&500!==i.status||j(o),200===i.status&&j(s)},i.upload.addEventListener("error",(function(e){j(o)})),i.upload.addEventListener("progress",(function(e){b(Math.floor(100*e.loaded/e.total))})),i.onerror=function(){j(o)},i.onloadend=function(){T(!0),b(100)};var l,d=new FormData,u=Object(Nr.a)(n);try{for(u.s();!(l=u.n()).done;){var m=l.value,h=m.name,p=new Blob([m]);d.append(h,p)}}catch(O){u.e(O)}finally{u.f()}i.send(d),e.target.value=null}}(e,W,a)},oe=[{type:"view",onClick:function(e){var t=Z()(a,"url","/object-browser");if(e.endsWith("/")){var n=e.substr(0,e.length-1).split("/"),c=n.length-1,i="".concat(t,"/").concat(n[c]);r(i,n[c],"path")}else{var o=e.split("/"),s=o[o.length-1],l="".concat(t,"/").concat(s);r(l,s,"file")}},sendOnlyId:!0},{type:"download",onClick:function(e){h("".concat(W,"/").concat(e.name)),e.size>104857600&&j("Download process started, it may take a few moments to complete"),ql(W,e.name,e.version_id,ie)},showLoaderFunction:function(e){return l.includes("".concat(a.params.bucket,"/").concat(e))}},{type:"delete",onClick:function(e){I(!0),z(e)},sendOnlyId:!0}],se=S.filter((function(e){return""===H||e.name.indexOf(H)>=0}));return Object(n.jsxs)(i.a.Fragment,{children:[_&&Object(n.jsx)(zl,{deleteOpen:_,selectedBucket:W,selectedObject:P,closeDeleteModalAndRefresh:function(e){I(!1),e&&(j("Object '".concat(P,"' deleted successfully.")),T(!0))}}),D&&Object(n.jsx)(Wl,{modalOpen:D,folderName:s[s.length-1].route,onClose:function(){L(!1)}}),Object(n.jsx)(Ga,{label:"Object Browser"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.obTitleSection,children:Object(n.jsx)("div",{children:Object(n.jsx)(Fl,{})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Objects",className:t.searchField,id:"search-resource",label:"",onChange:function(e){Y(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){T(!0)},children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),component:"label",onClick:function(){L(!0)},className:t.listButton,children:"Create Folder"}),Object(n.jsxs)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(Vl,{}),component:"label",className:t.listButton,children:["File",Object(n.jsx)(Kl.a,{type:"file",inputProps:{multiple:!0},onChange:function(e){return re(e)},id:"file-input",style:{display:"none"}})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:oe,columns:[{label:"Name",elementKey:"name",renderFunction:function(e){var a=e,c="".concat(t.iconFile," iconFileElm");e.endsWith("/")&&(c="".concat(t.iconFolder," iconFolderElm"),a=e.substr(0,e.length-1));var i=a.split("/");return Object(n.jsxs)("div",{className:t.fileName,children:[Object(n.jsx)("div",{className:c}),Object(n.jsx)("span",{className:t.fileNameText,children:i[i.length-1]})]})}},{label:"Last Modified",elementKey:"last_modified",renderFunction:function(e){return e.name.endsWith("/")?"":Object(n.jsx)(it.a,{children:e.last_modified})},renderFullObject:!0},{label:"Size",elementKey:"size",renderFunction:function(e){return e.name.endsWith("/")?"":ce(String(e.size))},renderFullObject:!0,width:60,contentTextAlign:"right"}],isLoading:w,loadingMessage:ae,entityName:"Objects",idField:"name",records:se,customPaperHeight:t.browsePaper})})]})})]})})))),$l=a(1012),Xl=a(438),ed=a.n(Xl),td=a(437),ad=a.n(td),nd=Object(s.b)(null,{setModalSnackMessage:G,setModalErrorSnackMessage:q}),cd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({copyButtonContainer:{paddingLeft:16},modalContent:{paddingBottom:53}},we))}))(nd((function(e){var t=e.classes,a=e.open,r=e.closeModalAndRefresh,o=e.bucketName,s=e.dataObject,l=e.setModalSnackMessage,d=e.setModalErrorSnackMessage,b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),f=O[0],v=O[1],y=Object(c.useState)(""),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(!0),w=Object(u.a)(N,2),T=w[0],E=w[1];return Object(c.useEffect)((function(){if(T){v(!0),h("");var e=new Date("".concat(C,"T23:59:59")),t=new Date,a=e.getTime()-t.getTime();return a<0?(d("Selected date must be greater than current time."),h(""),void v(!1)):a>6048e5?(d("You can share a file only for less than 7 days."),h(""),void v(!1)):void pe.invoke("GET","/api/v1/buckets/".concat(o,"/objects/share?prefix=").concat(s.name,"&version_id=").concat(s.version_id).concat(""!==C?"&expires=".concat(a,"ms"):"")).then((function(e){h(e),v(!1)})).catch((function(e){d(e),h(""),v(!1)}))}}),[s,C,o,T,h,d]),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(xa,{title:"Share File",modalOpen:a,onClose:function(){r()},children:Object(n.jsxs)(x.a,{container:!0,className:t.modalContent,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.dateContainer,children:Object(n.jsx)(Xn,{id:"date",label:"Active until",borderBottom:!1,addSwitch:!0,onDateChange:function(e,t){E(t),k(t?e:"")}})}),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(Za,{content:m})}),Object(n.jsx)(x.a,{item:!0,xs:2,className:t.copyButtonContainer,children:Object(n.jsx)(ad.a,{text:m,children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(ot,{}),onClick:function(){l("Share URL Copied to clipboard")},disabled:""===m||f,children:"Copy"})})})]})]})})})}))),id=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 13",children:[Object(n.jsx)("path",{d:"M11.05 8.617v2.429h-9.1v-9.1h2.429v-1.95H0v13h13V8.617z",className:"a"}),Object(n.jsx)("path",{d:"M3.854 9.256h1.95a4.945 4.945 0 013.6-4.74v1.3l.6-.487 2.474-2.012L9.4.817v1.7a6.9 6.9 0 00-5.546 6.739z",className:"a"})]})})},rd=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 12.996",children:[Object(n.jsx)("path",{d:"M11.05 9.096v1.95h-9.1v-1.95H0v3.9h13v-3.9z"}),Object(n.jsx)("path",{d:"M6.5 9.75L9 6.672H7.475V0h-1.95v6.672H4z"})]})})},od={setModalErrorSnackMessage:q},sd=Object(s.b)(null,od),ld=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({objectName:{fontSize:18,fontWeight:700,marginBottom:40},buttonContainer:{textAlign:"right"}},we))}))(sd((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.objectName,o=e.objectInfo,s=e.bucketName,l=e.setModalErrorSnackMessage,d=Object(c.useState)(!0),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],f=p[1],v=Object(c.useState)(""),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1];Object(c.useEffect)((function(){if(o.retention_mode&&(f(o.retention_mode.toLowerCase()),L(!0)),o.retention_until_date){var e=new Date(o.retention_until_date);if("Invalid Date"!==e.toString()){var t=e.getFullYear(),a=(c=e.getMonth()+1)<10?"0".concat(c):"".concat(c),n=e.getDate();isNaN(n)||"NaN"===a||isNaN(t)||C("".concat(t,"-").concat(a,"-").concat(n))}L(!0)}var c}),[o]);var B=Object(c.useRef)(null),R=function(){m(!1),f(""),B.current&&B.current.resetDate()},P=D&&("governance"===O||""===O);return Object(n.jsxs)(xa,{title:"Set Retention Policy",modalOpen:a,onClose:function(){R(),i(!1)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.objectName,children:r}),Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault()}(e)},children:[P&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"status",id:"status",name:"status",checked:j,onChange:function(e){m(!j)},label:"Status",indicatorLabels:["Enabled","Disabled"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:O,id:"type",name:"type",label:"Type",disableOptions:!j||D&&""!==O,onChange:function(e){f(e.target.value)},selectorOptions:[{label:"Governance",value:"governance"},{label:"Compliance",value:"compliance"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Xn,{id:"date",label:"Date",disableOptions:!(j&&("governance"===O||"compliance"===O)),ref:B,value:S,borderBottom:!0,onDateChange:function(e,t){T(t),t&&C(e)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:R,children:"Reset"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:j&&""===O||j&&!w||_,onClick:function(){I(!0);var e=o.name,t=o.version_id,a=j||"governance"!==O?"".concat(S,"T23:59:59Z"):"";j||"governance"!==O?function(e,t,a){pe.invoke("PUT","/api/v1/buckets/".concat(s,"/objects/retention?prefix=").concat(e,"&version_id=").concat(t),{expires:a,mode:O}).then((function(e){I(!1),i(!0)})).catch((function(e){l(e),I(!1)}))}(e,t,a):function(e,t){pe.invoke("DELETE","/api/v1/buckets/".concat(s,"/objects/retention?prefix=").concat(e,"&version_id=").concat(t)).then((function(){I(!1),i(!0)})).catch((function(e){l(e),I(!1)}))}(e,t)},children:"Save"})]})]})]})}))),dd={setModalErrorSnackMessage:q},bd=Object(s.b)(null,dd),ud=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},pathLabel:{marginTop:0,marginBottom:32}},we))}))(bd((function(e){var t=e.modalOpen,a=e.currentTags,r=e.selectedObject,o=e.onCloseAndUpdate,s=e.bucketName,l=e.versionId,d=e.setModalErrorSnackMessage,b=e.classes,m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)(!1),k=Object(u.a)(C,2),N=k[0],w=k[1];return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(xa,{modalOpen:t,title:"Add New Tag",onClose:function(){o(!1)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)("h3",{className:b.pathLabel,children:["Selected Object: ",r]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:p,label:"New Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter New Tag Key",onChange:function(e){O(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:y,label:"New Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter New Tag Label",onChange:function(e){S(e.target.value)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:b.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:b.clearButton,onClick:function(){S(""),O("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:""===y.trim()||""===p.trim()||N,onClick:function(){w(!0);var e={};e[p]=y;var t=Object(j.a)(Object(j.a)({},a),e);pe.invoke("PUT","/api/v1/buckets/".concat(s,"/objects/tags?prefix=").concat(r,"&version_id=").concat(l),{tags:t}).then((function(e){w(!1),o(!0)})).catch((function(e){d(e),w(!1)}))},children:"Save"})]})]})})})}))),jd={setErrorSnackMessage:V},md=Object(s.b)(null,jd),hd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},pathLabel:{marginTop:0,marginBottom:32}},we))}))(md((function(e){var t=e.deleteOpen,a=e.currentTags,i=e.selectedObject,r=e.selectedTag,o=e.onCloseAndUpdate,s=e.bucketName,l=e.versionId,d=e.setErrorSnackMessage,b=e.classes,m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(u.a)(r,2),x=f[0],v=f[1];return Object(n.jsxs)(ha.a,{open:t,onClose:function(){o(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Tag"}),Object(n.jsxs)(Oa.a,{children:[p&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete the tag"," ",Object(n.jsxs)("b",{className:b.wrapText,children:[x," : ",v]})," ","from ",i,"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){o(!1)},color:"primary",disabled:p,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){O(!0);var e=Object(j.a)({},a);delete e[x],pe.invoke("PUT","/api/v1/buckets/".concat(s,"/objects/tags?prefix=").concat(i,"&version_id=").concat(l),{tags:e}).then((function(e){O(!1),o(!0)})).catch((function(e){d(e),O(!1)}))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})}))),pd={setModalErrorSnackMessage:q},Od=Object(s.b)(null,pd),gd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({objectName:{fontSize:18,fontWeight:700,marginBottom:40},buttonContainer:{textAlign:"right"}},we))}))(Od((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.objectName,o=e.bucketName,s=e.actualInfo,l=e.setModalErrorSnackMessage,d=Object(c.useState)(!1),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],f=p[1],v=s.version_id;Object(c.useEffect)((function(){var e=Z()(s,"legal_hold_status","OFF");m("ON"===e)}),[s]);var y=function(){m(!1)};return Object(n.jsxs)(xa,{title:"Set Legal Hold",modalOpen:a,onClose:function(){y(),i(!1)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.objectName,children:r}),Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),f(!0),pe.invoke("PUT","/api/v1/buckets/".concat(o,"/objects/legalhold?prefix=").concat(r,"&version_id=").concat(v),{status:j?"enabled":"disabled"}).then((function(){f(!1),i(!0)})).catch((function(e){l(e),f(!1)}))}(e)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"legalhold",id:"legalhold",name:"legalhold",checked:j,onChange:function(e){m(!j)},label:"Legal Hold Status",indicatorLabels:["Enabled","Disabled"],tooltip:"To enable this feature you need to enable versioning on the bucket before creation"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:y,children:"Reset"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:O,children:"Save"})]})]})]})}))),fd={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:"0",tags:{},version_id:null},xd={removeRouteLevel:El,setErrorSnackMessage:V,fileIsBeingPrepared:_l,fileDownloadStarted:Il,setSnackBarMessage:W},vd=Object(s.b)((function(e){var t=e.objectBrowser;return{downloadingFiles:Z()(t,"downloadingFiles",[])}}),xd)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({objectNameContainer:{marginBottom:8},objectPathContainer:{marginBottom:26,fontSize:10},objectPathLink:{"&:visited":{color:"#000"}},objectName:{fontSize:24},propertiesContainer:{display:"flex",flexDirection:"row",marginBottom:15},propertiesItem:{display:"flex",flexDirection:"row",marginRight:21},propertiesItemBold:{fontWeight:700},propertiesValue:{marginLeft:8,textTransform:"capitalize"},propertiesIcon:{marginLeft:5},actionsIconContainer:{marginLeft:12},actionsIcon:{height:16,width:16,"& .MuiSvgIcon-root":{height:16}},tagsContainer:{display:"flex",flexDirection:"row",alignItems:"center",marginBottom:15},tagText:{marginRight:13},tag:{marginRight:6,fontSize:10,fontWeight:700,"&.MuiChip-sizeSmall":{height:18},"& .MuiSvgIcon-root":{height:10,width:10}},search:{marginBottom:8,"&.MuiFormControl-root":{marginRight:0}},"@global":{".progressDetails":{paddingTop:3,display:"inline-block",position:"relative",width:18,height:18},".progressDetails > .MuiCircularProgress-root":{position:"absolute",left:0,top:3}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.routesList,r=e.downloadingFiles,o=e.removeRouteLevel,s=e.setErrorSnackMessage,l=e.setSnackBarMessage,d=e.fileIsBeingPrepared,j=e.fileDownloadStarted,m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)(!1),v=Object(u.a)(g,2),y=v[0],C=v[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(["",""]),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!1),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(fd),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)([]),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)(""),te=Object(u.a)(ee,2),ae=te[0],ne=te[1],ce=Object(c.useState)(!1),ie=Object(u.a)(ce,2),re=ie[0],oe=ie[1],se=a[a.length-1].route.split("/"),le=se[se.length-1],de=se[2],be=se.slice(3).join("/");Object(c.useEffect)((function(){p&&pe.invoke("GET","/api/v1/buckets/".concat(de,"/objects?prefix=").concat(be,"&with_versions=true")).then((function(e){var t=Z()(e,"objects",[]);Y(t.find((function(e){return e.is_latest}))||fd),X(t.filter((function(e){return!e.is_latest}))),O(!1)})).catch((function(e){s(e),O(!1)}))}),[p,de,be,s]);var ue=[];H.tags&&(ue=Object.keys(H.tags));var je=function(){C(!0)},me=function(e){j(e)},he=function(e,t){d("".concat(de,"/").concat(e.name).concat(t?"-".concat(e.version_id):"")),e.size&&parseInt(e.size)>104857600&&l("Download process started, it may take a few moments to complete"),ql(de,be,e.version_id,me,t)},Oe=[{type:"share",onClick:je,sendOnlyId:!0},{type:"download",onClick:function(e){he(e,!0)},showLoaderFunction:function(e){return r.includes("".concat(de,"/").concat(le,"-").concat(e))}}],ge=$.filter((function(e){return!!e.version_id&&e.version_id.includes(ae)}));return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"Object Browser"}),y&&Object(n.jsx)(cd,{open:y,closeModalAndRefresh:function(){C(!1)},bucketName:de,dataObject:H}),w&&Object(n.jsx)(ld,{open:w,closeModalAndRefresh:function(e){T(!1),e&&O(!0)},objectName:le,objectInfo:H,bucketName:de}),re&&Object(n.jsx)(zl,{deleteOpen:re,selectedBucket:de,selectedObject:be,closeDeleteModalAndRefresh:function(e){if(oe(!1),e){var t=se.slice(0,-1).join("/");o(t),b.push(t)}}}),_&&Object(n.jsx)(ud,{modalOpen:_,currentTags:H.tags,selectedObject:be,versionId:H.version_id,bucketName:de,onCloseAndUpdate:function(e){I(!1),e&&O(!0)}}),D&&Object(n.jsx)(hd,{deleteOpen:D,currentTags:H.tags,selectedObject:be,versionId:H.version_id,bucketName:de,onCloseAndUpdate:function(e){L(!1),e&&O(!0)},selectedTag:P}),W&&Object(n.jsx)(gd,{open:W,closeModalAndRefresh:function(e){V(!1),e&&O(!0)},objectName:be,bucketName:de,actualInfo:H}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.obTitleSection,children:Object(n.jsx)("div",{children:Object(n.jsx)(Fl,{})})}),Object(n.jsx)("br",{}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.propertiesContainer,children:[H.version_id&&"null"!==H.version_id&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)("div",{className:t.propertiesItem,children:[Object(n.jsxs)("div",{children:[Object(n.jsx)("span",{className:t.propertiesItemBold,children:"Legal Hold:"}),Object(n.jsx)("span",{className:t.propertiesValue,children:H.legal_hold_status?H.legal_hold_status.toLowerCase():"Off"})]}),Object(n.jsx)("div",{children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"legal-hold",size:"small",className:t.propertiesIcon,onClick:function(){V(!0)},children:Object(n.jsx)(Zt,{active:!0})})})]}),Object(n.jsxs)("div",{className:t.propertiesItem,children:[Object(n.jsxs)("div",{children:[Object(n.jsx)("span",{className:t.propertiesItemBold,children:"Retention:"}),Object(n.jsx)("span",{className:t.propertiesValue,children:H.retention_mode?H.retention_mode.toLowerCase():"Undefined"})]}),Object(n.jsx)("div",{children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"retention",size:"small",className:t.propertiesIcon,onClick:function(){T(!0)},children:Object(n.jsx)(Zt,{active:!0})})})]})]}),Object(n.jsxs)("div",{className:t.propertiesItem,children:[Object(n.jsx)("div",{className:t.propertiesItemBold,children:"File Actions:"}),Object(n.jsx)("div",{className:t.actionsIconContainer,children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"share",size:"small",className:t.actionsIcon,onClick:function(){je()},children:Object(n.jsx)(id,{})})}),Object(n.jsx)("div",{className:t.actionsIconContainer,children:r.includes("".concat(de,"/").concat(H.name))?Object(n.jsx)("div",{className:"progressDetails",children:Object(n.jsx)(S.a,{color:"primary",size:17,variant:"indeterminate"})}):Object(n.jsx)(Lt.a,{color:"primary","aria-label":"download",size:"small",className:t.actionsIcon,onClick:function(){he(H)},children:Object(n.jsx)(rd,{})})}),Object(n.jsx)("div",{className:t.actionsIconContainer,children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"delete",size:"small",className:t.actionsIcon,onClick:function(){oe(!0)},children:Object(n.jsx)(lt,{})})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.tagsContainer,children:[Object(n.jsx)("div",{className:t.tagText,children:"Tags:"}),ue&&ue.map((function(e,a){var c=Z()(H,"tags.".concat(e),"");return""!==c?Object(n.jsx)($l.a,{className:t.tag,size:"small",label:"".concat(e," : ").concat(c),color:"primary",deleteIcon:Object(n.jsx)(ed.a,{}),onDelete:function(){!function(e,t){z([e,t]),L(!0)}(e,c)}},"chip-".concat(a)):null})),Object(n.jsx)($l.a,{className:t.tag,icon:Object(n.jsx)(cs.a,{}),clickable:!0,size:"small",label:"Add tag",color:"primary",variant:"outlined",onClick:function(){I(!0)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.actionsTray,children:H.version_id&&"null"!==H.version_id&&Object(n.jsx)(f.a,{placeholder:"Search ".concat(le),className:Object(ve.a)(t.search,t.searchField),id:"search-resource",label:"",onChange:function(e){ne(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:H.version_id&&"null"!==H.version_id&&Object(n.jsx)(ma,{itemActions:Oe,columns:[{label:"Version ID",elementKey:"version_id"},{label:"Last Modified",elementKey:"last_modified",renderFunction:function(e){return Object(n.jsx)(it.a,{children:e})}}],isLoading:!1,entityName:"Versions",idField:"version_id",records:ge})})]})})]})}))),yd={setAllRoutes:Al},Sd=Object(s.b)((function(e){var t=e.objectBrowser;return{routesList:Z()(t,"routesList",[])}}),yd),Cd=Object(l.g)(Sd((function(e){var t=e.routesList,a=e.match,i=e.setAllRoutes,r=t[t.length-1];return Object(c.useEffect)((function(){var e=Z()(a,"url","/object-browser");e!==t[t.length-1].route&&i(e)}),[a,t,i]),"path"===r.type?Object(n.jsx)(Jl,{}):Object(n.jsx)(vd,{routesList:t})}))),kd=a(231),Nd=a.n(kd),wd=[{id:0,title:"Community",price:"Open Source",capacityMin:""},{id:1,title:"Standard",price:"$10/TB/month",capacityMax:"Up to 10PB. No additional charges for capacity over 10PB",capacityMin:""},{id:2,title:"Enterprise",price:"$20/TB/month",capacityMax:"Up to 5PB. No additional charges for capacity over 5PB",capacityMin:""}],Td=[{id:0,field:"License",community:"GNU AGPL v3",communityDetail:"",standard:"Commercial License",standardDetail:"",enterprise:"Commercial License",enterpriseDetail:""},{id:1,field:"Software Release",community:"Update to latest",standard:"1 Year Long Term Support",enterprise:"5 Years Long Term Support"},{id:2,field:"SLA",community:"No SLA",standard:"<24 hours",enterprise:"<1 hour"},{id:3,field:"Support",community:"Community:",communityDetail:"Public Slack Channel + Github Issues",standard:"24x7 L4 direct engineering",standardDetail:"Support via SUBNET",enterprise:"24x7 L4 direct engineering",enterpriseDetail:"Support via SUBNET"},{id:4,field:"Security Updates & Critical Bugs",community:"Self Update",standard:"Guided Update",enterprise:"Guided Update"},{id:5,field:"Panic Button",community:"N/A",standard:"1 per year",enterprise:"Unlimited"},{id:6,field:"Annual Architecture Review",community:"N/A",standard:"Yes",enterprise:"Yes"},{id:7,field:"Annual Performance Review",community:"N/A",standard:"Yes",enterprise:"Yes"},{id:8,field:"Indemnification",community:"N/A",standard:"N/A",enterprise:"Yes"},{id:9,field:"Security + Policy Review",community:"N/A",standard:"N/A",enterprise:"Yes"}],Ed=[{id:0,text:"Join Slack",text2:"",link:"https://slack.min.io",plan:"community"},{id:1,text:"Subscribe",text2:"Upgrade",link:"https://subnet.min.io/subscription",plan:"standard"},{id:2,text:"Subscribe",text2:"Upgrade",link:"https://subnet.min.io/subscription",plan:"enterprise"}],Ad=a(439),_d=a.n(Ad),Id=a(440),Md=a.n(Id),Fd={setModalErrorSnackMessage:q},Dd=Object(s.b)(null,Fd),Ld=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({errorBlock:{color:"red"},subnetLicenseKey:{padding:"10px 10px 10px 0px",borderRight:"1px solid rgba(0, 0, 0, 0.12)",opacity:.5,"&:hover":{opacity:1}},subnetLoginForm:{padding:"10px 0px 10px 10px",opacity:.5,"&:hover":{opacity:1}},licenseKeyField:{},pageTitle:{marginBottom:20},button:{textTransform:"none",fontSize:15,fontWeight:700,background:"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box",color:"#fff"},buttonSignup:{textTransform:"none",fontSize:15,fontWeight:700,marginLeft:15}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Dd((function(e){var t=e.classes,a=e.open,i=e.closeModal,r=e.setModalErrorSnackMessage,o=Object(c.useState)(""),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(""),O=Object(u.a)(p,2),S=O[0],C=O[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=function(){if(!w){T(!0);var e={license:l,email:S,password:m};pe.invoke("POST","/api/v1/subscription/validate",e).then((function(){T(!1),d(""),h(""),C(""),i()})).catch((function(e){T(!1),d(""),h(""),C(""),r(e)}))}};return a?Object(n.jsxs)(xa,{title:"",modalOpen:a,onClose:function(){d(""),h(""),C(""),i()},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsxs)(x.a,{container:!0,alignItems:"center",item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{component:"h2",variant:"h6",className:t.pageTitle,children:"Activate SUBNET License"})}),Object(n.jsxs)(x.a,{item:!0,className:t.subnetLicenseKey,xs:6,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"caption",display:"block",gutterBottom:!0,children:"Enter your license key here"})}),Object(n.jsx)(f.a,{id:"license-key",placeholder:"",multiline:!0,rows:3,value:l,onChange:function(e){return d(e.target.value)},fullWidth:!0,className:t.licenseKeyField,variant:"outlined"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",onClick:function(){return E()},disabled:w||0===l.trim().length,children:"Activate"})]}),Object(n.jsx)(x.a,{item:!0,className:t.subnetLoginForm,xs:6,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{overlayIcon:Object(n.jsx)(_d.a,{}),id:"subnet-email",name:"subnet-email",onChange:function(e){C(e.target.value)},placeholder:"email",label:"",type:"text",value:S})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{overlayIcon:Object(n.jsx)(Md.a,{}),id:"subnet-password",name:"subnet-password",onChange:function(e){h(e.target.value)},placeholder:"password",label:"",type:"password",value:m})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(g.a,{className:t.button,color:"primary",onClick:function(){return E()},disabled:w||0===S.trim().length||0===m.trim().length,variant:"contained",children:"Activate"}),Object(n.jsx)(g.a,{className:t.buttonSignup,color:"primary",target:"_blank",rel:"noopener noreferrer",href:"#",onClick:function(e){e.preventDefault(),window.open("https://min.io/pricing","_blank")},variant:"outlined",children:"Sign Up"})]})]})})]}),w&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]}):null}))),Bd=Object(s.b)((function(e){return{operatorMode:e.system.operatorMode}}),null)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({pageTitle:{fontSize:18,marginBottom:20},paper:{padding:"20px 52px 20px 28px"},licenseContainer:{position:"relative",padding:"20px 52px 0px 28px",background:"#032F51",boxShadow:"0px 3px 7px #00000014","& h2":{color:"#FFF",marginBottom:67},"& a":{textDecoration:"none"},"& h3":{color:"#FFFFFF",marginBottom:"30px",fontWeight:"bold"},"& h6":{color:"#FFFFFF !important"}},tableContainer:{marginLeft:28},detailsContainer:{textAlign:"center",paddingBottom:12,borderRadius:"3px 3px 0 0",marginLeft:8,maxWidth:"calc(25% - 8px)"},detailsContainerBorder:{border:"1px solid #e2e2e2",borderBottom:0,borderRadius:"4px 4px 0px 0px"},detailsContainerBorderHighlighted:{border:"1px solid #B5B5B5",borderBottom:0},detailsTitle:{fontSize:19,fontWeight:700,marginBottom:26,paddingTop:18},activePlanHeader:{fontWeight:700,background:"#D5DDE5",borderRadius:"3px 3px 0px 0px",color:"#121212",padding:8,borderTop:"1px solid #D5DDE5",marginTop:-2},planHeader:{background:"#FFFFFF",borderRadius:"3px 3px 0px 0px",padding:8,borderTop:"1px solid #D5DDE5"},detailsPrice:{fontSize:13,fontWeight:700,marginBottom:8},detailsCapacityMax:{minHeight:28,fontSize:10,fontWeight:700,marginBottom:12,padding:"0% 15%"},detailsCapacityMin:{fontSize:10},itemContainer:{height:36},itemContainerDetail:{height:48},item:{height:"100%",borderLeft:"1px solid #e2e2e2",borderRight:"1px solid #e2e2e2",textAlign:"center",fontSize:10,fontWeight:700,display:"flex",alignItems:"center",alignContent:"center",marginLeft:8,maxWidth:"calc(25% - 8px)",borderTop:"1px solid #e5e5e5"},itemFirst:{borderLeft:0,borderRight:0},itemHighlighted:{borderLeft:"1px solid #B5B5B5",borderRight:"1px solid #B5B5B5"},field:{textAlign:"left",fontWeight:400,fontSize:12},checkIcon:{height:12,color:"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box"},buttonContainer:{paddingTop:8,paddingBottom:24,height:"100%",display:"flex",justifyContent:"center",borderRadius:"0 0 3px 3px",border:"1px solid #e2e2e2",borderTop:0,marginLeft:8,maxWidth:"calc(25% - 8px)"},buttonContainerBlank:{border:0},buttonContainerHighlighted:{border:"1px solid #B5B5B5",borderTop:0},button:{textTransform:"none",fontSize:15,fontWeight:700},licenseButton:{float:"right",marginTop:25,marginRight:25},openSourcePolicy:{color:"#1C5A8D",fontWeight:"bold"},activateLink:{color:"#1C5A8D",fontWeight:"bold",clear:"both",background:"none",border:"none",textDecoration:"underline",cursor:"pointer"},subnetRefreshLicenseLink:{color:"#1C5A8D",fontWeight:"bold",clear:"both",background:"none",border:"none",textDecoration:"underline",cursor:"pointer",fontSize:13},fullWidth:{width:"100%",height:"100%"},midWidth:{width:"70%",float:"left",height:"100%"},smallWidth:{width:"30%",float:"right",height:"100%",borderRadius:"0px 3px 0px 0px !important"},licenseInfo:{color:"#FFFFFF",position:"relative"},licenseInfoTitle:{textTransform:"none",color:"#BFBFBF",fontSize:11},licenseInfoValue:{textTransform:"none",fontSize:14,fontWeight:"bold"},licenseDescription:{background:"#032F51",padding:"30px 30px",borderTop:"1px solid #e2e5e4",borderLeft:"1px solid #e2e5e4",borderRight:"1px solid #e2e5e4",bottom:0,left:"5%",right:"5%",position:"absolute"},currentPlanBG:{background:"#022A4A 0% 0% no-repeat padding-box",color:"#FFFFFF",borderTop:"1px solid #52687d"},currentPlanButton:{background:"#FFFFFF",color:"#022A4A","&:hover":{background:"#FFFFFF"}},planItemsPadding:{padding:"23px 33px"},subnetSubTitle:{fontSize:12},verifiedIcon:{width:96,position:"absolute",right:0,bottom:29},loadingLoginStrategy:{textAlign:"center"}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.operatorMode,r=function(){E(!0),pe.invoke("GET","/api/v1/subscription/info").then((function(e){e&&("STANDARD"===e.plan?k(1):"ENTERPRISE"===e.plan?k(2):k(1),h(e)),E(!1)})).catch((function(e){E(!1)}))},o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(0),O=Object(u.a)(p,2),f=O[0],k=O[1],N=Object(c.useState)(!0),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(!1),_=Object(u.a)(A,2),I=_[0],M=_[1];return Object(c.useEffect)((function(){r()}),[]),T?Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})}):Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"License"}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(C.a,{className:"".concat(t.licenseContainer," ").concat(t.midWidth),children:m?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.licenseInfo,children:[Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"License"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:"Commercial License"}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Organization"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:m.organization}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Registered Capacity"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:ce((1099511627776*m.storage_capacity).toString(10))}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Expiry Date"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:Object(n.jsx)(it.a,{format:"YYYY-MM-DD",children:m.expires_at})})]}),Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Subscription Plan"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:m.plan}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Requester"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:m.email})]}),Object(n.jsx)("img",{className:t.verifiedIcon,src:"/verified.svg",alt:"verified"})]})}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("img",{src:"/agpl.svg",height:40,alt:"agpl"}),Object(n.jsx)(v.a,{component:"h2",variant:"h6",children:"GNU Affero General Public License"}),Object(n.jsx)("a",{href:"https://www.gnu.org/licenses/agpl-3.0.html",target:"_blank",rel:"nofollow noopener noreferrer",children:Object(n.jsxs)("div",{className:t.licenseDescription,children:[Object(n.jsx)(v.a,{component:"h3",children:"Version 3"}),Object(n.jsx)(v.a,{component:"h6",children:"The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the Community in the case of network server software."})]})})]})}),Object(n.jsx)(C.a,{className:"".concat(t.paper," ").concat(t.smallWidth),children:m?Object(n.jsxs)(i.a.Fragment,{children:[" ",Object(n.jsx)(v.a,{component:"h2",variant:"h6",className:t.pageTitle,children:"Login to MinIO SUBNET !"}),Object(n.jsx)(v.a,{component:"h6",className:t.subnetSubTitle,children:"It combines a commercial license with a support experience unlike any other."}),Object(n.jsx)("br",{}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",className:t.button,target:"_blank",rel:"noopener noreferrer",href:"https://subnet.min.io/support/?ref=".concat(a?"op":"con"),children:"Login to SUBNET"}),a&&Object(n.jsxs)(i.a.Fragment,{children:[" ",Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("button",{className:t.subnetRefreshLicenseLink,onClick:function(e){e.preventDefault(),M(!0),pe.invoke("POST","/api/v1/subscription/refresh",{}).then((function(e){e&&("STANDARD"===e.plan?k(1):"ENTERPRISE"===e.plan?k(2):k(1),h(e)),M(!1)})).catch((function(e){M(!1)}))},children:"Refresh Licence"}),I&&Object(n.jsx)(S.a,{size:16,className:t.loadingLoginStrategy})]})]}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h2",variant:"h6",className:t.pageTitle,children:"Choosing between GNU AGPL v3 and Commercial License"}),Object(n.jsx)(v.a,{component:"h6",children:"If you are building proprietary applications, you may want to choose the commercial license included as part of the Standard and Enterprise subscription plans. Applications must otherwise comply with all the GNU AGPLv3 License & Trademark obligations. Follow the links below to learn more about the compliance policy."}),Object(n.jsx)("br",{}),Object(n.jsx)("a",{href:"https://min.io/compliance?ref=".concat(a?"op":"con"),className:t.openSourcePolicy,target:"_blank",rel:"nofollow noopener noreferrer",children:"Open Source Policy Compliance"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("a",{href:"https://min.io/logo?ref=".concat(a?"op":"con"),className:t.openSourcePolicy,target:"_blank",rel:"nofollow noopener noreferrer",children:"Trademark Policy"})]})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:Object(ve.a)(t.planItemsPadding),children:Object(n.jsx)(C.a,{className:t.paper,style:{borderRadius:"0px 0px 3px 3px"},children:Object(n.jsxs)(x.a,{container:!0,children:[a?Object(n.jsx)(Ld,{open:l,closeModal:function(){return d(!1),void r()}}):null,Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,className:t.tableContainer,children:[Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:3,className:t.detailsContainer}),wd.map((function(e){var a=!m&&"Community"===e.title||m&&m.plan.toLowerCase()===e.title.toLowerCase();return Object(n.jsxs)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.detailsContainer,t.detailsContainerBorder,Object(xe.a)({},t.detailsContainerBorderHighlighted,"Community"!==e.title),a?t.currentPlanBG:""),children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:a?t.activePlanHeader:t.planHeader,children:a?"Current Plan":"\xa0"}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.detailsTitle,children:e.title}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.detailsPrice,children:e.price}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.detailsCapacityMax,children:e.capacityMax||""})]},e.id)}))]}),Td.map((function(e){return Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,className:Object(ve.a)(t.itemContainer,e.communityDetail&&t.itemContainerDetail),children:[Object(n.jsx)(x.a,{item:!0,xs:3,className:Object(ve.a)(t.item,t.field,t.itemFirst),children:e.field}),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.item,0===f?t.currentPlanBG:""),children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:"N/A"===e.community?"":"Yes"===e.community?Object(n.jsx)(Nd.a,{className:t.checkIcon}):e.community}),void 0!==e.communityDetail&&Object(n.jsx)(x.a,{item:!0,xs:12,children:e.communityDetail})]}),Object(n.jsx)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.item,t.itemHighlighted,1===f?t.currentPlanBG:""),children:Object(n.jsx)(x.a,{item:!0,xs:12,children:"N/A"===e.standard?"":"Yes"===e.standard?Object(n.jsx)(Nd.a,{className:t.checkIcon}):e.standard})}),Object(n.jsx)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.item,t.itemHighlighted,2===f?t.currentPlanBG:""),children:Object(n.jsx)(x.a,{item:!0,xs:12,children:"N/A"===e.enterprise?"":"Yes"===e.enterprise?Object(n.jsx)(Nd.a,{className:t.checkIcon}):e.enterprise})})]},e.id)})),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:3,className:Object(ve.a)(t.buttonContainer,t.buttonContainerBlank)}),Ed.map((function(e,c){return Object(n.jsxs)(x.a,{container:!0,item:!0,xs:3,style:{textAlign:"center"},className:Object(ve.a)(t.buttonContainer,f===c?t.currentPlanBG:"",Object(xe.a)({},t.buttonContainerHighlighted,"Subscribe"===e.text)),children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",className:Object(ve.a)(t.button,f===c?t.currentPlanButton:""),target:"_blank",rel:"noopener noreferrer",href:"#",disabled:m&&m.plan.toLowerCase()===e.plan.toLowerCase(),onClick:function(t){t.preventDefault(),window.open("".concat(e.link,"/?ref=").concat(a?"op":"con"),"_blank")},children:f!==c&&c>0?e.text2:e.text})}),a&&"Subscribe"===e.text&&!(m&&m.plan.toLowerCase()===e.plan.toLowerCase())&&Object(n.jsx)(x.a,{item:!0,xs:12,style:{marginTop:"10px"},children:Object(n.jsx)("button",{className:t.activateLink,onClick:function(e){e.preventDefault(),d(!0)},children:"Activate"})})]},e.id)}))]})]})]})})})]})]})})}))),Rd=a(91),Pd="TRACE_MESSAGE_RECEIVED",zd="TRACE_RESET_MESSAGES";var Kd=function(e){var t="ws";return"https:"===e&&(t="wss"),t},Ud=a(117),Wd=a.n(Ud),Vd=Object(s.b)((function(e){return{messages:e.trace.messages}}),{traceMessageReceived:function(e){return{type:Pd,message:e}},traceResetMessages:function(){return{type:zd}}})(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({logList:{background:"white",height:"400px",overflow:"auto","& ul":{margin:"4px",padding:"0px"},"& ul li":{listStyle:"none",margin:"0px",padding:"0px",borderBottom:"1px solid #dedede"}},sizeItem:{width:150},timeItem:{width:100}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.traceMessageReceived,r=e.traceResetMessages,o=e.messages;return Object(c.useEffect)((function(){r();var e=new URL(window.location.toString()),t=e.port,n=Kd(e.protocol),c=new Rd.w3cwebsocket("".concat(n,"://").concat(e.hostname,":").concat(t,"/ws/trace")),i=null;if(null!==c)return c.onopen=function(){console.log("WebSocket Client Connected"),c.send("ok"),i=setInterval((function(){c.send("ok")}),1e4)},c.onmessage=function(e){var t=JSON.parse(e.data.toString());t.ptime=Wd()(t.time,"YYYY-MM-DD HH:mm:s.SSSS +0000 UTC").toDate(),t.key=Math.random(),a(t)},c.onclose=function(){clearInterval(i),console.log("connection closed by server")},function(){c.close(1e3),clearInterval(i),console.log("closing websockets")}}),[a,r]),Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"Trace"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container,children:Object(n.jsx)(ma,{itemActions:[],columns:[{label:"Time",elementKey:"ptime",renderFunction:function(e){var t=new Date(e);return re(t)},globalClass:t.timeItem},{label:"Name",elementKey:"api"},{label:"Status",elementKey:"",renderFunction:function(e){return"".concat(e.statusCode," ").concat(e.statusMsg)},renderFullObject:!0},{label:"Location",elementKey:"configuration_id",renderFunction:function(e){return"".concat(e.host," ").concat(e.client)},renderFullObject:!0},{label:"Load Time",elementKey:"callStats.duration",globalClass:t.timeItem},{label:"Upload",elementKey:"callStats.rx",renderFunction:ce,globalClass:t.sizeItem},{label:"Download",elementKey:"callStats.tx",renderFunction:ce,globalClass:t.sizeItem}],isLoading:!1,records:o,entityName:"Traces",idField:"api",customEmptyMessage:"There are no traced Elements yet",autoScrollToBottom:!0})})})]})}))),Gd="LOG_MESSAGE_RECEIVED",qd="LOG_RESET_MESSAGES";var Hd=Object(s.b)((function(e){return{messages:e.logs.messages}}),{logMessageReceived:function(e){return{type:Gd,message:e}},logResetMessages:function(){return{type:qd}}}),Yd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({logList:{background:"#fff",minHeight:400,height:"calc(100vh - 304px)",overflow:"auto",fontSize:13,padding:"25px 45px 0",border:"1px solid #EAEDEE",borderRadius:4},tab:{paddingLeft:25},logerror:{color:"#A52A2A"},logerror_tab:{color:"#A52A2A",paddingLeft:25},ansidefault:{color:"#000"},highlight:{"& span":{backgroundColor:"#082F5238"}}},Me),Fe),ze))}))(Hd((function(e){var t=e.classes,a=e.logMessageReceived,i=e.logResetMessages,r=e.messages,o=Object(c.useState)(""),s=Object(u.a)(o,2),l=s[0],d=s[1];Object(c.useEffect)((function(){i();var e=new URL(window.location.toString()),t=e.port,n=Kd(e.protocol),c=new Rd.w3cwebsocket("".concat(n,"://").concat(e.hostname,":").concat(t,"/ws/console")),r=null;if(null!==c)return c.onopen=function(){console.log("WebSocket Client Connected"),c.send("ok"),r=setInterval((function(){c.send("ok")}),1e4)},c.onmessage=function(e){var t=JSON.parse(e.data.toString());t.time=Wd()(t.time,"HH:mm:s UTC MM/DD/YYYY").toDate(),t.key=Math.random(),a(t)},c.onclose=function(){clearInterval(r),console.log("connection closed by server")},function(){c.close(1e3),clearInterval(r),console.log("closing websockets")}}),[a,i]);var b=function(e){var a=e.ConsoleMsg,c=(a=a.replace(/([^\x20-\x7F])/g,"")).replace(/((\[[0-9;]+m))/g,""),i=""!==l&&a.toLowerCase().includes(l.toLowerCase());return c.startsWith(" ")?Object(n.jsx)("div",{className:"".concat(i?t.highlight:""),children:Object(n.jsx)("span",{className:t.tab,children:c})},e.key):null!==e.error&&void 0!==e.error?function(e){var a=[];if(null!==e.error&&void 0!==e.error){if(e.api&&e.api.name){var c="API: ".concat(e.api.name),i=""!==l&&c.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsxs)("div",{className:"".concat(i?t.highlight:""),children:[Object(n.jsx)("br",{}),Object(n.jsx)("span",{className:t.logerror,children:c})]},"api-".concat(e.key)))}if(e.time){var r="Time: ".concat(re(e.time)),o=""!==l&&r.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(o?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:r})},"time-".concat(e.key)))}if(e.deploymentid){var s="DeploymentID: ".concat(e.deploymentid),d=""!==l&&s.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(d?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:s})},"deploytmentid-".concat(e.key)))}if(e.requestID){var b="RequestID: ".concat(e.requestID),u=""!==l&&b.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(u?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:b})},"requestid-".concat(e.key)))}if(e.remotehost){var j="RemoteHost: ".concat(e.remotehost),m=""!==l&&j.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(m?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:j})},"remotehost-".concat(e.key)))}if(e.host){var h="Host: ".concat(e.host),p=""!==l&&h.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(p?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:h})},"host-".concat(e.key)))}if(e.userAgent){var O="UserAgent: ".concat(e.userAgent),g=""!==l&&O.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(g?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:O})},"useragent-".concat(e.key)))}if(e.error.message){var f="Error: ".concat(e.error.message),x=""!==l&&f.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(x?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:f})},"message-".concat(e.key)))}if(e.error.source)for(var v in e.error.source){var y=e.error.source[v],S=""!==l&&y.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(S?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror_tab,children:y})},"source-".concat(e.key,"-").concat(v)))}}return a}(e):Object(n.jsx)("div",{className:"".concat(i?t.highlight:""),children:Object(n.jsx)("span",{className:t.ansidefault,children:c})},e.key)},j=r.map((function(e){return b(e)}));return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.logsSubContainer,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.actionsTray,children:Object(n.jsx)(f.a,{placeholder:"Highlight Line",className:t.searchField,id:"search-resource",label:"",onChange:function(e){d(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.logList,children:j})})]})})}))),Qd=a(993),Zd=Object(w.a)((function(e){return Object(k.a)({searchField:Object(j.a)(Object(j.a)({},Fe.searchField),{},{height:30,padding:0,"& input":{padding:"0 12px",height:28,fontSize:12,fontWeight:600,color:"#393939"},"&.isDisabled":{"&:hover":{borderColor:"#EAEDEE"}},"& input.Mui-disabled":{backgroundColor:"#EAEAEA"}}),labelStyle:{color:"#393939",fontSize:12,marginBottom:4},buttonKit:{display:"flex",alignItems:"center"},toggleButton:{marginRight:10},fieldContainer:{flexGrow:1,margin:"0 15px"}})}))((function(e){var t=e.classes,a=e.label,i=e.onChange,r=e.value,o=e.placeholder,s=void 0===o?"":o,l=e.id,d=e.name;return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("div",{className:t.fieldContainer,children:[Object(n.jsx)("div",{className:t.labelStyle,children:a}),Object(n.jsx)("div",{className:t.buttonKit,children:Object(n.jsx)(f.a,{placeholder:s,id:l,name:d,label:"",onChange:function(e){i(e.target.value)},InputProps:{disableUnderline:!0},className:t.searchField,value:r})})]})})})),Jd={setErrorSnackMessage:V},$d=Object(s.b)(null,Jd),Xd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({inputBar:{flexGrow:1,marginLeft:15},advancedLabel:{display:"flex",alignItems:"center",color:"#091C42",border:0,backgroundColor:"transparent",cursor:"pointer","&:focus, &:active":{outline:"none"}},advancedLabelContainer:{marginTop:10},getInformationContainer:{textAlign:"right"},orderButton:{width:93},recordsLabel:{alignSelf:"center",marginLeft:15},blockCollapsed:{height:0,overflowY:"hidden",transitionDuration:"0.3s"},filterOpen:{height:200,marginBottom:12},endLineAction:{marginBottom:15},filtersContainer:{display:"flex",justifyContent:"space-between",marginBottom:12},innerContainer:{backgroundColor:"#fff",border:"#EAEDEE 1px solid",borderRadius:3,padding:10,marginBottom:15},noticeLabel:{marginLeft:15,marginBottom:15,fontSize:12,color:"#9C9C9C"},tableFOpen:{height:"calc(100vh - 561px)"},tableFClosed:{height:"calc(100vh - 349px)"},"@global":{".overrideMargin":{marginLeft:0}}},Fe),Me),ze),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))($d((function(e){var t=e.classes,a=e.setErrorSnackMessage,i=Object(c.useState)(!0),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(null),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(null),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(!1),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)([]),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(""),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(""),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(""),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(""),Q=Object(u.a)(Y,2),J=Q[0],$=Q[1],X=Object(c.useState)("DESC"),ee=Object(u.a)(X,2),te=ee[0],ae=ee[1],ne=Object(c.useState)(["time","api_name","bucket","object","remote_host","request_id","user_agent","response_status"]),ie=Object(u.a)(ne,2),re=ie[0],oe=ie[1],se=Object(c.useState)(0),le=Object(u.a)(se,2),de=le[0],be=le[1],ue=Object(c.useState)(!1),je=Object(u.a)(ue,2),he=je[0],Oe=je[1],ge=null,fe=Object(c.useCallback)((function(){if(!he){Oe(!0);var e="".concat(""!==A?"&fp=bucket:".concat(A):"").concat(""!==U?"&fp=object:".concat(U):"").concat(""!==F?"&fp=api_name:".concat(F):"").concat(""!==q?"&fp=request_id:".concat(q):"").concat(""!==R?"&fp=user_agent:".concat(R):"").concat(""!==J?"&fp=response_status:".concat(J):"");(e=e.trim()).endsWith(",")&&(e=e.slice(0,-1)),pe.invoke("GET","/api/v1/logs/search?q=reqinfo".concat(""!==e?"".concat(e):"","&pageSize=100&pageNo=").concat(de,"&order=").concat("DESC"===te?"timeDesc":"timeAsc").concat(null!==b?"&timeStart=".concat(b.toISOString()):"").concat(null!==p?"&timeEnd=".concat(p.toISOString()):"")).then((function(e){var t=e.results||[],a=[].concat(Object($e.a)(N),Object($e.a)(t));s(!1),Oe(!1),w(a),be(de+1),null!==ge&&ge()})).catch((function(e){s(!1),Oe(!1),a(e)}))}}),[A,U,F,q,R,J,de,te,b,p,he,N,ge,a]);Object(c.useEffect)((function(){o&&(w([]),fe())}),[o,te,fe]);return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.logsSubContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(t.actionsTray," ").concat(t.timeContainers),children:[Object(n.jsx)("span",{className:t.label,children:"Start Time"}),Object(n.jsx)(bi,{value:b,onChange:j}),Object(n.jsx)("span",{className:t.label,children:"End Time"}),Object(n.jsx)(bi,{value:p,onChange:O})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:"".concat(t.advancedLabelContainer),children:Object(n.jsx)("div",{className:"".concat(t.blockCollapsed," ").concat(y?t.filterOpen:""),children:Object(n.jsxs)("div",{className:t.innerContainer,children:[Object(n.jsxs)("div",{className:t.noticeLabel,children:["Enable your preferred options to get filtered records.",Object(n.jsx)("br",{}),"You can use '*' to match any character, '.' to signify a single character or '\\' to scape an special character (E.g. mybucket-*)"]}),Object(n.jsxs)("div",{className:t.filtersContainer,children:[Object(n.jsx)(Zd,{onChange:_,value:A,label:"Bucket",id:"bucket",name:"bucket"}),Object(n.jsx)(Zd,{onChange:D,value:F,label:"API Name",id:"api_name",name:"api_name"}),Object(n.jsx)(Zd,{onChange:P,value:R,label:"User Agent",id:"user_agent",name:"user_agent"})]}),Object(n.jsxs)("div",{className:t.filtersContainer,children:[Object(n.jsx)(Zd,{onChange:W,value:U,label:"Object",id:"object",name:"object"}),Object(n.jsx)(Zd,{onChange:H,value:q,label:"Request ID",id:"request_id",name:"request_id"}),Object(n.jsx)(Zd,{onChange:$,value:J,label:"Response Status",id:"response_status",name:"response_status"})]})]})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(t.actionsTray," ").concat(t.endLineAction),children:[Object(n.jsx)("div",{children:Object(n.jsxs)("button",{type:"button",className:"".concat(t.advancedLabel," overrideMargin"),onClick:function(){S(!y)},children:["Advanced Filters"," ",y?Object(n.jsx)(Qd.a,{}):Object(n.jsx)(Wt.a,{})]})}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",onClick:function(){be(0),s(!0)},children:"Get Information"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{columns:[{label:"Timestamp",elementKey:"time",enableSort:!0},{label:"API Name",elementKey:"api_name"},{label:"Bucket",elementKey:"bucket"},{label:"Object",elementKey:"object"},{label:"Remote Host",elementKey:"remote_host"},{label:"Request ID",elementKey:"request_id"},{label:"User Agent",elementKey:"user_agent"},{label:"Response Status",elementKey:"response_status",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("span",{children:[e.response_status_code," (",e.response_status,")"]})})},renderFullObject:!0},{label:"Request Content Length",elementKey:"request_content_length",renderFunction:ce},{label:"Response Content Length",elementKey:"response_content_length",renderFunction:ce},{label:"Time to Response NS",elementKey:"time_to_response_ns",renderFunction:me,contentTextAlign:"right"}],isLoading:o,records:N,entityName:"Logs",customEmptyMessage:"There is no information with this criteria",idField:"request_id",columnsSelector:!0,columnsShown:re,onColumnChange:function(e,t){var a=Object($e.a)(re);t?a.includes(e)||a.push(e):a=re.filter((function(t){return t!==e})),oe(a)},customPaperHeight:y?t.tableFOpen:t.tableFClosed,sortConfig:{currentSort:"time",currentDirection:te,triggerSort:function(e){var t=Z()(e,"sortDirection","DESC");ae(t),be(0),s(!0)}},infiniteScrollConfig:{recordsCount:1e6,loadMoreRecords:function(e){return fe(),new Promise((function(e){ge=e}))}},textSelectable:!0})})]})})}))),eb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=Object(c.useState)(0),i=Object(u.a)(a,2),r=i[0],o=i[1],s=Object(c.useState)(!0),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1];return Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/logs/search?q=reqinfo&pageSize=10&pageNo=0").then((function(){p(!0),b(!1)})).catch((function(e){b(!1),console.info("Log Search API not available.")}))}),[d]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Logs"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container,children:d?Object(n.jsx)(y.a,{}):Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.headerLabel,children:"All Logs"}),Object(n.jsxs)(an.a,{value:r,onChange:function(e,t){o(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Error Logs"}),h&&Object(n.jsx)(nn.a,{label:"Logs Search"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Yd,{})}),1===r&&h&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Xd,{})})]})]})})})]})})),tb=a(441),ab=Object(w.a)((function(e){return Object(k.a)({root:{width:450,lineHeight:"50px",marginRight:15,"label + &":{marginTop:e.spacing(3)},"& .MuiSelect-select:focus":{backgroundColor:"transparent"}},input:{height:50,fontSize:13,lineHeight:"50px",width:450}})}))(Ca.a),nb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({watchList:{background:"white",maxHeight:"400",overflow:"auto","& ul":{margin:"4",padding:"0"},"& ul li":{listStyle:"none",margin:"0",padding:"0",borderBottom:"1px solid #dedede"}},graphContainer:{backgroundColor:"#fff",border:"#EAEDEE 1px solid",borderRadius:3,padding:"19px 38px"},scanInfo:{marginTop:20,display:"flex",flexDirection:"row",justifyContent:"space-between"},scanData:{fontSize:13},inlineCheckboxes:{display:"flex",justifyContent:"flex-start"}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=Object(c.useState)(!1),r=Object(u.a)(a,2),o=r[0],s=r[1],l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],v=Object(c.useState)(""),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)({beforeHeal:[0,0,0,0],afterHeal:[0,0,0,0],objectsHealed:0,objectsScanned:0,healDuration:0,sizeScanned:""}),R=Object(u.a)(B,2),P=R[0],z=R[1];Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/buckets").then((function(e){var t=[];null!==e.buckets&&(t=e.buckets),O(t)})).catch((function(e){console.log(e)}))}),[]),Object(c.useEffect)((function(){!0===_&&L(!1)}),[_]),Object(c.useEffect)((function(){!0===D&&I(!1)}),[D]);var K=function(e){return[e.Green,e.Yellow,e.Red,e.Grey]};Object(c.useEffect)((function(){if(o){var e={Green:0,Yellow:0,Red:0,Grey:0},t={Green:0,Yellow:0,Red:0,Grey:0},a=new URL(window.location.toString()),n=a.port,c=Kd(a.protocol),i=new Rd.w3cwebsocket("".concat(c,"://").concat(a.hostname,":").concat(n,"/ws/heal/").concat(b,"?prefix=").concat(S,"&recursive=").concat(w,"&force-start=").concat(_,"&force-stop=").concat(D));if(null!==i)return i.onopen=function(){console.log("WebSocket Client Connected"),i.send("ok")},i.onmessage=function(a){for(var n=JSON.parse(a.data.toString()),c=0,i=Object.entries(n.healthAfterCols);c1?"s":""),content:r.join(", ")}),Object(n.jsx)("br",{})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"force",id:"force",name:"force",checked:v,onChange:function(e){S(e.target.checked)},label:"Force Format",indicatorLabels:["Yes","No"]})}),"Are you sure you want to format"," ",i?Object(n.jsx)("strong",{children:"All"}):"the selected"," drive",r.length>1||i?"s":"","?.",Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("strong",{children:"All information contained will be erased and cannot be recovered"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),"To continue please type ",Object(n.jsx)("b",{children:"YES, PROCEED"})," in the box.",Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"format-confirm",name:"format-confirm",onChange:function(e){p(e.target.value)},label:"",value:h})})]})}),d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1,[])},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsxs)(g.a,{onClick:function(){d||(b(!0),pe.invoke("POST","/api/v1/direct-csi/drives/format",{drives:r,force:v}).then((function(e){b(!1),t(!0,e.formatIssuesList)})).catch((function(e){b(!1),o(e)})))},color:"secondary",autoFocus:!0,disabled:"YES, PROCEED"!==h,children:["Format Drive",r.length>1||i?"s":""]})]})]})})),xb=Object(w.a)((function(e){return Object(k.a)({warningBlock:{color:"red"},buttonContainer:{textAlign:"right"},errorsList:{height:"calc(100vh - 280px)"}})}))((function(e){var t=e.open,a=e.onCloseFormatErrorsList,c=e.errorsList,i=e.classes;return Object(n.jsx)(xa,{modalOpen:t,title:"Format Errors",onClose:a,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:["There were some issues trying to format the selected CSI Drives, please fix the issues and try again.",Object(n.jsx)("br",{}),Object(n.jsx)(ma,{columns:[{label:"Node",elementKey:"node"},{label:"Drive",elementKey:"drive"},{label:"Message",elementKey:"error"}],entityName:"Format Errors",idField:"drive",records:c,isLoading:!1,customPaperHeight:i.errorsList,textSelectable:!0,noBackground:!0})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:[Object(n.jsx)(g.a,{onClick:function(){!function(e,t){var a=document.createElement("a");a.setAttribute("href","data:application/json;charset=utf-8,"+encodeURIComponent(t)),console.log(e),a.setAttribute("download",e),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a)}("csiFormatErrors.json",JSON.stringify(Object($e.a)(c)))},color:"primary",children:"Download"}),Object(n.jsx)(g.a,{onClick:a,color:"secondary",autoFocus:!0,children:"Done"})]})]})})})),vb={setErrorSnackMessage:V,selectDrive:function(e){return{type:Ob,driveName:e}}},yb=Object(s.b)(null,vb),Sb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4},tableWrapper:{height:"calc(100vh - 275px)"},notAvailableNotice:{border:"#EAEDEE 1px solid",backgroundColor:"#FFF",display:"flex",padding:"19px 38px",overflow:"auto",position:"relative",boxShadow:"none",minHeight:200,overflowY:"scroll",borderRadius:3,flexDirection:"column",alignItems:"center",justifyContent:"center",height:"calc(100vh - 275px)",fontSize:18,fontWeight:600,textAlign:"center"},linkItem:{display:"default",color:"#072F51",textDecoration:"none","&:hover":{textDecoration:"underline",color:"#000"}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(yb((function(e){var t=e.classes,a=(e.selectDrive,e.setErrorSnackMessage),i=Object(c.useState)([]),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],m=d[1],h=Object(c.useState)([]),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!0),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(!1),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(!1),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)([]),D=Object(u.a)(F,2),L=D[0],B=D[1],R=Object(c.useState)(!1),P=Object(u.a)(R,2),z=P[0],K=P[1],U=Object(c.useState)([]),W=Object(u.a)(U,2),V=W[0],G=W[1],q=Object(c.useState)(!0),H=Object(u.a)(q,2),Y=H[0],Q=H[1];Object(c.useEffect)((function(){C&&!Y&&pe.invoke("GET","/api/v1/direct-csi/drives").then((function(e){var t=Z()(e,"drives",[]);t||(t=[]),(t=t.map((function(e){var t=Object(j.a)({},e);return t.joinName="".concat(t.node,":").concat(t.drive),t}))).sort((function(e,t){return e.drive>t.drive?1:e.drive0&&(B(t),K(!0)),k(!0),v([]))},deleteOpen:T,allDrives:I,drivesToFormat:V}),z&&Object(n.jsx)(xb,{errorsList:L,open:z,onCloseFormatErrorsList:function(){K(!1)}}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Drives",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){m(e.target.value)},disabled:Y}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh Tenant List",component:"span",onClick:function(){k(!0)},disabled:Y,children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(rr.a,{}),disabled:O.length<=0||Y,onClick:function(){O.length>0&&(G(O),M(!1),E(!0))},children:"Format Selected Drives"}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){var e=o.map((function(e){return"".concat(e.node,":").concat(e.drive)}));M(!0),G(e),E(!0)},disabled:Y,children:"Format All Drives"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Y?Object(n.jsxs)("div",{className:t.notAvailableNotice,children:["To manage locally attached drives you need to install direct-csi, for more information",Object(n.jsx)("br",{}),"please follow this",Object(n.jsx)("a",{href:"https://github.com/minio/direct-csi",rel:"noreferrer",target:"_blank",className:t.linkItem,children:"Link"})]}):Object(n.jsx)(ma,{itemActions:J,columns:[{label:"Drive",elementKey:"drive"},{label:"Capacity",elementKey:"capacity",renderFunction:ce},{label:"Allocated",elementKey:"allocated",renderFunction:ce},{label:"Volumes",elementKey:"volumes"},{label:"Node",elementKey:"node"},{label:"Status",elementKey:"status"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(O);return n?c.push(a):c=c.filter((function(e){return e!==a})),v(c),c},selectedItems:O,isLoading:C,records:$,customPaperHeight:t.tableWrapper,entityName:"Drives",idField:"joinName"})})]})}))),Cb=["/storage/volumes","/storage/drives"],kb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4},tabsContainer:{marginBottom:15}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.match,i=Object(c.useState)(0),r=Object(u.a)(i,2),o=r[0],s=r[1];Object(c.useEffect)((function(){var e=Cb.findIndex((function(e){return e===a.path}));s(e)}),[a]);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Storage"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tabsContainer,children:Object(n.jsxs)(an.a,{value:o,onChange:function(e,t){b.push(Cb[t])},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",children:[Object(n.jsx)(nn.a,{label:"Volumes"}),Object(n.jsx)(nn.a,{label:"Drives"})]})}),Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:Cb[0],component:pb}),Object(n.jsx)(l.b,{path:Cb[1],component:Sb}),Object(n.jsx)(l.b,{render:function(){return Object(n.jsx)(l.a,{to:"/storage/volumes"})}})]})})]})})]})})),Nb=Object(s.b)((function(e){return{open:e.system.sidebarOpen,needsRestart:e.system.serverNeedsRestart,isServerLoading:e.system.serverIsLoading,session:e.console.session,loadingProgress:e.system.loadingProgress,snackBarMessage:e.system.snackBar}}),{setMenuOpen:z,serverNeedsRestart:K,serverIsLoading:function(e){return{type:I,isLoading:e}},setSnackBarMessage:W}),wb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({root:{display:"flex","& .MuiPaper-root.MuiSnackbarContent-root":{borderRadius:"0px 0px 5px 5px",boxShadow:"none"}},toolbar:{background:e.palette.background.default,color:"black",paddingRight:24},toolbarIcon:Object(j.a)({display:"flex",alignItems:"center",justifyContent:"flex-end",padding:"0 8px"},e.mixins.toolbar),appBar:{zIndex:e.zIndex.drawer+1,transition:e.transitions.create(["width","margin"],{easing:e.transitions.easing.sharp,duration:e.transitions.duration.leavingScreen})},appBarShift:{marginLeft:245,width:"calc(100% - ".concat(245,"px)"),transition:e.transitions.create(["width","margin"],{easing:e.transitions.easing.sharp,duration:e.transitions.duration.enteringScreen})},menuButton:{marginRight:36},menuButtonHidden:{display:"none"},title:{flexGrow:1},drawerPaper:{position:"relative",whiteSpace:"nowrap",width:245,transition:e.transitions.create("width",{easing:e.transitions.easing.sharp,duration:e.transitions.duration.enteringScreen}),overflowX:"hidden",background:"transparent linear-gradient(90deg, #073052 0%, #081C42 100%) 0% 0% no-repeat padding-box",boxShadow:"0px 3px 7px #00000014"},drawerPaperClose:Object(xe.a)({overflowX:"hidden",transition:e.transitions.create("width",{easing:e.transitions.easing.sharp,duration:e.transitions.duration.leavingScreen}),width:e.spacing(7)},e.breakpoints.up("sm"),{width:e.spacing(9)}),content:{flexGrow:1,height:"100vh",overflow:"auto",position:"relative"},container:{paddingBottom:e.spacing(4),margin:0,width:"100%",maxWidth:"initial"},paper:{padding:e.spacing(2),display:"flex",overflow:"auto",flexDirection:"column"},fixedHeight:{minHeight:240},warningBar:{background:e.palette.primary.main,color:"white",heigh:"60px",widht:"100%",lineHeight:"60px",textAlign:"center"},progress:{height:"3px",backgroundColor:"#eaeaea"}},We))}))(Nb((function(e){var t=e.classes,a=e.open,i=e.needsRestart,r=e.isServerLoading,o=e.serverNeedsRestart,s=e.serverIsLoading,d=e.session,m=e.loadingProgress,h=e.snackBarMessage,p=e.setSnackBarMessage,O=Object(c.useState)(!1),f=Object(u.a)(O,2),x=f[0],v=f[1],S=d.pages.reduce((function(e,t,a){return e[t]=!0,e}),{}),C=[{component:fi,path:"/dashboard"},{component:sc,path:"/buckets"},{component:sc,path:"/buckets/:bucketName"},{component:sc,path:"/buckets/:bucketName/summary"},{component:sc,path:"/buckets/:bucketName/events"},{component:sc,path:"/buckets/:bucketName/replication"},{component:sc,path:"/buckets/:bucketName/lifecycle"},{component:sc,path:"/buckets/:bucketName/access"},{component:sc,path:"/buckets/:bucketName/access"},{component:sc,path:"/buckets/:bucketName/access/policies"},{component:sc,path:"/buckets/:bucketName/access/users"},{component:Rl,path:"/object-browser"},{component:Cd,path:"/object-browser/:bucket"},{component:Cd,path:"/object-browser/:bucket/*"},{component:ob,path:"/watch"},{component:zr,path:"/users/:userName"},{component:zr,path:"/users"},{component:$r,path:"/groups"},{component:Sc,path:"/policies/:policyName"},{component:Sc,path:"/policies"},{component:nb,path:"/heal"},{component:Vd,path:"/trace"},{component:eb,path:"/logs"},{component:jb,path:"/health-info"},{component:as,path:"/settings"},{component:cr,path:"/account",props:{changePassword:d.pages.includes("/account/change-password")}},{component:rs,path:"/webhook/logger"},{component:rs,path:"/webhook/audit"},{component:cl,path:"/tenants"},{component:kb,path:"/storage"},{component:kb,path:"/storage/volumes"},{component:kb,path:"/storage/drives"},{component:fl,path:"/namespaces/:tenantNamespace/tenants/:tenantName"},{component:Bd,path:"/license"}].filter((function(e){return S[e.path]}));return Object(c.useEffect)((function(){""!==h.message?v(!0):v(!1)}),[h]),Object(n.jsx)(c.Fragment,{children:"ok"===d.status?Object(n.jsxs)("div",{className:t.root,children:[Object(n.jsx)(ye.a,{}),Object(n.jsx)(Se.a,{variant:"permanent",classes:{paper:Object(ve.a)(t.drawerPaper,!a&&t.drawerPaperClose)},open:a,children:Object(n.jsx)(Ui,{pages:d.pages})}),Object(n.jsxs)("main",{className:t.content,children:[i&&Object(n.jsx)("div",{className:t.warningBar,children:r?Object(n.jsxs)(c.Fragment,{children:["The server is restarting.",Object(n.jsx)(y.a,{className:t.progress})]}):Object(n.jsxs)(c.Fragment,{children:["The instance needs to be restarted for configuration changes to take effect."," ",Object(n.jsx)(g.a,{color:"secondary",size:"small",onClick:function(){s(!0),pe.invoke("POST","/api/v1/service/restart",{}).then((function(e){console.log("success restarting service"),console.log(e),s(!1),o(!1)})).catch((function(e){s(!1),console.log("failure restarting service"),console.log(e)}))},children:"Restart"})]})}),m<100&&Object(n.jsx)(y.a,{className:t.progress,variant:"determinate",value:m}),Object(n.jsx)("div",{className:t.snackDiv,children:Object(n.jsx)(ke.a,{open:x,onClose:function(){v(!1),p("")},autoHideDuration:"error"===h.type?1e4:5e3,message:h.message,className:t.snackBarExternal,ContentProps:{className:"".concat(t.snackBar," ").concat("error"===h.type?t.errorSnackBar:"")}})}),Object(n.jsx)(Ce.a,{className:t.container,children:Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[C.map((function(e){return Object(n.jsx)(l.b,{exact:!0,path:e.path,children:function(t){return Object(n.jsx)(e.component,Object(j.a)(Object(j.a)({},t),e.props))}},e.path)})),C.length>0?Object(n.jsx)(l.a,{to:C[0].path}):null]})})})]})]}):null})}))),Tb=function(e){var t=e.location,a=Object(c.useState)(""),i=Object(u.a)(a,2),r=i[0],o=i[1],s=Object(c.useState)(""),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(c.useEffect)((function(){var e=(t.search.match(/code=([^&]+)/)||[])[1],a=(t.search.match(/state=([^&]+)/)||[])[1],n=(t.search.match(/error=([^&]+)/)||[])[1],c=(t.search.match(/error_description=([^&]+)/)||[])[1];void 0!==n||void 0!==c?(o(n),b(c)):pe.invoke("POST","/api/v1/login/oauth2/auth",{code:e,state:a}).then((function(e){e&&e.sessionId&&($.a.setItem("token",e.sessionId),window.location.href="/")})).catch((function(e){window.location.href="/login"}))}),[t.search]),""!==r||""!==d?Object(n.jsxs)("div",{children:[Object(n.jsx)("h2",{children:"IDP Error:"}),Object(n.jsx)("p",{children:r}),Object(n.jsx)("p",{children:d})]}):null},Eb=a(442),Ab="SESSION_RESPONSE";var _b=Object(s.b)((function(e){return{loggedIn:e.system.loggedIn}}),{userLoggedIn:P,consoleOperatorMode:function(e){return{type:E,operatorMode:e}},saveSessionResponse:function(e){return{type:Ab,message:e}}})((function(e){var t=e.Component,a=e.loggedIn,i=e.userLoggedIn,r=e.consoleOperatorMode,o=e.saveSessionResponse,s=Object(c.useState)(!0),d=Object(u.a)(s,2),b=d[0],j=d[1];return Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/session").then((function(e){o(e),i(!0),j(!1),e.operator&&(r(!0),document.title="MinIO Operator")})).catch((function(){return j(!1)}))}),[o,r,i]),b?null:a?Object(n.jsx)(t,{}):Object(n.jsx)(l.a,{to:{pathname:"/login"}})})),Ib=Object(Eb.hot)((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{exact:!0,path:"/oauth_callback",component:Tb}),Object(n.jsx)(l.b,{exact:!0,path:"/login",component:fe}),Object(n.jsx)(_b,{Component:wb})]})})})),Mb=a(138),Fb=a(443),Db={loggedIn:!1,operatorMode:!1,session:"",userName:"",sidebarOpen:!0,serverNeedsRestart:!1,serverIsLoading:!1,loadingProgress:100,snackBar:{message:"",type:"message"},modalSnackBar:{message:"",type:"message"},serverDiagnosticStatus:""};var Lb={messages:[]};var Bb={messages:[]};var Rb={message:{}};var Pb={messages:[]};var zb={session:{operator:!1,status:"",pages:[],features:[]}};var Kb={open:!1,addBucketName:"",addBucketVersioningEnabled:!1,addBucketLockingEnabled:!1,addBucketQuotaEnabled:!1,addBucketQuotaType:"hard",addBucketQuotaSize:"1",addBucketQuotaUnit:"TiB",addBucketRetentionEnabled:!1,addBucketRetentionMode:"compliance",addBucketRetentionUnit:"days",addBucketRetentionValidity:1,bucketDetails:{selectedTab:"summary"}};var Ub=[{route:"/object-browser",label:"All Buckets",type:"path"}],Wb={routesList:Ub,downloadingFiles:[]};var Vb=a(444),Gb=a.n(Vb),qb={createTenant:{page:0,validPages:[],advancedModeOn:!1,storageClasses:[],limitSize:{},fields:{nameTenant:{tenantName:"",namespace:"",selectedStorageClass:""},configure:{customImage:!1,imageName:"",consoleImage:"",customDockerhub:!1,imageRegistry:"",imageRegistryUsername:"",imageRegistryPassword:"",exposeMinIO:!0,exposeConsole:!0,logSearchCustom:!1,prometheusCustom:!1,logSearchVolumeSize:"5",logSearchSizeFactor:"Gi",logSearchImage:"",kesImage:"",logSearchPostgresImage:"",prometheusVolumeSize:"5",prometheusSizeFactor:"Gi",logSearchSelectedStorageClass:"",prometheusSelectedStorageClass:"",prometheusImage:""},identityProvider:{idpSelection:"Built-in",accessKeys:[Ms(16)],secretKeys:[Ms(32)],openIDURL:"",openIDClientID:"",openIDSecretID:"",ADURL:"",ADSkipTLS:!1,ADServerInsecure:!1,ADUserNameFilter:"",ADGroupBaseDN:"",ADGroupSearchFilter:"",ADNameAttribute:""},security:{enableAutoCert:!0,enableCustomCerts:!1,enableTLS:!0},encryption:{enableEncryption:!1,encryptionType:"vault",gemaltoEndpoint:"",gemaltoToken:"",gemaltoDomain:"",gemaltoRetry:"0",awsEndpoint:"",awsRegion:"",awsKMSKey:"",awsAccessKey:"",awsSecretKey:"",awsToken:"",vaultEndpoint:"",vaultEngine:"",vaultNamespace:"",vaultPrefix:"",vaultAppRoleEngine:"",vaultId:"",vaultSecret:"",vaultRetry:"0",vaultPing:"0",gcpProjectID:"",gcpEndpoint:"",gcpClientEmail:"",gcpClientID:"",gcpPrivateKeyID:"",gcpPrivateKey:"",enableCustomCertsForKES:!1},tenantSize:{volumeSize:"100",sizeFactor:"Gi",drivesPerServer:"1",nodes:"4",memoryNode:"2",ecParity:"",ecParityChoices:[],cleanECChoices:[],maxAllocableMemo:0,memorySize:{error:"",limit:0,request:0},distribution:{error:"",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0},ecParityCalc:{error:0,defaultEC:"",erasureCodeSet:0,maxEC:"",rawCapacity:"0",storageFactors:[]},limitSize:{}},affinity:{nodeSelectorLabels:"",podAffinity:"default",withPodAntiAffinity:!0}},certificates:{minioCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],caCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],consoleCertificate:{id:"console_cert_pair",key:"",cert:"",encoded_key:"",encoded_cert:""},serverCertificate:{id:"encryptionServerCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},clientCertificate:{id:"encryptionClientCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCertificate:{id:"encryptionVaultCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCA:{id:"encryptionVaultCA",key:"",cert:"",encoded_key:"",encoded_cert:""},gemaltoCA:{id:"encryptionGemaltoCA",key:"",cert:"",encoded_key:"",encoded_cert:""}}}};var Hb={selectedDrive:""};var Yb=Object(Mb.c)({system:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Db,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case T:return Object(j.a)(Object(j.a)({},e),{},{loggedIn:t.logged});case E:return Object(j.a)(Object(j.a)({},e),{},{operatorMode:t.operatorMode});case A:return Object(j.a)(Object(j.a)({},e),{},{sidebarOpen:t.open});case _:return Object(j.a)(Object(j.a)({},e),{},{serverNeedsRestart:t.needsRestart});case I:return Object(j.a)(Object(j.a)({},e),{},{serverIsLoading:t.isLoading});case M:return Object(j.a)(Object(j.a)({},e),{},{loadingProgress:t.loadingProgress});case F:return Object(j.a)(Object(j.a)({},e),{},{snackBar:{message:t.message,type:"message"}});case L:return Object(j.a)(Object(j.a)({},e),{},{snackBar:{message:t.message,type:"error"}});case B:return Object(j.a)(Object(j.a)({},e),{},{modalSnackBar:{message:t.message,type:"message"}});case R:return Object(j.a)(Object(j.a)({},e),{},{modalSnackBar:{message:t.message,type:"error"}});case D:return Object(j.a)(Object(j.a)({},e),{},{serverDiagnosticStatus:t.serverDiagnosticStatus});default:return e}},trace:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Lb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Pd:return Object(j.a)(Object(j.a)({},e),{},{messages:[].concat(Object($e.a)(e.messages),[t.message])});case zd:return Object(j.a)(Object(j.a)({},e),{},{messages:[]});default:return e}},logs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Bb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Gd:return Object(j.a)(Object(j.a)({},e),{},{messages:[].concat(Object($e.a)(e.messages),[t.message])});case qd:return Object(j.a)(Object(j.a)({},e),{},{messages:[]});default:return e}},watch:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Pb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case cb:return Object(j.a)(Object(j.a)({},e),{},{messages:[].concat(Object($e.a)(e.messages),[t.message])});case ib:return Object(j.a)(Object(j.a)({},e),{},{messages:[]});default:return e}},console:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:zb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Ab:return Object(j.a)(Object(j.a)({},e),{},{session:t.message});default:return e}},buckets:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Kb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case xt:return Object(j.a)(Object(j.a)({},e),{},{open:t.open});case vt:return Object(j.a)(Object(j.a)({},e),{},{addBucketName:t.name});case yt:return Object(j.a)(Object(j.a)({},e),{},{addBucketVersioningEnabled:t.versioned});case St:return Object(j.a)(Object(j.a)({},e),{},{addBucketLockingEnabled:t.locking});case Ct:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaEnabled:t.quota});case kt:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaType:t.quotaType});case Nt:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaSize:t.quotaSize});case wt:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaUnit:t.quotaUnit});case Et:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionEnabled:t.retention});case At:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionMode:t.retentionMode});case _t:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionUnit:t.retentionUnit});case It:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionValidity:t.retentionValidity});case Mt:return Object(j.a)(Object(j.a)({},e),{},{bucketDetails:Object(j.a)(Object(j.a)({},e.bucketDetails),{},{selectedTab:t.tab})});case Tt:return Object(j.a)(Object(j.a)({},e),{},{addBucketName:"",addBucketVersioningEnabled:!1,addBucketLockingEnabled:!1,addBucketQuotaEnabled:!1,addBucketQuotaType:"hard",addBucketQuotaSize:"1",addBucketQuotaUnit:"TiB",addBucketRetentionEnabled:!1,addBucketRetentionMode:"compliance",addBucketRetentionUnit:"days",addBucketRetentionValidity:1});default:return e}},objectBrowser:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Wb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case xl:var a=[].concat(Object($e.a)(e.routesList),[{route:t.route,label:t.label,type:t.routeType}]);return b.push(t.route),Object(j.a)(Object(j.a)({},e),{},{routesList:a});case vl:return Object(j.a)(Object(j.a)({},e),{},{routesList:[].concat(Ub)});case yl:var n=e.routesList.findIndex((function(e){return e.route===t.toRoute}))+1,c=e.routesList.slice(0,n);return Object(j.a)(Object(j.a)({},e),{},{routesList:c});case Sl:var i=t.currentRoute.split("/"),r=[],o=Ub[0].route;i.forEach((function(e){""!==e&&"object-browser"!==e&&(o="".concat(o,"/").concat(e),r.push({route:o,label:e,type:"path"}))}));var s=[].concat(Ub,r);return Object(j.a)(Object(j.a)({},e),{},{routesList:s});case Cl:var l=Object($e.a)(e.routesList),d=e.routesList[e.routesList.length-1].route,u=t.newRoute.split("/");return u.forEach((function(e){var t=e.trim();if(""!==t){var a={route:d="".concat(d,"/").concat(t),label:t,type:"path"};l.push(a)}})),b.push(d),Object(j.a)(Object(j.a)({},e),{},{routesList:l});case kl:var m=e.routesList,h=m.slice(-1)[0];"path"===h.type&&(h.type="file");var p=[].concat(Object($e.a)(m.slice(0,-1)),[h]);return Object(j.a)(Object(j.a)({},e),{},{routesList:p});case Nl:var O=Object($e.a)(e.downloadingFiles);return O.push(t.path),Object(j.a)(Object(j.a)({},e),{},{downloadingFiles:Object($e.a)(O)});case wl:var g=e.downloadingFiles.filter((function(e){return e!==t.path}));return Object(j.a)(Object(j.a)({},e),{},{downloadingFiles:Object($e.a)(g)});default:return e}},healthInfo:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Rb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case sb:return Object(j.a)(Object(j.a)({},e),{},{message:t.message});case lb:return Object(j.a)(Object(j.a)({},e),{},{message:{}});default:return e}},tenants:function(){var e,t,a,n,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:qb,i=arguments.length>1?arguments[1]:void 0,r=Object(j.a)({},c);switch(i.type){case ds:return r.createTenant.page=i.page,Object(j.a)({},r);case bs:return r.createTenant.advancedModeOn=i.state,Object(j.a)({},r);case us:if(Gb()(r.createTenant.fields,"".concat(i.pageName,".").concat(i.field))){var o=Z()(r.createTenant.fields,"".concat(i.pageName),{}),s={};s[i.field]=i.value;var l=Object(j.a)(Object(j.a)({},o),s);return r.createTenant.fields[i.pageName]=Object(j.a)({},l),Object(j.a)({},r)}return c;case js:var d=c.createTenant.validPages;if(i.valid)d.includes(i.pageName)||(d.push(i.pageName),r.createTenant.validPages=Object($e.a)(d));else{var b=d.filter((function(e){return e!==i.pageName}));r.createTenant.validPages=Object($e.a)(b)}return Object(j.a)({},r);case hs:var u=Object(j.a)(Object(j.a)({},c),{},{createTenant:Object(j.a)(Object(j.a)({},c.createTenant),{},{storageClasses:i.storageClasses})});return Object(j.a)({},u);case ps:var m=[].concat(Object($e.a)(c.createTenant.certificates.minioCertificates),[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}]);return r.createTenant.certificates.minioCertificates=Object($e.a)(m),Object(j.a)({},r);case Os:var h=c.createTenant.certificates.minioCertificates,p=h.map((function(e){var t;return e.id===i.id?Object(j.a)(Object(j.a)({},e),{},(t={},Object(xe.a)(t,i.key,i.fileName),Object(xe.a)(t,"encoded_".concat(i.key),i.value),t)):e}));return r.createTenant.certificates.minioCertificates=Object($e.a)(p),Object(j.a)({},r);case gs:var O=c.createTenant.certificates.minioCertificates;if(O.length>1){var g=O.filter((function(e){return e.id!==i.id}));return r.createTenant.certificates.minioCertificates=Object($e.a)(g),Object(j.a)({},r)}return Object(j.a)({},c);case fs:var f=[].concat(Object($e.a)(c.createTenant.certificates.caCertificates),[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}]);return r.createTenant.certificates.caCertificates=Object($e.a)(f),Object(j.a)({},r);case xs:var x=c.createTenant.certificates.caCertificates,v=x.map((function(e){var t;return e.id===i.id?Object(j.a)(Object(j.a)({},e),{},(t={},Object(xe.a)(t,i.key,i.fileName),Object(xe.a)(t,"encoded_".concat(i.key),i.value),t)):e}));return r.createTenant.certificates.caCertificates=Object($e.a)(v),Object(j.a)({},r);case vs:var y=c.createTenant.certificates.minioCertificates;if(y.length>1){var S=y.filter((function(e){return e.id!==i.id}));return r.createTenant.certificates.caCertificates=Object($e.a)(S),Object(j.a)({},r)}return Object(j.a)({},c);case ys:var C=c.createTenant.certificates.consoleCertificate;return r.createTenant.certificates.consoleCertificate=Object(j.a)(Object(j.a)({},C),{},(e={},Object(xe.a)(e,i.key,i.fileName),Object(xe.a)(e,"encoded_".concat(i.key),i.value),e)),Object(j.a)({},r);case Ss:var k=c.createTenant.certificates.serverCertificate;return r.createTenant.certificates.serverCertificate=Object(j.a)(Object(j.a)({},k),{},(t={},Object(xe.a)(t,i.key,i.fileName),Object(xe.a)(t,"encoded_".concat(i.key),i.value),t)),Object(j.a)({},r);case Cs:var N=c.createTenant.certificates.clientCertificate;return r.createTenant.certificates.clientCertificate=Object(j.a)(Object(j.a)({},N),{},(a={},Object(xe.a)(a,i.key,i.fileName),Object(xe.a)(a,"encoded_".concat(i.key),i.value),a)),Object(j.a)({},r);case ks:var w=c.createTenant.certificates.vaultCertificate;return r.createTenant.certificates.vaultCertificate=Object(j.a)(Object(j.a)({},w),{},(n={},Object(xe.a)(n,i.key,i.fileName),Object(xe.a)(n,"encoded_".concat(i.key),i.value),n)),Object(j.a)({},r);case Ns:var T=c.createTenant.certificates.vaultCA;return r.createTenant.certificates.vaultCA=Object(j.a)(Object(j.a)({},T),{},{cert:i.fileName,encoded_cert:i.value}),Object(j.a)({},r);case ws:var E=c.createTenant.certificates.gemaltoCA;return r.createTenant.certificates.gemaltoCA=Object(j.a)(Object(j.a)({},E),{},{cert:i.fileName,encoded_cert:i.value}),Object(j.a)({},r);case ms:return Object(j.a)(Object(j.a)({},c),{},{createTenant:{page:0,validPages:[],advancedModeOn:!1,storageClasses:[],limitSize:{},fields:{nameTenant:{tenantName:"",namespace:"",selectedStorageClass:""},configure:{customImage:!1,imageName:"",consoleImage:"",customDockerhub:!1,imageRegistry:"",imageRegistryUsername:"",imageRegistryPassword:"",exposeMinIO:!0,exposeConsole:!0,logSearchCustom:!1,prometheusCustom:!1,logSearchVolumeSize:"5",logSearchSizeFactor:"Gi",logSearchSelectedStorageClass:"",logSearchImage:"",kesImage:"",logSearchPostgresImage:"",prometheusVolumeSize:"5",prometheusSizeFactor:"Gi",prometheusSelectedStorageClass:"",prometheusImage:""},identityProvider:{idpSelection:"Built-in",accessKeys:[Ms(16)],secretKeys:[Ms(32)],openIDURL:"",openIDClientID:"",openIDSecretID:"",ADURL:"",ADSkipTLS:!1,ADServerInsecure:!1,ADUserNameFilter:"",ADGroupBaseDN:"",ADGroupSearchFilter:"",ADNameAttribute:""},security:{enableAutoCert:!0,enableCustomCerts:!1,enableTLS:!0},encryption:{enableEncryption:!1,encryptionType:"vault",gemaltoEndpoint:"",gemaltoToken:"",gemaltoDomain:"",gemaltoRetry:"0",awsEndpoint:"",awsRegion:"",awsKMSKey:"",awsAccessKey:"",awsSecretKey:"",awsToken:"",vaultEndpoint:"",vaultEngine:"",vaultNamespace:"",vaultPrefix:"",vaultAppRoleEngine:"",vaultId:"",vaultSecret:"",vaultRetry:"0",vaultPing:"0",gcpProjectID:"",gcpEndpoint:"",gcpClientEmail:"",gcpClientID:"",gcpPrivateKeyID:"",gcpPrivateKey:"",enableCustomCertsForKES:!1},tenantSize:{volumeSize:"100",sizeFactor:"Gi",drivesPerServer:"1",nodes:"4",memoryNode:"2",ecParity:"",ecParityChoices:[],cleanECChoices:[],maxAllocableMemo:0,memorySize:{error:"",limit:0,request:0},distribution:{error:"",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0},ecParityCalc:{error:0,defaultEC:"",erasureCodeSet:0,maxEC:"",rawCapacity:"0",storageFactors:[]},limitSize:{}},affinity:{nodeSelectorLabels:"",podAffinity:"default",withPodAntiAffinity:!0}},certificates:{minioCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],caCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],consoleCertificate:{id:"console_cert_pair",key:"",cert:"",encoded_key:"",encoded_cert:""},serverCertificate:{id:"encryptionServerCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},clientCertificate:{id:"encryptionClientCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCertificate:{id:"encryptionVaultCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCA:{id:"encryptionVaultCA",key:"",cert:"",encoded_key:"",encoded_cert:""},gemaltoCA:{id:"encryptionGemaltoCA",key:"",cert:"",encoded_key:"",encoded_cert:""}}}});default:return c}},directCSI:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Hb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Ob:if(""!==t.driveName){var a=Object(j.a)({},e);return a.selectedDrive=t.driveName,a}return e;default:return e}}}),Qb=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__||Mb.d;Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));var Zb=a(994),Jb=(a(905),a(906),a(907),a(908),a(445)),$b=Object(Jb.a)({palette:{primary:{light:"#073052",main:"#081C42",dark:"#05122B",contrastText:"#fff"},secondary:{light:"#ff7961",main:"#f44336",dark:"#ba000d",contrastText:"#000"},error:{light:"#e03a48",main:"#dc1f2e",contrastText:"#ffffff"},grey:{100:"#f0f0f0",200:"#e6e6e6",300:"#cccccc",400:"#999999",500:"#8c8c8c",600:"#737373",700:"#666666",800:"#4d4d4d",900:"#333333"},background:{default:"#F4F4F4"}},typography:{fontFamily:["Lato","sans-serif"].join(","),h1:{fontWeight:"bold",color:"#081C42"},h2:{fontWeight:"bold",color:"#081C42"},h3:{fontWeight:"bold",color:"#081C42"},h4:{fontWeight:"bold",color:"#081C42"},h5:{fontWeight:"bold",color:"#081C42"},h6:{fontWeight:"bold",color:"#000000"}},overrides:{MuiButton:{root:{borderRadius:3,color:"white",height:40,padding:"0 20px",fontSize:14,fontWeight:600,boxShadow:"none","& .MuiSvgIcon-root":{maxHeight:18},"&.MuiButton-contained.Mui-disabled":{backgroundColor:"#EAEDEE",fontWeight:600,color:"#767676"},"& .MuiButton-iconSizeMedium > *:first-child":{fontSize:12}}}}}),Xb=Object(w.a)({"@global":{".MuiButton-contained":{fontSize:"14px",textTransform:"capitalize",padding:"16px 25px 16px 25px",borderRadius:3},".MuiButton-sizeSmall":{padding:"4px 10px",fontSize:"0.8125rem"},".MuiTableCell-head":{borderRadius:"3px 3px 0px 0px",fontSize:13},".MuiPaper-root":{borderRadius:3},".MuiDrawer-paperAnchorDockedLeft":{borderRight:0},".MuiDrawer-root":{"& .MuiPaper-root":{borderRadius:0}}}})((function(){return null}));o.a.render(Object(n.jsxs)(s.a,{store:Object(Mb.e)(Yb,Qb(Object(Mb.a)(Fb.a))),children:[Object(n.jsx)(Xb,{}),Object(n.jsx)(Zb.a,{theme:$b,children:Object(n.jsx)(Ib,{})})]}),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(e){e.unregister()}))}},[[909,1,2]]]); +(this["webpackJsonpportal-ui"]=this["webpackJsonpportal-ui"]||[]).push([[0],{554:function(e,t,a){},908:function(e,t,a){},909:function(e,t,a){"use strict";a.r(t);var n=a(0),c=a(1),i=a.n(c),r=a(27),o=a.n(r),s=a(6),l=a(56),d=a(72),b=Object(d.a)(),u=a(3),j=a(2),m=a(210),h=a.n(m),p=a(393),O=a.n(p),g=a(961),f=a(1008),x=a(960),v=a(109),y=a(962),S=a(963),C=a(453),k=a(1010),N=a(951),w=a(15),T="USER_LOGGED",E="OPERATOR_MODE",A="MENU_OPEN",_="SERVER_NEEDS_RESTART",I="SERVER_IS_LOADING",M="SET_LOADING_PROGRESS",F="SET_SNACK_BAR_MESSAGE",D="SET_SERVER_DIAG_STAT",L="SET_ERROR_SNACK_MESSAGE",B="SET_SNACK_MODAL_MESSAGE",R="SET_MODAL_ERROR_MESSAGE";function P(e){return{type:T,logged:e}}function z(e){return{type:A,open:e}}function K(e){return{type:_,needsRestart:e}}var U,W=function(e){return{type:F,message:e}},V=function(e){return{type:L,message:e}},G=function(e){return{type:B,message:e}},q=function(e){return{type:R,message:e}},H=a(388),Y=a(389),Q=a(13),Z=a.n(Q),J=a(211),$=a.n(J),X=1073741824,ee=2147483648,te=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],ae=["Ki","Mi","Gi","Ti","Pi","Ei"],ne=["B"].concat(ae),ce=function(e){for(var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=0,n=parseInt(e,10)||0;n>=1024&&++a;)n/=1024;var c=["B"].concat(ae);return n.toFixed(n<10&&a>0?1:0)+" "+(t?c[a]:te[a])},ie=function(){var e;$.a.removeItem("token"),e="token",document.cookie=e+"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;"},re=function(e){var t=e.getHours()<10?"0".concat(e.getHours()):"".concat(e.getHours()),a=e.getMinutes()<10?"0".concat(e.getMinutes()):"".concat(e.getMinutes()),n=e.getSeconds()<10?"0".concat(e.getSeconds()):"".concat(e.getSeconds());return"".concat(t,":").concat(a,":").concat(n,":").concat(e.getMilliseconds())},oe=function(){return ae.map((function(e){return{label:e,value:e}}))},se=function(e,t){var a=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n=parseFloat(e),c=a?ne:te,i=c.findIndex((function(e){return e===t}));if(-1===i)return"0";var r=Math.pow(1024,i),o=n*r;return o.toString(10)},le=function(e,t,a,n){var c=parseInt(e,10);return de(t,c,274877906944,a,n)},de=function(e,t,a,n){var c=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0;if(isNaN(e)||isNaN(t)||isNaN(a)||isNaN(n))return{error:"Some provided data is invalid, please try again.",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0};var i=0,r=0,o=0;if(0===c&&(o=(r=t/(i=Math.floor(Math.min(t/Math.max(4,e),a))))/e),c&&(r=(o=c)*e,i=Math.floor(t/r)),o%1>0){r=(o=Math.ceil(o))*e;var s=(i=Math.floor(t/r))*o*e;if(s>n)return{error:"We were not able to allocate this server.",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0}}return i1&&void 0!==arguments[1]?arguments[1]:"s",a=parseFloat(e);switch(t){case"ns":a=Math.floor(1e-9*a);break;case"ms":a=Math.floor(.001*a)}var n=Math.floor(a/86400);a-=3600*n*24;var c=Math.floor(a/3600);a-=3600*c;var i=Math.floor(a/60);if(a-=60*i,n>365){var r=n/365;return"".concat(r," year").concat(1===Math.floor(r)?"":"s")}if(n>30){var o=Math.floor(n/30),s=n-30*o;return"".concat(o," month").concat(1===Math.floor(o)?"":"s"," ").concat(s>0?"".concat(s," day").concat(s>1?"s":""):"")}if(n>=7&&n<=30){var l=Math.floor(n/7);return"".concat(Math.floor(l)," week").concat(1===l?"":"s")}return n>=1&&n<=6?"".concat(n," day").concat(n>1?"s":""):"".concat(c>=1?"".concat(c," hour").concat(c>1?"s":""):""," ").concat(i>=1&&0===c?"".concat(i," minute").concat(i>1?"s":""):""," ").concat(a>=1&&0===i&&0===c?"".concat(a," second").concat(a>1?"s":""):"")},je=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],a=new Date(1e3*parseInt(e));return t?"".concat(a.getFullYear(),"-").concat(String(a.getMonth()+1).padStart(2,"0"),"-").concat(String(a.getDay()).padStart(2,"0")," ").concat(a.getHours(),":").concat(String(a.getMinutes()).padStart(2,"0"),":").concat(String(a.getSeconds()).padStart(2,"0")):"".concat(a.getHours(),":").concat(String(a.getMinutes()).padStart(2,"0"))},me=function(e){var t=1e-9*e,a=Math.round(1e4*(t+Number.EPSILON))/1e4;return"".concat(a," s")},he=function(e){var t=(100*e.split("").reduce((function(e,t){return e+t.charCodeAt(0)+((e<<5)-e)}),0)&16777215).toString(16).toUpperCase();return"#".concat(t.padStart(6,"0"))},pe=new(function(){function e(){Object(H.a)(this,e)}return Object(Y.a)(e,[{key:"invoke",value:function(e,t,a){var n=this;return h()(e,t).send(a).then((function(e){return e.body})).catch((function(e){return 401===e.status?(ie(),void(window.location.href="/login")):n.onError(e)}))}},{key:"onError",value:function(e){if(e.status){var t=Z()(e.response,"body.message",e.status.toString()),a=t.charAt(0).toUpperCase()+t.slice(1);return Promise.reject(a)}ie(),window.location.href="/login"}}]),e}());!function(e){e.unknown="unknown",e.form="form",e.redirect="redirect",e.serviceAccount="service-account"}(U||(U={}));var Oe=Object(N.a)((function(e){return Object(k.a)({disabled:{"&.MuiInput-underline::before":{borderColor:"#eaeaea",borderBottomStyle:"solid"}}})}));function ge(e){var t=Oe();return Object(n.jsx)(f.a,Object(j.a)({InputProps:{classes:t}},e))}var fe=Object(s.b)((function(e){return{loggedIn:e.loggedIn}}),{userLoggedIn:P})(Object(w.a)((function(e){return Object(k.a)({"@global":{body:{backgroundColor:"#FAFAFA"}},paper:{borderRadius:8,display:"flex",flexDirection:"column",alignItems:"center",width:800,height:424,margin:"auto",position:"absolute",top:"50%",left:"50%",marginLeft:-400,marginTop:-212,"&.MuiPaper-root":{borderRadius:8}},avatar:{margin:e.spacing(1),backgroundColor:e.palette.secondary.main},form:{width:"100%"},submit:{margin:"30px 0px 16px",height:40,boxShadow:"none",padding:"16px 30px"},errorBlock:{backgroundColor:"#C72C48",width:800,height:64,display:"flex",justifyContent:"center",alignItems:"center",position:"absolute",left:"50%",top:"50%",marginLeft:-400,marginTop:-290,color:"#fff",fontWeight:700,fontSize:14,borderRadius:8,padding:10,boxSizing:"border-box"},mainContainer:{position:"relative",height:424},theOcean:{borderTopLeftRadius:8,borderBottomLeftRadius:8,background:"transparent linear-gradient(to bottom, #073052 0%,#05122b 100%); 0% 0% no-repeat padding-box;"},oceanBg:{backgroundImage:"url(/images/BG_Illustration.svg)",backgroundRepeat:"no-repeat",backgroundPosition:"bottom left",height:"100%",width:324},theLogin:{padding:"40px 45px 20px 45px"},loadingLoginStrategy:{textAlign:"center"},headerTitle:{marginBottom:10},submitContainer:{textAlign:"right"},disclaimer:{fontSize:12,marginTop:30},jwtInput:{marginTop:45},linearPredef:{height:10},errorIconStyle:{marginRight:3}})}))((function(e){var t=e.classes,a=e.userLoggedIn,r=Object(c.useState)(""),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(""),j=Object(u.a)(d,2),m=j[0],p=j[1],f=Object(c.useState)(""),k=Object(u.a)(f,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)({loginStrategy:U.unknown,redirect:""}),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(!1),B=Object(u.a)(L,2),R=B[0],P=B[1],z={form:"/api/v1/login","service-account":"/api/v1/login/operator"},K={form:{accessKey:s,secretKey:N},"service-account":{jwt:m}},W=function(e){e.preventDefault(),P(!0),h.a.post(z[F.loginStrategy]||"/api/v1/login").send(K[F.loginStrategy]).then((function(e){var t=e.body;if(t.error)throw P(!1),t.error})).then((function(){a(!0),F.loginStrategy===U.form&&localStorage.setItem("userLoggedIn",btoa(s)),b.push("/")})).catch((function(e){P(!1),_(e.message)}))};Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/login").then((function(e){D(e),_(""),"redirect"===e.loginStrategy&&e.redirect})).catch((function(e){_(e)}))}),[]);var V=null;switch(F.loginStrategy){case U.form:V=Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h1",variant:"h6",className:t.headerTitle,children:"Console Login"}),Object(n.jsxs)("form",{className:t.form,noValidate:!0,onSubmit:W,children:[Object(n.jsxs)(x.a,{container:!0,spacing:2,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ge,{fullWidth:!0,id:"accessKey",value:s,onChange:function(e){return l(e.target.value)},label:"Enter Access Key",name:"accessKey",autoComplete:"username",disabled:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ge,{fullWidth:!0,value:N,onChange:function(e){return w(e.target.value)},name:"secretKey",label:"Enter Secret Key",type:"password",id:"secretKey",autoComplete:"current-password",disabled:R})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.submitContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",className:t.submit,disabled:""===N||""===s||R,children:"Login"})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.linearPredef,children:R&&Object(n.jsx)(y.a,{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.disclaimer,children:[Object(n.jsx)("strong",{children:"Don't have an access key?"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),"Contact your administrator to have one made"]})]})]});break;case U.redirect:V=Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h1",variant:"h6",className:t.headerTitle,children:"Welcome"}),Object(n.jsx)(g.a,{component:"a",href:F.redirect.replace("%5BHOSTNAME%5D",window.location.hostname),type:"submit",variant:"contained",color:"primary",className:t.submit,children:"Login with SSO"})]});break;case U.serviceAccount:V=Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h1",variant:"h6",className:t.headerTitle,children:"Operator Login"}),Object(n.jsxs)("form",{className:t.form,noValidate:!0,onSubmit:W,children:[Object(n.jsx)(x.a,{container:!0,spacing:2,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.jwtInput,children:Object(n.jsx)(ge,{required:!0,fullWidth:!0,id:"jwt",value:m,onChange:function(e){return p(e.target.value)},label:"JWT",name:"jwt",autoComplete:"off",disabled:R})})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.submitContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",className:t.submit,disabled:""===m||R,children:"Login"})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.linearPredef,children:R&&Object(n.jsx)(y.a,{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.disclaimer,children:[Object(n.jsx)("strong",{children:"Don't have an access key?"}),Object(n.jsx)("br",{}),"Contact your administrator to have one made"]})]})]});break;default:V=Object(n.jsx)(S.a,{className:t.loadingLoginStrategy})}return Object(n.jsxs)(i.a.Fragment,{children:[""!==A&&Object(n.jsxs)("div",{className:t.errorBlock,children:[Object(n.jsx)(O.a,{fontSize:"small",className:t.errorIconStyle})," ",A]}),Object(n.jsx)(C.a,{className:t.paper,children:Object(n.jsxs)(x.a,{container:!0,className:t.mainContainer,children:[Object(n.jsx)(x.a,{item:!0,xs:7,className:t.theOcean,children:Object(n.jsx)("div",{className:t.oceanBg})}),Object(n.jsx)(x.a,{item:!0,xs:5,className:t.theLogin,children:V})]})})]})}))),xe=a(38),ve=a(5),ye=a(966),Se=a(1011),Ce=a(965),ke=a(1004),Ne={inputLabel:{fontWeight:600,marginRight:10,fontSize:15,color:"#000",textAlign:"left",overflow:"hidden","& span":{display:"flex",alignItems:"center"},display:"flex"},fieldLabelError:{paddingBottom:22},fieldContainer:{marginBottom:20,position:"relative",maxWidth:840},tooltipContainer:{marginLeft:5,display:"flex",alignItems:"center"},switchContainer:{display:"flex",maxWidth:840}},we={formScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto",marginBottom:25},formSlider:{marginLeft:0},clearButton:{fontFamily:"Lato, sans-serif",border:"0",backgroundColor:"transparent",color:"#393939",fontWeight:600,fontSize:14,marginRight:10,outline:"0",padding:"16px 25px 16px 25px",cursor:"pointer"},floatingEnabled:{position:"absolute",right:58,zIndex:1e3,marginTop:-38},configureString:{border:"#EAEAEA 1px solid",borderRadius:4,padding:"24px 50px",overflowY:"auto",height:170,maxWidth:840}},Te={tooltip:{fontSize:16}},Ee={width:14,height:14,borderRadius:2},Ae={unCheckedIcon:Object(j.a)(Object(j.a)({},Ee),{},{border:"1px solid #c3c3c3"}),checkedIcon:Object(j.a)(Object(j.a)({},Ee),{},{border:"1px solid #081C42",backgroundColor:"#081C42"})},_e={width:12,height:12,borderRadius:"100%","input:disabled ~ &":{border:"1px solid #9C9C9C"}},Ie={radioUnselectedIcon:Object(j.a)(Object(j.a)({},_e),{},{border:"1px solid #000"}),radioSelectedIcon:Object(j.a)(Object(j.a)({},_e),{},{border:"1px solid #000",backgroundColor:"#000"})},Me={label:{color:"#393939",fontWeight:600,fontSize:13,alignSelf:"center",whiteSpace:"nowrap","&:not(:first-of-type)":{marginLeft:10}},timeContainers:{height:40},actionsTray:{display:"flex",justifyContent:"space-between","& button":{flexGrow:0,marginLeft:15}}},Fe={searchField:{flexGrow:1,height:40,background:"#FFFFFF",borderRadius:5,border:"#EAEDEE 1px solid",display:"flex",justifyContent:"center",padding:"0 16px","& input":{fontSize:12,fontWeight:700,color:"#000","&::placeholder":{color:"#393939",opacity:1}},"&:hover":{borderColor:"#000"}}},De={prefinedContainer:{maxWidth:840,width:"100%"},predefinedTitle:{fontSize:16,fontWeight:600,color:"#000",margin:"10px 0"},predefinedList:{backgroundColor:"#eaeaea",padding:"12px 10px",color:"#393939",fontSize:12,fontWeight:600,minHeight:41},innerContent:{width:"100%",overflowX:"auto",whiteSpace:"nowrap",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},innerContentMultiline:{width:"100%",maxHeight:100,overflowY:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}},Le={obTitleSection:{display:"flex",justifyContent:"space-between",alignItems:"flex-start",marginBottom:20},sectionTitle:{fontSize:22,color:"#000",fontWeight:600,height:40,lineHeight:"40px"},breadcrumbs:{fontSize:10,color:"#000",marginTop:2,"& a":{textDecoration:"none",color:"#000","&:hover":{textDecoration:"underline"}}}},Be={multiSelectTable:{height:200}},Re={customTitle:{fontSize:18,color:"#000",fontWeight:600,padding:"12px 0",borderBottom:"#eaedee 1px solid",marginBottom:10,margin:"15px 38px 27px"},settingsFormContainer:{height:"calc(100vh - 421px)",padding:"15px 38px",overflowY:"auto",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},settingsButtonContainer:{borderTop:"1px solid #EAEAEA",padding:"15px 38px",textAlign:"right"},innerSettingsButtonContainer:{maxWidth:840,textAlign:"right"},settingsOptionsContainer:{height:"calc(100vh - 244px)",backgroundColor:"#fff",border:"#EAEDEE 1px solid",borderRadius:3,marginTop:15},backButton:{cursor:"pointer",fontSize:10,fontWeight:600,color:"#000",backgroundColor:"transparent",border:0,padding:0,display:"flex",alignItems:"center","&:active, &:focus":{outline:0},"& svg":{width:10,marginRight:4}},backContainer:{margin:"20px 38px 0"}},Pe={iconContainer:{display:"flex",flexDirection:"row",maxWidth:455,justifyContent:"space-between",flexWrap:"wrap",width:"100%"},nonIconContainer:{marginBottom:16,width:455,marginTop:15,"& button":{marginRight:16}},pickTitle:{fontWeight:600,color:"#393939",fontSize:14,marginBottom:16},centerElements:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},logoButton:{height:"80px"},lambdaNotif:{backgroundColor:"#fff",border:"#393939 1px solid",borderRadius:5,width:101,height:91,display:"flex",alignItems:"center",justifyContent:"center",marginBottom:16,cursor:"pointer","& img":{maxWidth:71,maxHeight:71}}},ze={logsSubContainer:{height:"calc(100vh - 230px)",padding:"15px 0"}},Ke={singleValueContainer:{position:"relative",flexGrow:1,width:"100%",height:"100%",border:"#EAEAEA 1px solid",borderRadius:5,backgroundColor:"#fff"},titleContainer:{color:"#393939",fontWeight:600,height:15,textAlign:"center",fontSize:10},contentContainer:{flexGrow:2,justifyContent:"center",alignItems:"center",display:"flex",position:"absolute",width:"100%",height:"calc(100% - 15px)"},contentContainerWithLabel:{height:"calc(100% - 25px)"},legendBlock:{position:"absolute",bottom:5,display:"flex",width:"100%",height:15,flexWrap:"wrap",overflowY:"auto"},singleLegendContainer:{display:"flex",alignItems:"center",padding:"0 10px",maxWidth:"100%"},colorContainer:{width:8,height:8,minWidth:8,borderRadius:"100%",marginRight:5},legendLabel:{fontSize:"80%",color:"#393939",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},Ue={customTooltip:{backgroundColor:"rgba(255, 255, 255, 0.90)",border:"#eaeaea 1px solid",borderRadius:3,padding:"5px 10px",maxHeight:300,overflowY:"auto"},labelContainer:{display:"flex",alignItems:"center"},labelColor:{width:6,height:6,display:"block",borderRadius:"100%",marginRight:5},itemValue:{fontSize:"75%",color:"#393939"},valueContainer:{fontWeight:600},timeStampTitle:{fontSize:"80%",color:"#9c9c9c",textAlign:"center",marginBottom:6}},We={snackBar:{backgroundColor:"#081F44",fontWeight:400,fontFamily:"Lato, sans-serif",fontSize:14,padding:"0px 20px 0px 20px;",boxShadow:"none","&.MuiPaper-root.MuiSnackbarContent-root":{borderRadius:"0px 0px 5px 5px"},"& div":{textAlign:"center",padding:"6px 30px",width:"100%",overflowX:"hidden",textOverflow:"ellipsis"}},errorSnackBar:{backgroundColor:"#C72C48",color:"#fff"},snackBarExternal:{top:"-17px",position:"absolute",minWidth:"348px",whiteSpace:"nowrap",height:"33px"},snackDiv:{top:"17px",left:"50%",position:"absolute"},snackBarModal:{top:0,position:"absolute",minWidth:"348px",whiteSpace:"nowrap",height:"33px",maxWidth:"calc(100% - 140px)"}},Ve={multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},sizeFactorContainer:{marginLeft:8,alignSelf:"flex-start"},headerElement:{position:"sticky",top:0,paddingTop:5,marginBottom:10,zIndex:500,backgroundColor:"#fff"},tableTitle:{fontWeight:700,width:"30%"},poolError:{color:"#dc1f2e",fontSize:"0.75rem",paddingLeft:120},error:{color:"#dc1f2e",fontSize:"0.75rem"},h3Section:{marginTop:0},descriptionText:{fontSize:13,color:"#777777"},container:{padding:"77px 0 0 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}},Ge={anchorButton:{textDecoration:"underline",textTransform:"unset",fontWeight:"normal",padding:0,lineHeight:"unset",height:"unset",width:"unset",textAlign:"left",border:0,minWidth:"unset"}},qe={hrClass:{borderTop:0,borderLeft:0,borderRight:0,borderColor:"#999999",backgroundColor:"transparent"}},He=a(996),Ye=a(964);function Qe(){return Object(n.jsxs)(v.a,{variant:"body2",color:"textSecondary",align:"center",children:["Copyright \xa9 ",Object(n.jsx)(Ye.a,{color:"inherit",href:"https://material-ui.com/",children:"MinIO"})," ",(new Date).getFullYear(),"."]})}var Ze=Object(N.a)((function(e){return{"@global":{body:{backgroundColor:e.palette.common.white}},paper:{marginTop:e.spacing(8),display:"flex",flexDirection:"column",alignItems:"center"}}})),Je=function(){var e=Ze();return Object(n.jsxs)(Ce.a,{component:"main",children:[Object(n.jsx)(ye.a,{}),Object(n.jsx)("div",{className:e.paper,children:Object(n.jsx)(v.a,{variant:"h1",component:"h1",children:"404 Not Found"})}),Object(n.jsx)(He.a,{mt:5,children:Object(n.jsx)(Qe,{})})]})},$e=a(19),Xe=a(975),et=a(30),tt=a.n(et),at=a(401),nt=a.n(at),ct=a(77),it=a.n(ct),rt=a(452),ot=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16",children:[Object(n.jsx)("title",{children:"ic_h_copy-new_sl"}),Object(n.jsx)("g",{id:"Layer_2","data-name":"Layer 2",children:Object(n.jsx)("g",{id:"Layer_1-2","data-name":"Layer 1",children:Object(n.jsx)("path",{className:"cls-1",d:"M0,0V16H16V0ZM11.886,9.048H9.048v2.838h-2.1V9.048H4.114v-2.1H6.952V4.114h2.1V6.952h2.838Z"})})})]})})},st=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 12",children:Object(n.jsxs)("g",{id:"Group_55","data-name":"Group 55",transform:"translate(1002 -2555)",children:[Object(n.jsx)("rect",{id:"Rectangle_29",width:"2",height:"12",transform:"translate(-997 2555)",fill:"#fff"}),Object(n.jsx)("rect",{id:"Rectangle_30",width:"2",height:"12",transform:"translate(-990 2560) rotate(90)",fill:"#fff"})]})})})},lt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10.402 13",children:Object(n.jsx)("path",{d:"M6.761 1V0H3.64v1H.004v1h10.4V1zM.004 2.998l1.672 10h7.052l1.673-10zm3.412 8.243l-.552-6.478h.653l.553 6.472zm3.569 0h-.653l.551-6.472h.654z",className:"a"})})})},dt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsxs)("g",{transform:"translate(249 720)",children:[Object(n.jsx)("rect",{width:"6",height:"5",transform:"translate(-244 -720) rotate(90)"}),Object(n.jsx)("rect",{width:"4",height:"4",transform:"translate(-243 -720)"}),Object(n.jsx)("rect",{width:"5",height:"4",transform:"translate(-239 -715) rotate(90)"}),Object(n.jsx)("rect",{width:"5",height:"3",transform:"translate(-244 -710) rotate(180)"})]})})})},bt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsx)("path",{d:"M8.392,10H1.608L0,0H10Z"})})})},ut=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 6.131 10",children:Object(n.jsx)("g",{transform:"translate(193 719.787)",children:Object(n.jsxs)("g",{transform:"translate(-193 -719.787)",children:[Object(n.jsx)("path",{d:"M3,0h.131a3,3,0,0,1,3,3V5a0,0,0,0,1,0,0H0A0,0,0,0,1,0,5V3A3,3,0,0,1,3,0Z",transform:"translate(0 5)"}),Object(n.jsx)("ellipse",{cx:"2.065",cy:"2",rx:"2.065",ry:"2",transform:"translate(1 0)"})]})})})})},jt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 9.5",children:Object(n.jsxs)("g",{transform:"translate(231 719.516)",children:[Object(n.jsx)("path",{d:"M-125.5,7.984a4.5,4.5,0,0,1,4.5-4.5,4.5,4.5,0,0,1,4.5,4.5Z",transform:"translate(-105 -720)"}),Object(n.jsx)("rect",{width:"10",height:"1",transform:"translate(-231 -711.016)"}),Object(n.jsx)("path",{d:"M-119.5.484h-3v1h1v1h1v-1h1Z",transform:"translate(-105 -720)"})]})})})},mt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 9.787",children:Object(n.jsx)("g",{transform:"translate(177 719.787)",children:Object(n.jsxs)("g",{transform:"translate(-105 -720)",children:[Object(n.jsx)("path",{d:"M-65,5a3,3,0,0,0-1.131.224A3.981,3.981,0,0,1-65,8v2h3V8A3,3,0,0,0-65,5Z"}),Object(n.jsx)("path",{d:"M-72,10h6V8a3,3,0,0,0-3-3,3,3,0,0,0-3,3Z"}),Object(n.jsx)("path",{className:"a",d:"M-65,.213a1.993,1.993,0,0,0-1.384.561A2.967,2.967,0,0,1-66,2.213a2.964,2.964,0,0,1-.384,1.439A1.989,1.989,0,0,0-65,4.213a2,2,0,0,0,2-2A2,2,0,0,0-65,.213Z"}),Object(n.jsx)("circle",{cx:"2",cy:"2",r:"2",transform:"translate(-71 0.213)"})]})})})})},ht=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 8.75 10",children:Object(n.jsx)("path",{d:"M-44.625,10l-4.353-2.419L-53.375,10V0h8.75Z",transform:"translate(53.375)"})})})},pt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 9.998 10",children:Object(n.jsx)("g",{transform:"translate(140.999 720)",children:Object(n.jsxs)("g",{transform:"translate(-105 -720)",children:[Object(n.jsx)("rect",{width:"1.114",height:"1.667",transform:"translate(-27.116 8.333)"}),Object(n.jsx)("path",{d:"M-28.184,10H-29.3V8.154l2.182-3.037V3.147H-26V5.476l-2.182,3.037Z"}),Object(n.jsx)("rect",{width:"1.114",height:"2.963",transform:"translate(-31.531)"}),Object(n.jsx)("rect",{width:"1.114",height:"2.132",transform:"translate(-27.115 0)"}),Object(n.jsx)("rect",{width:"1.114",height:"5.389",transform:"translate(-29.298)"}),Object(n.jsx)("path",{d:"M-30.417,10h-1.114V5.722l-2.233-3V0h1.114V2.353l2.233,3Z"}),Object(n.jsx)("path",{d:"M-32.65,10h-1.114V6.185l-2.234-3V0h1.114V2.815l2.234,3Z"}),Object(n.jsx)("rect",{width:"1.114",height:"4.463",transform:"translate(-35.999 5.537)"})]})})})})},Ot=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:[Object(n.jsx)("rect",{width:"1.433",height:"1"}),Object(n.jsx)("rect",{width:"7.828",height:"1",transform:"translate(2.172)"}),Object(n.jsx)("rect",{width:"1.433",height:"1",transform:"translate(0 6)"}),Object(n.jsx)("rect",{width:"1.433",height:"1",transform:"translate(0 3)"}),Object(n.jsx)("rect",{width:"1.433",height:"1",transform:"translate(0 9)"}),Object(n.jsx)("rect",{width:"1.368",height:"0.569",transform:"translate(6.316 9)"}),Object(n.jsx)("path",{d:"M5.566,9.569v-.31l-.238-.138-.269.155-.65.375L4.034,9V9H2.172v1H5.566Z"}),Object(n.jsx)("path",{d:"M9.966,9l-.375.65-.65-.375-.269-.155-.238.138V10H10V9H9.967Z"}),Object(n.jsx)("path",{d:"M3.625,6.793l.269-.155V6.362l-.269-.155L3.266,6H2.172V7H3.266Z"}),Object(n.jsx)("path",{d:"M8.434,3.431v.31l.238.138.269-.155.649-.375L9.966,4V4H10V3H8.434Z"}),Object(n.jsx)("path",{d:"M4.034,4l.375-.65.65.375.269.155.238-.138V3H2.172V4H4.033Z"}),Object(n.jsx)("path",{d:"M9.356,5.929,10,5.558,9.316,4.373l-.644.372-.988-.571V3.431H6.316v.743l-.988.571-.644-.372L4,5.558l.644.371V7.071L4,7.442l.684,1.185.644-.372.988.571v.743H7.684V8.826l.988-.571.644.372L10,7.442l-.644-.371ZM7,7.278A.778.778,0,1,1,7.778,6.5.779.779,0,0,1,7,7.278Z"})]})})},gt=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 9",children:Object(n.jsxs)("g",{transform:"translate(79 438.479)",children:[Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("rect",{x:"-77.9",y:"-434.5",width:"7.8",height:"1"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("rect",{x:"-77.9",y:"-434.5",transform:"matrix(0.4999 -0.8661 0.8661 0.4999 338.8698 -281.1237)",width:"7.8",height:"1"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("rect",{x:"-74.5",y:"-437.9",transform:"matrix(0.866 -0.5001 0.5001 0.866 207.1129 -95.1668)",width:"1",height:"7.8"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-71.8-430.1h-4.5l-2.2-3.9l2.2-3.9h4.5l2.2,3.9L-71.8-430.1z M-75.7-431.1h3.3l1.7-2.9l-1.7-2.9h-3.3 l-1.7,2.9L-75.7-431.1z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-72.3-434c0,0.9-0.7,1.7-1.7,1.7c-0.9,0-1.7-0.7-1.7-1.7c0-0.9,0.7-1.7,1.7-1.7 C-73.1-435.7-72.3-434.9-72.3-434z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-76.8-434c0,0.6-0.5,1.1-1.1,1.1c0,0,0,0,0,0c-0.6,0-1.1-0.5-1.1-1.1c0,0,0,0,0,0c0-0.6,0.5-1.1,1.1-1.1 c0,0,0,0,0,0C-77.3-435.1-76.8-434.6-76.8-434C-76.8-434-76.8-434-76.8-434z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-69-434c0,0.6-0.5,1.1-1.1,1.1c0,0,0,0,0,0c-0.6,0-1.1-0.5-1.1-1.1c0,0,0,0,0,0c0-0.6,0.5-1.1,1.1-1.1 c0,0,0,0,0,0C-69.5-435.1-69-434.6-69-434C-69-434-69-434-69-434z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-75.4-431.6c0.5,0.3,0.7,1,0.4,1.5c-0.3,0.5-1,0.7-1.5,0.4c0,0,0,0,0,0c-0.5-0.3-0.7-1-0.4-1.5 C-76.6-431.7-75.9-431.9-75.4-431.6C-75.4-431.6-75.4-431.6-75.4-431.6z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-71.5-438.3c0.5,0.3,0.7,1,0.4,1.5c-0.3,0.5-1,0.7-1.5,0.4c0,0,0,0,0,0c-0.5-0.3-0.7-1-0.4-1.5 C-72.7-438.5-72-438.6-71.5-438.3C-71.5-438.3-71.5-438.3-71.5-438.3z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-72.6-431.6c0.5-0.3,1.2-0.1,1.5,0.4c0,0,0,0,0,0c0.3,0.5,0.1,1.2-0.4,1.5c-0.5,0.3-1.2,0.1-1.5-0.4 c0,0,0,0,0,0C-73.3-430.6-73.1-431.3-72.6-431.6z"})})}),Object(n.jsx)("g",{children:Object(n.jsx)("g",{children:Object(n.jsx)("path",{d:"M-76.5-438.3c0.5-0.3,1.2-0.1,1.5,0.4c0,0,0,0,0,0c0.3,0.5,0.1,1.2-0.4,1.5c-0.5,0.3-1.2,0.1-1.5-0.4 c0,0,0,0,0,0C-77.2-437.3-77-438-76.5-438.3z"})})})]})})})},ft=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsx)("g",{transform:"translate(213 720)",children:Object(n.jsxs)("g",{transform:"translate(-105 -720)",children:[Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-108)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-108 6)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-99.5 6)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-99.5)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-98) rotate(90)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-104) rotate(90)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-104 8.5) rotate(90)"}),Object(n.jsx)("rect",{width:"1.5",height:"4",transform:"translate(-98 8.5) rotate(90)"}),Object(n.jsx)("circle",{cx:"2",cy:"2",r:"2",transform:"translate(-105 3)"})]})})})})},xt="ADD_BUCKET_OPEN",vt="ADD_BUCKET_NAME",yt="ADD_BUCKET_VERSIONED",St="ADD_BUCKET_LOCKING",Ct="ADD_BUCKET_QUOTA",kt="ADD_BUCKET_QUOTA_TYPE",Nt="ADD_BUCKET_QUOTA_SIZE",wt="ADD_BUCKET_QUOTA_UNIT",Tt="ADD_BUCKET_RESET",Et="ADD_BUCKET_RETENTION",At="ADD_BUCKET_RETENTION_MODE",_t="ADD_BUCKET_RETENTION_UNIT",It="ADD_BUCKET_RETENTION_VALIDITY",Mt="BUCKET_DETAILS/SET_TAB";var Ft=a(126),Dt=a.n(Ft),Lt=a(912),Bt=a(957),Rt=a(1002),Pt=a(86),zt=a(398),Kt=a.n(zt),Ut=a(219),Wt=a.n(Ut),Vt=a(397),Gt=a.n(Vt),qt=a(34),Ht="#081C42",Yt="#081C42",Qt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 16 11.856",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M-54,8l1.764,2.614A7.52,7.52,0,0,0-46,13.928h0a7.52,7.52,0,0,0,6.234-3.314L-38,8l-1.764-2.614A7.52,7.52,0,0,0-46,2.072h0a7.52,7.52,0,0,0-6.234,3.314Zm10.286,0A2.285,2.285,0,0,1-46,10.286,2.285,2.285,0,0,1-48.286,8,2.285,2.285,0,0,1-46,5.714,2.285,2.285,0,0,1-43.714,8Zm1.3,0A3.59,3.59,0,0,1-46,11.59,3.59,3.59,0,0,1-49.59,8,3.59,3.59,0,0,1-46,4.41,3.59,3.59,0,0,1-42.41,8Z",transform:"translate(54 -2.072)"})})},Zt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 13.833 13.833",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M2.934,16H0V13.066L10.607,2.459a1,1,0,0,1,1.414,0l1.52,1.52a1,1,0,0,1,0,1.414Z",transform:"translate(0 -2.167)"})})},Jt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 13 13",children:[Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M11.05 8.617v2.429h-9.1v-9.1h2.429v-1.95H0v13h13V8.617z",className:"a"}),Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M3.854 9.256h1.95a4.945 4.945 0 013.6-4.74v1.3l.6-.487 2.474-2.012L9.4.817v1.7a6.9 6.9 0 00-5.546 6.739z",className:"a"})]})},$t=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 10.402 13",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M6.761 1V0H3.64v1H.004v1h10.4V1zM.004 2.998l1.672 10h7.052l1.673-10zm3.412 8.243l-.552-6.478h.653l.553 6.472zm3.569 0h-.653l.551-6.472h.654z"})})},Xt=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 10 11.429",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M-43.375,11.429-48.35,8.664l-5.025,2.764V0h10Z",transform:"translate(53.375)"})})},ea=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M19.35 10.04C18.67 6.59 15.64 4 12 4 9.11 4 6.6 5.64 5.35 8.04 2.34 8.36 0 10.91 0 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96z"})})},ta=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M21 3H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16H3v-3h18v3z"})})},aa=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 13 12.996",children:[Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M11.05 9.096v1.95h-9.1v-1.95H0v3.9h13v-3.9z"}),Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M6.5 9.75L9 6.672H7.475V0h-1.95v6.672H4z"})]})},na=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm5 11H7v-2h10v2z"})})},ca=function(e){var t=e.active,a=void 0!==t&&t;return Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{fill:a?Yt:Ht,d:"M20 16h2v-2h-2v2zm0-9v5h2V7h-2zM10 4c-4.42 0-8 3.58-8 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm0 10c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2z"})})},ia=function(e,t){switch(e){case"view":return Object(n.jsx)(Qt,{active:t});case"edit":return Object(n.jsx)(Zt,{active:t});case"delete":return Object(n.jsx)($t,{active:t});case"description":return Object(n.jsx)(Xt,{active:t});case"share":return Object(n.jsx)(Jt,{active:t});case"cloud":return Object(n.jsx)(ea,{active:t});case"console":return Object(n.jsx)(ta,{active:t});case"download":return Object(n.jsx)(aa,{active:t});case"disable":return Object(n.jsx)(na,{active:t});case"format":return Object(n.jsx)(ca,{active:t})}return null},ra=Object(w.a)((function(){return Object(k.a)({spacing:{margin:"0 8px"},buttonDisabled:{"&.MuiButtonBase-root.Mui-disabled":{cursor:"not-allowed",filter:"grayscale(100%)",opacity:"30%"}}})}))((function(e){var t=e.type,a=e.onClick,c=e.valueToSend,i=e.idField,r=e.selected,o=e.to,s=e.sendOnlyId,l=void 0!==s&&s,d=e.disabled,b=void 0!==d&&d,u=e.classes,j=l?c[i]:c,m=Object(n.jsx)(Lt.a,{"aria-label":t,size:"small",onClick:a?function(e){e.stopPropagation(),b?e.preventDefault():a(j)}:function(){return null},className:"".concat(u.spacing," ").concat(b?u.buttonDisabled:""),disabled:b,children:ia(t,r)});return a?m:Dt()(o)?b?m:Object(n.jsx)(qt.a,{to:"".concat(o,"/").concat(j),onClick:function(e){e.stopPropagation()},children:m}):null})),oa=a(1015),sa=a(1009),la=function(e){return Object(n.jsxs)(rt.a,Object(j.a)(Object(j.a)({},e),{},{viewBox:"0 0 12 12",children:[Object(n.jsx)("path",{d:"M357.14,346a5,5,0,1,1-5,5,5,5,0,0,1,5-5m0-1a6,6,0,1,0,6,6,6,6,0,0,0-6-6Z",transform:"translate(-351.14 -345.03)"}),Object(n.jsx)("path",{d:"M356.21,352.42v-1.86h.52c1.23,0,1.92-.45,1.92-1.29s-.68-1.18-1.89-1.18a8.07,8.07,0,0,0-.93.06l-.1-1.25a9.13,9.13,0,0,1,1.08-.08c2,0,3.19.94,3.19,2.4s-.93,2.24-2.64,2.46l-.05.74Zm1.56,1.8a1,1,0,1,1-1-1A1,1,0,0,1,357.77,354.22Z",transform:"translate(-351.14 -345.03)"})]}))},da=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),Ae),{},{fieldContainer:Object(j.a)(Object(j.a)({},Ne.fieldContainer),{},{display:"flex",justifyContent:"flex-start",alignItems:"center",margin:"15px 0",marginBottom:0,flexBasis:"initial"})}))}))((function(e){var t=e.label,a=e.onChange,c=e.value,r=e.id,o=e.name,s=e.checked,l=void 0!==s&&s,d=e.disabled,b=void 0!==d&&d,u=e.tooltip,j=void 0===u?"":u,m=e.classes;return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:m.fieldContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Rt.a,{name:o,id:r,value:c,color:"primary",inputProps:{"aria-label":"secondary checkbox"},checked:l,onChange:a,checkedIcon:Object(n.jsx)("span",{className:m.checkedIcon}),icon:Object(n.jsx)("span",{className:m.unCheckedIcon}),disabled:b})}),""!==t&&Object(n.jsxs)(oa.a,{htmlFor:r,className:m.inputLabel,children:[Object(n.jsx)("span",{children:t}),""!==j&&Object(n.jsx)("div",{className:m.tooltipContainer,children:Object(n.jsx)(sa.a,{title:j,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:m.tooltip})})})})]})]})})})),ba="#9c9c9c80",ua={fontWeight:400,fontSize:14,borderColor:ba,borderWidth:"0.5px",height:40,transitionDuration:"0.3s",padding:"initial",paddingRight:6,paddingLeft:6},ja=function(e,t,a,i,r,o,s,l,d,b,u){var j=function(e,t,a,n,c,i,r){var o=Object($e.a)(e);i&&(o=e.filter((function(e){return r.includes(e.elementKey)})));var s=t;return n&&(s-=45),c&&(s-=a),o.reduce((function(e,t){return t.width?e-t.width:e}),s)/o.filter((function(e){return!e.width})).length}(e,t,a,i,r,l,d);return e.map((function(e,t){if(l&&!d.includes(e.elementKey))return null;var a=!e.enableSort||!e.enableSort;return Object(n.jsx)(Pt.b,{dataKey:e.elementKey,headerClassName:"titleHeader ".concat(e.headerTextAlign?"text-".concat(e.headerTextAlign):""),headerRenderer:function(){return Object(n.jsxs)(c.Fragment,{children:[b===e.elementKey&&Object(n.jsx)(c.Fragment,{children:"ASC"===u?Object(n.jsx)(Gt.a,{}):Object(n.jsx)(Wt.a,{})}),e.label]})},className:e.contentTextAlign?"text-".concat(e.contentTextAlign):"",cellRenderer:function(t){var a=t.rowData,i=!!o&&o.includes(Dt()(a)?a:a[s]);return function(e,t,a){var i=Dt()(e)?e:Z()(e,t.elementKey,null),r=t.renderFullObject?e:i,o=t.renderFunction?t.renderFunction(r):r;return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)("span",{className:a?"selected":"",children:o})})}(a,e,i)},width:e.width||j,disableSort:a,defaultSortDirection:"ASC"},"col-tb-".concat(t.toString()))}))},ma=Object(w.a)((function(){return Object(k.a)(Object(j.a)(Object(j.a)({dialogContainer:{padding:"12px 26px 22px"},paper:{display:"flex",overflow:"auto",flexDirection:"column",padding:"19px 38px",boxShadow:"none",border:"#EAEDEE 1px solid",borderRadius:3,minHeight:200,overflowY:"scroll",position:"relative","&::-webkit-scrollbar":{width:3,height:3}},noBackground:{backgroundColor:"transparent",border:0},defaultPaperHeight:{height:"calc(100vh - 205px)"},allTableSettings:{"& .MuiTableCell-sizeSmall:last-child":{paddingRight:"initial"},"& .MuiTableCell-body.MuiTableCell-sizeSmall:last-child":{paddingRight:6}},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:700,fontSize:14,borderColor:"#39393980",borderWidth:"0.5px",padding:"6px 0 10px"}}},rowUnselected:Object(j.a)(Object(j.a)({},ua),{},{color:"#393939"}),rowSelected:Object(j.a)(Object(j.a)({},ua),{},{color:"#081C42",fontWeight:600}),paginatorContainer:{display:"flex",justifyContent:"flex-end",padding:"5px 38px"},checkBoxHeader:{width:50,textAlign:"left",paddingRight:10,"&.MuiTableCell-paddingCheckbox":{paddingBottom:4,paddingLeft:0}},actionsContainer:{width:150,borderColor:ba},paginatorComponent:{borderBottom:0},checkBoxRow:{borderColor:ba,padding:"0 10px 0 0"},loadingBox:{paddingTop:"100px",paddingBottom:"100px"},overlayColumnSelection:{position:"absolute",right:0,top:0},popoverContainer:{position:"relative"},popoverContent:{maxHeight:250,overflowY:"auto",padding:"0 10px 10px"},shownColumnsLabel:{color:"#9c9c9c",fontSize:12,padding:10,borderBottom:"#eaeaea 1px solid",width:"100%"},"@global":{".rowLine":{borderBottom:"1px solid ".concat(ba),height:40,color:"#393939",fontSize:14,transitionDuration:.3,"&:focus":{outline:"initial"},"&:hover:not(.ReactVirtualized__Table__headerRow)":{userSelect:"none",backgroundColor:"#ececec",fontWeight:600,"&.canClick":{cursor:"pointer"},"&.canSelectText":{userSelect:"text"}},"& .selected":{color:"#081C42",fontWeight:600}},".headerItem":{userSelect:"none",fontWeight:700,fontSize:14,fontStyle:"initial",display:"flex",alignItems:"center",outline:"none"},".ReactVirtualized__Table__headerRow":{fontWeight:700,fontSize:14,borderColor:"#39393980",textTransform:"initial"},".optionsAlignment":{textAlign:"center"},".text-center":{textAlign:"center"},".text-right":{textAlign:"right"},".progress-enabled":{paddingTop:3,display:"inline-block",margin:"0 10px",position:"relative",width:18,height:18},".progress-enabled > .MuiCircularProgress-root":{position:"absolute",left:0,top:3}}},Ae),Ie))}))((function(e){var t=e.itemActions,a=e.columns,r=e.onSelect,o=e.records,s=e.isLoading,l=e.loadingMessage,d=void 0===l?Object(n.jsx)(v.a,{component:"h3",children:"Loading..."}):l,j=e.entityName,m=e.selectedItems,h=e.idField,p=e.classes,O=e.radioSelection,g=void 0!==O&&O,f=e.customEmptyMessage,k=void 0===f?"":f,N=e.customPaperHeight,w=void 0===N?"":N,T=e.noBackground,E=void 0!==T&&T,A=e.columnsSelector,_=void 0!==A&&A,I=e.textSelectable,M=void 0!==I&&I,F=e.columnsShown,D=void 0===F?[]:F,L=e.onColumnChange,B=void 0===L?function(e,t){}:L,R=e.infiniteScrollConfig,P=e.sortConfig,z=e.autoScrollToBottom,K=void 0!==z&&z,U=Object(c.useState)(!1),W=Object(u.a)(U,2),V=W[0],G=W[1],q=i.a.useState(null),H=Object(u.a)(q,2),Y=H[0],Q=H[1],Z=t?t.find((function(e){return"view"===e.type})):null,J=function(e){G(!V),Q(e.currentTarget)},$=function(){G(!1),Q(null)};return Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:"".concat(p.paper," ").concat(E?p.noBackground:""," ").concat(""!==w?w:p.defaultPaperHeight),children:[s&&Object(n.jsxs)(x.a,{container:!0,className:p.loadingBox,children:[Object(n.jsx)(x.a,{item:!0,xs:12,style:{textAlign:"center"},children:d}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]}),_&&!s&&o.length>0&&Object(n.jsx)("div",{className:p.overlayColumnSelection,children:function(e){return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Lt.a,{"aria-describedby":"columnsSelector",color:"primary",onClick:J,children:Object(n.jsx)(Kt.a,{fontSize:"inherit"})}),Object(n.jsxs)(Bt.a,{anchorEl:Y,id:"columnsSelector",open:V,anchorOrigin:{vertical:"bottom",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"left"},onClose:$,className:p.popoverContainer,children:[Object(n.jsx)("div",{className:p.shownColumnsLabel,children:"Shown Columns"}),Object(n.jsx)("div",{className:p.popoverContent,children:e.map((function(e){return Object(n.jsx)(da,{label:e.label,checked:D.includes(e.elementKey),onChange:function(t){B(e.elementKey,t.target.checked)},id:"chbox-".concat(e.label),name:"chbox-".concat(e.label),value:e.label},"tableColumns-".concat(e.label))}))})]})]})}(a)}),o&&!s&&o.length>0?Object(n.jsx)(Pt.c,{isRowLoaded:function(e){var t=e.index;return!!o[t]},loadMoreRows:R?R.loadMoreRecords:function(){return new Promise((function(){return!0}))},rowCount:R?R.recordsCount:o.length,children:function(e){var i=e.onRowsRendered,s=e.registerChild;return Object(n.jsx)(Pt.a,{children:function(e){var l=e.width,d=e.height,u=function(e,t){var a=45*t;return a<80?80:a>e?e:a}(l,t?t.filter((function(e){return"view"!==e.type})).length:0),O=!(!r||!m),f=!!(t&&t.length>1||t&&1===t.length&&"view"!==t[0].type);return Object(n.jsxs)(Pt.d,{ref:s,disableHeader:!1,headerClassName:"headerItem",headerHeight:40,height:d,noRowsRenderer:function(){return Object(n.jsx)(c.Fragment,{children:""!==k?k:"There are no ".concat(j," yet.")})},overscanRowCount:10,rowHeight:40,width:l,rowCount:o.length,rowGetter:function(e){var t=e.index;return o[t]},onRowClick:function(e){!function(e){if(Z){var t=Z.sendOnlyId?e[h]:e;if(Z.to)return void b.push("".concat(Z.to,"/").concat(t));Z.onClick&&Z.onClick(t)}}(e.rowData)},rowClassName:"rowLine ".concat(Z?"canClick":""," ").concat(!Z&&M?"canSelectText":""),onRowsRendered:i,sort:P?P.triggerSort:void 0,sortBy:P?P.currentSort:void 0,sortDirection:P?P.currentDirection:void 0,scrollToIndex:K?o.length-1:-1,children:[O&&Object(n.jsx)(Pt.b,{headerRenderer:function(){return Object(n.jsx)(c.Fragment,{children:"Select"})},dataKey:h,width:45,cellRenderer:function(e){var t=e.rowData,a=!!m&&m.includes(Dt()(t)?t:t[h]);return Object(n.jsx)(Rt.a,{value:Dt()(t)?t:t[h],color:"primary",inputProps:{"aria-label":"secondary checkbox"},checked:a,onChange:r,onClick:function(e){e.stopPropagation()},checkedIcon:Object(n.jsx)("span",{className:g?p.radioSelectedIcon:p.checkedIcon}),icon:Object(n.jsx)("span",{className:g?p.radioUnselectedIcon:p.unCheckedIcon})})}}),ja(a,l,u,O,f,m||[],h,_,D,P?P.currentSort:"",P?P.currentDirection:void 0),f&&Object(n.jsx)(Pt.b,{headerRenderer:function(){return Object(n.jsx)(c.Fragment,{children:"Options"})},dataKey:h,width:u,headerClassName:"optionsAlignment",className:"optionsAlignment",cellRenderer:function(e){var a=e.rowData,c=!!m&&m.includes(Dt()(a)?a:a[h]);return function(e,t,a,c){return e.map((function(e,i){if("view"===e.type)return null;var r="string"===typeof t?t:t[c],o=!1;return e.disableButtonFunction&&e.disableButtonFunction(r)&&(o=!0),e.showLoaderFunction&&e.showLoaderFunction(r)?Object(n.jsx)("div",{className:"progress-enabled",children:Object(n.jsx)(S.a,{color:"primary",size:18,variant:"indeterminate"},"actions-loader-".concat(e.type,"-").concat(i.toString()))}):Object(n.jsx)(ra,{type:e.type,onClick:e.onClick,to:e.to,valueToSend:t,selected:a,idField:c,sendOnlyId:!!e.sendOnlyId,disabled:o},"actions-".concat(e.type,"-").concat(i.toString()))}))}(t||[],a,c,h)}})]})}})}}):Object(n.jsx)(c.Fragment,{children:!s&&Object(n.jsx)("div",{children:""!==k?k:"There are no ".concat(j," yet.")})})]})})})),ha=a(967),pa=a(968),Oa=a(969),ga={content:'" "',borderLeft:"2px solid #9C9C9C",height:33,width:1,position:"absolute"},fa=Object(s.b)((function(e){return{modalSnackMessage:e.system.modalSnackBar}}),{setModalSnackMessage:G}),xa=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({dialogContainer:{padding:"8px 15px 22px"},closeContainer:{textAlign:"right"},closeButton:{width:45,height:45,padding:0,backgroundColor:"initial","&:hover":{backgroundColor:"initial"},"&:active":{backgroundColor:"initial"}},modalCloseIcon:{fontSize:35,color:"#9C9C9C",fontWeight:300,"&:hover":{color:"#9C9C9C"}},closeIcon:{"&::before":Object(j.a)(Object(j.a)({},ga),{},{transform:"rotate(45deg)"}),"&::after":Object(j.a)(Object(j.a)({},ga),{},{transform:"rotate(-45deg)"}),"&:hover::before, &:hover::after":{borderColor:"#9C9C9C"},width:24,height:24,display:"block",position:"relative"},titleClass:{padding:"0px 50px 12px","& h2":{fontWeight:600,color:"#000",fontSize:22}},modalContent:{padding:"0 50px"},customDialogSize:{width:"100%",maxWidth:765}},We))}))(fa((function(e){var t=e.onClose,a=e.modalOpen,i=e.title,r=e.children,o=e.classes,s=e.wideLimit,l=void 0===s||s,d=e.modalSnackMessage,b=e.noContentPadding,m=e.setModalSnackMessage,h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],g=p[1];Object(c.useEffect)((function(){if(d){if(""===d.message)return void g(!1);g(!0)}}),[d]);var f=l?{classes:{paper:o.customDialogSize}}:{maxWidth:"md",fullWidth:!0};return Object(n.jsx)(ha.a,Object(j.a)(Object(j.a)({open:a,onClose:t,"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description"},f),{},{children:Object(n.jsxs)("div",{className:o.dialogContainer,children:[Object(n.jsx)(ke.a,{open:O,className:o.snackBarModal,onClose:function(){g(!1),m("")},message:d?d.message:"",ContentProps:{className:"".concat(o.snackBar," ").concat(d&&"error"===d.type?o.errorSnackBar:"")},autoHideDuration:d&&"error"===d.type?1e4:5e3}),Object(n.jsx)("div",{className:o.closeContainer,children:Object(n.jsx)(Lt.a,{"aria-label":"close",className:o.closeButton,onClick:t,disableRipple:!0,children:Object(n.jsx)("span",{className:o.closeIcon})})}),Object(n.jsx)(pa.a,{id:"alert-dialog-title",className:o.titleClass,children:i}),Object(n.jsx)(Oa.a,{className:b?"":o.modalContent,children:r})]})}))}))),va=Object(N.a)((function(e){return Object(k.a)({root:{borderRadius:0,"&::before":{borderColor:"#9c9c9c"}},disabled:{"&.MuiInput-underline::before":{borderColor:"#eaeaea",borderBottomStyle:"solid"}},input:{padding:"15px 30px 10px 5px",color:"#393939",fontSize:13,fontWeight:600,"&:placeholder":{color:"#393939",opacity:1}},error:{color:"#b53b4b"}})}));function ya(e){var t=va();return Object(n.jsx)(f.a,Object(j.a)({InputProps:{classes:t}},e))}var Sa=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{textBoxContainer:{flexGrow:1},textBoxWithIcon:{position:"relative",paddingRight:25},errorState:{color:"#b53b4b",fontSize:14,position:"absolute",top:7,right:7},overlayAction:{position:"absolute",right:0,top:15,"& svg":{maxWidth:15,maxHeight:15}}}))}))((function(e){var t=e.label,a=e.onChange,c=e.value,r=e.id,o=e.name,s=e.type,l=void 0===s?"text":s,d=e.autoComplete,b=void 0===d?"off":d,u=e.disabled,j=void 0!==u&&u,m=e.multiline,h=void 0!==m&&m,p=e.tooltip,O=void 0===p?"":p,g=e.index,f=void 0===g?0:g,v=e.error,y=void 0===v?"":v,S=e.required,C=void 0!==S&&S,k=e.placeholder,N=void 0===k?"":k,w=e.min,T=e.max,E=e.overlayIcon,A=void 0===E?null:E,_=e.overlayAction,I=e.classes,M={"data-index":f};return"number"===l&&w&&(M.min=w),"number"===l&&T&&(M.max=T),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(I.fieldContainer," ").concat(""!==y?I.errorInField:""),children:[""!==t&&Object(n.jsxs)(oa.a,{htmlFor:r,className:I.inputLabel,children:[Object(n.jsxs)("span",{children:[t,C?"*":""]}),""!==O&&Object(n.jsx)("div",{className:I.tooltipContainer,children:Object(n.jsx)(sa.a,{title:O,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:I.tooltip})})})})]}),Object(n.jsx)("div",{className:I.textBoxContainer,children:Object(n.jsx)(ya,{id:r,name:o,fullWidth:!0,value:c,disabled:j,onChange:a,type:l,multiline:h,autoComplete:b,inputProps:M,error:""!==y,helperText:y,placeholder:N,className:I.inputRebase})}),A&&Object(n.jsx)("div",{className:I.overlayAction,children:Object(n.jsx)(Lt.a,{onClick:_?function(){_()}:function(){return null},size:"small",disableFocusRipple:!1,disableRipple:!1,disableTouchRipple:!1,children:A})})]})})})),Ca=a(457),ka=a(956),Na=a(1001),wa=a(970),Ta=Object(w.a)((function(e){return Object(k.a)({root:{lineHeight:1,"label + &":{marginTop:e.spacing(3)}},input:{position:"relative",color:"#393939",fontSize:13,fontWeight:600,padding:"15px 20px 10px 10px",borderBottom:"1px solid #9c9c9c",display:"flex",alignItems:"center","&:hover":{borderColor:"#393939"},"&:focus":{backgroundColor:"#fff"}}})}))(Ca.a),Ea=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ne),Te))}))((function(e){var t=e.classes,a=e.id,c=e.name,r=e.onChange,o=e.options,s=e.label,l=e.tooltip,d=void 0===l?"":l,b=e.value,u=e.disabled,j=void 0!==u&&u;return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.fieldContainer,children:[""!==s&&Object(n.jsxs)(oa.a,{htmlFor:a,className:t.inputLabel,children:[Object(n.jsx)("span",{children:s}),""!==d&&Object(n.jsx)("div",{className:t.tooltipContainer,children:Object(n.jsx)(sa.a,{title:d,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:t.tooltip})})})})]}),Object(n.jsx)(ka.a,{fullWidth:!0,children:Object(n.jsx)(Na.a,{id:a,name:c,value:b,onChange:r,input:Object(n.jsx)(Ta,{}),disabled:j,children:o.map((function(e){return Object(n.jsx)(wa.a,{value:e.value,children:e.label},"select-".concat(c,"-").concat(e.label))}))})})]})})})),Aa=a(1014),_a=a(971),Ia=a(1e3),Ma=Object(N.a)(Object(j.a)({root:{"&:hover":{backgroundColor:"transparent"}}},Ie)),Fa=function(e){var t=Ma();return Object(n.jsx)(Ia.a,Object(j.a)({className:t.root,disableRipple:!0,color:"default",checkedIcon:Object(n.jsx)("span",{className:t.radioSelectedIcon}),icon:Object(n.jsx)("span",{className:t.radioUnselectedIcon})},e))},Da=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{radioBoxContainer:{},fieldContainer:Object(j.a)(Object(j.a)({},Ne.fieldContainer),{},{display:"flex",justifyContent:"space-between",borderBottom:"#9c9c9c 1px solid",paddingBottom:10,marginTop:11}),optionLabel:{"&.Mui-disabled":{"& .MuiFormControlLabel-label":{color:"#9c9c9c"}},"&:last-child":{marginRight:0},"& .MuiFormControlLabel-label":{fontSize:12,color:"#000"}},checkedOption:{"& .MuiFormControlLabel-label":{fontSize:12,color:"#000",fontWeight:700}}}))}))((function(e){var t=e.selectorOptions,a=void 0===t?[]:t,c=e.currentSelection,r=e.label,o=e.id,s=e.name,l=e.onChange,d=e.tooltip,b=void 0===d?"":d,u=e.disableOptions,j=void 0!==u&&u,m=e.classes,h=e.displayInColumn,p=void 0!==h&&h;return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:m.fieldContainer,children:[Object(n.jsxs)(oa.a,{htmlFor:o,className:m.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==b&&Object(n.jsx)("div",{className:m.tooltipContainer,children:Object(n.jsx)(sa.a,{title:b,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:m.tooltip})})})})]}),Object(n.jsx)("div",{className:m.radioBoxContainer,children:Object(n.jsx)(Aa.a,{"aria-label":o,id:o,name:s,value:c,onChange:l,row:!p,children:a.map((function(e){return Object(n.jsx)(_a.a,{value:e.value,control:Object(n.jsx)(Fa,{}),label:e.label,disabled:j,className:Object(ve.a)(m.optionLabel,Object(xe.a)({},m.checkedOption,e.value===c))},"rd-".concat(s,"-").concat(e.value))}))})})]})})})),La=a(1007),Ba=a(972),Ra=Object(w.a)({root:{alignItems:"flex-start",height:18,padding:"0 12px",display:"flex",position:"relative"},switchBase:{color:"#fff",padding:0,top:"initial","&$checked":{color:"#fff"},"&$checked + $track":{backgroundColor:"#081C42",opacity:1,height:15},"&:hover":{backgroundColor:"#fff"}},checked:{},track:{height:15,backgroundColor:"#9C9C9C",border:"#081C42 1px solid",opacity:1,padding:0,marginTop:1.5,"&$checked":{backgroundColor:"#081C42"}},thumb:{backgroundColor:"#fff",border:"#081C42 1px solid",boxShadow:"none",width:18,height:18,padding:0,marginLeft:10}})(Ba.a),Pa=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#081C42",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#081C42"}}},divContainer:{borderBottom:"#9c9c9c 1px solid",paddingBottom:14,marginBottom:20,maxWidth:840},wrapperContainer:{display:"flex",justifyContent:"space-between",alignItems:"center",maxWidth:840},indicatorLabel:{fontSize:12,fontWeight:600,color:"#081C42",margin:"0 8px 0 10px"},fieldDescription:{marginTop:4,color:"#999999"}},Me),Ne))}))((function(e){var t=e.label,a=void 0===t?"":t,c=e.onChange,r=e.value,o=e.id,s=e.name,l=e.checked,d=void 0!==l&&l,b=e.disabled,u=void 0!==b&&b,j=e.switchOnly,m=void 0!==j&&j,h=e.tooltip,p=void 0===h?"":h,O=e.description,g=void 0===O?"":O,f=e.indicatorLabels,y=void 0===f?[]:f,S=e.containerClass,C=void 0===S?"":S,k=e.classes,N=Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)("div",{className:"".concat(k.switchContainer," ").concat(C),children:[Object(n.jsx)(Ra,{checked:d,onChange:c,color:"primary",name:s,inputProps:{"aria-label":"primary checkbox"},disabled:u,disableRipple:!0,disableFocusRipple:!0,disableTouchRipple:!0,value:r}),2===y.length&&Object(n.jsx)("span",{className:k.indicatorLabel,children:d?y[0]:y[1]})]})});return m?N:Object(n.jsxs)("div",{className:k.divContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:k.wrapperContainer,children:[""!==a&&Object(n.jsxs)(oa.a,{htmlFor:o,className:k.inputLabel,children:[Object(n.jsx)("span",{children:a}),""!==p&&Object(n.jsx)("div",{className:k.tooltipContainer,children:Object(n.jsx)(sa.a,{title:p,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:k.tooltip})})})})]}),N]}),""!==g&&Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(v.a,{component:"p",className:k.fieldDescription,children:g})})]})})),za=Object(s.b)((function(e){return{addBucketModalOpen:e.buckets.open,bucketName:e.buckets.addBucketName,versioningEnabled:e.buckets.addBucketVersioningEnabled,lockingEnabled:e.buckets.addBucketLockingEnabled,quotaEnabled:e.buckets.addBucketQuotaEnabled,quotaType:e.buckets.addBucketQuotaType,quotaSize:e.buckets.addBucketQuotaSize,quotaUnit:e.buckets.addBucketQuotaUnit,retentionEnabled:e.buckets.addBucketRetentionEnabled,retentionMode:e.buckets.addBucketRetentionMode,retentionUnit:e.buckets.addBucketRetentionUnit,retentionValidity:e.buckets.addBucketRetentionValidity}}),{addBucketName:function(e){return{type:vt,name:e}},addBucketVersioned:function(e){return{type:yt,versioned:e}},enableObjectLocking:function(e){return{type:St,locking:e}},addBucketQuota:function(e){return{type:Ct,quota:e}},addBucketQuotaType:function(e){return{type:kt,quotaType:e}},addBucketQuotaSize:function(e){return{type:Nt,quotaSize:e}},addBucketQuotaUnit:function(e){return{type:wt,quotaUnit:e}},addBucketRetention:function(e){return{type:Et,retention:e}},addBucketRetentionMode:function(e){return{type:At,retentionMode:e}},addBucketRetentionUnit:function(e){return{type:_t,retentionUnit:e}},addBucketRetentionValidity:function(e){return{type:It,retentionValidity:e}},setModalError:q})(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},quotaSizeContainer:{flexGrow:1},sizeFactorContainer:{flexGrow:0,maxWidth:80,marginLeft:8,alignSelf:"flex-start"}},we))}))((function(e){var t=e.classes,a=e.open,r=e.closeModalAndRefresh,o=e.addBucketName,s=e.addBucketVersioned,l=e.enableObjectLocking,d=e.addBucketQuota,b=e.addBucketQuotaType,j=e.addBucketQuotaSize,m=e.addBucketQuotaUnit,h=e.addBucketRetention,p=e.addBucketRetentionMode,O=e.addBucketRetentionUnit,f=e.addBucketRetentionValidity,S=e.setModalError,C=e.bucketName,k=e.versioningEnabled,N=e.lockingEnabled,w=e.quotaEnabled,T=e.quotaType,E=e.quotaSize,A=e.quotaUnit,_=e.retentionEnabled,I=e.retentionMode,M=e.retentionUnit,F=e.retentionValidity,D=Object(c.useState)(!1),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)(!1),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(!1),V=Object(u.a)(W,2),G=V[0],q=V[1],H=Object(La.a)(C,1e3),Y=Object(u.a)(H,1)[0];Object(c.useEffect)((function(){o(Y)}),[Y,o]);var Q=function(){o(""),s(!1),l(!1),d(!1),b("hard"),j("1"),m("TiB"),h(!1),p("compliance"),O("days"),f(1)};return Object(c.useEffect)((function(){var e=!1;""!==C.trim()&&(e=!0),w&&e&&(""!==E.trim()&&0!==parseInt(E)||(e=!1)),k&&_||(h(!1),p("compliance"),O("days"),f(1)),_?(l(!0),q(!0)):q(!1),_&&(Number.isNaN(F)||F<1)&&(e=!1),U(e)}),[C,_,N,T,E,A,w,h,p,O,f,F,k,l]),Object(n.jsx)(xa,{title:"Create Bucket",modalOpen:a,onClose:function(){r(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){if(e.preventDefault(),!B){R(!0);var t={name:C,versioning:k,locking:N};if(w){var a=se(E,A,!1);t.quota={enabled:!0,quota_type:T,amount:parseInt(a)}}_&&(t.retention={mode:I,unit:M,validity:F}),pe.invoke("POST","/api/v1/buckets",t).then((function(e){R(!1),r(!0)})).catch((function(e){R(!1),S(e)})),Q()}}(e)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"bucket-name",name:"bucket-name",onChange:function(e){o(e.target.value)},label:"Bucket Name",value:C})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(v.a,{component:"h6",variant:"h6",children:"Features"}),Object(n.jsx)("hr",{})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"versioned",id:"versioned",name:"versioned",checked:k,onChange:function(e){s(e.target.checked)},description:"Allows to keep multiple versions of the same object under the same key.",label:"Versioning",indicatorLabels:["On","Off"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"locking",id:"locking",name:"locking",disabled:G,checked:N,onChange:function(e){l(e.target.checked)},label:"Object Locking",description:"Required to support retention and legal hold. Can only be enabled at bucket creation.",indicatorLabels:["On","Off"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"bucket_quota",id:"bucket_quota",name:"bucket_quota",checked:w,onChange:function(e){d(e.target.checked)},label:"Quota",description:"Limit the amount of data in the bucket.",indicatorLabels:["On","Off"]})}),w&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:T,id:"quota_type",name:"quota_type",label:"Quota Type",onChange:function(e){b(e.target.value)},selectorOptions:[{value:"hard",label:"Hard"},{value:"fifo",label:"FIFO"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:t.multiContainer,children:[Object(n.jsx)("div",{className:t.quotaSizeContainer,children:Object(n.jsx)(Sa,{type:"number",id:"quota_size",name:"quota_size",onChange:function(e){j(e.target.value)},label:"Quota",value:E,required:!0,min:"1"})}),Object(n.jsx)("div",{className:t.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"\xa0",id:"quota_unit",name:"quota_unit",value:A,onChange:function(e){m(e.target.value)},options:te.map((function(e){return{label:e,value:e}}))})})]})})]}),k&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"bucket_retention",id:"bucket_retention",name:"bucket_retention",checked:_,onChange:function(e){h(e.target.checked)},label:"Retention",description:"Impose rules to prevent object deletion for a period of time.",indicatorLabels:["On","Off"]})}),_&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:I,id:"retention_mode",name:"retention_mode",label:"Retention Mode",onChange:function(e){p(e.target.value)},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:M,id:"retention_unit",name:"retention_unit",label:"Retention Unit",onChange:function(e){O(e.target.value)},selectorOptions:[{value:"days",label:"Days"},{value:"years",label:"Years"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(e){f(e.target.valueAsNumber)},label:"Retention Validity",value:String(F),required:!0,min:"1"})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:Q,children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:B||!K,children:"Save"})]}),B&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),Ka=a(973),Ua=a(974),Wa={setErrorSnackMessage:V},Va=Object(s.b)(null,Wa)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Bucket"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete bucket ",Object(n.jsx)("b",{children:i}),"? ",Object(n.jsx)("br",{}),"A bucket can only be deleted if it's empty."]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){l||(d(!0),pe.invoke("DELETE","/api/v1/buckets/".concat(i),{name:i}).then((function(e){d(!1),t(!0)})).catch((function(e){d(!1),r(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),Ga=Object(w.a)((function(e){return Object(k.a)({headerContainer:{position:"absolute",width:"100%",height:77,display:"flex",backgroundColor:"#fff",borderBottom:"#E3E3E3 1px solid",left:0},label:{display:"flex",justifyContent:"flex-start",alignItems:"center"},labelStyle:{color:"#000",fontSize:18,fontWeight:700,marginLeft:55,marginTop:8}})}))((function(e){var t=e.classes,a=e.label;return Object(n.jsx)(x.a,{container:!0,className:t.headerContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.label,children:Object(n.jsx)(v.a,{variant:"h4",className:t.labelStyle,children:a})})})})),qa=a(400),Ha=a.n(qa),Ya=a(399),Qa=a.n(Ya),Za=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},De))}))((function(e){var t=e.classes,a=e.label,i=void 0===a?"":a,r=e.content,o=e.multiLine,s=void 0!==o&&o;return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{className:t.prefinedContainer,children:[""!==i&&Object(n.jsx)(x.a,{item:!0,xs:12,className:t.predefinedTitle,children:i}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.predefinedList,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:s?t.innerContentMultiline:t.innerContent,children:r})})]})})})),Ja=Object(w.a)((function(e){return Object(k.a)({wizardStepContainer:{display:"flex",flexDirection:"column"},wizardComponent:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 435px)",maxWidth:840,width:"100%"},wizardModal:{overflowY:"auto",marginBottom:10,height:"calc(100vh - 515px)"},buttonsContainer:{display:"flex",flexDirection:"row",justifyContent:"flex-start",padding:"10px 0",borderTop:"#EAEAEA 1px solid","& button":{marginLeft:10},"&.forModal":{paddingBottom:0}},buttonInnerContainer:{maxWidth:840,width:"100%",textAlign:"right"}})}))((function(e){var t=e.classes,a=e.page,c=e.pageChange,i=e.loadingStep,r=e.forModal;return Object(n.jsxs)("div",{className:t.wizardStepContainer,children:[Object(n.jsx)("div",{className:r?t.wizardModal:t.wizardComponent,children:a.componentRender}),i&&Object(n.jsx)("div",{children:Object(n.jsx)(y.a,{})}),Object(n.jsx)("div",{className:"".concat(t.buttonsContainer," ").concat(r?"forModal":""),children:Object(n.jsx)("div",{className:t.buttonInnerContainer,children:a.buttons.map((function(e){return Object(n.jsx)(g.a,{variant:"contained",color:"primary",size:"small",onClick:function(){!function(e){switch(e.type){case"next":c("++");break;case"back":c("--");break;case"to":c(e.toPage||0)}e.action&&e.action(c)}(e)},disabled:!e.enabled,children:e.label},"button-".concat(a.label,"-").concat(e.label))}))})})]})})),$a=Object(w.a)((function(e){return Object(k.a)({wizardMain:{display:"flex",width:"100%",height:"100%",flexGrow:1},wizFromContainer:{height:"calc(100vh - 365px)",minHeight:450,padding:"0 30px"},wizFromModal:{position:"relative"},wizardSteps:{minWidth:180,marginRight:10,borderRight:"#eaeaea 1px solid",display:"flex",flexGrow:1,flexDirection:"column",height:"100%","& ul":{padding:"0 15px 0 40px",marginTop:0,"& li":{listStyle:"lower-roman",marginBottom:12}}},modalWizardSteps:{padding:5,borderBottom:"#eaeaea 1px solid","& ul":{padding:0,marginTop:0,display:"flex",justifyContent:"space-evenly","& li":{listStyle:"lower-roman","&::marker":{paddingLeft:15}}}},buttonList:{backgroundColor:"transparent",border:"none",cursor:"pointer","&:not(:disabled):hover":{textDecoration:"underline"},"&:selected, &:active, &:focus, &:focus:active":{border:"none",outline:0,boxShadow:"none"}},paddedContentGrid:{padding:"0 10px"},stepsLabel:{fontSize:20,color:"#393939",fontWeight:600,margin:"15px 12px","&.stepsModalTitle":{textAlign:"center",width:"100%",marginTop:0,marginBottom:10}},stepsMasterContainer:{position:"sticky",top:0,backgroundColor:"#FFFFFF",width:"100%",maxHeight:90}})}))((function(e){var t=e.classes,a=e.wizardSteps,i=e.loadingStep,r=e.forModal,o=Object(c.useState)(0),s=Object(u.a)(o,2),l=s[0],d=s[1],b=function(e){var t=a.length-1;if("++"===e){var n=l+1;n>t&&(n=t),d(n)}if("--"===e){var c=l-1;c<0&&(c=0),d(c)}if("number"===typeof e){var i=e;e<0&&(i=0),e>t&&(i=t),d(i)}};if(0===a.length)return null;var j=function(){return Object(n.jsx)("ul",{children:a.map((function(e,a){return Object(n.jsx)("li",{children:Object(n.jsx)("button",{onClick:function(){return b(a)},disabled:a>l,className:t.buttonList,children:e.label})},"wizard-".concat(a.toString()))}))})};return Object(n.jsxs)(x.a,{container:!0,className:r?t.wizFromModal:t.wizFromContainer,children:[r?Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("div",{className:t.stepsMasterContainer,children:[Object(n.jsx)("div",{className:"".concat(t.stepsLabel," stepsModalTitle"),children:"Steps"}),Object(n.jsx)("div",{className:t.modalWizardSteps,children:j()})]})}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,sm:3,md:3,lg:3,xl:2,children:Object(n.jsxs)("div",{className:t.wizardSteps,children:[Object(n.jsx)("span",{className:t.stepsLabel,children:"Steps"}),j()]})})}),Object(n.jsx)(x.a,{item:!0,xs:12,sm:r?12:9,md:r?12:9,lg:r?12:9,xl:r?12:10,className:r?"":t.paddedContentGrid,children:Object(n.jsx)(Ja,{page:a[l],pageChange:b,loadingStep:i,forModal:r})})]})})),Xa=Object(s.b)(null,{setModalErrorSnackMessage:q}),en=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"},remoteBucketList:{display:"grid",gridTemplateColumns:"auto auto 45px",alignItems:"center",justifyContent:"stretch"},errorIcon:{color:"#C72C48"},successIcon:{color:"#42C91A"},hide:{opacity:0,transitionDuration:"0.3s"}},we),Ve))}))(Xa((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.buckets,o=e.setModalErrorSnackMessage,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!1),g=Object(u.a)(O,2),f=g[0],v=g[1],y=Object(c.useState)(""),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(""),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(""),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)(""),D=Object(u.a)(F,2),L=D[0],B=D[1],R=Object(c.useState)(!0),P=Object(u.a)(R,2),z=P[0],K=P[1],U=Object(c.useState)("async"),W=Object(u.a)(U,2),V=W[0],G=W[1],q=Object(c.useState)("100"),H=Object(u.a)(q,2),Y=H[0],Q=H[1],J=Object(c.useState)("Gi"),$=Object(u.a)(J,2),X=$[0],ee=$[1],te=Object(c.useState)("60"),ae=Object(u.a)(te,2),ne=ae[0],ce=ae[1],ie=Object(c.useState)([]),re=Object(u.a)(ie,2),le=re[0],de=re[1],be=Object(c.useState)([]),ue=Object(u.a)(be,2),je=ue[0],me=ue[1],he=Object(c.useState)([]),Oe=Object(u.a)(he,2),ge=Oe[0],fe=Oe[1],xe=je.map((function(e){return{label:e,value:e}}));Object(c.useEffect)((function(){if(0===le.length){var e=[],t=[];r.forEach((function(a){e.push(a),t.push("")})),de(t),b(e)}}),[r,le.length]);var ve=function(e){var t=e.errString;switch(t){case"":return Object(n.jsx)("div",{className:i.successIcon,children:Object(n.jsx)(Qa.a,{})});case"n/a":return null;default:if(t)return Object(n.jsx)("div",{className:i.errorIcon,children:Object(n.jsx)(sa.a,{title:t,placement:"top-start",children:Object(n.jsx)(Ha.a,{})})})}return null},ye=function(e,t){var a=Object($e.a)(le);a[e]=t,de(a)},Se=function(e){var t=Object($e.a)(d),a=Object($e.a)(le);e.forEach((function(e){var n=Z()(e,"errorString","");if(!n||""===n){var c=t.indexOf(e.originBucket);t.splice(c,1),a.splice(c,1)}})),b(t),de(a)};return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){a(!1)},title:"Set Multiple Bucket Replication",children:Object(n.jsx)($a,{loadingStep:h||f,wizardSteps:[{label:"Remote Configuration",componentRender:Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Za,{label:"Local Buckets to replicate",content:d.join(", ")})}),Object(n.jsx)("h4",{children:"Remote Endpoint Configuration"}),Object(n.jsx)("span",{className:i.descriptionText,children:"Please avoid the use of root credentials for this feature"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",onChange:function(e){k(e.target.value)},label:"Access Key",value:C})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",onChange:function(e){E(e.target.value)},label:"Secret Key",value:T})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"targetURL",name:"targetURL",onChange:function(e){M(e.target.value)},placeholder:"play.min.io:9000",label:"Target URL",value:I})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:z,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){K(e.target.checked)},value:"yes"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"region",name:"region",onChange:function(e){B(e.target.value)},label:"Region",value:L})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"replication_mode",name:"replication_mode",onChange:function(e){G(e.target.value)},label:"Replication Mode",value:V,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]})}),"async"===V&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:i.multiContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){Q(e.target.value)},label:"Bandwidth",value:Y,min:"0"})}),Object(n.jsx)("div",{className:i.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"Unit",id:"bandwidth_unit",name:"bandwidth_unit",value:X,onChange:function(e){ee(e.target.value)},options:oe()})})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"healthCheck",name:"healthCheck",onChange:function(e){ce(e.target.value)},label:"Health Check Duration",value:ne})})]}),buttons:[{type:"custom",label:"Next",enabled:!f,action:function(e){var t={accessKey:C,secretKey:T,targetURL:I,useTLS:z};v(!0),pe.invoke("POST","api/v1/list-external-buckets",t).then((function(t){var a=Z()(t,"buckets",[]);if(a&&a.length>0){var n=a.map((function(e){return e.name}));me(n)}e("++"),v(!1)})).catch((function(e){v(!1),o(e)}))}}]},{label:"Buckets Assignation",componentRender:Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("h3",{children:"Remote Buckets Assignation"}),Object(n.jsx)("span",{className:i.descriptionText,children:"Please select / type the desired remote bucket were you want the local data to be replicated."}),Object(n.jsx)("div",{className:i.remoteBucketList,children:d.map((function(e,t){var a,r=function(e){if(ge.length>0){var t=ge.find((function(t){return t.originBucket===e}));if(t)return Z()(t,"errorString","")||""}return"n/a"}(e);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("div",{className:""===r?i.hide:"",children:e}),Object(n.jsx)("div",{className:""===r?i.hide:"",children:(a=t,je.length>0?Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(Ea,{label:"",id:"assign-bucket-".concat(a),name:"assign-bucket-".concat(a),value:le[a],onChange:function(e){ye(a,e.target.value)},options:xe,disabled:h})}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(Sa,{id:"assign-bucket-".concat(a),name:"assign-bucket-".concat(a),label:"",onChange:function(e){ye(a,e.target.value)},value:le[a],disabled:h})}))}),Object(n.jsx)("div",{className:""===r?i.hide:"",children:ge.length>0&&Object(n.jsx)(ve,{errString:r})})]},"buckets-assignation-".concat(t.toString(),"-").concat(e))}))})]}),buttons:[{type:"back",label:"Back",enabled:!0},{type:"next",label:"Create",enabled:!h,action:function(){p(!0);var e=d.map((function(e,t){return{originBucket:e,destinationBucket:le[t]}})),t="".concat(z?"https://":"http://").concat(I),n=parseInt(ne),c={accessKey:C,secretKey:T,targetURL:t,region:L,bucketsRelation:e,syncMode:V,bandwidth:"async"===V?parseInt(se(Y,X,!0)):0,healthCheckPeriod:n};pe.invoke("POST","/api/v1/buckets-replication",c).then((function(e){p(!1);var t=e.replicationState;fe(t),0===t.filter((function(e){return e.errorString&&""!==e.errorString})).length?a(!0):setTimeout((function(){Se(t)}),500)})).catch((function(e){p(!1),o(e)}))}}]}],forModal:!0})})}))),tn=Object(s.b)((function(e){return{addBucketModalOpen:e.buckets.open}}),{addBucketOpen:function(e){return{type:xt,open:e}},addBucketReset:function(){return{type:Tt}},setErrorSnackMessage:V})(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.addBucketOpen,i=e.addBucketModalOpen,r=e.addBucketReset,o=e.setErrorSnackMessage,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!0),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!1),v=Object(u.a)(O,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(!0),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(!1),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)([]),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!1),G=Object(u.a)(V,2),q=G[0],H=G[1];Object(c.useEffect)((function(){F&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"createBucket",action:"s3:CreateBucket"}]}).then((function(e){if(D(!1),e.permissions){var t=(e.permissions?e.permissions:[]).find((function(e){return"createBucket"===e.id}));t&&t.can?P(!0):P(!1),D(!1)}})).catch((function(e){D(!1),o(e)}))}),[F,o]),Object(c.useEffect)((function(){if(h){p(!0),pe.invoke("GET","/api/v1/buckets").then((function(e){p(!1),b(e.buckets||[])})).catch((function(e){p(!1),o(e)}))}}),[h,o]);var Y=[{type:"view",to:"/buckets",sendOnlyId:!0},{type:"delete",onClick:function(e){S(!0),w(e)},sendOnlyId:!0}],Q=d.filter((function(e){return""===A||e.name.indexOf(A)>=0}));return Object(n.jsxs)(c.Fragment,{children:[i&&Object(n.jsx)(za,{open:i,closeModalAndRefresh:function(e){a(!1),r(),e&&(p(!0),W([]))}}),y&&Object(n.jsx)(Va,{deleteOpen:y,selectedBucket:N,closeDeleteModalAndRefresh:function(e){!function(e){S(!1),e&&(p(!0),W([]))}(e)}}),q&&Object(n.jsx)(en,{open:q,buckets:U,closeModalAndRefresh:function(e){H(!1),e&&W([])}}),Object(n.jsx)(Ga,{label:"Buckets"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Buckets",className:t.searchField,id:"search-resource",label:"",onChange:function(e){_(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(nt.a,{}),onClick:function(){H(!0)},disabled:0===U.length,children:"Set Replication"}),R&&Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){a(!0)},children:"Create Bucket"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:Y,columns:[{label:"Name",elementKey:"name"},{label:"Creation Date",elementKey:"creation_date",renderFunction:function(e){return Object(n.jsx)(it.a,{children:e})}},{label:"Size",elementKey:"size",renderFunction:ce,width:60,contentTextAlign:"right"}],isLoading:h,records:Q,entityName:"Buckets",idField:"name",selectedItems:U,onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(U);return n?c.push(a):c=c.filter((function(e){return e!==a})),W(c),c}})})]})})]})}))),an=a(998),nn=a(976),cn=a(447),rn=function(e){var t=e.children,a=e.value,i=e.index,r=Object(cn.a)(e,["children","value","index"]);return Object(n.jsx)("div",Object(j.a)(Object(j.a)({role:"tabpanel",hidden:a!==i,id:"simple-tabpanel-".concat(i),"aria-labelledby":"simple-tab-".concat(i),style:{marginTop:"5px"}},r),{},{children:a===i&&Object(n.jsx)(c.Fragment,{children:t})}))},on=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V});function sn(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var ln=Object(w.a)((function(e){return Object(k.a)({})}))(on((function(e){e.classes;var t,a=e.match,i=e.setErrorSnackMessage,r=e.session,o=Object(c.useState)(0),s=Object(u.a)(o,2),l=s[0],d=s[1],m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)([]),f=Object(u.a)(g,2),x=f[0],v=f[1],y=Object(c.useState)(!0),S=Object(u.a)(y,2),k=S[0],N=S[1],w=Object(c.useState)([]),T=Object(u.a)(w,2),E=T[0],A=T[1],_=a.params.bucketName,I=(null===(t=r.pages)||void 0===t?void 0:t.indexOf("/users"))>-1,M=[{type:"view",onClick:function(e){b.push("/policies/".concat(e.name))}}],F=[{type:"view",onClick:function(e){b.push("/users/".concat(e))}}];return Object(c.useEffect)((function(){k&&I&&pe.invoke("GET","/api/v1/bucket-users/".concat(_)).then((function(e){A(e),N(!1)})).catch((function(e){i(e),N(!1)}))}),[k,i,_,I]),Object(c.useEffect)((function(){p&&pe.invoke("GET","/api/v1/bucket-policy/".concat(_)).then((function(e){v(e.policies),O(!1)})).catch((function(e){i(e),O(!1)}))}),[p,i,_]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsxs)(C.a,{children:[Object(n.jsxs)(an.a,{value:l,onChange:function(e,t){d(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,Object(j.a)({label:"Policies"},sn(0))),I&&Object(n.jsx)(nn.a,Object(j.a)({label:"Users"},sn(1)))]}),Object(n.jsx)(rn,{index:0,value:l,children:Object(n.jsx)(ma,{noBackground:!0,itemActions:M,columns:[{label:"Name",elementKey:"name"}],isLoading:p,records:x,entityName:"Policies",idField:"name"})}),I&&Object(n.jsx)(rn,{index:1,value:l,children:Object(n.jsx)(ma,{noBackground:!0,itemActions:F,columns:[{label:"User",elementKey:"accessKey"}],isLoading:k,records:E,entityName:"Users",idField:"accessKey"})})]})]})}))),dn=Object(s.b)(null,{setModalErrorSnackMessage:q}),bn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))(dn((function(e){var t=e.classes,a=e.open,i=e.bucketName,r=e.actualPolicy,o=e.closeModalAndRefresh,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1];return Object(c.useEffect)((function(){O(r)}),[O,r]),Object(n.jsx)(xa,{title:"Change Access Policy",modalOpen:a,onClose:function(){o()},children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),pe.invoke("PUT","/api/v1/buckets/".concat(i,"/set-policy"),{access:p}).then((function(e){j(!1),o()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.formScrollable,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{value:p,label:"Access Policy",id:"select-access-policy",name:"select-access-policy",onChange:function(e){O(e.target.value)},options:[{value:"PRIVATE",label:"Private"},{value:"PUBLIC",label:"Public"}]})})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",fullWidth:!0,disabled:b,children:"Set"})}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),un=Object(s.b)(null,{setModalErrorSnackMessage:q}),jn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))(un((function(e){var t=e.classes,a=e.open,i=e.bucketName,r=e.closeModalAndRefresh,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)("compliance"),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)("days"),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(1),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(!1),E=Object(u.a)(T,2),A=E[0],_=E[1];return Object(c.useEffect)((function(){Number.isNaN(N)||N<1?_(!1):_(!0)}),[N]),Object(n.jsx)(xa,{title:"Set Retention Configuration",modalOpen:a,onClose:function(){r()},children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d||(b(!0),pe.invoke("PUT","/api/v1/buckets/".concat(i,"/retention"),{mode:h,unit:v,validity:N}).then((function(){b(!1),r()})).catch((function(e){b(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:h,id:"retention_mode",name:"retention_mode",label:"Retention Mode",onChange:function(e){p(e.target.value)},selectorOptions:[{value:"compliance",label:"Compliance"},{value:"governance",label:"Governance"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:v,id:"retention_unit",name:"retention_unit",label:"Retention Unit",onChange:function(e){S(e.target.value)},selectorOptions:[{value:"days",label:"Days"},{value:"years",label:"Years"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"retention_validity",name:"retention_validity",onChange:function(e){w(e.target.valueAsNumber)},label:"Retention Validity",value:String(N),required:!0,min:"1"})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",fullWidth:!0,disabled:d||!A,children:"Set"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),mn=Object(s.b)(null,{setModalErrorSnackMessage:q}),hn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(mn((function(e){var t=e.classes,a=e.open,i=(e.encryptionEnabled,e.encryptionCfg),r=e.selectedBucket,o=e.closeModalAndRefresh,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)("disabled"),v=Object(u.a)(f,2),S=v[0],C=v[1];Object(c.useEffect)((function(){i&&("AES256"===i.algorithm?C("sse-s3"):(C("sse-kms"),O(i.kmsMasterKeyID)))}),[i]);return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){o()},title:"Enable Bucket Encryption",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||("disabled"===S?pe.invoke("POST","/api/v1/buckets/".concat(r,"/encryption/disable")).then((function(){j(!1),o()})).catch((function(e){j(!1),s(e)})):pe.invoke("POST","/api/v1/buckets/".concat(r,"/encryption/enable"),{encType:S,kmsKeyID:p}).then((function(){j(!1),o()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{onChange:function(e){C(e.target.value)},id:"select-encryption-type",name:"select-encryption-type",label:"Encryption Type",value:S,options:[{label:"Disabled",value:"disabled"},{label:"SSE-S3",value:"sse-s3"},{label:"SSE-KMS",value:"sse-kms"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),"sse-kms"===S&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"kms-key-id",name:"kms-key-id",label:"KMS Key ID",value:p,onChange:function(e){O(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b,children:"Save"})}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),pn=Object(s.b)(null,{setErrorSnackMessage:V})((function(e){var t=e.closeVersioningModalAndRefresh,a=e.modalOpen,i=e.selectedBucket,r=e.versioningCurrentState,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Edit Versioning"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to"," ",Object(n.jsx)("strong",{children:r?"disable":"enable"})," ","versioning for this bucket?",r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("strong",{children:"File versions won't be automatically deleted"})]})]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){d||(b(!0),pe.invoke("PUT","/api/v1/buckets/".concat(i,"/versioning"),{versioning:!r}).then((function(){b(!1),t(!0)})).catch((function(e){b(!1),o(e)})))},color:"secondary",autoFocus:!0,children:r?"Disable":"Enable"})]})]})})),On=function(){return Object(n.jsxs)(rt.a,{viewBox:"0 0 16.172 17.187",children:[Object(n.jsx)("defs",{children:Object(n.jsxs)("linearGradient",{id:"a",y1:"0.5",x2:"1",y2:"0.5",gradientUnits:"objectBoundingBox",children:[Object(n.jsx)("stop",{offset:"0.044",stopColor:"#362585"}),Object(n.jsx)("stop",{offset:"0.301",stopColor:"#281b6f"}),Object(n.jsx)("stop",{offset:"1",stopColor:"#1e1560"})]})}),Object(n.jsx)("path",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.5px"},d:"M-4778.1,2239.582v6.425h6.425",transform:"translate(4787.594 -2239.582)"}),Object(n.jsx)("path",{fill:"#707070",d:"M-4784.238,2247.532v-.581c0-.027.009-.054.012-.081.039-.313.055-.632.121-.939a6.744,6.744,0,0,1,3.064-4.441,6.514,6.514,0,0,1,3.293-1.032,6.923,6.923,0,0,1,2.667.423,6.793,6.793,0,0,1,4.119,4.333,6.053,6.053,0,0,1,.279,1.337c.006.083.014.164.021.247v.86c-.011.131-.018.261-.032.392a6.494,6.494,0,0,1-.626,2.147,6.807,6.807,0,0,1-4.044,3.528,6.052,6.052,0,0,1-1.663.3,6.576,6.576,0,0,1-2.565-.325,6.73,6.73,0,0,1-3.947-3.451,6.627,6.627,0,0,1-.658-2.288C-4784.212,2247.816-4784.225,2247.674-4784.238,2247.532Zm13.025-.306c-.024-.309-.021-.661-.082-1a6.206,6.206,0,0,0-1.658-3.293,6.153,6.153,0,0,0-4.1-1.9,5.984,5.984,0,0,0-2.476.355,6.188,6.188,0,0,0-4.134,5.708,6.453,6.453,0,0,0,.228,1.881,6.127,6.127,0,0,0,1.984,3.052,6.046,6.046,0,0,0,3.806,1.445,6.043,6.043,0,0,0,1.235-.065,6.249,6.249,0,0,0,3.783-2.2,6.2,6.2,0,0,0,1.352-3.048C-4771.228,2247.863-4771.233,2247.563-4771.212,2247.226Z",transform:"translate(4786.834 -2240.452)"}),Object(n.jsx)("ellipse",{style:{opacity:.1,fill:"url(#a)"},cx:"6.151",cy:"6.151",rx:"6.151",ry:"6.151",transform:"translate(0 4.886)"})]})},gn=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),fn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({paperContainer:{padding:15,paddingLeft:50,display:"flex"},elementTitle:{fontWeight:500,color:"#777777",fontSize:14,marginTop:-9},consumptionValue:{color:"#000000",fontSize:"48px",fontWeight:"bold"},reportedUsage:{padding:"15px"}},qe),Ge))}))(gn((function(e){var t=e.classes,a=e.match,r=e.setErrorSnackMessage,o=Object(c.useState)(null),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(null),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)("0"),O=Object(u.a)(p,2),f=O[0],y=O[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(!0),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!0),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(!0),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)(!0),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)(!0),te=Object(u.a)(ee,2),ae=te[0],ne=te[1],ie=Object(c.useState)(!0),re=Object(u.a)(ie,2),oe=re[0],se=re[1],le=Object(c.useState)(!1),de=Object(u.a)(le,2),be=de[0],ue=de[1],je=Object(c.useState)(!1),me=Object(u.a)(je,2),he=me[0],Oe=me[1],ge=Object(c.useState)(!1),fe=Object(u.a)(ge,2),xe=fe[0],ve=fe[1],ye=Object(c.useState)(!1),Se=Object(u.a)(ye,2),Ce=Se[0],ke=Se[1],Ne=Object(c.useState)(!1),we=Object(u.a)(Ne,2),Te=we[0],Ee=we[1],Ae=a.params.bucketName,_e="n/a";null!==l&&(_e=l.access),Object(c.useEffect)((function(){H&&pe.invoke("GET","/api/v1/buckets/".concat(Ae)).then((function(e){Y(!1),d(e)})).catch((function(e){Y(!1),r(e)}))}),[H,r,Ae]),Object(c.useEffect)((function(){$&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/encryption/info")).then((function(e){e.algorithm&&(Oe(!0),h(e)),X(!1)})).catch((function(e){"The server side encryption configuration was not found"===e&&(Oe(!1),h(null)),X(!1)}))}),[$,Ae]),Object(c.useEffect)((function(){ae&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/versioning")).then((function(e){ue(e.is_versioned),ne(!1)})).catch((function(e){r(e),ne(!1)}))}),[ae,r,Ae]),Object(c.useEffect)((function(){ae&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/object-locking")).then((function(e){T(e.object_locking_enabled),z(!1)})).catch((function(e){r(e),z(!1)}))}),[P,r,Ae,ae]),Object(c.useEffect)((function(){W&&pe.invoke("GET","/api/v1/buckets").then((function(e){var t=Z()(e,"buckets",[]).find((function(e){return e.name===Ae})),a=Z()(t,"size","0");V(!1),y(a)})).catch((function(e){V(!1),r(e)}))}),[W,r,Ae]),Object(c.useEffect)((function(){oe&&pe.invoke("GET","/api/v1/buckets/".concat(Ae,"/replication")).then((function(e){var t=e.rules?e.rules:[];L(t.length>0),se(!1)})).catch((function(e){r(e),se(!1)}))}),[oe,r,Ae]);var Ie=function(){Y(!0),V(!0),ne(!0),X(!0)};return Object(n.jsxs)(c.Fragment,{children:[Ce&&Object(n.jsx)(hn,{open:Ce,selectedBucket:Ae,encryptionEnabled:he,encryptionCfg:m,closeModalAndRefresh:function(){ke(!1),Ie()}}),_&&Object(n.jsx)(bn,{bucketName:Ae,open:_,actualPolicy:_e,closeModalAndRefresh:function(){I(!1),Ie()}}),xe&&Object(n.jsx)(jn,{bucketName:Ae,open:xe,closeModalAndRefresh:function(){ve(!1),Ie()}}),Te&&Object(n.jsx)(pn,{closeVersioningModalAndRefresh:function(e){Ee(!1),e&&Ie()},modalOpen:Te,selectedBucket:Ae,versioningCurrentState:be}),Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:9,children:[Object(n.jsx)("h2",{children:"Details"}),Object(n.jsx)("hr",{className:t.hrClass}),Object(n.jsx)("table",{width:"100%",children:Object(n.jsxs)("tbody",{children:[Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Access Policy:"}),Object(n.jsx)("td",{className:t.capitalizeFirst,children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){I(!0)},children:H?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):_e.toLowerCase()})}),Object(n.jsx)("td",{className:t.titleCol,children:"Encryption:"}),Object(n.jsx)("td",{children:$?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ke(!0)},children:he?"Enabled":"Disabled"})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Replication:"}),Object(n.jsx)("td",{className:t.doubleElement,children:Object(n.jsx)("span",{children:D?"Enabled":"Disabled"})}),w?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("td",{colSpan:2})}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Object Locking:"}),Object(n.jsx)("td",{children:"Disabled"})]})]})]})})]}),Object(n.jsxs)(x.a,{item:!0,xs:3,className:t.reportedUsage,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,xs:2,children:Object(n.jsx)(On,{})}),Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(v.a,{className:t.elementTitle,children:"Reported Usage"})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:ce(f)})]})]})}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("h2",{children:"Versioning"}),Object(n.jsx)("hr",{className:t.hrClass}),Object(n.jsx)("table",{children:Object(n.jsx)("tbody",{children:Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Versioning:"}),Object(n.jsx)("td",{children:ae?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){Ee(!0)},children:be?"Enabled":"Disabled"})})})]})})})]})})}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),w&&Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("h2",{children:"Object Locking"}),Object(n.jsx)("hr",{className:t.hrClass}),Object(n.jsx)("table",{children:Object(n.jsx)("tbody",{children:Object(n.jsxs)("tr",{className:t.gridContainer,children:[Object(n.jsx)("td",{className:t.titleCol,children:"Retention:"}),Object(n.jsx)("td",{children:ae?Object(n.jsx)(S.a,{color:"primary",size:16,variant:"indeterminate"}):Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ve(!0)},children:"Configure"})})})]})})})]})})})]})}))),xn=Object(s.b)(null,{setErrorSnackMessage:V})((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.bucketEvent,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Event"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsx)(Ka.a,{id:"alert-dialog-description",children:"Are you sure you want to delete this event?"})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){!function(){if(!d&&null!=r){b(!0);var e=Z()(r,"events",[]),a=Z()(r,"prefix",""),n=Z()(r,"suffix","");pe.invoke("DELETE","/api/v1/buckets/".concat(i,"/events/").concat(r.arn),{events:e,prefix:a,suffix:n}).then((function(e){b(!1),t(!0)})).catch((function(e){b(!1),o(e)}))}}()},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),vn=a(978),yn=a(979),Sn=a(980),Cn=a(981),kn=a(977),Nn=Object(s.b)(null,{setModalErrorSnackMessage:q}),wn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(Nn((function(e){var t=e.classes,a=e.open,i=e.selectedBucket,r=e.closeModalAndRefresh,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)([]),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)([]),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useCallback)((function(){b(!0),pe.invoke("GET","/api/v1/admin/arns").then((function(e){var t=[];null!==e.arns&&(t=e.arns),b(!1),D(t)})).catch((function(e){b(!1),o(e)}))}),[o]);Object(c.useEffect)((function(){L()}),[L]);var B=function(e,t){var a=A.indexOf(t),n=[];-1===a?n=n.concat(A,t):0===a?n=n.concat(A.slice(1)):a===A.length-1?n=n.concat(A.slice(0,-1)):a>0&&(n=n.concat(A.slice(0,a),A.slice(a+1))),_(n)},R=F.map((function(e){return{label:e,value:e}}));return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){r()},title:"Subscribe To Event",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d||(b(!0),pe.invoke("POST","/api/v1/buckets/".concat(i,"/events"),{configuration:{arn:N,events:A,prefix:h,suffix:v},ignoreExisting:!0}).then((function(){b(!1),r()})).catch((function(e){b(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{onChange:function(e){w(e.target.value)},id:"select-access-policy",name:"select-access-policy",label:"ARN",value:N,options:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(kn.a,{size:"medium",children:[Object(n.jsx)(vn.a,{className:t.minTableHeader,children:Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{children:"Select"}),Object(n.jsx)(Sn.a,{children:"Event"})]})}),Object(n.jsx)(Cn.a,{children:[{label:"PUT - Object Uploaded",value:"put"},{label:"GET - Object accessed",value:"get"},{label:"DELETE - Object Deleted",value:"delete"}].map((function(e){return Object(n.jsxs)(yn.a,{onClick:function(t){return B(0,e.value)},children:[Object(n.jsx)(Sn.a,{padding:"checkbox",children:Object(n.jsx)(Rt.a,{value:e.value,color:"primary",inputProps:{"aria-label":"secondary checkbox"},onChange:function(t){return B(0,e.value)},checked:A.includes(e.value)})}),Object(n.jsx)(Sn.a,{className:t.wrapCell,children:e.label})]},"group-".concat(e.value))}))})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prefix-input",name:"prefix-input",label:"Prefix",value:h,onChange:function(e){p(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"suffix-input",name:"suffix-input",label:"Suffix",value:v,onChange:function(e){S(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d,children:"Save"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),Tn=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),En=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})}))}))(Tn((function(e){var t=e.classes,a=e.match,i=e.setErrorSnackMessage,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!0),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)([]),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!1),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(null),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(""),_=Object(u.a)(A,2),I=(_[0],_[1]),M=a.params.bucketName;Object(c.useEffect)((function(){j&&pe.invoke("GET","/api/v1/buckets/".concat(M,"/events")).then((function(e){var t=Z()(e,"events",[]);m(!1),v(t||[])})).catch((function(e){m(!1),i(e)}))}),[j,i,M]);var F=[{type:"delete",onClick:function(e){k(!0),E(e)}}];return Object(n.jsxs)(c.Fragment,{children:[C&&Object(n.jsx)(xn,{deleteOpen:C,selectedBucket:M,bucketEvent:T,closeDeleteModalAndRefresh:function(e){k(!1),e&&m(!0)}}),s&&Object(n.jsx)(wn,{open:s,selectedBucket:M,closeModalAndRefresh:function(){l(!1),m(!0)}}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){I(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){l(!0)},children:"Subscribe to Event"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:F,columns:[{label:"SQS",elementKey:"arn"},{label:"Events",elementKey:"events",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:e.join(", ")})}},{label:"Prefix",elementKey:"prefix"},{label:"Suffix",elementKey:"suffix"}],isLoading:j,records:O,entityName:"Events",idField:"id"})})]})]})}))),An=a(148),_n=a.n(An),In=a(402),Mn=a.n(In),Fn=function(){return Object(n.jsx)(rt.a,{viewBox:"0 0 12 12",children:Object(n.jsx)("path",{fill:"#081c42",className:"a",d:"M-13160.269,1885.114h-3.235v-4.381h-4.382V1877.5h4.382v-4.381h3.235v4.381h4.383v3.238h-4.383v4.38Z",transform:"translate(13167.886 -1873.114)"})})},Dn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{inputWithBorder:{border:"1px solid #EAEAEA",padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},labelContainer:{display:"flex"},lineInputBoxes:{display:"flex"},queryDiv:{alignSelf:"center",margin:"0 4px",fontWeight:600}}))}))((function(e){var t=e.elements,a=e.name,r=e.label,o=e.tooltip,s=void 0===o?"":o,l=e.keyPlaceholder,d=void 0===l?"":l,b=e.valuePlaceholder,j=void 0===b?"":b,m=e.onChange,h=e.withBorder,p=void 0!==h&&h,O=e.classes,g=Object(c.useState)([""]),f=Object(u.a)(g,2),v=f[0],y=f[1],S=Object(c.useState)([""]),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.createRef)();Object(c.useEffect)((function(){if(1===v.length&&""===v[0]&&1===k.length&&""===k[0]&&t&&""!==t){var e=t.split("&"),a=[],n=[];e.forEach((function(e){var t=e.split("=");2===t.length&&(a.push(t[0]),n.push(t[1]))})),a.push(""),n.push(""),y(a),N(n)}}),[v,k,t]),Object(c.useEffect)((function(){var e=w.current;e&&v.length>1&&e.scrollIntoView(!1)}),[v]);var T=Object(c.useRef)(!0);Object(c.useLayoutEffect)((function(){T.current?T.current=!1:_()}),[v,k]);var E=function(e){e.persist();var t=Object($e.a)(v);t[Z()(e.target,"dataset.index",0)]=e.target.value,y(t)},A=function(e){e.persist();var t=Object($e.a)(k);t[Z()(e.target,"dataset.index",0)]=e.target.value,N(t)},_=_n()((function(){var e="";v.forEach((function(t,a){if(v[a]&&k[a]){var n="".concat(t,"=").concat(k[a]);0!==a&&(n="&".concat(n)),e="".concat(e).concat(n)}})),m(e)}),500),I=k.map((function(e,t){return Object(n.jsxs)(x.a,{item:!0,xs:12,className:O.lineInputBoxes,children:[Object(n.jsx)(Sa,{id:"".concat(a,"-key-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:v[t],onChange:E,index:t,placeholder:d}),Object(n.jsx)("span",{className:O.queryDiv,children:":"}),Object(n.jsx)(Sa,{id:"".concat(a,"-value-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:k[t],onChange:A,index:t,placeholder:j,overlayIcon:t===k.length-1?Object(n.jsx)(Fn,{}):null,overlayAction:function(){!function(){if(""!==v[v.length-1].trim()&&""!==k[k.length-1].trim()){var e=Object($e.a)(v),t=Object($e.a)(k);e.push(""),t.push(""),y(e),N(t)}}()}})]},"query-pair-".concat(a,"-").concat(t.toString()))}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:O.fieldContainer,children:[Object(n.jsxs)(oa.a,{className:O.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==s&&Object(n.jsx)("div",{className:O.tooltipContainer,children:Object(n.jsx)(sa.a,{title:s,placement:"top-start",children:Object(n.jsx)(Mn.a,{className:O.tooltip})})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(p?O.inputWithBorder:""),children:[I,Object(n.jsx)("div",{ref:w})]})]})})})),Ln=Object(s.b)(null,{setModalErrorSnackMessage:q}),Bn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"}},we))}))(Ln((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.bucketName,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(""),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(""),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!0),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(!0),Q=Object(u.a)(Y,2),J=Q[0],$=Q[1],X=Object(c.useState)(!0),ee=Object(u.a)(X,2),te=ee[0],ae=ee[1],ne=Object(c.useState)(!0),ce=Object(u.a)(ne,2),ie=ce[0],re=(ce[1],Object(c.useState)("")),le=Object(u.a)(re,2),de=le[0],be=le[1],ue=Object(c.useState)("async"),je=Object(u.a)(ue,2),me=je[0],he=je[1],Oe=Object(c.useState)("100"),ge=Object(u.a)(Oe,2),fe=ge[0],xe=ge[1],ve=Object(c.useState)("Gi"),ye=Object(u.a)(ve,2),Se=ye[0],Ce=ye[1],ke=Object(c.useState)("60"),Ne=Object(u.a)(ke,2),we=Ne[0],Te=Ne[1];return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){a()},title:"Set Bucket Replication",children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b(!0),function(){var e=[{originBucket:r,destinationBucket:R}],t=parseInt(we),n="".concat(q?"https://":"http://").concat(N),c={accessKey:h,secretKey:v,targetURL:n,region:U,bucketsRelation:e,syncMode:me,bandwidth:"async"===me?parseInt(se(fe,Se,!0)):0,healthCheckPeriod:t,prefix:F,tags:de,replicateDeleteMarkers:J,replicateDeletes:te,replicateMetadata:ie};pe.invoke("POST","/api/v1/buckets-replication",c).then((function(e){b(!1);var t=Z()(e,"replicationState",[]);if(t.length>0){var n=t[0];return b(!1),n.errorString&&""!==n.errorString?void o(n.errorString):void a()}o("No changes applied")})).catch((function(e){b(!1),o(e)}))}()},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"targetURL",name:"targetURL",onChange:function(e){w(e.target.value)},placeholder:"play.min.io",label:"Target URL",value:N})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:q,id:"useTLS",name:"useTLS",label:"Use TLS",onChange:function(e){H(e.target.checked)},value:"yes"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",onChange:function(e){p(e.target.value)},label:"Access Key",value:h})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",onChange:function(e){S(e.target.value)},label:"Secret Key",value:v})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"targetBucket",name:"targetBucket",onChange:function(e){P(e.target.value)},label:"Target Bucket",value:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"region",name:"region",onChange:function(e){W(e.target.value)},label:"Region",value:U})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"replication_mode",name:"replication_mode",onChange:function(e){he(e.target.value)},label:"Replication Mode",value:me,options:[{label:"Asynchronous",value:"async"},{label:"Synchronous",value:"sync"}]})}),"async"===me&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:i.multiContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"bandwidth_scalar",name:"bandwidth_scalar",onChange:function(e){xe(e.target.value)},label:"Bandwidth",value:fe,min:"0"})}),Object(n.jsx)("div",{className:i.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"Unit",id:"bandwidth_unit",name:"bandwidth_unit",value:Se,onChange:function(e){Ce(e.target.value)},options:oe()})})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"healthCheck",name:"healthCheck",onChange:function(e){Te(e.target.value)},label:"Health Check Duration",value:we})}),Object(n.jsx)("h3",{children:"Object Filters"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prefix",name:"prefix",onChange:function(e){D(e.target.value)},placeholder:"prefix",label:"Prefix",value:F})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Dn,{name:"tags",label:"Tags",elements:"",onChange:function(e){be(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})}),Object(n.jsx)("h3",{children:"Storage Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"storageClass",name:"storageClass",onChange:function(e){_(e.target.value)},placeholder:"STANDARD_IA,REDUCED_REDUNDANCY etc",label:"Storage Class",value:A})}),Object(n.jsx)("h3",{children:"Replication Options"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:J,id:"deleteMarker",name:"deleteMarker",label:"Delete Marker",onChange:function(e){console.log(e),console.log(e.target.checked),$(e.target.checked)},value:J,description:"Replicate soft deletes"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{checked:te,id:"repDelete",name:"repDelete",label:"Deletes",onChange:function(e){ae(e.target.checked)},value:te,description:"Replicate versioned deletes"})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d,children:"Save"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),Rn={setErrorSnackMessage:V},Pn=Object(s.b)(null,Rn)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.ruleToDelete,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Replication Rule"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete replication rule ",Object(n.jsx)("b",{children:r}),"? ",Object(n.jsx)("br",{}),"Remember, at lease one rule must be present once replication has been enabled"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){d||(b(!0),pe.invoke("DELETE","/api/v1/buckets/".concat(i,"/replication/").concat(r)).then((function(){b(!1),t(!0)})).catch((function(e){b(!1),o(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),zn=a(70),Kn=a.n(zn),Un=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),Wn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})}))}))(Un((function(e){var t=e.classes,a=e.match,i=e.setErrorSnackMessage,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!0),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)([]),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!0),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(!1),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(!1),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)(!1),D=Object(u.a)(F,2),L=D[0],B=D[1],R=Object(c.useState)(""),P=Object(u.a)(R,2),z=P[0],K=P[1],U=a.params.bucketName;if(Object(c.useEffect)((function(){C&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"PutReplicationConfiguration",action:"s3:PutReplicationConfiguration",bucket_name:U},{id:"GetReplicationConfiguration",action:"s3:GetReplicationConfiguration",bucket_name:U}]}).then((function(e){if(k(!1),e.permissions){var t=e.permissions?e.permissions:[],a=t.find((function(e){return"PutReplicationConfiguration"===e.id}));a&&a.can?l(!0):l(!1);var n=t.find((function(e){return"GetReplicationConfiguration"===e.id}));n&&n.can?E(!0):E(!1),k(!1)}})).catch((function(e){k(!1),i(e)}))}),[U,C,i]),Object(c.useEffect)((function(){j&&pe.invoke("GET","/api/v1/buckets/".concat(U,"/replication")).then((function(e){var t=e.rules?e.rules:[];v(t),m(!1)})).catch((function(e){i(e),m(!1)}))}),[j,i,U]),!T)return null;var W=function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];B(e)},V=[{type:"delete",onClick:function(e){K(e.id),M(!0)},disableButtonFunction:function(){return O.length>1}}];return Object(n.jsxs)(c.Fragment,{children:[L&&Object(n.jsx)(Bn,{closeModalAndRefresh:function(){W(!1),m(!0)},open:L,bucketName:U}),I&&Object(n.jsx)(Pn,{deleteOpen:I,selectedBucket:U,closeDeleteModalAndRefresh:function(e){M(!1),e&&m(!0)},ruleToDelete:z}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh Replication Rules",component:"span",onClick:function(){m(!0)},children:Object(n.jsx)(Kn.a,{})}),s&&Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){W(!0)},children:"Add Replication Rule"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:V,columns:[{label:"Priority",elementKey:"priority"},{label:"Destination",elementKey:"destination",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:e.bucket.replace("arn:aws:s3:::","")})}},{label:"Prefix",elementKey:"prefix"},{label:"Tags",elementKey:"tags",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:e&&""!==e.tags?"Yes":"No"})}},{label:"Status",elementKey:"status"}],isLoading:j,records:O,entityName:"Replication Rules",idField:"id"})})]})]})}))),Vn={setModalErrorSnackMessage:q},Gn=Object(s.b)(null,Vn),qn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(Gn((function(e){var t=e.classes,a=e.closeModalAndRefresh,r=e.selectedBucket,o=e.lifecycle,s=e.open,l=e.setModalErrorSnackMessage,d=Object(c.useState)(!1),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],f=p[1],v=Object(c.useState)(!1),S=Object(u.a)(v,2),C=S[0],k=S[1];Object(c.useEffect)((function(){if("Enabled"===o.status&&k(!0),o.tags){var e=o.tags.reduce((function(e,t,a){return"".concat(e).concat(0!==a?"&":"").concat(t.key,"=").concat(t.value)}),"");f(e)}}),[o]);return Object(n.jsxs)(xa,{onClose:function(){a(!1)},modalOpen:s,title:"Edit Lifecycle Configuration",children:[Object(n.jsx)("div",{className:t.floatingEnabled,children:Object(n.jsx)(Pa,{indicatorLabels:["Enabled","Disabled"],checked:C,value:"user_enabled",id:"user-status",name:"user-status",onChange:function(e){k(e.target.checked)},switchOnly:!0})}),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),j||(m(!0),null!==r&&null!==o&&pe.invoke("PUT","/api/v1/buckets/".concat(r,"/lifecycle/").concat(o.id),{disable:!C,tags:O}).then((function(e){m(!1),a(!0)})).catch((function(e){m(!1),l(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"id",name:"id",label:"Id",value:o.id,onChange:function(){},disabled:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Dn,{name:"tags",label:"Tags",elements:O,onChange:function(e){f(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:j,children:"Save"})}),j&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})]})}))),Hn=[{value:"01",label:"January"},{value:"02",label:"February"},{value:"03",label:"March"},{value:"04",label:"April"},{value:"05",label:"May"},{value:"06",label:"June"},{value:"07",label:"July"},{value:"08",label:"August"},{value:"09",label:"September"},{value:"10",label:"October"},{value:"11",label:"November"},{value:"12",label:"December"}],Yn=Array.from(Array(31),(function(e,t){return t+1})),Qn=(new Date).getFullYear(),Zn=Array.from(Array(25),(function(e,t){return t+Qn})),Jn=Object(w.a)((function(e){return Object(k.a)({root:{"& .MuiSelect-icon":{color:"#000","&.Mui-disabled":{color:"#9c9c9c"}}},input:{borderBottom:0,fontSize:12}})}))(Ca.a),$n=Object(c.forwardRef)((function(e,t){var a=e.classes,i=e.id,r=e.label,o=e.disableOptions,s=void 0!==o&&o,l=e.addSwitch,d=void 0!==l&&l,b=e.tooltip,j=void 0===b?"":b,m=e.borderBottom,h=void 0!==m&&m,p=e.onDateChange,O=e.value,g=void 0===O?"":O;Object(c.useImperativeHandle)(t,(function(){return{resetDate:L}}));var f=Object(c.useState)(!1),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1];Object(c.useEffect)((function(){if(""!==g){var e=g.split("-");D(e[0]),w(e[1]),_("".concat(parseInt(e[2])))}}),[g]),Object(c.useEffect)((function(){var e=function(e,t,a){var n=Date.parse("".concat(e,"-").concat(t,"-").concat(a));if(isNaN(n))return[!1,""];var c=parseInt(t),i=parseInt(a),r=c<10?"0".concat(c):c,o=i<10?"0".concat(i):i,s=new Date(n).toISOString().split("T")[0],l="".concat(e,"-").concat(r,"-").concat(o);return[s===l,l]}(F,N,A),t=Object(u.a)(e,2),a=t[0],n=t[1];p(n,a)}),[N,A,F,p]);var L=function(){w(""),_(""),D("")},B=function(){return s||!!d&&!y};return Object(n.jsxs)(x.a,{item:!0,xs:12,className:Object(ve.a)(a.fieldContainer,Object(xe.a)({},a.fieldContainerBorder,h)),children:[Object(n.jsx)("div",{className:a.labelContainer,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(oa.a,{htmlFor:i,className:a.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==j&&Object(n.jsx)("div",{className:a.tooltipContainer,children:Object(n.jsx)(sa.a,{title:j,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:a.tooltip})})})})]}),d&&Object(n.jsx)(Pa,{indicatorLabels:["Specific Date","Default (7 Days)"],checked:y,value:"date_enabled",id:"date-status",name:"date-status",onChange:function(e){S(e.target.checked),e.target.checked||p("",!0)},switchOnly:!0})]})}),Object(n.jsxs)("div",{children:[Object(n.jsx)(ka.a,{disabled:B(),className:a.dateInput,children:Object(n.jsxs)(Na.a,{id:"".concat(i,"-month"),name:"".concat(i,"-month"),value:N,displayEmpty:!0,onChange:function(e){w(e.target.value)},input:Object(n.jsx)(Jn,{}),children:[Object(n.jsx)(wa.a,{value:"",disabled:!0,children:""}),Hn.map((function(e){return Object(n.jsx)(wa.a,{value:e.value,children:e.label},"select-".concat(i,"-monthOP-").concat(e.label))}))]})}),Object(n.jsx)(ka.a,{disabled:B(),className:a.dateInput,children:Object(n.jsxs)(Na.a,{id:"".concat(i,"-day"),name:"".concat(i,"-day"),value:A,displayEmpty:!0,onChange:function(e){_(e.target.value)},input:Object(n.jsx)(Jn,{}),children:[Object(n.jsx)(wa.a,{value:"",disabled:!0,children:""}),Yn.map((function(e){return Object(n.jsx)(wa.a,{value:e,children:e},"select-".concat(i,"-dayOP-").concat(e))}))]})}),Object(n.jsx)(ka.a,{disabled:B(),className:a.dateInput,children:Object(n.jsxs)(Na.a,{id:"".concat(i,"-year"),name:"".concat(i,"-year"),value:F,displayEmpty:!0,onChange:function(e){D(e.target.value)},input:Object(n.jsx)(Jn,{}),children:[Object(n.jsx)(wa.a,{value:"",disabled:!0,children:""}),Zn.map((function(e){return Object(n.jsx)(wa.a,{value:e,children:e},"select-".concat(i,"-yearOP-").concat(e))}))]})})]})]})})),Xn=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({dateInput:{"&:not(:last-child)":{marginRight:22}}},Ne),Te),{},{labelContainer:{flex:1},fieldContainer:Object(j.a)(Object(j.a)({},Ne.fieldContainer),{},{display:"flex",alignItems:"center",justifyContent:"space-between",paddingBottom:10,marginTop:11,marginBottom:6}),fieldContainerBorder:{borderBottom:"#9c9c9c 1px solid",marginBottom:20}}))}))($n),ec=Object(s.b)(null,{setModalErrorSnackMessage:q}),tc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(ec((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.bucketName,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!0),l=Object(u.a)(s,2),d=l[0],b=l[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(!1),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(""),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(""),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(""),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(""),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!1),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)("0"),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)("0"),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)("expiry"),te=Object(u.a)(ee,2),ae=te[0],ne=te[1],ce=Object(c.useState)("date"),ie=Object(u.a)(ce,2),re=ie[0],oe=ie[1],se=Object(c.useState)("0"),le=Object(u.a)(se,2),de=le[0],be=le[1],ue=Object(c.useState)(""),je=Object(u.a)(ue,2),me=je[0],he=je[1],Oe=Object(c.useState)("0"),ge=Object(u.a)(Oe,2),fe=ge[0],xe=ge[1],ve=Object(c.useState)(""),ye=Object(u.a)(ve,2),Se=ye[0],Ce=ye[1],ke=Object(c.useState)("date"),Ne=Object(u.a)(ke,2),we=Ne[0],Te=Ne[1],Ee=Object(c.useState)(!1),Ae=Object(u.a)(Ee,2),_e=Ae[0],Ie=Ae[1];Object(c.useEffect)((function(){d&&pe.invoke("GET","/api/v1/admin/tiers").then((function(e){var t=Z()(e,"items",[]);if(null!==t&&t.length>=1){var a=t.map((function(e){var t=e.type,a=Z()(e,"".concat(t,".name"),"");return{label:a,value:a}}));O(a),a.length>0&&L(a[0].value)}b(!1)})).catch((function(e){b(!1)}))}),[d]),Object(c.useEffect)((function(){var e=!0;"expiry"===ae?("date"===re&&""===me&&(e=!1),"days"===re&&parseInt(de)<1&&(e=!1)):("date"===we&&""===Se&&(e=!1),"days"===we&&parseInt(fe)<1&&(e=!1),""===D&&(e=!1)),Ie(e)}),[ae,re,me,de,we,Se,fe,D]);return Object(n.jsxs)(xa,{modalOpen:t,onClose:function(){a(!1)},title:"Add Lifecycle Rule",children:[d&&Object(n.jsx)(x.a,{container:!0,className:i.loadingBox,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})}),!d&&Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),C(!0),function(){var e={};if("expiry"===ae){var t={};t="date"===re?{expiry_date:"".concat(me,"T23:59:59Z")}:{expiry_days:parseInt(de)},e=Object(j.a)(Object(j.a)({},t),{},{noncurrentversion_expiration_days:parseInt(H)})}else{var n={};n="date"===we?{transition_date:"".concat(Se,"T23:59:59Z")}:{transition_days:parseInt(fe)},e=Object(j.a)(Object(j.a)({},n),{},{noncurrentversion_transition_days:parseInt($),noncurrentversion_transition_storage_class:P,storage_class:D})}var c=Object(j.a)({prefix:w,tags:_,expired_object_delete_marker:W},e);pe.invoke("POST","/api/v1/buckets/".concat(r,"/lifecycle"),c).then((function(){C(!1),a(!0)})).catch((function(e){C(!1),o(e)}))}()},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:[Object(n.jsx)("h3",{children:"Lifecycle Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:ae,id:"quota_type",name:"quota_type",label:"ILM Rule",onChange:function(e){ne(e.target.value)},selectorOptions:[{value:"expiry",label:"Expiry"},{value:"transition",label:"Transition"}]})}),"expiry"===ae?Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:re,id:"expiryType",name:"expiryType",label:"Expiry Type",onChange:function(e){oe(e.target.value)},selectorOptions:[{value:"date",label:"Date"},{value:"days",label:"Days"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:"date"===re?Object(n.jsx)(Xn,{id:"expiry_date",label:"Expiry Date",value:me,borderBottom:!0,onDateChange:function(e,t){t&&he(e)}}):Object(n.jsx)(Sa,{type:"number",id:"expiry_days",name:"expiry_days",onChange:function(e){be(e.target.value)},label:"Expiry Days",value:de,min:"0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"noncurrentversion_expiration_days",name:"noncurrentversion_expiration_days",onChange:function(e){Y(e.target.value)},label:"Non-current Expiration Days",value:H,min:"0"})})]}):Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:we,id:"transitionType",name:"transitionType",label:"Transition Type",onChange:function(e){Te(e.target.value)},selectorOptions:[{value:"date",label:"Date"},{value:"days",label:"Days"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:"date"===we?Object(n.jsx)(Xn,{id:"transition_date",label:"Transition Date",value:Se,borderBottom:!0,onDateChange:function(e,t){t&&Ce(e)}}):Object(n.jsx)(Sa,{type:"number",id:"transition_days",name:"transition_days",onChange:function(e){xe(e.target.value)},label:"Transition Days",value:fe,min:"0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"noncurrentversion_transition_days",name:"noncurrentversion_transition_days",onChange:function(e){X(e.target.value)},label:"Non-current Transition Days",value:$,min:"0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"noncurrentversion_t_SC",name:"noncurrentversion_t_SC",onChange:function(e){z(e.target.value)},placeholder:"Set Non-current Version Transition Storage Class",label:"Non-current Version Transition Storage Class",value:P})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Storage Class",id:"storage_class",name:"storage_class",value:D,onChange:function(e){L(e.target.value)},options:p})})]}),Object(n.jsx)("h3",{children:"File Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prefix",name:"prefix",onChange:function(e){T(e.target.value)},label:"Prefix",value:w})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Dn,{name:"tags",label:"Tags",elements:"",onChange:function(e){I(e)},keyPlaceholder:"Tag Key",valuePlaceholder:"Tag Value",withBorder:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"expired_delete_marker",id:"expired_delete_marker",name:"expired_delete_marker",checked:W,onChange:function(e){V(e.target.checked)},label:"Expired Object Delete Marker",indicatorLabels:["On","Off"]})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:S||!_e,children:"Save"})}),S&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})]})}))),ac=Object(s.b)((function(e){return{session:e.console.session}}),{setErrorSnackMessage:V}),nc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})}))}))(ac((function(e){var t=e.classes,a=e.match,i=(e.setErrorSnackMessage,Object(c.useState)(!0)),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)([]),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],v=Object(c.useState)(!1),y=Object(u.a)(v,2),S=y[0],C=y[1],k=a.params.bucketName;Object(c.useEffect)((function(){o&&pe.invoke("GET","/api/v1/buckets/".concat(k,"/lifecycle")).then((function(e){var t=Z()(e,"lifecycle",[]);j(t||[]),s(!1)})).catch((function(e){console.error(e),s(!1)}))}),[o,s,k]);var N=[{label:"ID",elementKey:"id"},{label:"Prefix",elementKey:"prefix"},{label:"Status",elementKey:"status"},{label:"Expiration",elementKey:"expiration",renderFunction:function(e){return e.days?"".concat(e.days," day").concat(e.days>1?"s":""):"0001-01-01T00:00:00Z"===e.date?"":Object(n.jsx)(it.a,{children:e.date})}},{label:"Transition",elementKey:"transition",renderFunction:function(e){return e.days?"".concat(e.days," day").concat(e.days>1?"s":""):"0001-01-01T00:00:00Z"===e.date?"":Object(n.jsx)(it.a,{children:e.date})}},{label:"Storage Class",elementKey:"storage_class",renderFunction:function(e){return Z()(e,"transition.storage_class","")},renderFullObject:!0}];return Object(n.jsxs)(c.Fragment,{children:[S&&Object(n.jsx)(qn,{open:S,closeModalAndRefresh:function(e){C(!1),e&&s(!0)},selectedBucket:k,lifecycle:{id:""}}),p&&Object(n.jsx)(tc,{open:p,bucketName:k,closeModalAndRefresh:function(e){O(!1),e&&s(!0)}}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){O(!0)},children:"Add Lifecycle Rule"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[],columns:N,isLoading:o,records:b,entityName:"Lifecycle",customEmptyMessage:"There are no Lifecycle rules yet",idField:"id"})})]})]})})));function cc(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var ic=Object(s.b)((function(e){return{session:e.console.session,selectedTab:e.buckets.bucketDetails.selectedTab}}),{setErrorSnackMessage:V,setBucketDetailsTab:function(e){return{type:Mt,tab:e}}}),rc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noRecords:{lineHeight:"24px",textAlign:"center",padding:"20px"},gridWrapper:{width:320},gridContainer:{display:"grid",gridTemplateColumns:"auto auto",gridGap:8,justifyContent:"flex-start",alignItems:"center","& div:not(.MuiCircularProgress-root)":{display:"flex",alignItems:"center"},"& div:nth-child(odd)":{justifyContent:"flex-end",fontWeight:700},"& div:nth-child(2n)":{minWidth:150}},masterActions:{width:"25%",minWidth:"120px","& div":{margin:"5px 0px"}},headerContainer:{display:"flex",justifyContent:"space-between"},capitalizeFirst:{textTransform:"capitalize"},doubleElement:{display:"flex",justifyContent:"space-between"},encCheckbox:{margin:0,padding:0},tabPan:{marginTop:"5px"},fixedHeight:{height:165,minWidth:247,padding:"25px 28px","& svg":{maxHeight:18}},routerContainer:{marginTop:5},titleCol:{fontWeight:"bold"}},Fe),Me),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})},qe),Ge),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(ic((function(e){var t=e.classes,a=e.match,i=e.history,r=(e.session,e.selectedTab),o=e.setErrorSnackMessage,s=e.setBucketDetailsTab,d=Object(c.useState)(!0),b=Object(u.a)(d,2),m=b[0],h=b[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),g=O[0],f=O[1],v=a.params.bucketName;Object(c.useEffect)((function(){var e=a.params?a.params[0]:"summary";e||(e="");var t=e.split("/");r!==t[0]&&s(t[0])}),[a,v,s,r]),Object(c.useEffect)((function(){m&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"GetReplicationConfiguration",action:"s3:GetReplicationConfiguration",bucket_name:v}]}).then((function(e){if(h(!1),e.permissions){var t=(e.permissions?e.permissions:[]).find((function(e){return"GetReplicationConfiguration"===e.id}));t&&t.can?f(!0):f(!1),h(!1)}})).catch((function(e){h(!1),o(e)}))}),[v,m,o]);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Bucket > ".concat(a.params.bucketName)}),Object(n.jsxs)(x.a,{container:!0,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:""!==r?r:"summary",onChange:function(e,t){!function(e){var t="/buckets/".concat(v);switch(e){case"events":t+="/events";break;case"replication":t+="/replication";break;case"lifecycle":t+="/lifecycle";break;case"access":t+="/access";break;default:t+="/summary"}s(e),i.push(t)}(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,Object(j.a)({value:"summary",label:"Summary"},cc(0))),Object(n.jsx)(nn.a,Object(j.a)({value:"events",label:"Events"},cc(1))),Object(n.jsx)(nn.a,Object(j.a)(Object(j.a)({value:"replication",label:"Replication"},cc(2)),{},{disabled:!g})),Object(n.jsx)(nn.a,Object(j.a)({value:"lifecycle",label:"Lifecycle"},cc(3))),Object(n.jsx)(nn.a,Object(j.a)({value:"access",label:"Access"},cc(4)))]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.routerContainer,children:Object(n.jsx)(l.c,{history:i,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/buckets/:bucketName/summary",component:fn}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/events",component:En}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/replication",component:Wn}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/lifecycle",component:nc}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/access",component:ln}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName/access",component:ln}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName",component:function(){return Object(n.jsx)(l.a,{to:"/buckets/".concat(v,"/summary")})}})]})})})})]})]})}))),oc=Object(s.b)((function(e){return{open:e.system.sidebarOpen}}),{setMenuOpen:z}),sc=Object(l.g)(oc((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/buckets/:bucketName/*",component:rc}),Object(n.jsx)(l.b,{path:"/buckets/:bucketName",component:rc}),Object(n.jsx)(l.b,{path:"/",component:tn}),Object(n.jsx)(l.b,{component:Je})]})})}))),lc=a(403);a(554);a(555);var dc,bc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Ne))}))((function(e){var t=e.value,a=e.label,c=void 0===a?"":a,r=e.tooltip,o=void 0===r?"":r,s=e.mode,l=void 0===s?"javascript":s,d=e.classes,b=e.onChange,u=void 0===b?function(){}:b,j=e.onBeforeChange,m=e.readOnly,h=void 0!==m&&m;return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(oa.a,{className:d.inputLabel,children:[Object(n.jsx)("span",{children:c}),""!==o&&Object(n.jsx)("div",{className:d.tooltipContainer,children:Object(n.jsx)(sa.a,{title:o,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:d.tooltip})})})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lc.Controlled,{value:t,options:{mode:l,lineNumbers:!0,readOnly:h},onBeforeChange:j,onChange:u})})]})})),uc={setModalErrorSnackMessage:q},jc=Object(s.b)(null,uc),mc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({jsonPolicyEditor:{minHeight:400,width:"100%"},buttonContainer:{textAlign:"right"}},we),Ne))}))(jc((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.policyEdit,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1];Object(c.useEffect)((function(){r&&(p(r.name),S(r?JSON.stringify(JSON.parse(r.policy),null,4):""))}),[r]);var C=""!==h.trim();return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){i(!1)},title:"".concat(r?"Info":"Create"," Policy"),children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d||(b(!0),pe.invoke("POST","/api/v1/policies",{name:h,policy:v}).then((function(e){b(!1),i(!0)})).catch((function(e){b(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"policy-name",name:"policy-name",label:"Policy Name",placeholder:"Enter Policy Name",onChange:function(e){p(e.target.value)},value:h,disabled:!!r})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(bc,{label:"".concat(r?"Edit":"Write"," Policy"),value:v,onBeforeChange:function(e,t,a){S(a)}})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[!r&&Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){p(""),S("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d||!C,children:"Save"})]}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),hc={setErrorSnackMessage:V},pc=Object(s.b)(null,hc)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedPolicy,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Policy"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete policy ",Object(n.jsx)("b",{children:i}),"?."]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){l||(d(!0),pe.invoke("DELETE","/api/v1/policy?name=".concat(i)).then((function(e){d(!1),t(!0)})).catch((function(e){d(!1),r(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),Oc={setErrorSnackMessage:V},gc=Object(s.b)(null,Oc),fc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(gc((function(e){var t=e.classes,a=e.setErrorSnackMessage,r=Object(c.useState)([]),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!1),j=Object(u.a)(d,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),v=O[0],y=O[1],S=Object(c.useState)(!1),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(""),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(""),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(null),L=Object(u.a)(D,2),B=L[0],R=L[1];Object(c.useEffect)((function(){P()}),[]),Object(c.useEffect)((function(){m&&pe.invoke("GET","/api/v1/policies").then((function(e){var t=Z()(e,"policies",[]);t.sort((function(e,t){return e.name>t.name?1:e.name ".concat(a.params.policyName)]})}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:d,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){j(t)},"aria-label":"policy-tabs",children:[Object(n.jsx)(nn.a,{label:"Details"}),Object(n.jsx)(nn.a,{label:"Users"})]})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===d&&Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),T||(E(!0),pe.invoke("POST","/api/v1/policies",{name:I,policy:L}).then((function(e){E(!1),r(!0)})).catch((function(e){E(!1),o(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.formScrollable,children:Object(n.jsx)(bc,{label:"".concat(p?"Edit":"Write"," Policy"),value:L,onBeforeChange:function(e,t,a){B(a)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[!p&&Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){M(""),B("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:T||!U,children:"Save"})]}),T&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})}),1===d&&Object(n.jsx)(ma,{itemActions:W,columns:[{label:"Name",elementKey:"name"}],isLoading:!1,records:S,entityName:"Users",idField:"name"})]})]})})]})}))),yc=Object(s.b)((function(e){return{open:e.system.sidebarOpen}}),{setMenuOpen:z}),Sc=Object(l.g)(yc((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/policies/:policyName",component:vc}),Object(n.jsx)(l.b,{path:"/",component:fc}),Object(n.jsx)(l.b,{component:Je})]})})}))),Cc=a(404),kc=a.n(Cc);!function(e){e.singleValue="singleValue",e.linearGraph="linearGraph",e.barChart="barChart",e.pieChart="pieChart",e.singleRep="singleRep"}(dc||(dc={}));var Nc="dashboardConfig",wc=[{w:1,h:2,x:0,y:0,i:"panel-0",minW:1,moved:!1,static:!1},{w:1,h:1,x:1,y:2,i:"panel-1",minW:1,moved:!1,static:!1},{w:1,h:1,x:1,y:3,i:"panel-2",minW:1,moved:!1,static:!1},{w:1,h:2,x:2,y:0,i:"panel-3",minW:1,moved:!1,static:!1},{w:2,h:2,x:3,y:0,i:"panel-4",minW:2,moved:!1,static:!1},{w:2,h:2,x:5,y:0,i:"panel-5",minW:2,moved:!1,static:!1},{w:1,h:1,x:0,y:2,i:"panel-6",minW:1,moved:!1,static:!1},{w:1,h:1,x:0,y:3,i:"panel-7",minW:1,moved:!1,static:!1},{w:1,h:1,x:2,y:2,i:"panel-8",minW:1,moved:!1,static:!1},{w:1,h:1,x:2,y:3,i:"panel-9",minW:1,moved:!1,static:!1},{w:2,h:2,x:3,y:2,i:"panel-10",minW:2,moved:!1,static:!1},{w:1,h:1,x:7,y:0,i:"panel-11",minW:1,moved:!1,static:!1},{w:1,h:1,x:7,y:1,i:"panel-12",minW:1,moved:!1,static:!1},{w:4,h:3,x:0,y:10,i:"panel-13",minW:2,moved:!1,static:!1},{w:4,h:3,x:0,y:4,i:"panel-14",minW:2,moved:!1,static:!1},{w:2,h:2,x:5,y:2,i:"panel-15",minW:2,moved:!1,static:!1},{w:8,h:3,x:0,y:7,i:"panel-16",minW:2,moved:!1,static:!1},{w:8,h:3,x:0,y:19,i:"panel-19",minW:2,moved:!1,static:!1},{w:1,h:1,x:7,y:2,i:"panel-20",minW:1,moved:!1,static:!1},{w:1,h:1,x:7,y:3,i:"panel-21",minW:1,moved:!1,static:!1},{w:4,h:3,x:4,y:4,i:"panel-22",minW:2,moved:!1,static:!1},{w:4,h:3,x:4,y:10,i:"panel-23",minW:2,moved:!1,static:!1},{w:4,h:3,x:0,y:13,i:"panel-24",minW:2,moved:!1,static:!1},{w:4,h:3,x:4,y:13,i:"panel-25",minW:2,moved:!1,static:!1},{w:4,h:3,x:0,y:16,i:"panel-26",minW:2,moved:!1,static:!1},{w:4,h:3,x:4,y:16,i:"panel-27",minW:2,moved:!1,static:!1},{w:1,h:1,x:1,y:0,i:"panel-28",minW:1,moved:!1,static:!1},{w:1,h:1,x:1,y:1,i:"panel-29",minW:1,moved:!1,static:!1}],Tc=["#6992B7","#E2AD17","#22B573","#F7655E","#0071BC","#F9E6C5","#A6E8C4","#F4CECE","#ADD5E0"],Ec=function(e){return ue(e,"ns")},Ac=function(e){return parseInt(e).toString(10)},_c=[{id:1,title:"Uptime",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-0",labelDisplayFunction:ue},{id:9,title:"Total Online Disks",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-1"},{id:78,title:"Total Offline Disks",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-2"},{id:50,title:"Current Usable Capacity",data:[],dataOuter:[{name:"outer",value:100}],widgetConfiguration:{outerChart:{colorList:["#9c9c9c"],innerRadius:51,outerRadius:54,startAngle:-15,endAngle:195},innerChart:{colorList:Tc,innerRadius:35,outerRadius:50,startAngle:-15,endAngle:195}},type:dc.pieChart,layoutIdentifier:"panel-3",innerLabel:"N/A",labelDisplayFunction:ce},{id:68,title:"Data Usage Growth",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-4",yAxisFormatter:ce,xAxisFormatter:je},{id:52,title:"Object size distribution",data:[],widgetConfiguration:[{dataKey:"a",color:Tc[0],background:{fill:"rgba(0,0,0,0.1)"}}],customStructure:[{originTag:"LESS_THAN_1024_B",displayTag:"Less than 1024B"},{originTag:"BETWEEN_1024_B_AND_1_MB",displayTag:"Between 1024B and 1MB"},{originTag:"BETWEEN_1_MB_AND_10_MB",displayTag:"Between 1MB and 10MB"},{originTag:"BETWEEN_10_MB_AND_64_MB",displayTag:"Between 10MB and 64MB"},{originTag:"BETWEEN_64_MB_AND_128_MB",displayTag:"Between 64MB and 128MB"},{originTag:"BETWEEN_128_MB_AND_512_MB",displayTag:"Between 128MB and 512MB"},{originTag:"GREATER_THAN_512_MB",displayTag:"Greater than 512MB"}],type:dc.barChart,layoutIdentifier:"panel-5"},{id:53,title:"Total Online Servers",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-6"},{id:69,title:"Total Offline Servers",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-7"},{id:66,title:"Number of Buckets",data:[],innerLabel:"N/A",type:dc.singleRep,color:"#0071BC",fillColor:"#ADD5E0",layoutIdentifier:"panel-8"},{id:44,title:"Number of Objects",data:[],innerLabel:"N/A",type:dc.singleRep,color:"#0071BC",fillColor:"#ADD5E0",layoutIdentifier:"panel-9"},{id:63,title:"S3 API Data Received Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-10",xAxisFormatter:je,yAxisFormatter:ce},{id:61,title:"Total Open FDs",data:[],innerLabel:"N/A",type:dc.singleRep,layoutIdentifier:"panel-11",color:"#22B573",fillColor:"#A6E8C4"},{id:62,title:"Total Goroutines",data:[],innerLabel:"N/A",type:dc.singleRep,layoutIdentifier:"panel-12",color:"#F7655E",fillColor:"#F4CECE"},{id:77,title:"Node CPU Usage",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-13",yAxisFormatter:Ac,xAxisFormatter:je},{id:60,title:"S3 API Request Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-14",xAxisFormatter:je},{id:70,title:"S3 API Data Sent Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-15",xAxisFormatter:je,yAxisFormatter:ce},{id:17,title:"Internode Data Transfer",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-16",yAxisFormatter:ce,xAxisFormatter:je},{id:73,title:"Node IO",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-19",yAxisFormatter:ce,xAxisFormatter:je},{id:80,title:"Time Since Last Heal Activity",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-20",labelDisplayFunction:Ec},{id:81,title:"Time Since Last Scan Activity",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-21",labelDisplayFunction:Ec},{id:71,title:"S3 API Request Error Rate",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-22",xAxisFormatter:je},{id:76,title:"Node Memory Usage",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-23",xAxisFormatter:je,yAxisFormatter:ce},{id:74,title:"Drive Used Capacity",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-24",xAxisFormatter:je,yAxisFormatter:ce},{id:82,title:"Drives Free Inodes",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-25",disableYAxis:!0,xAxisFormatter:je},{id:11,title:"Node Syscalls",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-26",yAxisFormatter:Ac,xAxisFormatter:je},{id:8,title:"Node File Descriptors",data:[],widgetConfiguration:[{dataKey:"",keyLabel:"",lineColor:"#000",fillColor:"#000"}],type:dc.linearGraph,layoutIdentifier:"panel-27",yAxisFormatter:Ac,xAxisFormatter:je},{id:65,title:"Total S3 Traffic Inbound",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-28",labelDisplayFunction:ce},{id:64,title:"Total S3 Traffic Outbound",data:"N/A",type:dc.singleValue,layoutIdentifier:"panel-29",labelDisplayFunction:ce}],Ic=function(e,t){if(0===e.length)return["","0"];switch(t){case"mean":var a=e.reduce((function(e,t){return e+parseFloat(t[1])}),0);return["",Math.floor(a/e.length).toString()];default:var n=e.sort((function(e,t){return e[0]-t[0]}));return n[n.length-1]}},Mc=function(e,t){if(!e)return t;var a=e.type;switch(t.type){case dc.singleValue:if("stat"===a||"singlestat"===a){var n=Z()(e,"targets[0].result[0].values",[]);null===n&&(n=[]);var c=Z()(e,"options.reduceOptions.calcs[0]","lastNotNull"),i=Ic(n,c),r=t.labelDisplayFunction?t.labelDisplayFunction(i[1]):i[1];return Object(j.a)(Object(j.a)({},t),{},{data:r})}break;case dc.pieChart:if("gauge"===a){var o=Z()(e,"targets[0].result",[]);null===o&&(o=[]);var s=Z()(e,"options.reduceOptions.calcs[0]","lastNotNull"),l=o.length>0?o[0].values:[],d=Ic(l,s),b=o.map((function(e){var t=Z()(e,"values",[]),a=Object.keys(e.metric),n=t.sort((function(e,t){return e[0]-t[0]})),c=e.metric[a[0]],i=n[n.length-1];return{name:c,value:parseInt(i)}})),u=t.labelDisplayFunction?t.labelDisplayFunction(d[1]):d[1];return Object(j.a)(Object(j.a)({},t),{},{data:b,innerLabel:u})}break;case dc.linearGraph:if("graph"===a){var m=Z()(e,"targets",[]);null===m&&(m=[]);var h=[],p=[];m.forEach((function(e,t){var a=Z()(e,"result",[]),n=e.legendFormat;null===a&&(a=[]),a.forEach((function(e){var a=function(e,t){var a=Object.keys(e),n=new RegExp("{{(".concat(a.join("|"),")}}"),"g"),c=t.replace(n,(function(t){var a=t.replace(/({{|}})/g,"");return e[a]})),i=(c.match(/{{/g)||[]).length,r=(c.match(/}}/g)||[]).length,o=c.replace(/{{(.*?)}}/g,"");return i===r&&0!==i&&0!==r&&(a.forEach((function(t){c=c.replace(t,e[t])})),o=c),o}(e.metric,n),c="key_".concat(t).concat(a);h.push({dataKey:c,keyLabel:a,lineColor:"",fillColor:""});var i=Z()(e,"values",[]);null===i&&(i=[]),i.forEach((function(e){var t=p.findIndex((function(t){return t.name===e[0]}));if(-1===t){var a={name:e[0]};a[c]=e[1],p.push(a)}else p[t][c]=e[1]}))}))}));var O=h.sort((function(e,t){return e.keyLabelt.keyLabel?1:0})).map((function(e,t){return Object(j.a)(Object(j.a)({},e),{},{lineColor:Tc[t]||he(e.keyLabel),fillColor:Tc[t]||he(e.keyLabel)})})),g=p.sort((function(e,t){return e.name-t.name}));return Object(j.a)(Object(j.a)({},t),{},{widgetConfiguration:O,data:g})}break;case dc.barChart:if("bargauge"===a){var f=Z()(e,"targets[0].result",[]);null===f&&(f=[]);var x=function(e,t){return e[0]-t[0]},v=[];return v=t.customStructure?t.customStructure.map((function(e){var t=f.find((function(t){var a=Object.keys(t.metric);return t.metric[a[0]]===e.originTag})),a=Z()(t,"values",[]).sort(x),n=a[a.length-1]||["","0"];return{name:e.displayTag,a:parseInt(n[1])}})):f.map((function(e){var t=Object.keys(e.metric),a=e.metric[t[0]],n=Z()(e,"values",[]).sort(x),c=n[n.length-1]||["","0"];return{name:a,a:parseInt(c[1])}})),Object(j.a)(Object(j.a)({},t),{},{data:v})}break;case dc.singleRep:if("stat"===a){var y=Z()(e,"targets[0].result[0].values",[]);null===y&&(y=[]);var S=Z()(e,"options.reduceOptions.calcs[0]","lastNotNull"),C=Ic(y,S),k=y.sort((function(e,t){return e[0]-t[0]})),N=[];1===k.length&&N.push({value:0}),k.forEach((function(e){N.push({value:parseInt(e[1])})}));var w=t.labelDisplayFunction?t.labelDisplayFunction(C[1]):C[1];return Object(j.a)(Object(j.a)({},t),{},{data:N,innerLabel:w})}}return t},Fc=function(e){localStorage.setItem(Nc,btoa(JSON.stringify(e)))},Dc=Object(s.b)(null,{displayErrorMessage:V}),Lc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{contentContainer:Object(j.a)(Object(j.a)({},Ke.contentContainer),{},{fontWeight:700,color:"#072045",fontSize:18,textAlign:"center"}),loadingAlign:{width:"100%",paddingTop:"15px",textAlign:"center",margin:"auto"}}))}))(Dc((function(e){var t=e.title,a=e.panelItem,i=e.timeStart,r=e.timeEnd,o=e.displayErrorMessage,s=e.classes,l=Object(c.useState)(!0),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1];return Object(c.useEffect)((function(){if(b){var e=0;if(null!==i&&null!==r){var t=r.unix()-i.unix(),n=Math.floor(t/60);e=n<1?15:n}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(a.id,"/?step=").concat(e,"&").concat(null!==i?"&start=".concat(i.unix()):"").concat(null!==i&&null!==r?"&":"").concat(null!==r?"end=".concat(r.unix()):"")).then((function(e){var t=Mc(e,a);O(t.data),j(!1)})).catch((function(e){o(e),j(!1)}))}}),[b,a,r,i,o]),Object(n.jsxs)("div",{className:s.singleValueContainer,children:[Object(n.jsx)("div",{className:s.titleContainer,children:t}),b&&Object(n.jsx)("div",{className:s.loadingAlign,children:Object(n.jsx)(S.a,{})}),!b&&Object(n.jsx)("div",{className:s.contentContainer,children:p})]})}))),Bc=a(999),Rc=a(982),Pc=a(986),zc=a(224),Kc=a(225),Uc=a(417),Wc=a(232),Vc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Ue))}))((function(e){var t=e.active,a=e.payload,c=e.label,i=e.linearConfiguration,r=e.yAxisFormatter,o=e.classes;return t?Object(n.jsxs)("div",{className:o.customTooltip,children:[Object(n.jsx)("div",{className:o.timeStampTitle,children:je(c,!0)}),a&&a.map((function(e,t){return Object(n.jsxs)("div",{className:o.labelContainer,children:[Object(n.jsx)("div",{className:o.labelColor,style:{backgroundColor:i[t].lineColor}}),Object(n.jsx)("div",{className:o.itemValue,children:Object(n.jsxs)("span",{className:o.valueContainer,children:[i[t].keyLabel,":"," ",r(e.value)]})})]},"lbPl-".concat(t,"-").concat(i[t].keyLabel))}))]}):null})),Gc=Object(s.b)(null,{displayErrorMessage:V}),qc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{containerElements:{display:"flex",flexDirection:"column",height:"calc(100% - 18px)"},chartCont:{position:"relative",flexGrow:1,minHeight:"65%",height:1},legendChart:{display:"flex",flexWrap:"wrap",flex:"0 1 auto",maxHeight:"35%",margin:0,overflowY:"auto",position:"relative",textAlign:"center"},loadingAlign:{margin:"auto"}}))}))(Gc((function(e){var t=e.classes,a=e.title,r=e.displayErrorMessage,o=e.timeStart,s=e.timeEnd,l=e.panelItem,d=e.hideYAxis,b=void 0!==d&&d,j=e.yAxisFormatter,m=void 0===j?function(e){return e}:j,h=e.xAxisFormatter,p=void 0===h?function(e){return e}:h,O=e.panelWidth,g=void 0===O?0:O,f=Object(c.useState)(!0),x=Object(u.a)(f,2),v=x[0],y=x[1],C=Object(c.useState)([]),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(null),E=Object(u.a)(T,2),A=E[0],_=E[1];Object(c.useEffect)((function(){if(v){var e=0;if(null!==o&&null!==s){var t=s.unix()-o.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(l.id,"/?step=").concat(e,"&").concat(null!==o?"&start=".concat(o.unix()):"").concat(null!==o&&null!==s?"&":"").concat(null!==s?"end=".concat(s.unix()):"")).then((function(e){var t=Mc(e,l);w(t.data),_(t),y(!1)})).catch((function(e){r(e),y(!1)}))}}),[v,l,s,o,r]);var I=5;0!==g&&(I=g>400?5:g>350?10:g>300?15:g>250?20:30);var M=A?null===A||void 0===A?void 0:A.widgetConfiguration:[];return Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),Object(n.jsxs)("div",{className:t.containerElements,children:[v&&Object(n.jsx)(S.a,{className:t.loadingAlign}),!v&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("div",{className:t.chartCont,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Rc.a,{data:N,margin:{top:5,right:20,left:b?20:5,bottom:0},children:[Object(n.jsx)(Pc.a,{strokeDasharray:"3 3",strokeWidth:1,strokeOpacity:.5}),Object(n.jsx)(zc.a,{dataKey:"name",tickFormatter:function(e){return p(e)},interval:I,tick:{fontSize:"70%"},tickCount:10}),Object(n.jsx)(Kc.a,{domain:[0,function(e){return 4*e}],hide:b,tickFormatter:function(e){return m(e)},tick:{fontSize:"70%"}}),M.map((function(e,t){return Object(n.jsx)(Uc.a,{type:"monotone",dataKey:e.dataKey,stroke:e.lineColor,fill:e.fillColor,fillOpacity:.3},"area-".concat(e.dataKey,"-").concat(t.toString()))})),Object(n.jsx)(Wc.a,{content:Object(n.jsx)(Vc,{linearConfiguration:M,yAxisFormatter:m}),wrapperStyle:{zIndex:5e3}})]})})}),Object(n.jsx)("div",{className:t.legendChart,children:M.map((function(e,a){return Object(n.jsxs)("div",{className:t.singleLegendContainer,children:[Object(n.jsx)("div",{className:t.colorContainer,style:{backgroundColor:e.lineColor}}),Object(n.jsx)("div",{className:t.legendLabel,children:e.keyLabel})]},"legend-".concat(e.keyLabel,"-").concat(a.toString()))}))})]})]})]})}))),Hc=a(987),Yc=a(449),Qc=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Ue))}))((function(e){var t=e.active,a=e.payload,c=e.label,i=e.barChartConfiguration,r=e.classes;return t?Object(n.jsxs)("div",{className:r.customTooltip,children:[Object(n.jsx)("div",{className:r.timeStampTitle,children:c}),a&&a.map((function(e,t){return Object(n.jsxs)("div",{className:r.labelContainer,children:[Object(n.jsx)("div",{className:r.labelColor,style:{backgroundColor:i[t].color}}),Object(n.jsx)("div",{className:r.itemValue,children:Object(n.jsx)("span",{className:r.valueContainer,children:e.value})})]},"pltiem-".concat(t,"-").concat(c))}))]}):null})),Zc=function(e){var t=e.x,a=e.y,c=e.payload;return Object(n.jsx)("text",{width:50,fontSize:"63%",textAnchor:"end",fill:"#333",transform:"translate(".concat(t,",").concat(a,")"),dy:3,children:c.value})},Jc=Object(s.b)(null,{displayErrorMessage:V}),$c=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{loadingAlign:{width:"100%",paddingTop:"15px",textAlign:"center",margin:"auto"}}))}))(Jc((function(e){var t=e.classes,a=e.title,i=e.panelItem,r=e.timeStart,o=e.timeEnd,s=e.displayErrorMessage,l=Object(c.useState)(!0),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)(null),f=Object(u.a)(g,2),x=f[0],v=f[1];Object(c.useEffect)((function(){if(b){var e=0;if(null!==r&&null!==o){var t=o.unix()-r.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(i.id,"/?step=").concat(e,"&").concat(null!==r?"&start=".concat(r.unix()):"").concat(null!==r&&null!==o?"&":"").concat(null!==o?"end=".concat(o.unix()):"")).then((function(e){var t=Mc(e,i);O(t.data),v(t),j(!1)})).catch((function(e){s(e),j(!1)}))}}),[b,i,o,r,s]);var y=x?x.widgetConfiguration:[];return Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),b&&Object(n.jsx)("div",{className:t.loadingAlign,children:Object(n.jsx)(S.a,{})}),!b&&Object(n.jsx)("div",{className:t.contentContainer,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Hc.a,{data:p,layout:"vertical",barCategoryGap:1,children:[Object(n.jsx)(zc.a,{type:"number",hide:!0}),Object(n.jsx)(Kc.a,{dataKey:"name",type:"category",interval:0,tick:Object(n.jsx)(Zc,{}),tickLine:!1,axisLine:!1,width:150}),y.map((function(e){return Object(n.jsx)(Yc.a,{dataKey:e.dataKey,fill:e.color,background:e.background},"bar-".concat(e.dataKey))})),Object(n.jsx)(Wc.a,{cursor:{fill:"rgba(255, 255, 255, 0.3)"},content:Object(n.jsx)(Qc,{barChartConfiguration:y})})]})})})]})}))),Xc=a(1003),ei=a(419),ti=a(226),ai=Object(s.b)(null,{displayErrorMessage:V}),ni=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{loadingAlign:{width:"100%",paddingTop:"15px",textAlign:"center",margin:"auto"}}))}))(ai((function(e){var t=e.classes,a=e.title,i=e.panelItem,r=e.timeStart,o=e.timeEnd,s=e.displayErrorMessage,l=Object(c.useState)(!0),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)([]),f=Object(u.a)(g,2),x=f[0],v=f[1],y=Object(c.useState)(null),C=Object(u.a)(y,2),k=C[0],N=C[1];Object(c.useEffect)((function(){if(b){var e=0;if(null!==r&&null!==o){var t=o.unix()-r.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(i.id,"/?step=").concat(e,"&").concat(null!==r?"&start=".concat(r.unix()):"").concat(null!==r&&null!==o?"&":"").concat(null!==o?"end=".concat(o.unix()):"")).then((function(e){var t=Mc(e,i);O(t.data),v(t.dataOuter),N(t),j(!1)})).catch((function(e){s(e),j(!1)}))}}),[b,i,o,r,s]);var w=k?k.widgetConfiguration:[],T=null===k||void 0===k?void 0:k.innerLabel,E=Z()(w,"innerChart.colorList",[]),A=Z()(w,"outerChart.colorList",[]);return Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),b&&Object(n.jsx)("div",{className:t.loadingAlign,children:Object(n.jsx)(S.a,{})}),!b&&Object(n.jsx)("div",{className:t.contentContainer,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Xc.a,{margin:{top:5,bottom:5},children:[x&&Object(n.jsx)(ei.a,{data:x,cx:"50%",cy:"50%",dataKey:"value",innerRadius:Z()(w,"outerChart.innerRadius",0),outerRadius:Z()(w,"outerChart.outerRadius","80%"),startAngle:Z()(w,"outerChart.startAngle",0),endAngle:Z()(w,"outerChart.endAngle",360),fill:"#201763",children:x.map((function(e,t){return Object(n.jsx)(ti.a,{fill:"undefined"==typeof A[t]?"#393939":A[t]},"cellOuter-".concat(t))}))}),p&&Object(n.jsx)(ei.a,{data:p,dataKey:"value",cx:"50%",cy:"50%",innerRadius:Z()(w,"innerChart.innerRadius",0),outerRadius:Z()(w,"innerChart.outerRadius","80%"),startAngle:Z()(w,"innerChart.startAngle",0),endAngle:Z()(w,"innerChart.endAngle",360),fill:"#201763",children:p.map((function(e,t){return Object(n.jsx)(ti.a,{fill:"undefined"==typeof E[t]?"#393939":E[t]},"cell-".concat(t))}))}),T&&Object(n.jsx)("text",{x:"50%",y:"50%",textAnchor:"middle",dominantBaseline:"middle",fontWeight:600,fontSize:14,children:T})]})})})]})}))),ci=Object(s.b)(null,{displayErrorMessage:V}),ii=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},Ke),{},{loadingAlign:{width:"100%",paddingTop:"5px",textAlign:"center",margin:"auto"}}))}))(ci((function(e){var t=e.classes,a=e.title,i=e.panelItem,r=e.timeStart,o=e.timeEnd,s=e.displayErrorMessage,l=e.color,d=e.fillColor,b=Object(c.useState)(!0),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)([]),O=Object(u.a)(p,2),g=O[0],f=O[1],x=Object(c.useState)(null),v=Object(u.a)(x,2),y=v[0],C=v[1];return Object(c.useEffect)((function(){if(m){var e=0;if(null!==r&&null!==o){var t=o.unix()-r.unix(),a=Math.floor(t/60);e=a<1?15:a}pe.invoke("GET","/api/v1/admin/info/widgets/".concat(i.id,"/?step=").concat(e,"&").concat(null!==r?"&start=".concat(r.unix()):"").concat(null!==r&&null!==o?"&":"").concat(null!==o?"end=".concat(o.unix()):"")).then((function(e){var t=Mc(e,i);C(t),f(t.data),h(!1)})).catch((function(e){s(e),h(!1)}))}}),[m,i,o,r,s]),Object(n.jsxs)("div",{className:t.singleValueContainer,children:[Object(n.jsx)("div",{className:t.titleContainer,children:a}),m&&Object(n.jsx)("div",{className:t.loadingAlign,children:Object(n.jsx)(S.a,{})}),!m&&Object(n.jsx)("div",{className:t.contentContainer,children:Object(n.jsx)(Bc.a,{children:Object(n.jsxs)(Rc.a,{data:g,children:[Object(n.jsx)(Kc.a,{domain:[0,function(e){return 2*e}],hide:!0}),Object(n.jsx)(Uc.a,{type:"monotone",dataKey:"value",stroke:l,fill:d,fillOpacity:1}),Object(n.jsx)("text",{x:"50%",y:"50%",textAnchor:"middle",dominantBaseline:"middle",fontWeight:600,fontSize:18,fill:l,children:y?y.innerLabel:""})]})})})]})}))),ri=a(423),oi=a(60),si=a(995),li=a(424),di=a.n(li),bi=Object(w.a)((function(e){return Object(k.a)({dateSelectorOverride:{height:40,border:"#EAEDEE 1px solid",marginLeft:15,backgroundColor:"#fff",padding:"0 16px",borderRadius:5,"&.MuiInput-underline:hover:not(.Mui-disabled):before":{borderBottom:0},"&:hover":{borderColor:"#000","&:before, &:after":{borderColor:"transparent",borderBottom:0}},"&:before, &:after":{borderColor:"transparent",borderBottom:0},"& input":{fontSize:12,fontWeight:600,color:"#393939"}},parentDateOverride:{flexGrow:1}})}))((function(e){var t=e.value,a=e.onChange,c=e.classes;return Object(n.jsx)(oi.a,{utils:ri.a,children:Object(n.jsx)(si.a,{value:t,onChange:a,InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(di.a,{})}),className:c.dateSelectorOverride},label:"",ampm:!1,variant:"inline",className:c.parentDateOverride,format:"MMMM Do YYYY, h:mm a"})})})),ui=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",children:Object(n.jsx)("path",{d:"M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01-.25 1.97-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0-4.42-3.58-8-8-8zm0 14c-3.31 0-6-2.69-6-6 0-1.01.25-1.97.7-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4-4-4-4v3z"})})})},ji=Object(s.b)(null,{displayErrorMessage:V}),mi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Me),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})),{},{widgetsContainer:{height:"calc(100vh - 250px)",paddingBottom:235},syncButton:{"&.MuiButton-root .MuiButton-iconSizeMedium > *:first-child":{fontSize:18}},actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"0 10px"})}))}))(ji((function(e){var t=e.classes,a=e.displayErrorMessage,i=Object(c.useState)(null),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(null),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(_c),v=Object(u.a)(f,2),y=v[0],S=v[1],C=function(e){var t=localStorage.getItem(Nc);if(!t)return wc;var a=JSON.parse(atob(t));return 0===a.length||a.length>0&&!a[0].minW||0!==e&&a.length!==e?wc:a}(y.length),k=Object(c.useCallback)((function(e){var t=e/8+5,a=function(e,a){switch(e.type){case dc.singleValue:return Object(n.jsx)(Lc,{title:e.title,panelItem:e,timeStart:o,timeEnd:b});case dc.pieChart:return Object(n.jsx)(ni,{title:e.title,panelItem:e,timeStart:o,timeEnd:b});case dc.linearGraph:return Object(n.jsx)(qc,{title:e.title,panelItem:e,timeStart:o,timeEnd:b,hideYAxis:e.disableYAxis,xAxisFormatter:e.xAxisFormatter,yAxisFormatter:e.yAxisFormatter,panelWidth:C[a]?t*C[a].w:t});case dc.barChart:return Object(n.jsx)($c,{title:e.title,panelItem:e,timeStart:o,timeEnd:b});case dc.singleRep:var c=e.fillColor?e.fillColor:e.color;return Object(n.jsx)(ii,{title:e.title,panelItem:e,timeStart:o,timeEnd:b,color:e.color,fillColor:c});default:return null}};return y.map((function(e,t){return Object(n.jsx)("div",{children:a(e,t)},e.layoutIdentifier)}))}),[y,C,b,o]),N=Object(c.useCallback)((function(){var e=0;if(null!==o&&null!==b){var t=b.unix()-o.unix(),n=Math.floor(t/60);e=n<1?15:n}pe.invoke("GET","/api/v1/admin/info?step=".concat(e,"&").concat(null!==o?"&start=".concat(o.unix()):"").concat(null!==o&&null!==b?"&":"").concat(null!==b?"end=".concat(b.unix()):"")).then((function(e){if(e.widgets){var t=(n=e.widgets,_c.map((function(e){var t=n.find((function(t){return t.title.toLowerCase().trim()===e.title.toLowerCase().trim()}));return Mc(t,e)})));S(t)}else a("Widget information could not be retrieved at this time. Please try again");var n;O(!1)})).catch((function(e){a(e),O(!1)}))}),[o,b,a]);return Object(c.useEffect)((function(){p&&N()}),[p,N]),Object(n.jsxs)(x.a,{container:!0,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(t.actionsTray," ").concat(t.timeContainers),children:[Object(n.jsx)("span",{className:t.label,children:"Start Time"}),Object(n.jsx)(bi,{value:o,onChange:s}),Object(n.jsx)("span",{className:t.label,children:"End Time"}),Object(n.jsx)(bi,{value:b,onChange:j}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",onClick:function(){O(!0)},startIcon:Object(n.jsx)(ui,{}),className:t.syncButton,children:"Sync"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.widgetsContainer,children:Object(n.jsx)(Pt.a,{style:{width:"100%",height:"auto",paddingBottom:45},children:function(e){var t=e.width,a=e.height,c=a<600?600:a;c>380&&(c=480);var i=t>1920?1920:t;return Object(n.jsx)(kc.a,{width:i,cols:8,containerPadding:[10,10],onLayoutChange:Fc,layout:C,rowHeight:c/6,style:{margin:"0 auto",width:i},children:k(t)})}})})]})}))),hi=function(){return Object(n.jsxs)(rt.a,{viewBox:"0 0 15.834 17.375",children:[Object(n.jsx)("defs",{children:Object(n.jsxs)("linearGradient",{id:"a",y1:"0.5",x2:"1",y2:"0.5",gradientUnits:"objectBoundingBox",children:[Object(n.jsx)("stop",{offset:"0.044",stopColor:"#362585"}),Object(n.jsx)("stop",{offset:"0.301",stopColor:"#281b6f"}),Object(n.jsx)("stop",{offset:"1",stopColor:"#1e1560"})]})}),Object(n.jsxs)("g",{transform:"translate(0 0.375)",children:[Object(n.jsx)("circle",{style:{opacity:.1,fill:"url(#a)"},cx:"6.625",cy:"6.625",r:"6.625",transform:"translate(0 3.75)"}),Object(n.jsxs)("g",{transform:"translate(3.092)",children:[Object(n.jsx)("ellipse",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.75px"},cx:"6.183",cy:"1.244",rx:"6.183",ry:"1.244",transform:"translate(0)"}),Object(n.jsx)("path",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.75px"},d:"M-3722.174,1225.225l-1.687,10.292a.858.858,0,0,1-.578.669,12.182,12.182,0,0,1-3.918.647,12.187,12.187,0,0,1-3.894-.639.878.878,0,0,1-.6-.678q-.843-5.145-1.687-10.291",transform:"translate(3734.541 -1223.981)"})]})]})]})},pi=function(){return Object(n.jsxs)(rt.a,{viewBox:"0 0 18.344 17.009",children:[Object(n.jsx)("defs",{children:Object(n.jsxs)("linearGradient",{id:"a",y1:"0.5",x2:"1",y2:"0.5",gradientUnits:"objectBoundingBox",children:[Object(n.jsx)("stop",{offset:"0.044",stopColor:"#362585"}),Object(n.jsx)("stop",{offset:"0.301",stopColor:"#281b6f"}),Object(n.jsx)("stop",{offset:"1",stopColor:"#1e1560"})]})}),Object(n.jsxs)("g",{transform:"translate(0 0.25)",children:[Object(n.jsx)("ellipse",{style:{opacity:.1,fill:"url(#a)"},cx:"7.462",cy:"7.462",rx:"7.462",ry:"7.462",transform:"translate(0 1.835)"}),Object(n.jsx)("rect",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.5px"},width:"9.323",height:"9.323",transform:"translate(4.083)"}),Object(n.jsx)("rect",{style:{fill:"none",stroke:"#707070",strokeMiterlimit:10,strokeWidth:"0.5px"},width:"8.223",height:"8.223",transform:"translate(9.871 5.307)"})]})]})},Oi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})),{},{paper:{padding:e.spacing(2),display:"flex",overflow:"auto",flexDirection:"column",border:"#eaedee 1px solid",borderRadius:5,boxShadow:"none"},fixedHeight:{height:165,minWidth:247,marginRight:20,padding:"25px 28px","& svg":{maxHeight:18}},consumptionValue:{color:"#000000",fontSize:"60px",fontWeight:"bold"},icon:{marginRight:10,color:"#777777"},notationContainer:{display:"flex"},dashboardBG:{width:390,height:255,zIndex:500,position:"absolute",backgroundSize:"fill",backgroundImage:"url(/images/BG_IllustrationDarker.svg)",backgroundPosition:"right bottom",right:0,bottom:0,backgroundRepeat:"no-repeat"},dashboardContainer:{zIndex:600,position:"absolute"},elementTitle:{fontWeight:500,color:"#777777",fontSize:14,marginTop:-9},smallUnit:{fontSize:20}}))}))((function(e){var t=e.classes,a=e.usage,i=Object(ve.a)(t.paper,t.fixedHeight),r=function(e){return void 0===e?0:e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")};return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("div",{className:t.dashboardBG}),Object(n.jsx)(x.a,{container:!0,className:t.dashboardContainer,children:Object(n.jsx)(x.a,{container:!0,spacing:3,className:t.container,children:Object(n.jsxs)(x.a,{item:!0,className:t.notationContainer,children:[Object(n.jsxs)(C.a,{className:i,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,children:Object(n.jsx)(hi,{})}),Object(n.jsx)(x.a,{item:!0,children:Object(n.jsx)(v.a,{className:t.elementTitle,children:"All buckets"})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:a?r(a.buckets):0})]}),Object(n.jsxs)(C.a,{className:i,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,children:Object(n.jsx)(On,{})}),Object(n.jsx)(x.a,{item:!0,children:Object(n.jsx)(v.a,{className:t.elementTitle,children:"Usage"})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:a?function(e){if(void 0===e)return"0";var a=ce(e).split(" ");return 2!==a.length?a.join(" "):Object(n.jsxs)(c.Fragment,{children:[a[0],Object(n.jsx)("span",{className:t.smallUnit,children:a[1]})]})}(a.usage+""):0})]}),Object(n.jsxs)(C.a,{className:i,children:[Object(n.jsxs)(x.a,{container:!0,direction:"row",alignItems:"center",children:[Object(n.jsx)(x.a,{item:!0,className:t.icon,children:Object(n.jsx)(pi,{})}),Object(n.jsx)(x.a,{item:!0,children:Object(n.jsxs)(v.a,{className:t.elementTitle,children:[" ","Total Objects"]})})]}),Object(n.jsx)(v.a,{className:t.consumptionValue,children:a?r(a.objects):0})]})]})})})]})})),gi=Object(s.b)(null,{displayErrorMessage:V}),fi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(gi((function(e){var t=e.classes,a=e.displayErrorMessage,i=Object(c.useState)(!0),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(null),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useCallback)((function(){pe.invoke("GET","/api/v1/admin/info").then((function(e){j(e),s(!1)})).catch((function(e){a(e),s(!1)}))}),[j,s,a]);Object(c.useEffect)((function(){o&&m()}),[o,m]);var h=Z()(b,"widgets",null);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Dashboard"}),Object(n.jsx)(x.a,{container:!0,children:o?Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container,children:Object(n.jsx)(y.a,{})}):Object(n.jsx)(c.Fragment,{children:null!==h?Object(n.jsx)(mi,{}):Object(n.jsx)(Oi,{usage:b})})})]})}))),xi=a(914),vi=a(989),yi=a(425),Si=a.n(yi),Ci=a(988),ki=a(990),Ni=a(959),wi=a(991),Ti=a.p+"static/media/minio_console_logo.0837460e.svg",Ei=a.p+"static/media/minio_operator_logo.1312b7c9.svg",Ai=[{label:"",group:"common",collapsible:!1},{label:"User",group:"User",collapsible:!0},{label:"Admin",group:"Admin",collapsible:!0},{label:"Tools",group:"Tools",collapsible:!0},{label:"Operator",group:"Operator",collapsible:!1},{label:"",group:"License",collapsible:!1}],_i=a(428),Ii=a.n(_i),Mi=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 11",children:[Object(n.jsx)("path",{fill:"#fff",d:"M11 11H0V2h11v9zM2 8v1h7V8zm0-3v1h5V5z"}),Object(n.jsxs)("g",{fill:"#07274a",stroke:"#fdfdfd",strokeWidth:"0.5",transform:"translate(7)",children:[Object(n.jsx)("circle",{cx:"3",cy:"3",r:"3",stroke:"none"}),Object(n.jsx)("circle",{cx:"3",cy:"3",r:"2.75",fill:"none"})]}),Object(n.jsx)("path",{fill:"none",stroke:"#fff",strokeWidth:"0.5",d:"M8.73 2.794l.954.953 1.471-1.471"})]})})},Fi=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12.122 10.571",children:Object(n.jsxs)("g",{transform:"translate(0 0.5)",children:[Object(n.jsx)("path",{style:{fill:"none",stroke:"rgba(255,255,255,0.8)"},d:"M4816.27,3755.205v-2.939h8.539v9.571h-8.539v-2.932",transform:"translate(-4813.187 -3752.266)"}),Object(n.jsx)("path",{style:{fill:"none",stroke:"rgba(255,255,255,0.8)"},d:"M4813.187,3757.052h8.081",transform:"translate(-4813.187 -3752.266)"}),Object(n.jsx)("path",{style:{fill:"none",stroke:"rgba(255,255,255,0.8)"},d:"M4806.5,3756.511l2.265,2.063-2.265,2.063",transform:"translate(-4800.808 -3753.863)"})]})})})},Di=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10",children:Object(n.jsxs)("g",{transform:"translate(-518 -361)",children:[Object(n.jsx)("path",{d:"M-126,0V10h10V0Zm1.5,8.5V2.95h7V8.5Z",transform:"translate(644 361)"}),Object(n.jsx)("rect",{width:"2",height:"1",transform:"translate(520.272 364.772)"})]})})})},Li=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10.014 9.993",children:[Object(n.jsx)("path",{className:"a",d:"M9.162,5.971h0L8.192,5,9.346,3.846a2.257,2.257,0,0,0,0-3.192,2.311,2.311,0,0,0-3.192,0L5,1.808,4.029.837,3.846.654a2.311,2.311,0,0,0-3.192,0,2.257,2.257,0,0,0,0,3.192l.184.183h0L1.808,5,.654,6.154A2.257,2.257,0,0,0,3.846,9.346L5,8.192l.971.971.183.183A2.257,2.257,0,0,0,9.346,6.154Zm-2.29-4.6a1.27,1.27,0,0,1,1.757,0,1.242,1.242,0,0,1,0,1.757L7.475,4.283,5.717,2.525Zm-5.5,1.757A1.243,1.243,0,0,1,3.129,1.371l.183.183L1.555,3.312Zm1.757,5.5a1.27,1.27,0,0,1-1.757,0,1.242,1.242,0,0,1,0-1.757L2.525,5.717,4.283,7.475Zm2.843-.9-.254-.253L2.525,4.283l-.253-.254L4.029,2.272l.254.253L7.475,5.717l.253.254Zm2.657.9a1.271,1.271,0,0,1-1.757,0l-.183-.183L8.446,6.688l.183.183h0a1.241,1.241,0,0,1,0,1.757Z",transform:"translate(0.007 -0.014)"}),Object(n.jsx)("circle",{cx:"0.5",cy:"0.5",r:"0.5",transform:"translate(4.507 4.486)"}),Object(n.jsx)("circle",{cx:"0.5",cy:"0.5",r:"0.5",transform:"translate(3.507 3.486)"}),Object(n.jsx)("circle",{cx:"0.5",cy:"0.5",r:"0.5",transform:"translate(5.507 5.486)"})]})})},Bi=a(426),Ri=a.n(Bi),Pi=a(427),zi=a.n(Pi),Ki=Object(s.b)((function(e){return{open:e.system.loggedIn,operatorMode:e.system.operatorMode}}),{userLoggedIn:P}),Ui=Ki(Object(w.a)((function(e){return Object(k.a)({logo:{paddingTop:25,marginBottom:30,paddingLeft:45,"& img":{width:120}},menuList:{"& .active":{borderTopLeftRadius:2,borderBottomLeftRadius:2,color:"#fff",backgroundColor:"rgba(255, 255, 255, .18)","& .MuiSvgIcon-root":{color:"white"},"& .MuiTypography-root":{color:"#fff",fontWeight:700}},"& .MuiSvgIcon-root":{fontSize:16,color:"rgba(255, 255, 255, 0.8)",maxWidth:14},"& .MuiListItemIcon-root":{minWidth:25},"& .MuiTypography-root":{fontSize:12,color:"rgba(255, 255, 255, 0.8)"},"& .MuiListItem-gutters":{paddingRight:0,fontWeight:300},"& .MuiListItem-root":{padding:"2px 0 2px 16px",marginBottom:8,marginLeft:30,width:"calc(100% - 30px)"},"& .MuiCollapse-container .MuiCollapse-wrapper .MuiCollapse-wrapperInner .MuiDivider-root":{backgroundColor:"rgba(112,112,112,0.5)",marginBottom:12,height:1}},extraMargin:{"&.MuiListItem-gutters":{marginLeft:5}},groupTitle:{color:"#fff",fontSize:10,textTransform:"uppercase",fontWeight:700,marginBottom:3,cursor:"pointer",userSelect:"none",display:"flex",justifyContent:"space-between"},subTitleMenu:{fontWeight:700,marginLeft:10,"&.MuiTypography-root":{fontSize:13,color:"#fff"}},selectorArrow:{marginRight:20,marginTop:1,display:"inline-block",width:0,height:0,borderStyle:"solid",borderWidth:"4px 4px 0 4px",borderColor:"rgba(255, 255, 255, .29) transparent transparent transparent",transform:"rotateZ(0deg)",transitionDuration:"0.2s"},selectorArrowOpen:{transform:"rotateZ(180deg)"}})}))((function(e){var t=e.userLoggedIn,a=e.classes,r=e.pages,o=e.operatorMode,s=Object(c.useState)(function(){var e=[];return Ai.forEach((function(t){t.collapsible&&(e[t.group]=!0)})),e}()),l=Object(u.a)(s,2),d=l[0],m=l[1],h=[{group:"common",type:"item",component:qt.b,to:"/dashboard",name:"Dashboard",icon:Object(n.jsx)(dt,{})},{group:"User",type:"item",component:qt.b,to:"/object-browser",name:"Object Browser",icon:Object(n.jsx)(Si.a,{})},{group:"User",type:"item",component:qt.b,to:"/account",name:"Account",icon:Object(n.jsx)(jt,{})},{group:"Admin",type:"item",component:qt.b,to:"/buckets",name:"Buckets",icon:Object(n.jsx)(bt,{})},{group:"Admin",type:"item",component:qt.b,to:"/users",name:"Users",icon:Object(n.jsx)(ut,{})},{group:"Admin",type:"item",component:qt.b,to:"/groups",name:"Groups",icon:Object(n.jsx)(mt,{})},{group:"Admin",type:"item",component:qt.b,to:"/policies",name:"IAM Policies",icon:Object(n.jsx)(ht,{})},{group:"Tools",type:"item",component:qt.b,to:"/logs",name:"Logs",icon:Object(n.jsx)(Di,{})},{group:"Tools",type:"item",component:qt.b,to:"/watch",name:"Watch",icon:Object(n.jsx)(ft,{})},{group:"Tools",type:"item",component:qt.b,to:"/trace",name:"Trace",icon:Object(n.jsx)(pt,{})},{group:"Tools",type:"item",component:qt.b,to:"/heal",name:"Heal",icon:Object(n.jsx)(Li,{})},{group:"Tools",type:"item",component:qt.b,to:"/health-info",name:"Diagnostic",icon:Object(n.jsx)(Ri.a,{})},{group:"Admin",type:"item",component:qt.b,to:"/settings",name:"Settings",icon:Object(n.jsx)(Ot,{})},{group:"Operator",type:"item",component:qt.b,to:"/tenants",name:"Tenants",icon:Object(n.jsx)(gt,{})},{group:"Operator",type:"item",component:qt.b,to:"/storage",name:"Storage",icon:Object(n.jsx)(zi.a,{})}],p=r.reduce((function(e,t){return e[t]=!0,e}),{}),O={group:"License",type:"item",component:qt.b,to:"/documentation",name:"Documentation",icon:Object(n.jsx)(Ii.a,{}),forceDisplay:!0};p.hasOwnProperty("/tenants")?h.push({group:"Operator",type:"item",component:qt.b,to:"/license",name:"License",icon:Object(n.jsx)(Mi,{})},Object(j.a)(Object(j.a)({},O),{},{group:"Operator",onClick:function(e){e.preventDefault(),window.open("https://docs.min.io/?ref=".concat(o?"op":"con"),"_blank")}})):h.push({group:"License",type:"item",component:qt.b,to:"/license",name:"License",icon:Object(n.jsx)(Mi,{})},Object(j.a)(Object(j.a)({},O),{},{group:"License",onClick:function(e){e.preventDefault(),window.open("https://docs.min.io/?ref=".concat(o?"op":"con"),"_blank")}}));var g=h.filter((function(e){return p[e.to]||e.forceDisplay||"item"!==e.type}));return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("div",{className:a.logo,children:Object(n.jsx)("img",{src:o?Ei:Ti,alt:"logo"})}),Object(n.jsxs)(Ni.a,{className:a.menuList,children:[Ai.map((function(e,t){var c=(g||[]).filter((function(t){return t.group===e.group}));return 0===c.filter((function(e){return"title"!==e.type})).length?null:Object(n.jsxs)(i.a.Fragment,{children:[""!==e.label&&Object(n.jsxs)(xi.a,{className:a.groupTitle,onClick:function(){e.collapsible&&function(e){var t=Object(j.a)({},d);t[e]=!t[e],m(t)}(e.group)},children:[Object(n.jsx)("span",{children:e.label}),e.collapsible&&Object(n.jsx)("span",{className:"".concat(a.selectorArrow," ").concat(d[e.group]?a.selectorArrowOpen:"")})]}),Object(n.jsxs)(Ci.a,{in:!e.collapsible||d[e.group],timeout:"auto",unmountOnExit:!0,children:[c.map((function(e){switch(e.type){case"item":return Object(n.jsxs)(xi.a,{button:!0,onClick:e.onClick,component:e.component,to:e.to,className:e.extraMargin?a.extraMargin:null,children:[e.icon&&Object(n.jsx)(vi.a,{children:e.icon}),e.name&&Object(n.jsx)(ki.a,{primary:e.name})]},e.to);case"title":return Object(n.jsx)(xi.a,{component:e.component,className:a.subTitleMenu,children:e.name},e.name);default:return null}})),Object(n.jsx)(wi.a,{})]},"menuGroup-".concat(e.group))]},"menuElem-".concat(t.toString()))})),Object(n.jsxs)(xi.a,{button:!0,onClick:function(){var e=function(){ie(),t(!1),localStorage.setItem("userLoggedIn",""),b.push("/login")};pe.invoke("POST","/api/v1/logout").then((function(){e()})).catch((function(t){console.log(t),e()}))},children:[Object(n.jsx)(vi.a,{children:Object(n.jsx)(Fi,{})}),Object(n.jsx)(ki.a,{primary:"Logout"})]})]})]})}))),Wi={setModalErrorSnackMessage:q},Vi=Object(s.b)(null,Wi),Gi=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({jsonPolicyEditor:{minHeight:400,width:"100%"},buttonContainer:{textAlign:"right"},infoDetails:{color:"#393939",fontSize:12,fontStyle:"italic",marginBottom:"8px"},containerScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto"}},we))}))(Vi((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.setModalErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),f=O[0],v=O[1];Object(c.useEffect)((function(){l&&pe.invoke("POST","/api/v1/service-accounts",{policy:m}).then((function(e){d(!1),i(e)})).catch((function(e){d(!1),r(e)}))}),[l,d,r,m,i]);return Object(n.jsx)(xa,{modalOpen:a,onClose:function(){i(null)},title:"Create Service Account",children:Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),d(!0)}(e)},children:[Object(n.jsxs)(x.a,{container:!0,className:t.containerScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.infoDetails,children:"Service Accounts inherit the policy explicitly attached to the parent user and the policy attached to each group in which the parent user has membership. You can specify an optional JSON-formatted policy below to restrict the Service Account access to a subset of actions and resources explicitly allowed for the parent user. You cannot modify the Service Account optional policy after saving."})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"locking",id:"locking",name:"locking",checked:f,onChange:function(e){v(e.target.checked)},label:"Restrict with policy",indicatorLabels:["On","Off"]})}),f&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(bc,{value:m,onBeforeChange:function(e,t,a){h(a)}})})]}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){h("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l,children:"Create"})]}),l&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})]})})}))),qi={setErrorSnackMessage:V},Hi=Object(s.b)(null,qi),Yi=Object(w.a)((function(e){return Object(k.a)({wrapText:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"}})}))(Hi((function(e){var t=e.classes,a=e.closeDeleteModalAndRefresh,i=e.deleteOpen,r=e.selectedServiceAccount,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];Object(c.useEffect)((function(){d&&pe.invoke("DELETE","/api/v1/service-accounts/".concat(r)).then((function(){b(!1),a(!0)})).catch((function(e){b(!1),o(e)}))}),[d,a,r,o]);return Object(n.jsxs)(ha.a,{open:i,onClose:function(){a(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete ServiceAccount"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete service account"," ",Object(n.jsx)("b",{className:t.wrapText,children:r}),"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){a(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){null!=r&&b(!0)},color:"secondary",autoFocus:!0,children:"Delete"})]})]})}))),Qi=Object(w.a)((function(e){return Object(k.a)({warningBlock:{color:"red"},buttonContainer:{textAlign:"right"},credentialsPanel:{overflowY:"auto",maxHeight:350}})}))((function(e){var t=e.classes,a=e.newServiceAccount,c=e.open,r=e.closeModal,o=e.entity;if(!a)return null;var s=Z()(a,"console",null);return Object(n.jsx)(xa,{modalOpen:c,onClose:function(){r()},title:"New ".concat(o," Created"),children:Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:["A new ",o," has been created with the following details:",s&&Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.credentialsPanel,children:[Object(n.jsx)("strong",{children:"Console Credentials"}),Array.isArray(s)&&s.map((function(e,t){return Object(n.jsxs)("ul",{children:[Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Access Key:"})," ",e.accessKey]}),Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Secret Key:"})," ",e.secretKey]})]},"creds-item-".concat(t.toString()))})),!Array.isArray(s)&&Object(n.jsxs)("ul",{children:[Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Access Key:"})," ",s.accessKey]}),Object(n.jsxs)("li",{children:[Object(n.jsx)("b",{children:"Secret Key:"})," ",s.secretKey]})]})]})}),Object(n.jsx)(v.a,{component:"p",variant:"body1",className:t.warningBlock,children:"Write these down, as this is the only time the secret will be displayed."})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)(g.a,{onClick:function(){var e={};if(s)if(Array.isArray(s)){var t=s.map((function(e){return{access_key:e.accessKey,secret_key:e.secretKey}}));e={console:Object($e.a)(t)}}else e={console:[{access_key:s.accessKey,secret_key:s.secretKey}]};!function(e,t){var a=document.createElement("a");a.setAttribute("href","data:text/plain;charset=utf-8,"+encodeURIComponent(t)),a.setAttribute("download",e),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a)}("credentials.json",JSON.stringify(Object(j.a)({},e)))},color:"primary",children:"Download"}),Object(n.jsx)(g.a,{onClick:function(){r()},color:"secondary",autoFocus:!0,children:"Done"})]})]})})})})),Zi=function(e,t){return e.accessKey>t.accessKey?1:e.accessKeyt.name?1:e.namet?1:e0&&m.length>0&&f.length>0),children:"Save"})}),k&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})}):null}))),nr=Object(s.b)(null,{displayErrorMessage:V}),cr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"480px",minWidth:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},imageIcon:{height:"100%"},iconRoot:{textAlign:"center"}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(nr((function(e){var t=e.classes,a=e.displayErrorMessage,r=e.changePassword,o=Object(c.useState)([]),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(!1),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(""),O=Object(u.a)(p,2),y=O[0],S=O[1],C=Object(c.useState)(!1),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(!1),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(null),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(!1),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(null),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!1),G=Object(u.a)(V,2),q=G[0],H=G[1];Object(c.useEffect)((function(){Y()}),[]),Object(c.useEffect)((function(){m&&pe.invoke("GET","/api/v1/service-accounts").then((function(e){var t=e.sort($i);h(!1),d(t)})).catch((function(e){a(e),h(!1)}))}),[m,h,d,a]);var Y=function(){h(!0)},Q=[{type:"delete",onClick:function(e){D(e),_(!0)}}],Z=l.filter((function(e){return e.toLowerCase().includes(y.toLowerCase())}));return Object(n.jsxs)(i.a.Fragment,{children:[N&&Object(n.jsx)(Gi,{open:N,closeModalAndRefresh:function(e){!function(e){if(w(!1),Y(),null!==e){var t={console:{accessKey:"".concat(e.accessKey),secretKey:"".concat(e.secretKey)}};W(t),P(!0)}}(e)}}),A&&Object(n.jsx)(Yi,{deleteOpen:A,selectedServiceAccount:F,closeDeleteModalAndRefresh:function(e){!function(e){_(!1),e&&Y()}(e)}}),R&&Object(n.jsx)(Qi,{newServiceAccount:U,open:R,closeModal:function(){P(!1),W(null)},entity:"Service Account"}),Object(n.jsx)(Ga,{label:"Account"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[r&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"h5",component:"h5",children:"Settings"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(ar,{open:q,closeModal:function(){return H(!1)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(er.a,{}),onClick:function(){return H(!0)},children:"Change Password"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsx)(wi.a,{}),Object(n.jsx)("br",{})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"h5",component:"h5",children:"Service Accounts"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Service Accounts",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){S(e.target.value)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){w(!0),D(null)},children:"Create service account"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{isLoading:m,records:Z,entityName:"Service Accounts",idField:"",columns:[{label:"Service Account",elementKey:""}],itemActions:Q})})]})})]})}))),ir=a(227),rr=a.n(ir),or={setModalErrorSnackMessage:q},sr=Object(s.b)(null,or),lr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#000",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#000"}}}},Me),Be))}))(sr((function(e){var t=e.classes,a=e.selectedGroups,r=e.setSelectedGroups,o=e.setModalErrorSnackMessage,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),g=Object(u.a)(O,2),v=g[0],S=g[1],k=Object(c.useCallback)((function(){pe.invoke("GET","/api/v1/groups").then((function(e){var t=Z()(e,"groups",[]);t||(t=[]),b(t.sort($i)),p(!1)})).catch((function(e){o(e),p(!1)}))}),[o]);Object(c.useEffect)((function(){p(!0)}),[]),Object(c.useEffect)((function(){h&&k()}),[h,k]);var N=a||[],w=d.filter((function(e){return e.includes(v)}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:t.paper,children:[h&&Object(n.jsx)(y.a,{}),null!=d&&d.length>0?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)("span",{className:t.actionsTitle,children:"Assign Groups"}),Object(n.jsx)(f.a,{placeholder:"Filter by Group",className:t.filterField,id:"search-resource",label:"",InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){S(e.target.value)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tableBlock,children:Object(n.jsx)(ma,{columns:[{label:"Group",elementKey:""}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(N);return n?c.push(a):c=c.filter((function(e){return e!==a})),r(c),c},selectedItems:N,isLoading:h,records:w,entityName:"Groups",idField:"",customPaperHeight:t.multiSelectTable})})]}):Object(n.jsx)("div",{className:t.noFound,children:"No Groups Available"})]})})})}))),dr={setModalErrorSnackMessage:q},br=Object(s.b)(null,dr),ur=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(br((function(e){var t=e.classes,a=e.closeModalAndRefresh,r=e.selectedUser,o=e.open,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)([]),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)([]),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useCallback)((function(){if(!r)return null;pe.invoke("GET","/api/v1/users/".concat(r.accessKey)).then((function(e){j(!1),O(e.accessKey),I(e.memberOf||[]),L(e.memberOf||[]),T("enabled"===e.status)})).catch((function(e){j(!1),s(e)}))}),[r,s]);Object(c.useEffect)((function(){null==r?(O(""),C(""),I([])):B()}),[r,B]);var R=""!==p.trim()&&(""!==S.trim()&&null===r||null!==r);return Object(n.jsxs)(xa,{onClose:function(){a()},modalOpen:o,title:null!==r?"Edit User":"Create User",children:[null!==r&&Object(n.jsx)("div",{className:t.floatingEnabled,children:Object(n.jsx)(Pa,{indicatorLabels:["Enabled","Disabled"],checked:w,value:"user_enabled",id:"user-status",name:"user-status",onChange:function(e){T(e.target.checked)},switchOnly:!0})}),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),null!==r?pe.invoke("PUT","/api/v1/users/".concat(r.accessKey),{status:w?"enabled":"disabled",groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})):pe.invoke("POST","/api/v1/users",{accessKey:p,secretKey:S,groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(Sa,{id:"accesskey-input",name:"accesskey-input",label:"Access Key",value:p,onChange:function(e){O(e.target.value)},disabled:null!==r}),null!==r?Object(n.jsx)(Za,{label:"Current Groups",content:D.join(", ")}):Object(n.jsx)(Sa,{id:"standard-multiline-static",name:"standard-multiline-static",label:"Secret Key",type:"password",value:S,onChange:function(e){C(e.target.value)},autoComplete:"current-password"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lr,{selectedGroups:_,setSelectedGroups:function(e){I(e)}})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){null===r?(O(""),C(""),I([])):I([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||!R,children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})]})}))),jr={setErrorSnackMessage:V},mr=Object(s.b)(null,jr)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedUser,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1];return null===i?Object(n.jsx)("div",{}):Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete User"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete user ",Object(n.jsx)("b",{children:i.accessKey}),"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){l||null!=i&&(d(!0),pe.invoke("DELETE","/api/v1/users/".concat(i.accessKey),{id:i.id}).then((function(e){d(!1),t(!0)})).catch((function(e){d(!1),r(e)})))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})),hr={setModalErrorSnackMessage:q},pr=Object(s.b)(null,hr),Or=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(pr((function(e){var t=e.open,a=e.checkedUsers,r=e.closeModalAndRefresh,o=e.classes,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)([]),v=Object(u.a)(f,2),S=v[0],C=v[1];Object(c.useEffect)((function(){b&&(S.length>0?pe.invoke("PUT","/api/v1/users-groups-bulk",{groups:S,users:a}).then((function(){j(!1),O(!0)})).catch((function(e){j(!1),s(e)})):(j(!1),s("You need to select at least one group to assign")))}),[b,j,r,S,a,s]);return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){r(p)},title:p?"The selected users were added to the following groups.":"Add Users to Group",children:p?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(Za,{label:"Groups",content:S.join(", ")}),Object(n.jsx)(Za,{label:"Users",content:a.join(", ")})]}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{})]}):Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),j(!0)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.formScrollable,children:[Object(n.jsx)(Za,{label:"Selected Users",content:a.join(", ")}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lr,{selectedGroups:S,setSelectedGroups:C})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:o.clearButton,onClick:function(){C([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||S.length<1,children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),gr=Object(s.b)(null,{setModalErrorSnackMessage:q}),fr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#000",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#000"}}}},Me),Be))}))(gr((function(e){var t=e.classes,a=e.selectedPolicy,r=void 0===a?[]:a,o=e.setSelectedPolicy,s=e.setModalErrorSnackMessage,l=Object(c.useState)([]),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)(""),v=Object(u.a)(g,2),S=v[0],k=v[1],N=Object(c.useCallback)((function(){O(!0),pe.invoke("GET","/api/v1/policies?limit=1000").then((function(e){var t=null===e.policies?[]:e.policies;O(!1),j(t.sort(Ji))})).catch((function(e){O(!1),s(e)}))}),[s]);Object(c.useEffect)((function(){O(!0)}),[]),Object(c.useEffect)((function(){p&&N()}),[p,N]);var w=b.filter((function(e){return e.name.includes(S)}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:t.paper,children:[p&&Object(n.jsx)(y.a,{}),b.length>0?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)("span",{className:t.actionsTitle,children:"Assign Policies"}),Object(n.jsx)(f.a,{placeholder:"Filter by Policy",className:t.filterField,id:"search-resource",label:"",InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){k(e.target.value)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tableBlock,children:Object(n.jsx)(ma,{columns:[{label:"Policy",elementKey:"name"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(r);n?c.push(a):c=c.filter((function(e){return e!==a})),c=c.filter((function(e){return""!==e})),o(c)},selectedItems:r,isLoading:p,records:w,entityName:"Policies",idField:"name",customPaperHeight:t.multiSelectTable})})]}):Object(n.jsx)("div",{className:t.noFound,children:"No Policies Available"})]})})})}))),xr={setModalErrorSnackMessage:q},vr=Object(s.b)(null,xr),yr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},we),{},{buttonContainer:{textAlign:"right"}}))}))(vr((function(e){var t=e.classes,a=e.closeModalAndRefresh,i=e.selectedUser,r=e.selectedGroup,o=e.setModalErrorSnackMessage,s=e.open,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)([]),v=Object(u.a)(f,2),S=v[0],C=v[1];Object(c.useEffect)((function(){if(s){if(null!==r)return void(r&&pe.invoke("GET","/api/v1/groups/".concat(r)).then((function(e){var t=Z()(e,"policy","");O(t.split(",")),C(t.split(","))})).catch((function(e){o(e),j(!1)})));var e=Z()(i,"policy",[]);O(e),C(e)}}),[s,r,i]);var k=Z()(i,"accessKey","");return Object(n.jsxs)(xa,{onClose:function(){a()},modalOpen:s,title:"Set Policies",children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Za,{label:"Selected ".concat(null!==r?"Group":"User"),content:null!==r?r:k})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Za,{label:"Current Policy",content:p.join(", ")})}),Object(n.jsx)(fr,{selectedPolicy:S,setSelectedPolicy:C}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){C(p)},children:"Clear"}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",disabled:b,onClick:function(){var e="user",t=null;null!==r?(e="group",t=r):null!==i&&(t=i.accessKey),j(!0),pe.invoke("PUT","/api/v1/set-policy/".concat(S),{entityName:t,entityType:e}).then((function(){j(!1),a()})).catch((function(e){j(!1),o(e)}))},children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})}))),Sr={setErrorSnackMessage:V},Cr=Object(s.b)(null,Sr),kr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Cr((function(e){var t=e.classes,a=e.setErrorSnackMessage,r=Object(c.useState)([]),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!1),j=Object(u.a)(d,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),v=O[0],y=O[1],S=Object(c.useState)(!1),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(null),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(!1),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(""),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)([]),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(!1),V=Object(u.a)(W,2),G=V[0],q=V[1],H=Object(c.useCallback)((function(){h(!0),pe.invoke("GET","/api/v1/users").then((function(e){var t=null===e.users?[]:e.users;h(!1),l(t.sort(Zi))})).catch((function(e){h(!1),a(e)}))}),[h,l,a]);Object(c.useEffect)((function(){H()}),[H]);var Y=s.filter((function(e){return e.accessKey.includes(B)})),Q=atob(localStorage.getItem("userLoggedIn")||""),Z=[{type:"view",onClick:function(e){b.push("/users/".concat(e.accessKey))}},{type:"delete",onClick:function(e){N(!0),A(e)},disableButtonFunction:function(e){return e===Q}}];return Object(n.jsxs)(i.a.Fragment,{children:[v&&Object(n.jsx)(ur,{open:v,selectedUser:E,closeModalAndRefresh:function(){y(!1),H()}}),G&&Object(n.jsx)(yr,{open:G,selectedUser:E,selectedGroup:null,closeModalAndRefresh:function(){q(!1),H()}}),k&&Object(n.jsx)(mr,{deleteOpen:k,selectedUser:E,closeDeleteModalAndRefresh:function(e){!function(e){N(!1),e&&H()}(e)}}),M&&Object(n.jsx)(Or,{open:M,checkedUsers:K,closeModalAndRefresh:function(e){!function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];F(!1),e&&U([])}(e)}}),Object(n.jsx)(Ga,{label:"Users"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Users",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){R(e.target.value)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(rr.a,{}),disabled:K.length<=0,onClick:function(){K.length>0&&F(!0)},children:"Add to Group"}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){y(!0),A(null)},children:"Create User"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:Z,columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(K);return n?c.push(a):c=c.filter((function(e){return e!==a})),U(c),c},selectedItems:K,isLoading:m,records:Y,entityName:"Users",idField:"accessKey"})})]})})]})}))),Nr=a(47),wr={setModalErrorSnackMessage:q},Tr=Object(s.b)(null,wr),Er=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(Tr((function(e){var t=e.classes,a=e.closeModalAndRefresh,r=e.selectedUser,o=e.open,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)([]),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useCallback)((function(){if(!r)return null;pe.invoke("GET","/api/v1/users/".concat(r)).then((function(e){j(!1),O(e.accessKey),I(e.memberOf||[]),T("enabled"===e.status)})).catch((function(e){j(!1),s(e)}))}),[r,s]);Object(c.useEffect)((function(){null==r?(O(""),C(""),I([])):M()}),[r,M]);var F=""!==p.trim()&&(""!==S.trim()&&null===r||null!==r);return Object(n.jsx)(xa,{onClose:function(){a()},modalOpen:o,title:"Set Groups",children:Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),null!==r?pe.invoke("PUT","/api/v1/users/".concat(r),{status:w?"enabled":"disabled",groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})):pe.invoke("POST","/api/v1/users",{accessKey:p,secretKey:S,groups:_}).then((function(e){j(!1),a()})).catch((function(e){j(!1),s(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.formScrollable,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(lr,{selectedGroups:_,setSelectedGroups:function(e){I(e)}})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){null===r?(O(""),C(""),I([])):I([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||!F,children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})})}))),Ar={setModalErrorSnackMessage:q},_r=Object(s.b)(null,Ar),Ir=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({},we),{},{buttonContainer:{textAlign:"right"}}))}))(_r((function(e){var t=e.classes,a=e.closeModalAndRefresh,i=e.selectedUser,r=e.currentPolicies,o=e.setModalErrorSnackMessage,s=e.open,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)([]),v=Object(u.a)(f,2),S=v[0],C=v[1];return Object(c.useEffect)((function(){if(s){var e,t=[],a=Object(Nr.a)(r);try{for(a.s();!(e=a.n()).done;){var n=e.value;t.push(n.policy)}}catch(c){a.e(c)}finally{a.f()}O(t),C(t)}}),[s,i]),Object(n.jsxs)(xa,{onClose:function(){a()},modalOpen:s,title:"Set Policies",children:[Object(n.jsx)(fr,{selectedPolicy:S,setSelectedPolicy:C}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:function(){C(p)},children:"Clear"}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",disabled:b,onClick:function(){var e=i;j(!0),pe.invoke("PUT","/api/v1/set-policy/".concat(S),{entityName:e,entityType:"user"}).then((function(){j(!1),a()})).catch((function(e){j(!1),o(e)}))},children:"Save"})]}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})}))),Mr=a(992);function Fr(e){return{id:"simple-tab-".concat(e),"aria-controls":"simple-tabpanel-".concat(e)}}var Dr,Lr={setErrorSnackMessage:V},Br=Object(s.b)(null,Lr),Rr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},fixedHeight:{height:165,minWidth:247,padding:"25px 28px","& svg":{maxHeight:18}},paperContainer:{padding:15,paddingLeft:50,display:"flex"},gridContainer:{display:"grid",gridTemplateColumns:"auto auto",gridGap:8,justifyContent:"flex-start",alignItems:"center","& div:not(.MuiCircularProgress-root)":{display:"flex",alignItems:"center"},"& div:nth-child(odd)":{justifyContent:"flex-end",fontWeight:700},"& div:nth-child(2n)":{minWidth:150}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Br((function(e){var t=e.classes,a=e.match,r=Object(c.useState)(0),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(!1),m=Object(u.a)(d,2),h=m[0],p=m[1],O=Object(c.useState)(!1),f=Object(u.a)(O,2),v=f[0],y=f[1],S=Object(c.useState)(!1),k=Object(u.a)(S,2),N=k[0],w=k[1],T=Object(c.useState)(!1),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(!1),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)([]),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)([]),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)([]),G=Object(u.a)(V,2),H=G[0],Y=G[1],Q=a.params.userName,Z=Object(c.useCallback)((function(){if(""===Q)return null;p(!0),pe.invoke("GET","/api/v1/users/".concat(Q)).then((function(e){_(!1);var t=e.memberOf||[];P(t);var a,n=[],c=Object(Nr.a)(t);try{for(c.s();!(a=c.n()).done;){var i=a.value;n.push({group:i})}}catch(d){c.e(d)}finally{c.f()}W(n);var r,o=[],s=Object(Nr.a)(e.policy);try{for(s.s();!(r=s.n()).done;){var l=r.value;o.push({policy:l})}}catch(d){s.e(d)}finally{s.f()}Y(o),D("enabled"===e.status),p(!1)})).catch((function(e){_(!1),p(!1),q(e)}))}),[Q]);Object(c.useEffect)((function(){Z()}),[Z]);var J=atob(localStorage.getItem("userLoggedIn")||"");return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"User: ".concat(Q)}),v&&Object(n.jsx)(Er,{open:v,selectedUser:Q,closeModalAndRefresh:function(){y(!1),Z()}}),N&&Object(n.jsx)(Ir,{open:N,selectedUser:Q,currentPolicies:H,closeModalAndRefresh:function(){w(!1),Z()}}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{container:!0,spacing:2,children:Object(n.jsx)(x.a,{item:!0,children:Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsxs)("div",{className:t.gridContainer,children:[Object(n.jsx)("div",{children:"Enabled:"}),Object(n.jsx)("div",{className:t.capitalizeFirst,children:Object(n.jsx)(Pa,{checked:F,value:"user_enabled",id:"user-status",name:"user-status",disabled:J===Q,onChange:function(e){var t;D(e.target.checked),t=e.target.checked,A||(_(!0),pe.invoke("PUT","/api/v1/users/".concat(Q),{status:t?"enabled":"disabled",groups:R}).then((function(e){_(!1)})).catch((function(e){_(!1),q(e)})))},switchOnly:!0})})]})})})})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:9,children:Object(n.jsxs)(an.a,{value:s,onChange:function(e,t){l(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,Object(j.a)({label:"Groups"},Fr(0))),Object(n.jsx)(nn.a,Object(j.a)({label:"Policies"},Fr(0)))]})}),Object(n.jsxs)(x.a,{item:!0,xs:3,className:t.actionsTray,children:[0===s&&Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),size:"medium",onClick:function(){y(!0)},children:"Add to Groups"}),1===s&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(Mr.a,{}),size:"medium",onClick:function(){w(!0)},children:"Assign Policies"})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(rn,{index:0,value:s,children:Object(n.jsx)(ma,{columns:[{label:"Name",elementKey:"group"}],isLoading:h,records:U,entityName:"Groups",idField:"group"})}),Object(n.jsx)(rn,{index:1,value:s,children:Object(n.jsx)(ma,{itemActions:[{type:"view",onClick:function(e){b.push("/policies/".concat(e.policy))}}],columns:[{label:"Name",elementKey:"policy"}],isLoading:h,records:H,entityName:"Policies",idField:"policy"})})]})]})})]})}))),Pr=Object(s.b)((function(e){return{open:e.system.sidebarOpen}}),{setMenuOpen:z}),zr=Object(l.g)(Pr((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:"/users/:userName",component:Rr}),Object(n.jsx)(l.b,{path:"/",component:kr}),Object(n.jsx)(l.b,{component:Je})]})})}))),Kr={setModalErrorSnackMessage:q},Ur=Object(s.b)(null,Kr),Wr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column",paddingTop:15,boxShadow:"none"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},noFound:{textAlign:"center",padding:"10px 0"},tableContainer:{maxHeight:200},stickyHeader:{backgroundColor:"#fff"},actionsTitle:{fontWeight:600,color:"#000",fontSize:16,alignSelf:"center"},tableBlock:{marginTop:15},filterField:{width:375,fontWeight:600,"& .input":{"&::placeholder":{fontWeight:600,color:"#000"}}}},Me),Be))}))(Ur((function(e){var t=e.classes,a=e.selectedUsers,r=e.setSelectedUsers,o=e.editMode,s=void 0!==o&&o,l=e.setModalErrorSnackMessage,d=Object(c.useState)([]),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],g=p[1],v=Object(c.useState)(""),S=Object(u.a)(v,2),k=S[0],N=S[1],w=Object(c.useCallback)((function(){pe.invoke("GET","/api/v1/users").then((function(e){var t=Z()(e,"users",[]);t||(t=[]),m(t.sort(Zi)),g(!1)})).catch((function(e){l(e),g(!1)}))}),[l]);Object(c.useEffect)((function(){g(!0)}),[]),Object(c.useEffect)((function(){O&&w()}),[O,w]);var T=a||[],E=j.filter((function(e){return e.accessKey.includes(k)}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(C.a,{className:t.paper,children:[O&&Object(n.jsx)(y.a,{}),null!=j&&j.length>0?Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)("span",{className:t.actionsTitle,children:s?"Edit Members":"Assign Users"}),Object(n.jsx)(f.a,{placeholder:"Filter Users",className:t.filterField,id:"search-resource",label:"",InputProps:{startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){N(e.target.value)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tableBlock,children:Object(n.jsx)(ma,{columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(T);return n?c.push(a):c=c.filter((function(e){return e!==a})),r(c),c},selectedItems:T,isLoading:O,records:E,entityName:"Users",idField:"accessKey",customPaperHeight:t.multiSelectTable})})]}):Object(n.jsx)("div",{className:t.noFound,children:"No Users Available"})]})})})}))),Vr={setModalErrorSnackMessage:q},Gr=Object(s.b)(null,Vr),qr=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"}},we))}))(Gr((function(e){var t=e.open,a=e.selectedGroup,r=e.closeModalAndRefresh,o=e.classes,s=e.setModalErrorSnackMessage,l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(!1),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)([]),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1];Object(c.useEffect)((function(){null!==a?I(!0):(j(""),T([]))}),[a]),Object(c.useEffect)((function(){L(""!==b.trim())}),[b,w]),Object(c.useEffect)((function(){if(S){null!==a?pe.invoke("PUT","/api/v1/groups/".concat(b),{group:b,members:w,status:p?"enabled":"disabled"}).then((function(e){C(!1),r()})).catch((function(e){C(!1),s(e)})):pe.invoke("POST","/api/v1/groups",{group:b,members:w}).then((function(e){C(!1),r()})).catch((function(e){C(!1),s(e)}))}}),[S,b,w,p,a,r,s]),Object(c.useEffect)((function(){if(a&&_){pe.invoke("GET","/api/v1/groups/".concat(a)).then((function(e){O("enabled"===e.status),j(e.name),T(e.members)})).catch((function(e){s(e),I(!1)}))}}),[_,a,s]);return Object(n.jsxs)(xa,{modalOpen:t,onClose:r,title:null!==a?"Edit Group":"Create Group",children:[null!==a&&Object(n.jsx)("div",{className:o.floatingEnabled,children:Object(n.jsx)(Pa,{indicatorLabels:["Enabled","Disabled"],checked:p,value:"group_enabled",id:"group-status",name:"group-status",onChange:function(e){O(e.target.checked)},switchOnly:!0})}),Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),C(!0)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.formScrollable,children:[null===a?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"group-name",name:"group-name",label:"Group Name",value:b,onChange:function(e){j(e.target.value)}})})}):Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(Za,{label:"Group Name",content:a})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Wr,{selectedUsers:w,setSelectedUsers:T,editMode:null!==a})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:o.clearButton,onClick:function(){null===a&&j(""),T([])},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:S||!D,children:"Save"})]}),S&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})]})}))),Hr={setErrorSnackMessage:V},Yr=Object(s.b)(null,Hr),Qr=Yr((function(e){var t=e.selectedGroup,a=e.deleteOpen,r=e.closeDeleteModalAndRefresh,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];Object(c.useEffect)((function(){if(d){t&&pe.invoke("DELETE","/api/v1/groups/".concat(t)).then((function(){b(!1),r(!0)})).catch((function(e){b(!1),o(e)}))}}),[d,t,r,o]);var j=function(){r(!1)};return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(ha.a,{open:a,onClose:j,"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete User"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete group ",Object(n.jsx)("b",{children:t}),"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:j,color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){b(!0)},color:"secondary",autoFocus:!0,children:"Delete"})]})]})})})),Zr={setErrorSnackMessage:V},Jr=Object(s.b)(null,Zr),$r=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},wrapCell:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Jr((function(e){var t=e.classes,a=e.setErrorSnackMessage,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(null),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!1),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)([]),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(""),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)(!1),D=Object(u.a)(F,2),L=D[0],B=D[1];Object(c.useEffect)((function(){k(!0)}),[]),Object(c.useEffect)((function(){k(!0)}),[]),Object(c.useEffect)((function(){if(C){pe.invoke("GET","/api/v1/groups").then((function(e){var t=[];null!==e.groups&&(t=e.groups.sort($i)),E(t),k(!1)})).catch((function(e){a(e),k(!1)}))}}),[C,a]);var R=T.filter((function(e){return e.includes(I)})),P=[{type:"view",onClick:function(e){l(!0),m(e)}},{type:"description",onClick:function(e){B(!0),m(e)}},{type:"delete",onClick:function(e){v(!0),m(e)}}];return Object(n.jsxs)(i.a.Fragment,{children:[s&&Object(n.jsx)(qr,{open:s,selectedGroup:j,closeModalAndRefresh:function(){l(!1),k(!0)}}),O&&Object(n.jsx)(Qr,{deleteOpen:O,selectedGroup:j,closeDeleteModalAndRefresh:function(e){v(!1),e&&k(!0)}}),B&&Object(n.jsx)(yr,{open:L,selectedGroup:j,selectedUser:null,closeModalAndRefresh:function(){B(!1)}}),Object(n.jsx)(Ga,{label:"Groups"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Groups",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){M(e.target.value)}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){m(null),l(!0)},children:"Create Group"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:P,columns:[{label:"Name",elementKey:""}],isLoading:C,records:R,entityName:"Groups",idField:""})})]})})]})}))),Xr="notify_postgres",eo="notify_mysql",to="notify_kafka",ao="notify_amqp",no="notify_mqtt",co="notify_redis",io="notify_nats",ro="notify_elasticsearch",oo="notify_webhooks",so="notify_nsq",lo=[{configuration_id:"region",configuration_label:"Edit Region Configuration"},{configuration_id:"cache",configuration_label:"Edit Cache Configuration"},{configuration_id:"compression",configuration_label:"Edit Compression Configuration"},{configuration_id:"etcd",configuration_label:"Edit Etcd Configuration"},{configuration_id:"identity_openid",configuration_label:"Edit Identity Openid Configuration"},{configuration_id:"identity_ldap",configuration_label:"Edit Identity LDAP Configuration"},{configuration_id:"logger_webhook",configuration_label:"Edit Logger Webhook Configuration"},{configuration_id:"audit_webhook",configuration_label:"Edit Audit Webhook Configuration"}],bo={region:[{name:"name",required:!0,label:"Server Location",tooltip:'Name of the location of the server e.g. "us-west-rack2"',type:"string",placeholder:"e.g. us-west-rack-2"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",placeholder:"Enter Comment"}],cache:[{name:"drives",required:!0,label:"Drives",tooltip:'Mountpoints e.g. "/optane1" or "/optane2", you can write one per field',type:"csv",placeholder:"Enter Mount Point"},{name:"expiry",required:!1,label:"Expiry",tooltip:'Cache expiry duration in days e.g. "90"',type:"number",placeholder:"Enter Number of Days"},{name:"quota",required:!1,label:"Quota",tooltip:'Limit cache drive usage in percentage e.g. "90"',type:"number",placeholder:"Enter in %"},{name:"exclude",required:!1,label:"Exclude",tooltip:'Wildcard exclusion patterns e.g. "bucket/*.tmp" or "*.exe", you can write one per field',type:"csv",placeholder:"Enter Wildcard Exclusion Patterns"},{name:"after",required:!1,label:"After",tooltip:"Minimum number of access before caching an object",type:"number",placeholder:"Enter Number of Attempts"},{name:"watermark_low",required:!1,label:"Watermark Low",tooltip:"Watermark Low",type:"number",placeholder:"Enter Watermark Low"},{name:"watermark_high",required:!1,label:"Watermark High",tooltip:"Watermark High",type:"number",placeholder:"Enter Watermark High"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",multiline:!0,placeholder:"Enter Comment"}],compression:[{name:"extensions",required:!1,label:"Extensions",tooltip:'Extensions to compress e.g. ".txt",".log" or ".csv", you can write one per field',type:"csv",placeholder:"Enter an Extension",withBorder:!0},{name:"mime_types",required:!1,label:"Mime Types",tooltip:'Mime types e.g. "text/*","application/json" or "application/xml", you can write one per field',type:"csv",placeholder:"Enter a Mime Type",withBorder:!0}],etcd:[{name:"endpoints",required:!0,label:"Endpoints",tooltip:'List of etcd endpoints e.g. "http://localhost:2379", you can write one per field',type:"csv",placeholder:"Enter Endpoint"},{name:"path_prefix",required:!1,label:"Path Prefix",tooltip:'namespace prefix to isolate tenants e.g. "customer1/"',type:"string",placeholder:"Enter Path Prefix"},{name:"coredns_path",required:!1,label:"Coredns Path",tooltip:'Shared bucket DNS records, default is "/skydns"',type:"string",placeholder:"Enter Coredns Path"},{name:"client_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_cert_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"comment",required:!1,label:"Comment",tooltip:"You can add a comment to this setting",type:"comment",multiline:!0,placeholder:"Enter Comment"}],identity_openid:[{name:"config_url",required:!1,label:"Config URL",tooltip:"Config URL for Client ID configuration",type:"string",placeholder:"Enter Config URL"},{name:"client_id",required:!1,label:"Client ID",type:"string",placeholder:"Enter Client ID"},{name:"claim_name",required:!1,label:"Claim Name",tooltip:"Claim Name",type:"string",placeholder:"Enter Claim Name"},{name:"claim_prefix",required:!1,label:"Claim Prefix",tooltip:"Claim Prefix",type:"string",placeholder:"Enter Claim Prefix"}],identity_ldap:[{name:"server_addr",required:!0,label:"Server Addr",tooltip:'AD/LDAP server address e.g. "myldapserver.com:636"',type:"string",placeholder:"Enter Server Address"},{name:"username_format",required:!0,label:"Username Format",tooltip:'List of username bind DNs e.g. "uid=%s","cn=accounts","dc=myldapserver" or "dc=com", you can write one per field',type:"csv",placeholder:"Enter Username Format"},{name:"username_search_filter",required:!0,label:"Username Search Filter",tooltip:'User search filter, for example "(cn=%s)" or "(sAMAccountName=%s)" or "(uid=%s)"',type:"string",placeholder:"Enter Username Search Filter"},{name:"group_search_filter",required:!0,label:"Group Search Filter",tooltip:'Search filter for groups e.g. "(&(objectclass=groupOfNames)(memberUid=%s))"',type:"string",placeholder:"Enter Group Search Filter"},{name:"username_search_base_dn",required:!1,label:"Username Search Base DN",tooltip:"List of username search DNs, you can write one per field",type:"csv",placeholder:"Enter Username Search Base DN"},{name:"group_name_attribute",required:!1,label:"Group Name Attribute",tooltip:'Search attribute for group name e.g. "cn"',type:"string",placeholder:"Enter Group Name Attribute"},{name:"sts_expiry",required:!1,label:"STS Expiry",tooltip:'temporary credentials validity duration in s,m,h,d. Default is "1h"',type:"string",placeholder:"Enter STS Expiry"},{name:"tls_skip_verify",required:!1,label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "off" (verify)',type:"on|off"},{name:"server_insecure",required:!1,label:"Server Insecure",tooltip:'Allow plain text connection to AD/LDAP server, defaults to "off"',type:"on|off"},{name:"comment",required:!1,label:"Comment",tooltip:"Optionally add a comment to this setting",type:"comment",placeholder:"Enter Comment"}],logger_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}],audit_webhook:[{name:"endpoint",required:!0,label:"Endpoint",type:"string",placeholder:"Enter Endpoint"},{name:"auth_token",required:!0,label:"Auth Token",type:"string",placeholder:"Enter Auth Token"}]},uo=[{name:"queue-dir",label:"Queue Directory",required:!0,tooltip:"staging dir for undelivered messages e.g. '/home/events'",type:"string",placeholder:"Enter Queue Directory"},{name:"queue-limit",label:"Queue Limit",required:!1,tooltip:"maximum limit for undelivered messages, defaults to '10000'",type:"number",placeholder:"Enter Queue Limit"},{name:"comment",label:"Comment",required:!1,type:"comment",placeholder:"Enter Comment"}],jo=(Dr={},Object(xe.a)(Dr,to,[{name:"brokers",label:"Brokers",required:!0,tooltip:"Comma separated list of Kafka broker addresses",type:"string",placeholder:"Enter Brokers"},{name:"topic",label:"Topic",tooltip:"Kafka topic used for bucket notifications",type:"string",placeholder:"Enter Topic"},{name:"sasl_username",label:"SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Username"},{name:"sasl_password",label:"SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication",type:"string",placeholder:"Enter SASL Password"},{name:"sasl_mechanism",label:"SASL Mechanism",tooltip:"SASL authentication mechanism, default 'PLAIN'",type:"string"},{name:"tls_client_auth",label:"TLS Client Auth",tooltip:"Client Auth determines the Kafka server's policy for TLS client auth",type:"string",placeholder:"Enter TLS Client Auth"},{name:"sasl",label:"SASL",tooltip:"Set to 'on' to enable SASL authentication",type:"on|off"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS skip verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"client_tls_cert",label:"client TLS cert",tooltip:"Path to client certificate for mTLS auth",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS auth",type:"path",placeholder:"Enter TLS Client Key"},{name:"version",label:"Version",tooltip:"Specify the version of the Kafka cluster e.g '2.2.0'",type:"string",placeholder:"Enter Kafka Version"}].concat(uo)),Object(xe.a)(Dr,ao,[{name:"url",required:!0,label:"URL",tooltip:"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`",type:"url"},{name:"exchange",label:"Exchange",tooltip:"Name of the AMQP exchange",type:"string",placeholder:"Enter Exchange"},{name:"exchange_type",label:"Exchange Type",tooltip:"AMQP exchange type",type:"string",placeholder:"Enter Exchange Type"},{name:"routing_key",label:"Routing Key",tooltip:"Routing key for publishing",type:"string",placeholder:"Enter Routing Key"},{name:"mandatory",label:"Mandatory",tooltip:"Quietly ignore undelivered messages when set to 'off', default is 'on'",type:"on|off"},{name:"durable",label:"Durable",tooltip:"Persist queue across broker restarts when set to 'on', default is 'off'",type:"on|off"},{name:"no_wait",label:"No Wait",tooltip:"Non-blocking message delivery when set to 'on', default is 'off'",type:"on|off"},{name:"internal",label:"Internal",tooltip:"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges",type:"on|off"},{name:"auto_deleted",label:"Auto Deleted",tooltip:"Auto delete queue when set to 'on', when there are no consumers",type:"on|off"},{name:"delivery_mode",label:"Delivery Mode",tooltip:"Set to '1' for non-persistent or '2' for persistent queue",type:"number",placeholder:"Enter Delivery Mode"}].concat(uo)),Object(xe.a)(Dr,co,[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address. For example: `localhost:6379`",type:"address",placeholder:"Enter Address"},{name:"key",required:!0,label:"Key",tooltip:"Redis key to store/update events, key is auto-created",type:"string",placeholder:"Enter Key"},{name:"password",label:"Password",tooltip:"Redis server password",type:"string",placeholder:"Enter Password"}].concat(uo)),Object(xe.a)(Dr,no,[{name:"broker",required:!0,label:"Broker",tooltip:"MQTT server endpoint e.g. `tcp://localhost:1883`",type:"uri",placeholder:"Enter Brokers"},{name:"topic",required:!0,label:"Topic",tooltip:"name of the MQTT topic to publish",type:"string",placeholder:"Enter Topic"},{name:"username",label:"Username",tooltip:"MQTT username",type:"string",placeholder:"Enter Username"},{name:"password",label:"Password",tooltip:"MQTT password",type:"string",placeholder:"Enter Password"},{name:"qos",label:"QOS",tooltip:"Set the quality of service priority, defaults to '0'",type:"number",placeholder:"Enter QOS"},{name:"keep_alive_interval",label:"Keep Alive Interval",tooltip:"Keep-alive interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Keep Alive Internal"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"}].concat(uo)),Object(xe.a)(Dr,io,[{name:"address",required:!0,label:"Address",tooltip:"NATS server address e.g. '0.0.0.0:4222'",type:"address",placeholder:"Enter Address"},{name:"subject",required:!0,label:"Subject",tooltip:"NATS subscription subject",type:"string",placeholder:"Enter NATS Subject"},{name:"username",label:"Username",tooltip:"NATS username",type:"string",placeholder:"Enter NATS Username"},{name:"password",label:"Password",tooltip:"NATS password",type:"string",placeholder:"Enter NATS password"},{name:"token",label:"Token",tooltip:"NATS token",type:"string",placeholder:"Enter NATS token"},{name:"tls",label:"TLS",tooltip:"Set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'Trust server TLS without verification, defaults to "on" (verify)',type:"on|off"},{name:"ping_interval",label:"Ping Interval",tooltip:"Client ping commands interval in s,m,h,d. Disabled by default",type:"duration",placeholder:"Enter Ping Interval"},{name:"streaming",label:"Streaming",tooltip:"Set to 'on', to use streaming NATS server",type:"on|off"},{name:"streaming_async",label:"Streaming async",tooltip:"Set to 'on', to enable asynchronous publish",type:"on|off"},{name:"streaming_max_pub_acks_in_flight",label:"Streaming max publish ACKS in flight",tooltip:"Number of messages to publish without waiting for ACKs",type:"number",placeholder:"Enter Streaming in flight value"},{name:"streaming_cluster_id",label:"Streaming Cluster ID",tooltip:"Unique ID for NATS streaming cluster",type:"string",placeholder:"Enter Streaming Cluster ID"},{name:"cert_authority",label:"Cert Authority",tooltip:"Path to certificate chain of the target NATS server",type:"string",placeholder:"Enter Cert Authority"},{name:"client_cert",label:"Client Cert",tooltip:"Client cert for NATS mTLS auth",type:"string",placeholder:"Enter Client Cert"},{name:"client_key",label:"Client Key",tooltip:"Client cert key for NATS mTLS auth",type:"string",placeholder:"Enter Client Key"}].concat(uo)),Object(xe.a)(Dr,ro,[{name:"url",required:!0,label:"URL",tooltip:"Elasticsearch server's address, with optional authentication info",type:"url",placeholder:"Enter URL"},{name:"index",required:!0,label:"Index",tooltip:"Elasticsearch index to store/update events, index is auto-created",type:"string",placeholder:"Enter Index"},{name:"format",required:!0,label:"Format",tooltip:"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'",type:"enum",placeholder:"Enter Format"}].concat(uo)),Object(xe.a)(Dr,oo,[{name:"endpoint",required:!0,label:"Endpoint",tooltip:"webhook server endpoint e.g. http://localhost:8080/minio/events",type:"url",placeholder:"Enter Endpoint"},{name:"auth_token",label:"Auth Token",tooltip:"opaque string or JWT authorization token",type:"string",placeholder:"Enter auth_token"}].concat(uo)),Object(xe.a)(Dr,so,[{name:"nsqd_address",required:!0,label:"NSQD Address",tooltip:"NSQ server address e.g. '127.0.0.1:4150'",type:"address",placeholder:"Enter nsqd_address"},{name:"topic",required:!0,label:"Topic",tooltip:"NSQ topic",type:"string",placeholder:"Enter Topic"},{name:"tls",label:"TLS",tooltip:"set to 'on' to enable TLS",type:"on|off"},{name:"tls_skip_verify",label:"TLS Skip Verify",tooltip:'trust server TLS without verification, defaults to "on" (verify)',type:"on|off"}].concat(uo)),Dr),mo=function(e){return e.filter((function(e){return""!==e.value}))},ho=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{inputWithBorder:{border:"1px solid #EAEAEA",padding:15,height:150,overflowY:"auto",position:"relative",marginTop:15},labelContainer:{display:"flex"}}))}))((function(e){var t=e.elements,a=e.name,r=e.label,o=e.tooltip,s=void 0===o?"":o,l=e.commonPlaceholder,d=void 0===l?"":l,b=e.onChange,j=e.withBorder,m=void 0!==j&&j,h=e.classes,p=Object(c.useState)([""]),O=Object(u.a)(p,2),g=O[0],f=O[1],v=Object(c.createRef)();Object(c.useEffect)((function(){if(1===g.length&&""===g[0]&&t&&""!==t){var e=t.split(",");e.push(""),f(e)}}),[t,g]),Object(c.useEffect)((function(){if(g.length>1){var e=v.current;e&&e.scrollIntoView(!1)}}),[g,v]);var y=Object(c.useRef)(!0);Object(c.useLayoutEffect)((function(){y.current?y.current=!1:C()}),[g]);var S=function(e){e.persist();var t=Object($e.a)(g);t[Z()(e.target,"dataset.index",0)]=e.target.value,f(t)},C=_n()((function(){var e=g.filter((function(e){return""!==e.trim()})).join(",");b(e)}),500),k=g.map((function(e,t){return Object(n.jsx)(Sa,{id:"".concat(a,"-").concat(t.toString()),label:"",name:"".concat(a,"-").concat(t.toString()),value:g[t],onChange:S,index:t,placeholder:d,overlayIcon:t===g.length-1?Object(n.jsx)(Fn,{}):null,overlayAction:function(){!function(e){if(""!==e[e.length-1].trim()){var t=Object($e.a)(e);t.push(""),f(t)}}(g)}},"csv-".concat(a,"-").concat(t.toString()))}));return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:h.fieldContainer,children:[Object(n.jsxs)(oa.a,{className:h.inputLabel,children:[Object(n.jsx)("span",{children:r}),""!==s&&Object(n.jsx)("div",{className:h.tooltipContainer,children:Object(n.jsx)(sa.a,{title:s,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:h.tooltip})})})})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(m?h.inputWithBorder:""),children:[k,Object(n.jsx)("div",{ref:v})]})]})})})),po=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{inputLabel:Object(j.a)(Object(j.a)({},Ne.inputLabel),{},{marginBottom:16,fontSize:14}),textBoxContainer:{flexGrow:1,position:"relative"},errorState:{color:"#b53b4b",fontSize:14,position:"absolute",top:7,right:7},cssOutlinedInput:{borderColor:"#9C9C9C",padding:16},rootContainer:{"& .MuiOutlinedInput-inputMultiline":Object(j.a)(Object(j.a)({},Ne.inputLabel),{},{fontSize:13,minHeight:150})}}))}))((function(e){var t=e.label,a=e.onChange,c=e.value,r=e.id,o=e.name,s=e.disabled,l=void 0!==s&&s,d=e.tooltip,b=void 0===d?"":d,u=e.index,j=void 0===u?0:u,m=e.error,h=void 0===m?"":m,p=e.required,O=void 0!==p&&p,g=e.placeholder,v=void 0===g?"":g,y=e.classes,S={"data-index":j};return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(y.fieldContainer," ").concat(""!==h?y.errorInField:""),children:[""!==t&&Object(n.jsxs)(oa.a,{htmlFor:r,className:y.inputLabel,children:[Object(n.jsxs)("span",{children:[t,O?"*":""]}),""!==b&&Object(n.jsx)("div",{className:y.tooltipContainer,children:Object(n.jsx)(sa.a,{title:b,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:y.tooltip})})})})]}),Object(n.jsx)("div",{className:y.textBoxContainer,children:Object(n.jsx)(f.a,{id:r,name:o,fullWidth:!0,value:c,disabled:l,onChange:a,multiline:!0,inputProps:S,error:""!==h,helperText:h,placeholder:v,InputLabelProps:{shrink:!0},InputProps:{classes:{notchedOutline:y.cssOutlinedInput,root:y.rootContainer}},variant:"outlined"})})]})})})),Oo=function(e,t,a){var n="on|off"===t?"false":"";if(a.length>0){var c=a.find((function(t){return t.key===e}));c&&(n=c.value)}return n},go=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))((function(e){var t=e.onChange,a=e.fields,i=e.defaultVals,r=(e.classes,Object(c.useState)([])),o=Object(u.a)(r,2),s=o[0],l=o[1],d=a||[],b=i||[];Object(c.useEffect)((function(){var e=[];a.forEach((function(t){var a={key:t.name,value:Oo(t.name,t.type,b)};e.push(a)})),l(e)}),[a,i]),Object(c.useEffect)((function(){t(s)}),[s]);var j=function(e,t,a){var n=Object($e.a)(s);n[a]={key:e,value:t},l(n)},m=function(e,t){switch(e.type){case"on|off":var a=s[t]?s[t].value:"false";return Object(n.jsx)(Pa,{indicatorLabels:["On","Off"],onChange:function(a){var n=a.target.checked?"true":"false";j(e.name,n,t)},id:e.name,name:e.name,label:e.label,value:"switch_on",tooltip:e.tooltip,checked:"true"===a});case"csv":return Object(n.jsx)(ho,{elements:s[t]?s[t].value:"",label:e.label,name:e.name,onChange:function(a){return j(e.name,a,t)},tooltip:e.tooltip,commonPlaceholder:e.placeholder,withBorder:!!e.withBorder});case"comment":return Object(n.jsx)(po,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:s[t]?s[t].value:"",onChange:function(a){return j(e.name,a.target.value,t)},placeholder:e.placeholder});default:return Object(n.jsx)(Sa,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:s[t]?s[t].value:"",onChange:function(a){return j(e.name,a.target.value,t)},multiline:!!e.multiline,placeholder:e.placeholder})}};return Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{xs:12,item:!0,children:d.map((function(e,t){return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:m(e,t)})},e.name)}))})})})),fo={serverNeedsRestart:K,setErrorSnackMessage:V},xo=Object(s.b)(null,fo),vo=xo(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Re),{},{strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"},logoButton:{height:"80px"},customTitle:Object(j.a)(Object(j.a)({},Re.customTitle),{},{marginTop:0})}))}))((function(e){var t=e.closeModalAndRefresh,a=e.serverNeedsRestart,i=e.selectedConfiguration,r=e.setErrorSnackMessage,o=e.classes,s=Object(c.useState)([]),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!0),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)([]),k=Object(u.a)(C,2),N=k[0],w=k[1];Object(c.useEffect)((function(){var e=Z()(i,"configuration_id",!1);e&&pe.invoke("GET","/api/v1/configs/".concat(e)).then((function(e){var t=Z()(e,"key_values",[]);w(t)})).catch((function(e){S(!1),r(e)})),S(!1)}),[i,r]),Object(c.useEffect)((function(){if(h){var e={key_values:mo(d)};pe.invoke("PUT","/api/v1/configs/".concat(i.configuration_id),e).then((function(){p(!1),a(!0),t()})).catch((function(e){p(!1),r(e)}))}}),[h,a,i,d,t,r]);var T=Object(c.useCallback)((function(e){b(e)}),[b]);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:o.customTitle,children:i.configuration_label}),Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),p(!0)},children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:o.settingsFormContainer,children:[v&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})}),Object(n.jsx)(go,{fields:bo[i.configuration_id],onChange:T,defaultVals:N})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:o.settingsButtonContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:o.innerSettingsButtonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:h,children:"Save"})})})]})})]})}))),yo=Object(w.a)((function(){return Object(k.a)({masterContainer:{overflowX:"hidden",overflowY:"auto"},sliderContainer:{width:"auto",transitionDuration:"0.3s",position:"relative"},slide:{float:"left"}})}))((function(e){var t=e.classes,a=e.slideOptions,i=e.currentSlide;return Object(n.jsx)(Pt.a,{children:function(e){var r=e.width,o=e.height,s=i*r,l=r*a.length;return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)("div",{className:t.masterContainer,style:{width:r,height:o},children:Object(n.jsx)("div",{className:t.sliderContainer,style:{left:"-".concat(s,"px"),width:"".concat(l,"px")},children:a.map((function(e,a){return Object(n.jsx)("div",{className:t.slide,style:{width:r},children:e},"slide-panel-".concat(a.toString()))}))})})})}})})),So=function(){return Object(n.jsx)(rt.a,{viewBox:"0 0 10.847 6.572",children:Object(n.jsxs)("g",{transform:"translate(-84.793 -81.193)",children:[Object(n.jsx)("line",{x2:"9.64",transform:"translate(85.5 84.5)",fill:"none",stroke:"#000",strokeLinecap:"round",strokeWidth:"1"}),Object(n.jsx)("line",{y1:"2.558",x2:"2.645",transform:"translate(85.5 81.9)",fill:"none",stroke:"#000",strokeLinecap:"round",strokeWidth:"1"}),Object(n.jsx)("line",{x2:"2.645",y2:"2.558",transform:"translate(85.5 84.5)",fill:"none",stroke:"#000",strokeLinecap:"round",strokeWidth:"1"})]})})},Co={configuration_id:"",configuration_label:""},ko=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},iconText:{lineHeight:"24px"},customConfigurationPage:{height:"calc(100vh - 324px)",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}}},Fe),Me),Re),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=Object(c.useState)(Co),i=Object(u.a)(a,2),r=i[0],o=i[1],s=Object(c.useState)(0),l=Object(u.a)(s,2),d=l[0],j=l[1],m=[{type:"edit",onClick:function(e){var t=Z()(e,"url","");""!==t?b.push(t):(j(1),o(e))}}];return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.settingsOptionsContainer,children:Object(n.jsx)(yo,{slideOptions:[Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(ma,{itemActions:m,columns:[{label:"Configuration",elementKey:"configuration_id"}],isLoading:!1,records:lo,entityName:"Configurations",idField:"configuration_id",customPaperHeight:t.customConfigurationPage,noBackground:!0})}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:function(){j(0),o(Co)},className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Configurations"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:1===d?Object(n.jsx)(vo,{closeModalAndRefresh:function(){j(0)},selectedConfiguration:r}):null})]})],currentSlide:d})})})})})})})),No=a(229),wo=a(430),To=a.n(wo),Eo=[{actionTrigger:Xr,targetTitle:"Postgres SQL",logo:"/postgres.png"},{actionTrigger:to,targetTitle:"Kafka",logo:"/kafka.png"},{actionTrigger:ao,targetTitle:"AMQP",logo:"/amqp.png"},{actionTrigger:no,targetTitle:"MQTT",logo:"/mqtt.png"},{actionTrigger:co,targetTitle:"Redis",logo:"/redis.png"},{actionTrigger:io,targetTitle:"NATS",logo:"/nats.png"},{actionTrigger:eo,targetTitle:"Mysql",logo:"/mysql.png"},{actionTrigger:ro,targetTitle:"Elastic Search",logo:"/elasticsearch.png"},{actionTrigger:oo,targetTitle:"Webhook",logo:""},{actionTrigger:so,targetTitle:"NSQ",logo:""}],Ao=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},we))}))((function(e){var t=e.onChange,a=e.classes,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(""),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],g=p[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(" "),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(""),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)("namespace"),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(""),Q=Object(u.a)(Y,2),Z=Q[0],J=Q[1],$=Object(c.useState)(""),X=Object(u.a)($,2),ee=X[0],te=X[1],ae=Object(c.useState)(""),ne=Object(u.a)(ae,2),ce=ne[0],ie=ne[1],re=Object(c.useCallback)((function(){var e="";return""!==O&&(e="".concat(e," host=").concat(O)),""!==y&&(e="".concat(e," dbname=").concat(y)),""!==A&&(e="".concat(e," user=").concat(A)),""!==F&&(e="".concat(e," password=").concat(F)),""!==N&&(e="".concat(e," port=").concat(N))," "!==R&&(e="".concat(e," sslmode=").concat(R)),(e="".concat(e," ")).trim()}),[O,y,A,F,N,R]);return Object(c.useEffect)((function(){""!==j&&t([{key:"connection_string",value:j},{key:"table",value:U},{key:"format",value:q},{key:"queue_dir",value:Z},{key:"queue_limit",value:ee},{key:"comment",value:ce}])}),[j,U,q,Z,ee,ce,t]),Object(c.useEffect)((function(){var e=re();m(e)}),[A,y,F,N,R,O,m,re]),Object(c.useEffect)((function(){if(s){var e=re();m(e)}else{var t=function(e,t){var a,n=[],c=Object(Nr.a)(t);try{for(c.s();!(a=c.n()).done;){var i=a.value,r=e.indexOf(i+"=");-1!==r&&n.push(r)}}catch(p){c.e(p)}finally{c.f()}n.sort((function(e,t){return e-t}));for(var o=new Map,s=new Array(n.length),l=0;l=0})),A=function(){T(""),C(S-1)};return Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.settingsOptionsContainer,children:Object(n.jsx)(yo,{slideOptions:[Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.lambdaContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){j(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){O(!0)},children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){C(1)},children:"Add Notification Target"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[],columns:[{label:"Status",elementKey:"status",renderFunction:function(e){return Object(n.jsxs)("div",{style:{display:"flex",alignItems:"center"},children:[Object(n.jsx)(To.a,{style:"Offline"===e?{color:No.a[500]}:{}}),e]})},width:150},{label:"Service",elementKey:"service_name"}],isLoading:p,records:E,entityName:"Lambda Notification Targets",idField:"service_name",customPaperHeight:t.customConfigurationPage,noBackground:!0})})]})}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:A,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Lambda Notifications"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Bo,{setService:function(e){T(e),C(2)}})})]}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:A,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Supported Services"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Fo,{service:w,saveAndRefresh:function(){O(!0),C(0),T("")}})})]})],currentSlide:S})})})})})})}))),Ko=a(432),Uo=a.n(Ko),Wo=a(431),Vo=a.n(Wo),Go=Object(w.a)((function(e){return Object(k.a)({errorBlock:{color:e.palette.error.main}})}))((function(e){var t=e.classes,a=e.errorMessage,c=e.withBreak,r=void 0===c||c;return Object(n.jsxs)(i.a.Fragment,{children:[r&&Object(n.jsx)("br",{}),Object(n.jsx)(v.a,{component:"p",variant:"body1",className:t.errorBlock,children:a})]})})),qo=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Ne),Te),{},{textBoxContainer:{flexGrow:1,position:"relative",flexDirection:"column"},errorState:{color:"#b53b4b",fontSize:14,position:"absolute",top:7,right:7},errorText:{margin:"0",fontSize:"0.75rem",marginTop:3,textAlign:"left",fontFamily:"Lato,sans-serif",fontWeight:400,lineHeight:"1.66",color:"#dc1f2e"},valueString:{maxWidth:350,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",marginTop:2},fileReselect:{display:"flex",alignItems:"center"},fieldBottom:{borderBottom:"#9c9c9c 1px solid"},fileInputField:{margin:"13px 0"}}))}))((function(e){var t=e.label,a=e.classes,r=e.onChange,o=e.id,s=e.name,l=e.disabled,d=void 0!==l&&l,b=e.tooltip,j=void 0===b?"":b,m=e.required,h=e.error,p=void 0===h?"":h,O=e.accept,g=void 0===O?"":O,f=e.value,v=void 0===f?"":f,y=Object(c.useState)(!1),S=Object(u.a)(y,2),C=S[0],k=S[1];return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(a.fieldBottom," ").concat(a.fieldContainer," ").concat(""!==p?a.errorInField:""),children:[""!==t&&Object(n.jsxs)(oa.a,{htmlFor:o,className:"".concat(""!==p?a.fieldLabelError:""," ").concat(a.inputLabel),children:[Object(n.jsxs)("span",{children:[t,m?"*":""]}),""!==j&&Object(n.jsx)("div",{className:a.tooltipContainer,children:Object(n.jsx)(sa.a,{title:j,placement:"top-start",children:Object(n.jsx)("div",{children:Object(n.jsx)(la,{className:a.tooltip})})})})]}),C||""===v?Object(n.jsxs)("div",{className:a.textBoxContainer,children:[Object(n.jsx)("input",{type:"file",name:s,onChange:function(e){var t=Z()(e,"target.files[0].name","");!function(e,t){var a=e.target.files[0],n=new FileReader;n.readAsDataURL(a),n.onload=function(){var e=n.result;if(e){var a=e.toString().split("base64,");2===a.length&&t(a[1])}}}(e,(function(e){r(e,t)}))},accept:g,required:m,disabled:d,className:a.fileInputField}),""!==v&&Object(n.jsx)(Lt.a,{color:"primary","aria-label":"upload picture",component:"span",onClick:function(){k(!1)},disableRipple:!1,disableFocusRipple:!1,children:Object(n.jsx)(Vo.a,{})}),""!==p&&Object(n.jsx)(Go,{errorMessage:p})]}):Object(n.jsxs)("div",{className:a.fileReselect,children:[Object(n.jsx)("div",{className:a.valueString,children:v}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"upload picture",component:"span",onClick:function(){k(!0)},disableRipple:!1,disableFocusRipple:!1,children:Object(n.jsx)(Uo.a,{})})]})]})})})),Ho={setErrorSnackMessage:V},Yo=Object(s.b)(null,Ho),Qo=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({},we),Re),{},{strongText:{fontWeight:700},keyName:{marginLeft:5},buttonContainer:{textAlign:"right"},customTitle:Object(j.a)(Object(j.a)({},Re.customTitle),{},{marginTop:0}),settingsFormContainer:Object(j.a)(Object(j.a)({},Re.settingsFormContainer),{},{height:"calc(100vh - 422px)"})}))}))(Yo((function(e){var t=e.saveAndRefresh,a=e.classes,i=e.setErrorSnackMessage,r=e.type,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),m=Object(u.a)(b,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],y=f[1],S=Object(c.useState)(""),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(""),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(""),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(""),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)(""),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(""),V=Object(u.a)(W,2),G=V[0],q=V[1],H=Object(c.useState)(""),Y=Object(u.a)(H,2),Q=Y[0],Z=Y[1],J=Object(c.useState)(""),$=Object(u.a)(J,2),X=$[0],ee=$[1],te=Object(c.useState)(""),ae=Object(u.a)(te,2),ne=ae[0],ce=ae[1],ie=Object(c.useState)(""),re=Object(u.a)(ie,2),oe=re[0],se=re[1],le=Object(c.useState)(""),de=Object(u.a)(le,2),be=de[0],ue=de[1],je=Object(c.useState)(!0),me=Object(u.a)(je,2),he=me[0],Oe=me[1];Object(c.useEffect)((function(){if(l){var e={},a={name:h,endpoint:v,bucket:k,prefix:E,region:M},n=r;switch("minio"===r&&(n="s3"),r){case"minio":case"s3":e={s3:Object(j.a)(Object(j.a)({},a),{},{accesskey:K,secretkey:G,storageclass:B})};break;case"gcs":e={gcs:Object(j.a)(Object(j.a)({},a),{},{creds:X})};break;case"azure":e={azure:Object(j.a)(Object(j.a)({},a),{},{accountname:ne,accountkey:oe})}}var c=Object(j.a)({type:n},e);pe.invoke("POST","/api/v1/admin/tiers",c).then((function(){d(!1),t()})).catch((function(e){d(!1),i(e)}))}}),[K,oe,ne,k,X,v,h,E,M,t,l,G,i,B,r]),Object(c.useEffect)((function(){var e=!0;""===r&&(e=!1),""===r&&(e=!1),""===h&&(e=!1),""===v&&(e=!1),""===k&&(e=!1),""===E&&(e=!1),""===M&&(e=!1),"s3"!==r&&"minio"!==r||(""===K&&(e=!1),""===G&&(e=!1)),"gcs"===r&&""===X&&(e=!1),"azure"===r&&(""===ne&&(e=!1),""===oe&&(e=!1)),Oe(e)}),[K,oe,ne,k,X,v,he,h,E,M,G,B,r]),Object(c.useEffect)((function(){switch(r){case"gcs":y("https://storage.googleapis.com/"),ue("Google Cloud");break;case"s3":y("https://s3.amazonaws.com"),ue("Amazon S3");break;case"azure":y("http://blob.core.windows.net"),ue("Azure");break;case"minio":y(""),ue("MinIO")}}),[r]);return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("form",{noValidate:!0,onSubmit:function(e){e.preventDefault(),d(!0)},children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:a.customTitle,children:[be," - Add Tier Configuration"]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:a.settingsFormContainer,children:Object(n.jsx)(x.a,{container:!0,children:""!==r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"name",name:"name",label:"Name",placeholder:"Enter Name",value:h,onChange:function(e){p(e.target.value)}}),Object(n.jsx)(Sa,{id:"endpoint",name:"endpoint",label:"Endpoint",placeholder:"Enter Endpoint",value:v,onChange:function(e){y(e.target.value)}}),"s3"===r||"minio"===r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",label:"Access Key",placeholder:"Enter Access Key",value:K,onChange:function(e){U(e.target.value)}}),Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",label:"Secret Key",placeholder:"Enter Secret Key",value:G,onChange:function(e){q(e.target.value)}})]}),"gcs"===r&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(qo,{accept:".json",id:"creds",label:"Credentials",name:"creds",onChange:function(e,t){ee(e),Z(t)},value:Q})}),"azure"===r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accountName",name:"accountName",label:"Account Name",placeholder:"Enter Account Name",value:ne,onChange:function(e){ce(e.target.value)}}),Object(n.jsx)(Sa,{id:"accountKey",name:"accountKey",label:"Account Key",placeholder:"Enter Account Key",value:oe,onChange:function(e){se(e.target.value)}})]}),Object(n.jsx)(Sa,{id:"bucket",name:"bucket",label:"Bucket",placeholder:"Enter Bucket",value:k,onChange:function(e){N(e.target.value)}}),Object(n.jsx)(Sa,{id:"prefix",name:"prefix",label:"Prefix",placeholder:"Enter Prefix",value:E,onChange:function(e){A(e.target.value)}}),Object(n.jsx)(Sa,{id:"region",name:"region",label:"Region",placeholder:"Enter Region",value:M,onChange:function(e){F(e.target.value)}}),"s3"===r||"minio"===r&&Object(n.jsx)(Sa,{id:"storageClass",name:"storageClass",label:"Storage Class",placeholder:"Enter Storage Class",value:B,onChange:function(e){R(e.target.value)}})]})})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:a.settingsButtonContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:a.innerSettingsButtonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l||!he,children:"Save"})})})]})})}))),Zo=Object(s.b)(null,{setModalErrorSnackMessage:q}),Jo=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},buttonContainer:{textAlign:"right"}},we))}))(Zo((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.classes,r=e.tierData,o=e.setModalErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(""),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(""),f=Object(u.a)(O,2),v=f[0],S=f[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(""),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(!0),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Z()(r,"type",""),G=Z()(r,"".concat(V,".name"),"");Object(c.useEffect)((function(){var e=!0;"s3"===V||"azure"===V?""!==F&&""!==R||(e=!1):"gcs"===V&&""===A&&(e=!1),W(e)}),[R,F,A,V]);return Object(n.jsx)(xa,{modalOpen:t,onClose:function(){a(!1)},title:"Update Credentials - ".concat(V," / ").concat(G),children:Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b(!0),function(){var e={};"s3"===V||"azure"===V?e={access_key:F,secret_key:R}:"gcs"===V&&(e={creds:A}),""!==G?pe.invoke("PUT","/api/v1/admin/tiers/".concat(V,"/").concat(G,"/credentials"),e).then((function(){b(!1),a(!0)})).catch((function(e){b(!1),o(e)})):o("There was an error retrieving tier information")}()},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:["s3"===V&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",label:"Access Key",placeholder:"Enter Access Key",value:h,onChange:function(e){p(e.target.value)}}),Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",label:"Secret Key",placeholder:"Enter Secret Key",value:v,onChange:function(e){S(e.target.value)}})]}),"gcs"===V&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(qo,{accept:".json",id:"creds",label:"Credentials",name:"creds",onChange:function(e,t){_(e),w(t)},value:N})}),"azure"===V&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Sa,{id:"accountName",name:"accountName",label:"Account Name",placeholder:"Enter Account Name",value:F,onChange:function(e){D(e.target.value)}}),Object(n.jsx)(Sa,{id:"accountKey",name:"accountKey",label:"Account Key",placeholder:"Enter Account Key",value:R,onChange:function(e){P(e.target.value)}})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:d||!U,children:"Save"})}),d&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})}))),$o={setErrorSnackMessage:V},Xo=Object(s.b)(null,$o),es=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({},Me),Fe),Re),Pe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})),{},{strongText:{fontWeight:700},keyName:{marginLeft:5},iconText:{lineHeight:"24px"},customConfigurationPage:{height:"calc(100vh - 410px)",scrollbarWidth:"none","&::-webkit-scrollbar":{display:"none"}},lambdaContainer:{padding:"15px 0"},actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"0 38px"}),customTitle:Object(j.a)(Object(j.a)({},Re.customTitle),{},{marginTop:0})}))}))(Xo((function(e){var t=e.classes,a=e.setErrorSnackMessage,i=Object(c.useState)([]),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],v=Object(c.useState)(0),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)({type:"unsupported"}),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(""),F=Object(u.a)(M,2),D=F[0],L=F[1];Object(c.useEffect)((function(){if(p){pe.invoke("GET","/api/v1/admin/tiers").then((function(e){s(e.items||[]),O(!1)})).catch((function(e){a(e),O(!1)}))}}),[p,a]);var B=o.filter((function(e){if(""===b)return!0;var t=Z()(e,"".concat(e.type,".name"),""),a=Z()(e,"type","");return t.indexOf(b)>=0||a.indexOf(b)>=0})),R=function(){C(S-1)},P=function(e){L(e),C(2)};return Object(n.jsxs)(c.Fragment,{children:[w&&Object(n.jsx)(Jo,{open:w,tierData:_,closeModalAndRefresh:function(){T(!1)}}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.settingsOptionsContainer,children:Object(n.jsx)(yo,{slideOptions:[Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.lambdaContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){j(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){O(!0)},children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){C(1)},children:"Add Tier"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"edit",onClick:function(e){I(e),T(!0)}}],columns:[{label:"Tier Name",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".name"),"");return null!==t?t:""},renderFullObject:!0},{label:"Type",elementKey:"type",width:150},{label:"Endpoint",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".endpoint"),"");return null!==t?t:""},renderFullObject:!0},{label:"Bucket",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".bucket"),"");return null!==t?t:""},renderFullObject:!0},{label:"Prefix",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".prefix"),"");return null!==t?t:""},renderFullObject:!0},{label:"Region",elementKey:"type",renderFunction:function(e){var t=Z()(e,"".concat(e.type,".region"),"");return null!==t?t:""},renderFullObject:!0}],isLoading:p,records:B,entityName:"Tiers",idField:"service_name",customPaperHeight:t.customConfigurationPage,noBackground:!0})})]})}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:R,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Tiers"]})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.customTitle,children:"Add Tier Configuration"}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.settingsFormContainer,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.centerElements,children:Object(n.jsxs)("div",{className:t.iconContainer,children:[Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("minio")},children:Object(n.jsx)("img",{src:"/minioTier.png",className:t.logoButton,alt:"MinIO"})}),Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("gcs")},children:Object(n.jsx)("img",{src:"/gcs.png",className:t.logoButton,alt:"GCS"})}),Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("s3")},children:Object(n.jsx)("img",{src:"/amazon.png",className:t.logoButton,alt:"s3"})}),Object(n.jsx)("button",{className:t.lambdaNotif,onClick:function(){P("azure")},children:Object(n.jsx)("img",{src:"/azure.png",className:t.logoButton,alt:"Azure"})})]})})})})]})]}),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.backContainer,children:Object(n.jsxs)("button",{onClick:R,className:t.backButton,children:[Object(n.jsx)(So,{}),"Back To Tier Type Selection"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:2===S&&Object(n.jsx)(Qo,{type:D,saveAndRefresh:function(){C(0),O(!0)}})})]})],currentSlide:S})})})})})]})}))),ts=Object(s.b)((function(e){return{session:e.console.session}}),{}),as=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(ts((function(e){var t=e.classes,a=(e.session,Object(c.useState)(0)),i=Object(u.a)(a,2),r=i[0],o=i[1];return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Settings"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsxs)(an.a,{value:r,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){o(t)},"aria-label":"tenant-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Configurations"}),Object(n.jsx)(nn.a,{label:"Lambda Notifications"}),Object(n.jsx)(nn.a,{label:"Tiers"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ko,{})}),1===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(zo,{})}),2===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(es,{})})]})]})})]})}))),ns=a(154),cs=a.n(ns),is={logger:{main:"logger",title:"Logger Webhook Configuration",modalTitle:"Logger Webhook",apiURL:"",configuration:{configuration_id:"logger_webhook",configuration_label:"Logger Webhook"}},audit:{main:"audit",title:"Audit Webhook Configuration",modalTitle:"Audit Webhook",apiURL:"",configuration:{configuration_id:"audit_webhook",configuration_label:"Audit Webhook"}}},rs=Object(w.a)((function(e){return Object(k.a)({strongText:{fontWeight:700},keyName:{marginLeft:5},actionsTray:{textAlign:"right","& button":{marginLeft:10}},searchField:{background:"#FFFFFF",padding:12,borderRadius:5,boxShadow:"0px 3px 6px #00000012"},iconText:{lineHeight:"24px"}})}))((function(e){var t=e.match,a=e.classes,r=Object(c.useState)(!1),o=Object(u.a)(r,2),s=o[0],l=o[1],d=Object(c.useState)(""),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],y=p[1],S=Z()(t,"path","").split("/"),C=Z()(is,S[2],!1);if(!C)return null;var k=[].filter((function(e){return e.name.toLocaleLowerCase().includes(j.toLocaleLowerCase())}));return Object(n.jsxs)(i.a.Fragment,{children:[s&&Object(n.jsx)(vo,{closeModalAndRefresh:function(){y(!0),l(!1)},selectedConfiguration:C.configuration}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"h6",children:C.title})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:a.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:a.searchField,id:"search-resource",label:"",onChange:function(e){m(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(cs.a,{}),onClick:function(){l(!0)},children:"Add Webhook Configuration"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"edit",onClick:function(){}}],columns:[{label:"Name",elementKey:"name"}],isLoading:O,records:k,entityName:"Webhook Configurations",idField:"name"})})]})]})})),os=Object(s.b)(null,{setErrorSnackMessage:V})((function(e){var t=e.deleteOpen,a=e.selectedTenant,i=e.closeDeleteModalAndRefresh,r=e.setErrorSnackMessage,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1];Object(c.useEffect)((function(){l&&pe.invoke("DELETE","/api/v1/namespaces/".concat(a.namespace,"/tenants/").concat(a.name)).then((function(){d(!1),i(!0)})).catch((function(e){d(!1),r(e)}))}),[l]);return Object(n.jsxs)(ha.a,{open:t,onClose:function(){i(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Tenant"}),Object(n.jsxs)(Oa.a,{children:[l&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["To continue please type ",Object(n.jsx)("b",{children:a.name})," in the box.",Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"retype-tenant",name:"retype-tenant",onChange:function(e){h(e.target.value)},label:"",value:m})})]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){i(!1)},color:"primary",disabled:l,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){m===a.name?d(!0):r("Tenant name is not correct")},color:"secondary",autoFocus:!0,disabled:m!==a.name,children:"Delete"})]})]})})),ss=function(e,t){return{podAntiAffinity:{requiredDuringSchedulingIgnoredDuringExecution:[{labelSelector:{matchExpressions:[{key:"v1.min.io/tenant",operator:"In",values:[e]},{key:"v1.min.io/pool",operator:"In",values:[t]}]},topologyKey:"kubernetes.io/hostname"}]}}},ls=function(e,t,a,n){var c=e.split("&"),i=[];c.forEach((function(e){var t=e.split("=");2===t.length&&i.push({key:t[0],operator:"In",values:[t[1]]})}));var r={nodeAffinity:{requiredDuringSchedulingIgnoredDuringExecution:{nodeSelectorTerms:[{matchExpressions:i}]}}};if(t){var o=ss(a,n);r.podAntiAffinity=o.podAntiAffinity}return console.log(r),r},ds="ADD_TENANT/SET_CURRENT_PAGE",bs="ADD_TENANT/SET_ADVANCED_MODE",us="ADD_TENANT/UPDATE_FIELD",js="ADD_TENANT/SET_PAGE_VALID",ms="ADD_TENANT/RESET_FORM",hs="ADD_TENANT/SET_STORAGE_CLASSES_LIST",ps="ADD_TENANT/ADD_MINIO_KEYPAIR",Os="ADD_TENANT/ADD_FILE_MINIO_KEYPAIR",gs="ADD_TENANT/DELETE_MINIO_KEYPAIR",fs="ADD_TENANT/ADD_CA_KEYPAIR",xs="ADD_TENANT/ADD_FILE_TO_CA_KEYPAIR",vs="ADD_TENANT/DELETE_CA_KEYPAIR",ys="ADD_TENANT/ADD_CONSOLE_CERT",Ss="ADD_TENANT/ENCRYPTION_SERVER_CERT",Cs="ADD_TENANT/ENCRYPTION_CLIENT_CERT",ks="ADD_TENANT/ENCRYPTION_VAULT_CERT",Ns="ADD_TENANT/ENCRYPTION_VAULT_CA",ws="ADD_TENANT/ENCRYPTION_GEMALTO_CA",Ts=function(e,t,a){return{type:us,pageName:e,field:t,value:a}},Es=function(e,t){return{type:js,pageName:e,valid:t}},As=function(e,t,a){return{type:ys,key:e,fileName:t,value:a}},_s=function(e){var t={};return e.forEach((function(e){if(e.required&&""===e.value.trim())t[e.fieldKey]="Field cannot be empty";else if(e.required||""!==e.value.trim())if(e.customValidation&&e.customValidationMessage)t[e.fieldKey]=e.customValidationMessage;else if(e.pattern&&e.customPatternMessage){var a=new RegExp(e.pattern,"g");e.value.match(a)||(t[e.fieldKey]=e.customPatternMessage)}else;})),t},Is=function(e,t){var a=Object(j.a)({},e);return delete a[t],a},Ms=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:16,t="",a="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",n=0;n0)return k(!1),void E(!1);k(!0),pe.invoke("GET","/api/v1/namespaces/".concat(s,"/resourcequotas/").concat(s,"-storagequota")).then((function(e){var t=Z()(e,"elements",[]);m(function(e){var t=Z()(e,"elements",[]),a={};return t.forEach((function(e){var t=e.name.split(".storageclass.storage.k8s.io/requests.storage")[0],n=Z()(e,"hard",0),c=Z()(e,"used",0);a[t]=n-c})),a}(e));var a=t.map((function(e){var t=Z()(e,"name","").split(".storageclass.storage.k8s.io/requests.storage")[0];return{label:t,value:t}}));j(a),a.length>0&&A("selectedStorageClass",a[0].value),E(!1)})).catch((function(e){E(!1),console.error("Namespace error: ",e)}))})).catch((function(e){console.error(e),p("Error validating if namespace already has tenants")}))}),[s,m,p,j,A]),I=Object(c.useMemo)((function(){return _n()(_,500)}),[_]);Object(c.useEffect)((function(){if(""!==s)return I(),E(!0),I.cancel}),[I,s]),Object(c.useEffect)((function(){var e=!1,t="";C||T?a.length<1&&C&&!T&&(e=!0,t="Please enter a valid namespace"):(e=!0,t="You can only create one tenant per namespace");var n=_s([{fieldKey:"tenant-name",required:!0,pattern:/^[a-z0-9-]{3,63}$/,customPatternMessage:"Name only can contain lowercase letters, numbers and '-'. Min. Length: 3",value:o},{fieldKey:"namespace",required:!0,value:s,customValidation:e,customValidationMessage:t}]),c=!("tenant-name"in n)&&!("namespace"in n)&&a.length>0;h("nameTenant",c),v(n)}),[a,s,o,h,C,T]);var M=function(e){v(Is(f,e))};return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Name Tenant"}),Object(n.jsx)("span",{className:t.descriptionText,children:"How would you like to name this new tenant?"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"tenant-name",name:"tenant-name",onChange:function(e){A("tenantName",e.target.value),M("tenant-name")},label:"Name",value:o,required:!0,error:f["tenant-name"]||""})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"namespace",name:"namespace",onChange:function(e){A("namespace",e.target.value),M("namespace")},label:"Namespace",value:s,error:f.namespace||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"storage_class",name:"storage_class",onChange:function(e){A("selectedStorageClass",e.target.value)},label:"Storage Class",value:l,options:a,disabled:a.length<1})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsxs)("span",{className:t.descriptionText,children:["Check 'Advanced Mode' for additional configuration options, such as configuring an Identity Provider, Encryption at rest, and customized TLS/SSL Certificates.",Object(n.jsx)("br",{}),"Leave 'Advanced Mode' unchecked to use the secure default settings for the tenant."]}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(Pa,{value:"adv_mode",id:"adv_mode",name:"adv_mode",checked:r,onChange:function(e){var t=e.target.checked;d(t)},label:"Advanced Mode"})]})]})}))),Ls=Object(s.b)((function(e){return{storageClasses:e.tenants.createTenant.storageClasses,customImage:e.tenants.createTenant.fields.configure.customImage,imageName:e.tenants.createTenant.fields.configure.imageName,consoleImage:e.tenants.createTenant.fields.configure.consoleImage,customDockerhub:e.tenants.createTenant.fields.configure.customDockerhub,imageRegistry:e.tenants.createTenant.fields.configure.imageRegistry,imageRegistryUsername:e.tenants.createTenant.fields.configure.imageRegistryUsername,imageRegistryPassword:e.tenants.createTenant.fields.configure.imageRegistryPassword,exposeMinIO:e.tenants.createTenant.fields.configure.exposeMinIO,exposeConsole:e.tenants.createTenant.fields.configure.exposeConsole,prometheusCustom:e.tenants.createTenant.fields.configure.prometheusCustom,logSearchCustom:e.tenants.createTenant.fields.configure.logSearchCustom,logSearchVolumeSize:e.tenants.createTenant.fields.configure.logSearchVolumeSize,logSearchSizeFactor:e.tenants.createTenant.fields.configure.logSearchSizeFactor,prometheusVolumeSize:e.tenants.createTenant.fields.configure.prometheusVolumeSize,prometheusSizeFactor:e.tenants.createTenant.fields.configure.prometheusSizeFactor,logSearchSelectedStorageClass:e.tenants.createTenant.fields.configure.logSearchSelectedStorageClass,logSearchImage:e.tenants.createTenant.fields.configure.logSearchImage,kesImage:e.tenants.createTenant.fields.configure.kesImage,logSearchPostgresImage:e.tenants.createTenant.fields.configure.logSearchPostgresImage,prometheusSelectedStorageClass:e.tenants.createTenant.fields.configure.prometheusSelectedStorageClass,prometheusImage:e.tenants.createTenant.fields.configure.prometheusImage,selectedStorageClass:e.tenants.createTenant.fields.nameTenant.selectedStorageClass}}),{updateAddField:Ts,isPageValid:Es}),Bs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Ls((function(e){var t=e.classes,a=e.storageClasses,i=e.customImage,r=e.imageName,o=e.consoleImage,s=e.customDockerhub,l=e.imageRegistry,d=e.imageRegistryUsername,b=e.imageRegistryPassword,j=e.exposeMinIO,m=e.exposeConsole,h=e.prometheusCustom,p=e.logSearchCustom,O=e.logSearchVolumeSize,g=(e.logSearchSizeFactor,e.logSearchImage),f=e.kesImage,v=e.logSearchPostgresImage,y=e.prometheusVolumeSize,S=(e.prometheusSizeFactor,e.logSearchSelectedStorageClass),C=e.prometheusSelectedStorageClass,k=e.prometheusImage,N=e.updateAddField,w=e.isPageValid,T=e.selectedStorageClass,E=Object(c.useState)({}),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useCallback)((function(e,t){N("configure",e,t)}),[N]);Object(c.useEffect)((function(){var e=[];h&&(e=[].concat(Object($e.a)(e),[{fieldKey:"prometheus_storage_class",required:!0,value:C,customValidation:""===C,customValidationMessage:"Field cannot be empty"},{fieldKey:"prometheus_volume_size",required:!0,value:y,customValidation:""===y||parseInt(y)<=0,customValidationMessage:"Volume size must be present and be greatter than 0"}])),p&&(e=[].concat(Object($e.a)(e),[{fieldKey:"log_search_storage_class",required:!0,value:S,customValidation:""===S,customValidationMessage:"Field cannot be empty"},{fieldKey:"log_search_volume_size",required:!0,value:O,customValidation:""===O||parseInt(O)<=0,customValidationMessage:"Volume size must be present and be greatter than 0"}])),i&&(e=[].concat(Object($e.a)(e),[{fieldKey:"image",required:!1,value:r,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/minio:VERSION'"},{fieldKey:"consoleImage",required:!1,value:o,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/console:VERSION'"},{fieldKey:"logSearchImage",required:!1,value:g,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/logsearchapi:VERSION'"},{fieldKey:"kesImage",required:!1,value:f,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/kes:VERSION'"},{fieldKey:"logSearchPostgresImage",required:!1,value:v,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'library/postgres:VERSION'"},{fieldKey:"prometheusImage",required:!1,value:k,pattern:/^((.*?)\/(.*?):(.+))$/,customPatternMessage:"Format must be of form: 'minio/prometheus:VERSION'"}]),s&&(e=[].concat(Object($e.a)(e),[{fieldKey:"registry",required:!0,value:l},{fieldKey:"registryUsername",required:!0,value:d},{fieldKey:"registryPassword",required:!0,value:b}])));var t=_s(e);w("configure",0===Object.keys(t).length),I(t)}),[i,r,o,g,f,v,k,s,l,d,b,w,h,p,C,y,S,O]),Object(c.useEffect)((function(){a.length>0&&(0===a.filter((function(e){return e.value===C})).length&&M("prometheusSelectedStorageClass",T),0===a.filter((function(e){return e.value===S})).length&&M("logSearchSelectedStorageClass",T))}),[S,C,T,a,M]);var F=function(e){I(Is(_,e))};return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Configure"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Basic configurations for tenant management"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"custom_image",id:"custom_image",name:"custom_image",checked:i,onChange:function(e){var t=e.target.checked;M("customImage",t)},label:"Use custom image"})}),i&&Object(n.jsxs)(c.Fragment,{children:["Please enter the MinIO docker image to use",Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"image",name:"image",onChange:function(e){M("imageName",e.target.value),F("image")},label:"MinIO's Image",value:r,error:_.image||"",placeholder:"E.g. minio/minio:RELEASE.2021-04-22T15-44-28Z"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"consoleImage",name:"consoleImage",onChange:function(e){M("consoleImage",e.target.value),F("consoleImage")},label:"Console's Image",value:o,error:_.consoleImage||"",placeholder:"E.g. minio/console:v0.7.4"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"logSearchImage",name:"logSearchImage",onChange:function(e){M("logSearchImage",e.target.value),F("logSearchImage")},label:"Log Search API's Image",value:g,error:_.logSearchImage||"",placeholder:"E.g. minio/logsearchapi:v4.0.9"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"kesImage",name:"kesImage",onChange:function(e){M("kesImage",e.target.value),F("kesImage")},label:"KES Image",value:f,error:_.kesImage||"",placeholder:"E.g. minio/kes:v0.14.0"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"logSearchPostgresImage",name:"logSearchPostgresImage",onChange:function(e){M("logSearchPostgresImage",e.target.value),F("logSearchPostgresImage")},label:"Log Search Postgres's Image",value:v,error:_.logSearchPostgresImage||"",placeholder:"E.g. library/postgres:13"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"prometheusImage",name:"prometheusImage",onChange:function(e){M("prometheusImage",e.target.value),F("prometheusImage")},label:"Prometheus Image",value:k,error:_.prometheusImage||"",placeholder:"E.g. quay.io/prometheus/prometheus:latest"})})]}),i&&Object(n.jsx)(c.Fragment,{children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"custom_docker_hub",id:"custom_docker_hub",name:"custom_docker_hub",checked:s,onChange:function(e){var t=e.target.checked;M("customDockerhub",t)},label:"Set/Update Image Registry"})})}),s&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"registry",name:"registry",onChange:function(e){M("imageRegistry",e.target.value)},label:"Endpoint",value:l,error:_.registry||"",placeholder:"E.g. https://index.docker.io/v1/",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"registryUsername",name:"registryUsername",onChange:function(e){M("imageRegistryUsername",e.target.value)},label:"Username",value:d,error:_.registryUsername||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"registryPassword",name:"registryPassword",onChange:function(e){M("imageRegistryPassword",e.target.value)},label:"Password",value:b,error:_.registryPassword||"",required:!0})})]}),Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Expose Services"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Whether the tenant's services should request an external IP."})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"expose_minio",id:"expose_minio",name:"expose_minio",checked:j,onChange:function(e){var t=e.target.checked;M("exposeMinIO",t)},label:"Expose MiniO Service"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"expose_console",id:"expose_console",name:"expose_console",checked:m,onChange:function(e){var t=e.target.checked;M("exposeConsole",t)},label:"Expose Console Service"})}),Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Additional Configurations"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Configure Storage Classes & Storage size for Log Search and Prometheus add-ons"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"logSearchConfig",id:"log_search_configuration",name:"log_search_configuration",checked:p,onChange:function(e){var t=e.target.checked;M("logSearchCustom",t)},label:"Override Log Search defaults"})}),p&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"log_search_storage_class",name:"log_search_storage_class",onChange:function(e){M("logSearchSelectedStorageClass",e.target.value)},label:"Log Search Storage Class",value:S,options:a,disabled:a.length<1})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.multiContainer,children:Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"log_search_volume_size",name:"log_search_volume_size",onChange:function(e){M("logSearchVolumeSize",e.target.value),F("log_search_volume_size")},label:"Storage Size [Gi]",value:O,required:!0,error:_.log_search_volume_size||"",min:"0"})})})}),Object(n.jsx)("br",{})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"prometheusConfig",id:"prometheus_configuration",name:"prometheus_configuration",checked:h,onChange:function(e){var t=e.target.checked;M("prometheusCustom",t)},label:"Override Prometheus defaults"})}),h&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"prometheus_storage_class",name:"prometheus_storage_class",onChange:function(e){M("prometheusSelectedStorageClass",e.target.value)},label:"Prometheus Storage Class",value:C,options:a,disabled:a.length<1})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.multiContainer,children:Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"prometheus_volume_size",name:"prometheus_volume_size",onChange:function(e){M("prometheusVolumeSize",e.target.value),F("prometheus_volume_size")},label:"Storage Size [Gi]",value:y,required:!0,error:_.prometheus_volume_size||"",min:"0"})})})}),Object(n.jsx)("br",{})]})]})}))),Rs=a(433),Ps=a.n(Rs),zs=a(434),Ks=a.n(zs),Us=Object(s.b)((function(e){return{idpSelection:e.tenants.createTenant.fields.identityProvider.idpSelection,accessKeys:e.tenants.createTenant.fields.identityProvider.accessKeys,secretKeys:e.tenants.createTenant.fields.identityProvider.secretKeys,openIDURL:e.tenants.createTenant.fields.identityProvider.openIDURL,openIDClientID:e.tenants.createTenant.fields.identityProvider.openIDClientID,openIDSecretID:e.tenants.createTenant.fields.identityProvider.openIDSecretID,ADURL:e.tenants.createTenant.fields.identityProvider.ADURL,ADSkipTLS:e.tenants.createTenant.fields.identityProvider.ADSkipTLS,ADServerInsecure:e.tenants.createTenant.fields.identityProvider.ADServerInsecure,ADUserNameFilter:e.tenants.createTenant.fields.identityProvider.ADUserNameFilter,ADGroupBaseDN:e.tenants.createTenant.fields.identityProvider.ADGroupBaseDN,ADGroupSearchFilter:e.tenants.createTenant.fields.identityProvider.ADGroupSearchFilter,ADNameAttribute:e.tenants.createTenant.fields.identityProvider.ADNameAttribute}}),{updateAddField:Ts,isPageValid:Es}),Ws=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"},shortened:{gridTemplateColumns:"auto auto 50px 50px",display:"grid",gridGap:20},buttonTray:{gridTemplateColumns:"auto auto 10px 10px",display:"grid",gridGap:0,height:16,marginTop:12}},we),Ve))}))(Us((function(e){var t=e.classes,a=e.idpSelection,i=e.accessKeys,r=e.secretKeys,o=e.openIDURL,s=e.openIDClientID,l=e.openIDSecretID,d=e.ADURL,b=e.ADSkipTLS,j=e.ADServerInsecure,m=e.ADUserNameFilter,h=e.ADGroupBaseDN,p=e.ADGroupSearchFilter,O=e.ADNameAttribute,g=e.updateAddField,f=e.isPageValid,y=Object(c.useState)({}),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useCallback)((function(e,t){g("identityProvider",e,t)}),[g]),w=function(e,t){var a=Object($e.a)(i);a[e]=t,N("accessKeys",a)},T=function(e,t){var a=Object($e.a)(r);a[e]=t,N("secretKeys",a)},E=function(e){k(Is(C,e))};Object(c.useEffect)((function(){var e=[];if("Built-in"===a){e=Object($e.a)(e);for(var t=0;t1&&(i.splice(a,1),r.splice(a,1),w(i.length-1,i[i.length-1]))},children:Object(n.jsx)(Ks.a,{})})})]})]})},"identityField-".concat(a.toString()))}))),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Identity Provider"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Access to the tenant can be controlled via an external Identity Manager."})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Da,{currentSelection:a,id:"idp-options",name:"idp-options",label:"Protocol",onChange:function(e){N("idpSelection",e.target.value)},selectorOptions:[{label:"Built-in",value:"Built-in"},{label:"OpenID",value:"OpenID"},{label:"Active Directory",value:"AD"}]}),"Add additional users"]})," ","Built-in"===a&&Object(n.jsx)(c.Fragment,{children:A}),"OpenID"===a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"openID_URL",name:"openID_URL",onChange:function(e){N("openIDURL",e.target.value),E("openID_URL")},label:"URL",value:o,error:C.openID_URL||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"openID_clientID",name:"openID_clientID",onChange:function(e){N("openIDClientID",e.target.value),E("openID_clientID")},label:"Client ID",value:s,error:C.openID_clientID||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"openID_secretID",name:"openID_secretID",onChange:function(e){N("openIDSecretID",e.target.value),E("openID_secretID")},label:"Secret ID",value:l,error:C.openID_secretID||"",required:!0})})]}),"AD"===a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"AD_URL",name:"AD_URL",onChange:function(e){N("ADURL",e.target.value),E("AD_URL")},label:"URL",value:d,error:C.AD_URL||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"ad_skipTLS",id:"ad_skipTLS",name:"ad_skipTLS",checked:b,onChange:function(e){var t=e.target.checked;N("ADSkipTLS",t)},label:"Skip TLS Verification"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"ad_serverInsecure",id:"ad_serverInsecure",name:"ad_serverInsecure",checked:j,onChange:function(e){var t=e.target.checked;N("ADServerInsecure",t)},label:"Server Insecure"})}),j?Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(v.a,{className:t.error,variant:"caption",display:"block",gutterBottom:!0,children:"Warning: All traffic with Active Directory will be unencrypted"}),Object(n.jsx)("br",{})]}):null,Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_userNameFilter",name:"ad_userNameFilter",onChange:function(e){N("ADUserNameFilter",e.target.value),E("ad_userNameFilter")},label:"User Search Filter",value:m,error:C.ad_userNameFilter||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_groupBaseDN",name:"ad_groupBaseDN",onChange:function(e){N("ADGroupBaseDN",e.target.value),E("ad_groupBaseDN")},label:"Group Search Base DN",value:h,error:C.ad_groupBaseDN||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_groupSearchFilter",name:"ad_groupSearchFilter",onChange:function(e){N("ADGroupSearchFilter",e.target.value),E("ad_groupSearchFilter")},label:"Group Search Filter",value:p,error:C.ad_groupSearchFilter||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"ad_nameAttribute",name:"ad_nameAttribute",onChange:function(e){N("ADNameAttribute",e.target.value),E("ad_nameAttribute")},label:"Group Name Attribute",value:O,error:C.ad_nameAttribute||"",required:!0})})]})]})}))),Vs=Object(s.b)((function(e){return{enableTLS:e.tenants.createTenant.fields.security.enableTLS,enableAutoCert:e.tenants.createTenant.fields.security.enableAutoCert,enableCustomCerts:e.tenants.createTenant.fields.security.enableCustomCerts,minioCertificates:e.tenants.createTenant.certificates.minioCertificates,caCertificates:e.tenants.createTenant.certificates.caCertificates,consoleCertificate:e.tenants.createTenant.certificates.consoleCertificate}}),{updateAddField:Ts,isPageValid:Es,addFileToCaCertificates:function(e,t,a,n){return{type:xs,id:e,key:t,fileName:a,value:n}},deleteCaCertificate:function(e){return{type:vs,id:e}},addCaCertificate:function(){return{type:fs}},addKeyPair:function(){return{type:ps}},addFileToKeyPair:function(e,t,a,n){return{type:Os,id:e,key:t,fileName:a,value:n}},deleteKeyPair:function(e){return{type:gs,id:e}},addConsoleCertificate:As}),Gs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Vs((function(e){var t=e.classes,a=e.enableTLS,i=e.enableAutoCert,r=e.enableCustomCerts,o=e.minioCertificates,s=e.caCertificates,l=e.consoleCertificate,d=e.updateAddField,b=e.isPageValid,u=e.addFileToCaCertificates,j=e.deleteCaCertificate,m=e.addCaCertificate,h=e.addKeyPair,p=e.addFileToKeyPair,O=e.deleteKeyPair,f=Object(c.useCallback)((function(e,t){d("security",e,t)}),[d]);return Object(c.useEffect)((function(){b("security",!a||(!!i||!!r))}),[a,i,r,b]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("div",{className:t.headerElement,children:Object(n.jsx)("h3",{className:t.h3Section,children:"Security"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Pa,{value:"enableTLS",id:"enableTLS",name:"enableTLS",checked:a,onChange:function(e){var t=e.target.checked;f("enableTLS",t)},label:"Enable TLS"}),"Enable TLS for the tenant, this is required for Encryption Configuration",a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(v.a,{variant:"caption",display:"block",gutterBottom:!0,children:"AutoCert: MinIO Operator will generate all TLS certificates automatically"}),Object(n.jsx)(v.a,{variant:"caption",display:"block",gutterBottom:!0,children:"Custom certificates: Allow user to provide your own certificates"}),Object(n.jsx)("br",{})]})]}),a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Pa,{value:"enableAutoCert",id:"enableAutoCert",name:"enableAutoCert",checked:i,onChange:function(e){var t=e.target.checked;f("enableAutoCert",t)},label:"Enable AutoCert"}),Object(n.jsx)(Pa,{value:"enableCustomCerts",id:"enableCustomCerts",name:"enableCustomCerts",checked:r,onChange:function(e){var t=e.target.checked;f("enableCustomCerts",t)},label:"Custom Certificates"})]}),r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"MinIO Certificates"})}),o.map((function(e){return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:5,children:Object(n.jsx)(qo,{onChange:function(t,a){p(e.id,"key",a,t)},accept:".key,.pem",id:"tlsKey",name:"tlsKey",label:"Key",value:e.key})}),Object(n.jsx)(x.a,{item:!0,xs:5,children:Object(n.jsx)(qo,{onChange:function(t,a){p(e.id,"cert",a,t)},accept:".cer,.crt,.cert,.pem",id:"tlsCert",name:"tlsCert",label:"Cert",value:e.cert})}),Object(n.jsx)(x.a,{item:!0,xs:1,children:Object(n.jsx)(g.a,{onClick:function(){O(e.id)},color:"secondary",children:"Remove"})})]},e.id)})),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{onClick:h,color:"primary",children:"Add More"})})]}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsx)(wi.a,{}),Object(n.jsx)("br",{})]})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"CA Certificates"})}),s.map((function(e){return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(qo,{onChange:function(t,a){u(e.id,"cert",a,t)},accept:".cer,.crt,.cert,.pem",id:"tlsCert",name:"tlsCert",label:"Cert",value:e.cert})}),Object(n.jsx)(x.a,{item:!0,xs:1,children:Object(n.jsx)(g.a,{onClick:function(){j(e.id)},color:"secondary",children:"Remove"})})]},e.id)})),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{onClick:m,color:"primary",children:"Add More"})})]}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)("br",{}),Object(n.jsx)(wi.a,{}),Object(n.jsx)("br",{})]})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"Console Certificates"})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){As("key",t,e)},accept:".key,.pem",id:"consoleKey",name:"consoleKey",label:"Key",value:l.key})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){As("cert",t,e)},accept:".cer,.crt,.cert,.pem",id:"consoleCert",name:"consoleCert",label:"Cert",value:l.cert})})]})]})]})]})}))),qs=Object(s.b)((function(e){return{enableEncryption:e.tenants.createTenant.fields.encryption.enableEncryption,encryptionType:e.tenants.createTenant.fields.encryption.encryptionType,gemaltoEndpoint:e.tenants.createTenant.fields.encryption.gemaltoEndpoint,gemaltoToken:e.tenants.createTenant.fields.encryption.gemaltoToken,gemaltoDomain:e.tenants.createTenant.fields.encryption.gemaltoDomain,gemaltoRetry:e.tenants.createTenant.fields.encryption.gemaltoRetry,awsEndpoint:e.tenants.createTenant.fields.encryption.awsEndpoint,awsRegion:e.tenants.createTenant.fields.encryption.awsRegion,awsKMSKey:e.tenants.createTenant.fields.encryption.awsKMSKey,awsAccessKey:e.tenants.createTenant.fields.encryption.awsAccessKey,awsSecretKey:e.tenants.createTenant.fields.encryption.awsSecretKey,awsToken:e.tenants.createTenant.fields.encryption.awsToken,vaultEndpoint:e.tenants.createTenant.fields.encryption.vaultEndpoint,vaultEngine:e.tenants.createTenant.fields.encryption.vaultEngine,vaultNamespace:e.tenants.createTenant.fields.encryption.vaultNamespace,vaultPrefix:e.tenants.createTenant.fields.encryption.vaultPrefix,vaultAppRoleEngine:e.tenants.createTenant.fields.encryption.vaultAppRoleEngine,vaultId:e.tenants.createTenant.fields.encryption.vaultId,vaultSecret:e.tenants.createTenant.fields.encryption.vaultSecret,vaultRetry:e.tenants.createTenant.fields.encryption.vaultRetry,vaultPing:e.tenants.createTenant.fields.encryption.vaultPing,gcpProjectID:e.tenants.createTenant.fields.encryption.gcpProjectID,gcpEndpoint:e.tenants.createTenant.fields.encryption.gcpEndpoint,gcpClientEmail:e.tenants.createTenant.fields.encryption.gcpClientEmail,gcpClientID:e.tenants.createTenant.fields.encryption.gcpClientID,gcpPrivateKeyID:e.tenants.createTenant.fields.encryption.gcpPrivateKeyID,gcpPrivateKey:e.tenants.createTenant.fields.encryption.gcpPrivateKey,enableCustomCertsForKES:e.tenants.createTenant.fields.encryption.enableCustomCertsForKES,enableAutoCert:e.tenants.createTenant.fields.security.enableAutoCert,enableTLS:e.tenants.createTenant.fields.security.enableTLS,minioCertificates:e.tenants.createTenant.certificates.minioCertificates,serverCertificate:e.tenants.createTenant.certificates.serverCertificate,clientCertificate:e.tenants.createTenant.certificates.clientCertificate,vaultCertificate:e.tenants.createTenant.certificates.vaultCertificate,vaultCA:e.tenants.createTenant.certificates.vaultCA,gemaltoCA:e.tenants.createTenant.certificates.gemaltoCA,enableCustomCerts:e.tenants.createTenant.fields.security.enableCustomCerts}}),{updateAddField:Ts,isPageValid:Es,addFileServerCert:function(e,t,a){return{type:Ss,key:e,fileName:t,value:a}},addFileClientCert:function(e,t,a){return{type:Cs,key:e,fileName:t,value:a}},addFileVaultCert:function(e,t,a){return{type:ks,key:e,fileName:t,value:a}},addFileVaultCa:function(e,t){return{type:Ns,fileName:e,value:t}},addFileGemaltoCa:function(e,t){return{type:ws,fileName:e,value:t}}}),Hs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(qs((function(e){var t=e.classes,a=e.updateAddField,i=e.isPageValid,r=e.addFileServerCert,o=e.addFileClientCert,s=e.addFileVaultCert,l=e.addFileVaultCa,d=e.addFileGemaltoCa,b=e.enableEncryption,j=e.enableCustomCerts,m=e.encryptionType,h=e.gemaltoEndpoint,p=e.gemaltoToken,O=e.gemaltoDomain,g=e.gemaltoRetry,f=e.awsEndpoint,y=e.awsRegion,S=e.awsKMSKey,C=e.awsAccessKey,k=e.awsSecretKey,N=e.awsToken,w=e.vaultEndpoint,T=e.vaultEngine,E=e.vaultNamespace,A=e.vaultPrefix,_=e.vaultAppRoleEngine,I=e.vaultId,M=e.vaultSecret,F=e.vaultRetry,D=e.vaultPing,L=e.gcpProjectID,B=e.gcpEndpoint,R=e.gcpClientEmail,P=e.gcpClientID,z=e.gcpPrivateKeyID,K=e.gcpPrivateKey,U=e.enableCustomCertsForKES,W=e.enableAutoCert,V=e.enableTLS,G=e.minioCertificates,q=e.serverCertificate,H=e.clientCertificate,Y=e.vaultCertificate,Q=e.vaultCA,Z=e.gemaltoCA,J=Object(c.useState)({}),$=Object(u.a)(J,2),X=$[0],ee=$[1],te=!1;V&&(W||G&&G.filter((function(e){return e.encoded_key&&e.encoded_cert})).length>0)&&(te=!0);var ae=Object(c.useCallback)((function(e,t){a("encryption",e,t)}),[a]),ne=function(e){ee(Is(X,e))};return Object(c.useEffect)((function(){var e=[];b&&(j&&(e=[].concat(Object($e.a)(e),[{fieldKey:"serverKey",required:!W,value:q.encoded_key},{fieldKey:"serverCert",required:!W,value:q.encoded_cert},{fieldKey:"clientKey",required:!W,value:H.encoded_key},{fieldKey:"clientCert",required:!W,value:H.encoded_cert}])),"vault"===m&&(e=[].concat(Object($e.a)(e),[{fieldKey:"vault_endpoint",required:!0,value:w},{fieldKey:"vault_id",required:!0,value:I},{fieldKey:"vault_secret",required:!0,value:M},{fieldKey:"vault_ping",required:!1,value:D,customValidation:parseInt(D)<0,customValidationMessage:"Value needs to be 0 or greater"},{fieldKey:"vault_retry",required:!1,value:F,customValidation:parseInt(F)<0,customValidationMessage:"Value needs to be 0 or greater"}])),"aws"===m&&(e=[].concat(Object($e.a)(e),[{fieldKey:"aws_endpoint",required:!0,value:f},{fieldKey:"aws_region",required:!0,value:y},{fieldKey:"aws_accessKey",required:!0,value:C},{fieldKey:"aws_secretKey",required:!0,value:k}])),"gemalto"===m&&(e=[].concat(Object($e.a)(e),[{fieldKey:"gemalto_endpoint",required:!0,value:h},{fieldKey:"gemalto_token",required:!0,value:p},{fieldKey:"gemalto_domain",required:!0,value:O},{fieldKey:"gemalto_retry",required:!1,value:g,customValidation:parseInt(g)<0,customValidationMessage:"Value needs to be 0 or greater"}])));var t=_s(e);i("encryption",0===Object.keys(t).length),ee(t)}),[b,m,w,T,I,M,D,F,f,y,k,C,h,p,O,g,L,i,W,j,q.encoded_key,q.encoded_cert,H.encoded_key,H.encoded_cert]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Encryption"}),Object(n.jsx)("span",{className:t.descriptionText,children:"How would you like to encrypt the information at rest."})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"enableEncryption",id:"enableEncryption",name:"enableEncryption",checked:b,onChange:function(e){var t=e.target.checked;ae("enableEncryption",t)},label:"Enable Server Side Encryption",disabled:!te})}),b&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:m,id:"encryptionType",name:"encryptionType",label:"Encryption Options",onChange:function(e){ae("encryptionType",e.target.value)},selectorOptions:[{label:"Vault",value:"vault"},{label:"AWS",value:"aws"},{label:"Gemalto",value:"gemalto"},{label:"GCP",value:"gcp"}]})}),"vault"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"enableCustomCertsForKES",id:"enableCustomCertsForKES",name:"enableCustomCertsForKES",checked:U||!W,onChange:function(e){var t=e.target.checked;ae("enableCustomCertsForKES",t)},label:"Custom Certificates",disabled:!W})}),(U||!W)&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"Encryption Service Certificates"})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){r("key",t,e),ne("serverKey")},accept:".key,.pem",id:"serverKey",name:"serverKey",label:"Key",error:X.serverKey||"",value:q.key,required:!W})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){r("cert",t,e),ne("serverCert")},accept:".cer,.crt,.cert,.pem",id:"serverCert",name:"serverCert",label:"Cert",error:X.serverCert||"",value:q.cert,required:!W})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,children:"Mutual TLS authentication"})}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){o("key",t,e),ne("clientKey")},accept:".key,.pem",id:"clientKey",name:"clientKey",label:"Key",error:X.clientKey||"",value:H.key,required:!W})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){o("cert",t,e),ne("clientCert")},accept:".cer,.crt,.cert,.pem",id:"clientCert",name:"clientCert",label:"Cert",error:X.clientCert||"",value:H.cert,required:!W})})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_endpoint",name:"vault_endpoint",onChange:function(e){ae("vaultEndpoint",e.target.value),ne("vault_endpoint")},label:"Endpoint",value:w,error:X.vault_endpoint||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_engine",name:"vault_engine",onChange:function(e){ae("vaultEngine",e.target.value),ne("vault_engine")},label:"Engine",value:T})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_namespace",name:"vault_namespace",onChange:function(e){ae("vaultNamespace",e.target.value)},label:"Namespace",value:E})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_prefix",name:"vault_prefix",onChange:function(e){ae("vaultPrefix",e.target.value)},label:"Prefix",value:A})}),Object(n.jsx)("h5",{children:"App Role"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_approle_engine",name:"vault_approle_engine",onChange:function(e){ae("vaultAppRoleEngine",e.target.value)},label:"Engine",value:_})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_id",name:"vault_id",onChange:function(e){ae("vaultId",e.target.value),ne("vault_id")},label:"AppRole ID",value:I,error:X.vault_id||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"vault_secret",name:"vault_secret",onChange:function(e){ae("vaultSecret",e.target.value),ne("vault_secret")},label:"AppRole Secret",value:M,error:X.vault_secret||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",min:"0",id:"vault_retry",name:"vault_retry",onChange:function(e){ae("vaultRetry",e.target.value),ne("vault_retry")},label:"Retry (Seconds)",value:F,error:X.vault_retry||""})}),Object(n.jsx)("h5",{children:"Mutual TLS authentication (optional)"}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){s("key",t,e),ne("vault_key")},accept:".key,.pem",id:"vault_key",name:"vault_key",label:"Key",value:Y.key})}),Object(n.jsx)(x.a,{item:!0,xs:6,children:Object(n.jsx)(qo,{onChange:function(e,t){s("cert",t,e),ne("vault_cert")},accept:".cer,.crt,.cert,.pem",id:"vault_cert",name:"vault_cert",label:"Cert",value:Y.cert})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(qo,{onChange:function(e,t){l(t,e),ne("vault_ca")},accept:".cer,.crt,.cert,.pem",id:"vault_ca",name:"vault_ca",label:"CA",value:Q.cert})}),Object(n.jsx)("h5",{children:"Status"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",min:"0",id:"vault_ping",name:"vault_ping",onChange:function(e){ae("vaultPing",e.target.value),ne("vault_ping")},label:"Ping (Seconds)",value:D,error:X.vault_ping||""})})]}),"gcp"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_project_id",name:"gcp_project_id",onChange:function(e){ae("gcpProjectID",e.target.value)},label:"Project ID",value:L})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_endpoint",name:"gcp_endpoint",onChange:function(e){ae("gcpEndpoint",e.target.value)},label:"Endpoint",value:B})}),Object(n.jsx)("h5",{children:"Credentials"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_client_email",name:"gcp_client_email",onChange:function(e){ae("gcpClientEmail",e.target.value)},label:"Client Email",value:R})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_client_id",name:"gcp_client_id",onChange:function(e){ae("gcpClientID",e.target.value)},label:"Client ID",value:P})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_private_key_id",name:"gcp_private_key_id",onChange:function(e){ae("gcpPrivateKeyID",e.target.value)},label:"Private Key ID",value:z})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gcp_private_key",name:"gcp_private_key",onChange:function(e){ae("gcpPrivateKey",e.target.value)},label:"Private Key",value:K})})]}),"aws"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_endpoint",name:"aws_endpoint",onChange:function(e){ae("awsEndpoint",e.target.value),ne("aws_endpoint")},label:"Endpoint",value:f,error:X.aws_endpoint||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_region",name:"aws_region",onChange:function(e){ae("awsRegion",e.target.value),ne("aws_region")},label:"Region",value:y,error:X.aws_region||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_kmsKey",name:"aws_kmsKey",onChange:function(e){ae("awsKMSKey",e.target.value)},label:"KMS Key",value:S})}),Object(n.jsx)("h5",{children:"Credentials"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_accessKey",name:"aws_accessKey",onChange:function(e){ae("awsAccessKey",e.target.value),ne("aws_accessKey")},label:"Access Key",value:C,error:X.aws_accessKey||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_secretKey",name:"aws_secretKey",onChange:function(e){ae("awsSecretKey",e.target.value),ne("aws_secretKey")},label:"Secret Key",value:k,error:X.aws_secretKey||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"aws_token",name:"aws_token",onChange:function(e){ae("awsToken",e.target.value)},label:"Token",value:N})})]}),"gemalto"===m&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gemalto_endpoint",name:"gemalto_endpoint",onChange:function(e){ae("gemaltoEndpoint",e.target.value),ne("gemalto_endpoint")},label:"Endpoint",value:h,error:X.gemalto_endpoint||"",required:!0})}),Object(n.jsx)("h5",{children:"Credentials"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gemalto_token",name:"gemalto_token",onChange:function(e){ae("gemaltoToken",e.target.value),ne("gemalto_token")},label:"Token",value:p,error:X.gemalto_token||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"gemalto_domain",name:"gemalto_domain",onChange:function(e){ae("gemaltoDomain",e.target.value),ne("gemalto_domain")},label:"Domain",value:O,error:X.gemalto_domain||"",required:!0})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",min:"0",id:"gemalto_retry",name:"gemalto_retry",onChange:function(e){ae("gemaltoRetry",e.target.value),ne("gemalto_retry")},label:"Retry (seconds)",value:g,error:X.gemalto_retry||""})}),Object(n.jsx)("h5",{children:"Custom CA Root certificate verification"}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(qo,{onChange:function(e,t){d(t,e),ne("gemalto_ca")},accept:".cer,.crt,.cert,.pem",id:"gemalto_ca",name:"gemalto_ca",label:"CA",value:Z.cert})})]})]})]})}))),Ys=Object(s.b)((function(e){return{advancedMode:e.tenants.createTenant.advancedModeOn,volumeSize:e.tenants.createTenant.fields.tenantSize.volumeSize,sizeFactor:e.tenants.createTenant.fields.tenantSize.sizeFactor,drivesPerServer:e.tenants.createTenant.fields.tenantSize.drivesPerServer,nodes:e.tenants.createTenant.fields.tenantSize.nodes,memoryNode:e.tenants.createTenant.fields.tenantSize.memoryNode,ecParity:e.tenants.createTenant.fields.tenantSize.ecParity,ecParityChoices:e.tenants.createTenant.fields.tenantSize.ecParityChoices,cleanECChoices:e.tenants.createTenant.fields.tenantSize.cleanECChoices,maxAllocableMemo:e.tenants.createTenant.fields.tenantSize.maxAllocableMemo,memorySize:e.tenants.createTenant.fields.tenantSize.memorySize,distribution:e.tenants.createTenant.fields.tenantSize.distribution,ecParityCalc:e.tenants.createTenant.fields.tenantSize.ecParityCalc,limitSize:e.tenants.createTenant.fields.tenantSize.limitSize,selectedStorageClass:e.tenants.createTenant.fields.nameTenant.selectedStorageClass}}),{updateAddField:Ts,isPageValid:Es}),Qs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Ys((function(e){var t=e.classes,a=e.updateAddField,i=e.isPageValid,r=e.advancedMode,o=e.volumeSize,s=e.sizeFactor,l=e.drivesPerServer,d=e.nodes,b=e.memoryNode,j=e.ecParity,m=e.ecParityChoices,h=e.cleanECChoices,p=e.maxAllocableMemo,O=e.memorySize,g=e.distribution,f=e.ecParityCalc,v=e.limitSize,y=e.selectedStorageClass,S=Object(c.useState)({}),C=Object(u.a)(S,2),k=C[0],N=C[1],w=f.storageFactors.find((function(e){return e.erasureCode===j})),T=Object(c.useCallback)((function(e,t){a("tenantSize",e,t)}),[a]),E=function(e){N(Is(k,e))},A=Object(c.useCallback)((function(){var e=parseInt(b)||0,t=p||0,a=s,n=function(e,t,a){var n=se(e.toString(10),"Gi",!0),c=parseInt(n,10);if(0===a)return{error:"There is no memory available for the selected number of nodes",request:0,limit:0};if(aa)return{error:"The requested memory is greater than the max available memory for the selected number of nodes",request:0,limit:0};var i=parseInt(t,10),r=c;return i>=parseInt(se("1","Pi",!0),10)?r=Math.max(c,parseInt(se("64","Gi",!0),10)):i>=parseInt(se("100","Ti"),10)?r=Math.max(c,parseInt(se("32","Gi",!0),10)):i>=parseInt(se("10","Ti"),10)?r=Math.max(c,parseInt(se("16","Gi",!0),10)):i>=parseInt(se("1","Ti"),10)&&(r=Math.max(c,parseInt(se("8","Gi",!0),10))),{error:"",request:c,limit:r}}(e,se((o||0).toString(10),a),t);T("memorySize",n)}),[p,b,s,T,o]);Object(c.useEffect)((function(){A()}),[b,A]),Object(c.useEffect)((function(){A()}),[p,A]),Object(c.useEffect)((function(){if(m.length>0&&""===g.error){var e=function(e,t,a,n){if(e.length<1)return{error:1,defaultEC:"",erasureCodeSet:0,maxEC:"",rawCapacity:"0",storageFactors:[]};var c=t*a,i=e[0],r=2*parseInt(i.split(":")[1],10),o=e.map((function(e){var a=parseInt(e.split(":")[1],10),n=r/(r-a),i=Math.floor(c/n),o=t-Math.floor(t/n);return{erasureCode:e,storageFactor:n,maxCapacity:i.toString(10),maxFailureTolerations:o}})),s=i,l=e.find((function(e){return"EC:4"===e}));return t>=8&&n>16&&l&&(s="EC:4"),{error:0,storageFactors:o,maxEC:i,rawCapacity:c.toString(10),erasureCodeSet:r,defaultEC:s}}(h,g.persistentVolumes,g.pvSize,g.nodes);T("ecParityCalc",e),T("ecParity",e.defaultEC)}}),[m.length,g,h,T]),Object(c.useEffect)((function(){_(),I(),function(e){""===e||isNaN(parseInt(e))||pe.invoke("GET","/api/v1/cluster/max-allocatable-memory?num_nodes=".concat(e)).then((function(e){var t=e.max_memory?e.max_memory:0;T("maxAllocableMemo",t)})).catch((function(e){T("maxAllocableMemo",0),console.error(e)}))}(d)}),[d,o,s,l]);var _=function(){var e=o,t=s,a=se("12","Ti",!0),n=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,c=se(e.value,e.unit,!0);return parseInt(c,10)v[y],customValidationMessage:"Volume size must be greater than 1Gi and less than ".concat(ce(v[y],!0))},{fieldKey:"memory_per_node",required:!0,value:b,customValidation:parseInt(b)<2,customValidationMessage:"Memory size must be greater than 2Gi"},{fieldKey:"drivesps",required:!0,value:l,customValidation:parseInt(l)<1,customValidationMessage:"There must be at least one drive"}]);i("tenantSize",!("nodes"in t)&&!("volume_size"in t)&&!("memory_per_node"in t)&&!("drivesps"in t)&&""===g.error&&0===f.error&&""===O.error),N(t)}),[d,o,s,b,g,l,f,O,v,y,i]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Tenant Size"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Please select the desired capacity"})]}),Object(n.jsx)("span",{className:t.error,children:g.error}),Object(n.jsx)("span",{className:t.error,children:O.error}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"nodes",name:"nodes",type:"number",onChange:function(e){T("nodes",e.target.value),E("nodes")},label:"Number of Servers",value:d,min:"4",required:!0,error:k.nodes||""})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"drivesps",name:"drivesps",type:"number",onChange:function(e){T("drivesPerServer",e.target.value),E("drivesps")},label:"Number of Drives per Server",value:l,min:"1",required:!0,error:k.drivesps||""})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("div",{className:t.multiContainer,children:[Object(n.jsx)("div",{children:Object(n.jsx)(Sa,{type:"number",id:"volume_size",name:"volume_size",onChange:function(e){T("volumeSize",e.target.value),E("volume_size")},label:"Total Size",value:o,required:!0,error:k.volume_size||"",min:"0"})}),Object(n.jsx)("div",{className:t.sizeFactorContainer,children:Object(n.jsx)(Ea,{label:"Unit",id:"size_factor",name:"size_factor",value:s,onChange:function(e){T("sizeFactor",e.target.value)},options:oe()})})]})}),r&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{type:"number",id:"memory_per_node",name:"memory_per_node",onChange:function(e){T("memoryNode",e.target.value),E("memory_per_node")},label:"Memory per Node [Gi]",value:b,required:!0,error:k.memory_per_node||"",min:"2"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Ea,{id:"ec_parity",name:"ec_parity",onChange:function(e){T("ecParity",e.target.value)},label:"Erasure Code Parity",value:j,options:m}),Object(n.jsx)("span",{className:t.descriptionText,children:"Please select the desired parity. This setting will change the max usable capacity in the cluster"})]})]}),Object(n.jsx)("h4",{children:"Resource Allocation"}),Object(n.jsx)(kn.a,{className:t.table,"aria-label":"simple table",children:Object(n.jsxs)(Cn.a,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Number of Servers"}),Object(n.jsx)(Sn.a,{align:"right",children:parseInt(d)>0?d:"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Drives per Server"}),Object(n.jsx)(Sn.a,{align:"right",children:g?g.disks:"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Drive Capacity"}),Object(n.jsx)(Sn.a,{align:"right",children:g?ce(g.pvSize):"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Total Number of Volumes"}),Object(n.jsx)(Sn.a,{align:"right",children:g?g.persistentVolumes:"-"})]}),!r&&Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Memory per Node"}),Object(n.jsxs)(Sn.a,{align:"right",children:[b," Gi"]})]})]})}),0===f.error&&w&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("h4",{children:"Erasure Code Configuration"}),Object(n.jsx)(kn.a,{className:t.table,"aria-label":"simple table",children:Object(n.jsxs)(Cn.a,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"EC Parity"}),Object(n.jsx)(Sn.a,{align:"right",children:""!==j?j:"-"})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Raw Capacity"}),Object(n.jsx)(Sn.a,{align:"right",children:ce(f.rawCapacity)})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Usable Capacity"}),Object(n.jsx)(Sn.a,{align:"right",children:ce(w.maxCapacity)})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{component:"th",scope:"row",children:"Number of server failures to tolerate"}),Object(n.jsx)(Sn.a,{align:"right",children:g?Math.floor(w.maxFailureTolerations/g.disks):"-"})]})]})})]})]})}))),Zs=Object(s.b)((function(e){return{advancedMode:e.tenants.createTenant.advancedModeOn,enableTLS:e.tenants.createTenant.fields.security.enableTLS,tenantName:e.tenants.createTenant.fields.nameTenant.tenantName,selectedStorageClass:e.tenants.createTenant.fields.nameTenant.selectedStorageClass,customImage:e.tenants.createTenant.fields.configure.customImage,imageName:e.tenants.createTenant.fields.configure.imageName,consoleImage:e.tenants.createTenant.fields.configure.consoleImage,namespace:e.tenants.createTenant.fields.nameTenant.namespace,volumeSize:e.tenants.createTenant.fields.tenantSize.volumeSize,sizeFactor:e.tenants.createTenant.fields.tenantSize.sizeFactor}}),{}),Js=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))(Zs((function(e){var t=e.classes,a=e.tenantName,i=e.customImage,r=e.imageName,o=e.consoleImage,s=e.namespace,l=e.selectedStorageClass,d=e.volumeSize,b=e.sizeFactor,u=e.advancedMode,j=e.enableTLS;return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Review"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Review the details of the new tenant"})]}),Object(n.jsx)(kn.a,{size:"small",children:Object(n.jsxs)(Cn.a,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Tenant Name"}),Object(n.jsx)(Sn.a,{children:a})]}),i&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"MinIO Image"}),Object(n.jsx)(Sn.a,{children:r})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Console Image"}),Object(n.jsx)(Sn.a,{children:o})]})]}),""!==s&&Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Namespace"}),Object(n.jsx)(Sn.a,{children:s})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Storage Class"}),Object(n.jsx)(Sn.a,{children:l})]}),Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Total Size"}),Object(n.jsxs)(Sn.a,{children:[d," ",b]})]}),u&&Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(yn.a,{children:[Object(n.jsx)(Sn.a,{align:"right",className:t.tableTitle,children:"Enable TLS"}),Object(n.jsx)(Sn.a,{children:j?"Enabled":"Disabled"})]})})]})})]})}))),$s=Object(s.b)((function(e){return{podAffinity:e.tenants.createTenant.fields.affinity.podAffinity,nodeSelectorLabels:e.tenants.createTenant.fields.affinity.nodeSelectorLabels,withPodAntiAffinity:e.tenants.createTenant.fields.affinity.withPodAntiAffinity}}),{setModalErrorSnackMessage:q,updateAddField:Ts,isPageValid:Es}),Xs=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve))}))($s((function(e){var t=e.classes,a=e.podAffinity,i=e.nodeSelectorLabels,r=e.withPodAntiAffinity,o=(e.setModalErrorSnackMessage,e.updateAddField),s=e.isPageValid,l=Object(c.useState)({}),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useCallback)((function(e,t){o("affinity",e,t)}),[o]);return Object(c.useEffect)((function(){var e=[];if("nodeSelector"===a){var t=!0,n=i.split("&");1===n.length&&""===n[0]&&(t=!1),n.forEach((function(e,a){var c=e.split("=");2!==c.length&&(t=!1),a+1!==n.length&&(""!==c[0]&&""!==c[1]||(t=!1))})),e=[].concat(Object($e.a)(e),[{fieldKey:"labels",required:!0,value:i,customValidation:!t,customValidationMessage:"You need to add at least one label key-pair"}])}var c=_s(e);s("affinity",0===Object.keys(c).length),j(c)}),[s,a,i]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsxs)("div",{className:t.headerElement,children:[Object(n.jsx)("h3",{className:t.h3Section,children:"Pod Affinity"}),Object(n.jsx)("span",{className:t.descriptionText,children:"Configure how pods will be assigned to nodes"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Da,{currentSelection:a,id:"affinity-options",name:"affinity-options",label:"Type",onChange:function(e){m("podAffinity",e.target.value)},selectorOptions:[{label:"None",value:"none"},{label:"Default (Pod Anti-afinnity)",value:"default"},{label:"Node Selector",value:"nodeSelector"}]}),"MinIO supports multiple configurations for Pod Afinnity"]}),"nodeSelector"===a&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"with_pod_anti_affinity",id:"with_pod_anti_affinity",name:"with_pod_anti_affinity",checked:r,onChange:function(e){var t=e.target.checked;m("withPodAntiAffinity",t)},label:"With Pod Anti-Affinity"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(Dn,{name:"labels",label:"Labels",elements:i,onChange:function(e){m("nodeSelectorLabels",e)},keyPlaceholder:"Label Key",valuePlaceholder:"Label Value",tooltip:"Labels to be used in nodeSelector assignation. Invalid key-pairs will be ignored",withBorder:!0}),Object(n.jsx)("span",{className:t.error,children:b.labels})]})]})]})}))),el=Object(s.b)((function(e){return{advancedMode:e.tenants.createTenant.advancedModeOn,namespace:e.tenants.createTenant.fields.nameTenant.namespace,validPages:e.tenants.createTenant.validPages,fields:e.tenants.createTenant.fields,certificates:e.tenants.createTenant.certificates}}),{setModalErrorSnackMessage:q,updateAddField:Ts}),tl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we),Ve),Re))}))(el((function(e){var t=e.classes,a=e.advancedMode,i=e.fields,r=e.certificates,o=e.namespace,s=e.validPages,l=e.setModalErrorSnackMessage,d=e.closeAndRefresh,b=Object(c.useState)(!1),m=Object(u.a)(b,2),h=m[0],p=m[1],O=Object(c.useState)(null),g=Object(u.a)(O,2),f=g[0],v=g[1],S=Object(c.useState)(!1),C=Object(u.a)(S,2),k=C[0],N=C[1];Object(c.useEffect)((function(){var e=i.nameTenant.tenantName,t=i.nameTenant.selectedStorageClass,a=i.configure.imageName,n=i.configure.consoleImage,c=i.configure.customDockerhub,s=i.configure.imageRegistry,d=i.configure.imageRegistryUsername,b=i.configure.imageRegistryPassword,u=i.configure.exposeMinIO,m=i.configure.exposeConsole,h=i.identityProvider.idpSelection,O=i.identityProvider.openIDURL,g=i.identityProvider.openIDClientID,f=i.identityProvider.openIDSecretID,x=i.identityProvider.ADURL,y=i.identityProvider.ADSkipTLS,S=i.identityProvider.ADServerInsecure,C=i.identityProvider.ADUserNameFilter,w=i.identityProvider.ADGroupBaseDN,T=i.identityProvider.ADGroupSearchFilter,E=i.identityProvider.ADNameAttribute,A=i.identityProvider.accessKeys,_=i.identityProvider.secretKeys,I=r.minioCertificates,M=r.caCertificates,F=r.consoleCertificate,D=r.serverCertificate,L=r.clientCertificate,B=r.vaultCertificate,R=r.vaultCA,P=r.gemaltoCA,z=i.encryption.enableEncryption,K=i.encryption.encryptionType,U=i.encryption.gemaltoEndpoint,W=i.encryption.gemaltoToken,V=i.encryption.gemaltoDomain,G=i.encryption.gemaltoRetry,q=i.encryption.awsEndpoint,H=i.encryption.awsRegion,Y=i.encryption.awsKMSKey,Q=i.encryption.awsAccessKey,J=i.encryption.awsSecretKey,$=i.encryption.awsToken,X=i.encryption.vaultEndpoint,ee=i.encryption.vaultEngine,te=i.encryption.vaultNamespace,ae=i.encryption.vaultPrefix,ne=i.encryption.vaultAppRoleEngine,ce=i.encryption.vaultId,ie=i.encryption.vaultSecret,re=i.encryption.vaultRetry,oe=i.encryption.vaultPing,se=i.encryption.gcpProjectID,le=i.encryption.gcpEndpoint,de=i.encryption.gcpClientEmail,ue=i.encryption.gcpClientID,je=i.encryption.gcpPrivateKeyID,me=i.encryption.gcpPrivateKey,he=i.security.enableAutoCert,Oe=i.security.enableTLS,ge=i.tenantSize.ecParity,fe=i.tenantSize.distribution,xe=i.tenantSize.memorySize,ve=i.configure.logSearchCustom,ye=i.configure.prometheusCustom,Se=i.configure.logSearchVolumeSize,Ce=i.configure.logSearchSelectedStorageClass,ke=i.configure.logSearchImage,Ne=i.configure.kesImage,we=i.configure.logSearchPostgresImage,Te=i.configure.prometheusImage,Ee=i.configure.prometheusSelectedStorageClass,Ae=i.configure.prometheusVolumeSize,_e=i.affinity.podAffinity,Ie=i.affinity.nodeSelectorLabels,Me=i.affinity.withPodAntiAffinity;if(k){var Fe=be([]),De={};switch(_e){case"default":De={affinity:ss(e,Fe)};break;case"nodeSelector":De={affinity:ls(Ie,Me,e,Fe)}}var Le=ge.split(":")[1],Be={name:e,namespace:o,access_key:"",secret_key:"",access_keys:[],secret_keys:[],enable_tls:Oe&&he,enable_console:!0,enable_prometheus:!0,service_name:"",image:a,console_image:n,expose_minio:u,expose_console:m,pools:[Object(j.a)({name:Fe,servers:fe.nodes,volumes_per_server:fe.disks,volume_configuration:{size:fe.pvSize,storage_class_name:t},resources:{requests:{memory:xe.request},limits:{memory:xe.limit}}},De)],erasureCodingParity:parseInt(Le,10)};c&&(Be=Object(j.a)(Object(j.a)({},Be),{},{image_registry:{registry:s,username:d,password:b}})),Be=ve?Object(j.a)(Object(j.a)({},Be),{},{logSearchConfiguration:{storageClass:Ce,storageSize:parseInt(Se),image:ke,postgres_image:we}}):Object(j.a)(Object(j.a)({},Be),{},{logSearchConfiguration:{image:ke,postgres_image:we}}),Be=ye?Object(j.a)(Object(j.a)({},Be),{},{prometheusConfiguration:{storageClass:Ee,storageSize:parseInt(Ae),image:Te}}):Object(j.a)(Object(j.a)({},Be),{},{prometheusConfiguration:{image:Te}});var Re=null,Pe=null,ze=null;if(M.length>0&&(ze={ca_certificates:M.map((function(e){return e.encoded_cert})).filter((function(e){return e}))}),Oe&&I.length>0&&(Re={minio:I.map((function(e){return{crt:e.encoded_cert,key:e.encoded_key}})).filter((function(e){return e.crt&&e.key}))}),Oe&&""!==F.encoded_cert&&""!==F.encoded_key&&(Pe={console:{crt:F.encoded_cert,key:F.encoded_key}}),(Re||Pe||ze)&&(Be=Object(j.a)(Object(j.a)({},Be),{},{tls:Object(j.a)(Object(j.a)(Object(j.a)({},Re),Pe),ze)})),z){var Ke={};switch(K){case"gemalto":var Ue={};""!==P.encoded_cert&&(Ue={ca:P.encoded_cert}),Ke={gemalto:{keysecure:{endpoint:U,credentials:{token:W,domain:V,retry:parseInt(G)},tls:Object(j.a)({},Ue)}}};break;case"aws":Ke={aws:{secretsmanager:{endpoint:q,region:H,kmskey:Y,credentials:{accesskey:Q,secretkey:J,token:$}}}};break;case"gcp":Ke={gcp:{secretmanager:{project_id:se,endpoint:le,credentials:{client_email:de,client_id:ue,private_key_id:je,private_key:me}}}};break;case"vault":var We=null,Ve=null;""!==B.encoded_key&&""!==B.encoded_cert&&(We={key:B.encoded_key,crt:B.encoded_cert}),""!==R.encoded_cert&&(Ve={ca:R.encoded_cert});var Ge=null;(We||R)&&(Ge={tls:Object(j.a)(Object(j.a)({},We),Ve)}),Ke={vault:Object(j.a)(Object(j.a)({endpoint:X,engine:ee,namespace:te,prefix:ae,approle:{engine:ne,id:ce,secret:ie,retry:parseInt(re)}},Ge),{},{status:{ping:parseInt(oe)}})}}var qe={},He={};""!==L.encoded_key&&""!==L.encoded_cert&&(He={client:{key:L.encoded_key,crt:L.encoded_cert}}),""!==D.encoded_key&&""!==D.encoded_cert&&(qe={server:{key:D.encoded_key,crt:D.encoded_cert}}),Be=Object(j.a)(Object(j.a)({},Be),{},{encryption:Object(j.a)(Object(j.a)(Object(j.a)({image:Ne},He),qe),Ke)})}var Ye={};switch(h){case"Built-in":for(var Qe=[],Ze=0;Ze=0}));Object(c.useEffect)((function(){if(k){pe.invoke("GET","/api/v1/tenants").then((function(e){if(null!==e){var t=[];null!==e.tenants&&(t=e.tenants);for(var a=0;a0&&A(t[0].value)})).catch((function(e){console.error(e)}))}),[t]),Object(n.jsx)(xa,{onClose:function(){return r(!1)},modalOpen:i,title:"Add Pool",children:Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d(!0);var a=be(t.pools),n=ss(t.name,a),c={name:a,servers:m,volumes_per_server:k,volume_configuration:{size:1073741824*f,storage_class_name:E,labels:null},affinity:n};pe.invoke("POST","/api/v1/namespaces/".concat(t.namespace,"/tenants/").concat(t.name,"/pools"),c).then((function(){d(!1),r(!0)})).catch((function(e){d(!1)}))},children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"number_of_nodes",name:"number_of_nodes",type:"number",onChange:function(e){h(parseInt(e.target.value))},label:"Number o Nodes",value:m.toString(10)})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"pool_size",name:"pool_size",type:"number",onChange:function(e){v(parseInt(e.target.value))},label:"Volume Size (Gi)",value:f.toString(10)})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"volumes_per_sever",name:"volumes_per_sever",type:"number",onChange:function(e){N(parseInt(e.target.value))},label:"Volumes per Server",value:k.toString(10)})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{id:"storage_class",name:"storage_class",onChange:function(e){A(e.target.value)},label:"Storage Class",value:E,options:M,disabled:M.length<1})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:a.bottomContainer,children:[Object(n.jsxs)("div",{className:a.factorElements,children:[Object(n.jsxs)("div",{children:[Object(n.jsx)("div",{className:a.sizeNumber,children:ce(D.toString(10))}),Object(n.jsx)("div",{className:a.sizeDescription,children:"Instance Capacity"})]}),Object(n.jsxs)("div",{children:[Object(n.jsx)("div",{className:a.sizeNumber,children:ce(L.toString(10))}),Object(n.jsx)("div",{className:a.sizeDescription,children:"Total Capacity"})]})]}),Object(n.jsx)("div",{className:a.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l,children:"Save"})})]}),l&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})]})})})),ol=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},sizeFactorContainer:{marginLeft:8}},we))}))((function(e){var t=e.classes,a=e.open,r=e.closeModalAndRefresh,o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(0),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(""),O=Object(u.a)(p,2),f=O[0],v=O[1],S=Object(c.useState)(""),C=Object(u.a)(S,2),k=C[0],N=C[1],w=Object(c.useState)(""),T=Object(u.a)(w,2),E=T[0],A=T[1],_=Object(c.useState)(""),I=Object(u.a)(_,2),M=I[0],F=I[1],D=Object(c.useState)(""),L=Object(u.a)(D,2),B=L[0],R=L[1],P=Object(c.useState)(""),z=Object(u.a)(P,2),K=z[0],U=z[1],W=Object(c.useState)(""),V=Object(u.a)(W,2),G=V[0],q=V[1];return Object(n.jsx)(xa,{modalOpen:a,title:"Add Pool",onClose:function(){r(!1)},children:Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),d(!0)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Source Bucket",options:[],onChange:function(e){v(e.target.value)},value:f,name:"source_bucket",id:"source_bucket"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:m,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){h(t)},"aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Local Cluster"}),Object(n.jsx)(nn.a,{label:"Remote Cluster"})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),0===m&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Cluster",options:[],onChange:function(e){N(e.target.value)},value:k,name:"cluster",id:"cluster"})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ea,{label:"Destination Bucket",options:[],onChange:function(e){A(e.target.value)},value:E,name:"destination_bucket",id:"destination_bucket"})})]}),1===m&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"address",name:"address",onChange:function(e){F(e.target.value)},label:"Address",value:M})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"bucket",name:"bucket",onChange:function(e){R(e.target.value)},label:"Bucket",value:B})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"accessKey",name:"accessKey",onChange:function(e){U(e.target.value)},label:"Access Key",value:K})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"secretKey",name:"secretKey",onChange:function(e){q(e.target.value)},label:"Secret Key",value:G})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:l,children:"Save"})}),l&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})})),sl=Object(w.a)((function(e){return{root:{height:10,borderRadius:5},colorPrimary:{backgroundColor:"#F4F4F4"},bar:{borderRadius:5,backgroundColor:"#081C42"},padChart:{padding:"5px"}}}))(y.a),ll=Object(w.a)((function(e){return Object(k.a)({paperContainer:{padding:15},allValue:{fontSize:16,fontWeight:700,marginBottom:8},currentUsage:{fontSize:12,marginTop:8},centerItem:{textAlign:"center"}})}))((function(e){var t=e.classes,a=e.maxValue,c=e.currValue,r=e.label,o=e.renderFunction,s=e.loading,l=e.error,d=100*c/a;return Object(n.jsxs)(i.a.Fragment,{children:[s&&Object(n.jsx)("div",{className:t.padChart,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.centerItem,children:Object(n.jsx)(S.a,{color:"primary",size:40,variant:"indeterminate"})})}),s?null:""!==l?Object(n.jsx)(Go,{errorMessage:l,withBreak:!1}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.allValue,children:[r," ",o?o(a.toString()):a]}),Object(n.jsx)(sl,{variant:"determinate",value:d}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.currentUsage,children:["Used:"," ",o?o(c.toString()):c]})]})]})})),dl=Object(s.b)(null,{setModalErrorSnackMessage:q}),bl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"}},we))}))(dl((function(e){var t=e.open,a=e.closeModalAndRefresh,i=e.namespace,r=e.idTenant,o=e.setModalErrorSnackMessage,s=e.classes,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],m=d[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],f=p[1],v=Object(c.useState)(""),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(""),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(""),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(""),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!0),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(!0),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useCallback)((function(e){var t=new RegExp("^$|^((.*?)/(.*?):(.+))$");switch(e){case"consoleImage":Y(t.test(S));break;case"minioImage":V(t.test(O))}}),[S,O]);Object(c.useEffect)((function(){Q("minioImage")}),[O,Q]),Object(c.useEffect)((function(){Q("consoleImage")}),[S,Q]);return Object(n.jsx)(xa,{title:"Update MinIO Version",modalOpen:t,onClose:function(){a(!1)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:s.formScrollable,children:[Object(n.jsx)("span",{children:"Please enter the MinIO image from dockerhub to use. If blank, then latest build will be used."}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:O,label:"MinIO's Image",id:"minioImage",name:"minioImage",placeholder:"E.g. minio/minio:RELEASE.2020-05-08T02-40-49Z",onChange:function(e){f(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:S,label:"Console's Image",id:"consoleImage",name:"consoleImage",placeholder:"E.g. minio/console:v0.3.13",onChange:function(e){C(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"imageRegistry",id:"setImageRegistry",name:"setImageRegistry",checked:w,onChange:function(e){T(!w)},label:"Set Custom Image Registry",indicatorLabels:["Yes","No"]})}),w&&Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:_,label:"Endpoint",id:"imageRegistry",name:"imageRegistry",placeholder:"E.g. https://index.docker.io/v1/",onChange:function(e){I(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:D,label:"Username",id:"imageRegistryUsername",name:"imageRegistryUsername",placeholder:"Enter image registry username",onChange:function(e){L(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:P,label:"Password",id:"imageRegistryPassword",name:"imageRegistryPassword",placeholder:"Enter image registry password",onChange:function(e){z(e.target.value)}})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:s.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:s.clearButton,onClick:function(){f(""),C(""),T(!1),I(""),L(""),z("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:!W||!H||w&&(""===_.trim()||""===D.trim()||""===P.trim())||b,onClick:function(){m(!0);var e={image:O,console_image:S,enable_prometheus:!0};if(w){var t={image_registry:{registry:_,username:D,password:P}};e=Object(j.a)(Object(j.a)({},e),t)}pe.invoke("PUT","/api/v1/namespaces/".concat(i,"/tenants/").concat(r),e).then((function(){m(!1),a(!0)})).catch((function(e){o(e),m(!1)}))},children:"Save"})]})]})})}))),ul=a(435),jl=a.n(ul),ml={setModalErrorSnackMessage:q},hl=Object(s.b)(null,ml),pl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)({jsonPolicyEditor:{minHeight:400,width:"100%"},buttonContainer:{textAlign:"right"},errorState:{color:"#b53b4b",fontSize:14,fontWeight:"bold"}},we),Ne))}))(hl((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.tenant,o=e.namespace,s=e.setModalErrorSnackMessage,l=Object(c.useState)(!1),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),S=v[0],C=v[1],k=Object(c.useState)(""),N=Object(u.a)(k,2),w=N[0],T=N[1];Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/namespaces/".concat(o,"/tenants/").concat(r,"/yaml")).then((function(e){O(!1),C(e.yaml)})).catch((function(e){O(!1),s(e)}))}),[r,o,s]),Object(c.useEffect)((function(){}),[]);var E=""!==S.trim();return Object(n.jsxs)(xa,{modalOpen:a,onClose:function(){i(!1)},title:"YAML",children:[p&&Object(n.jsx)(y.a,{}),""!==w&&Object(n.jsx)("div",{className:t.errorState,children:w}),!p&&Object(n.jsx)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){e.preventDefault(),b||(j(!0),T(""),pe.invoke("PUT","/api/v1/namespaces/".concat(o,"/tenants/").concat(r,"/yaml"),{yaml:S}).then((function(e){j(!1),i(!0),T("")})).catch((function(e){j(!1),console.log(e),T(e)})))},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.formScrollable,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(bc,{label:"Tenant Specification",value:S,mode:"yaml",onBeforeChange:function(e,t,a){C(a)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:b||!E,children:"Save"})}),b&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]})})]})}))),Ol=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({paperContainer:{padding:"15px 15px 15px 50px"},licenseInfoValue:{textTransform:"none",fontSize:14,fontWeight:"bold"},licenseContainer:{position:"relative",padding:"20px 52px 0px 28px",background:"#032F51",boxShadow:"0px 3px 7px #00000014","& h2":{color:"#FFF",marginBottom:67},"& a":{textDecoration:"none"},"& h3":{color:"#FFFFFF",marginBottom:"30px",fontWeight:"bold"},"& h6":{color:"#FFFFFF !important"}},licenseInfo:{color:"#FFFFFF",position:"relative"},licenseInfoTitle:{textTransform:"none",color:"#BFBFBF",fontSize:11},verifiedIcon:{width:96,position:"absolute",right:0,bottom:29},noUnderLine:{textDecoration:"none"}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.tenant,c=e.loadingActivateProduct,r=e.loadingLicenseInfo,o=e.licenseInfo,s=e.activateProduct;return Object(n.jsx)(C.a,{className:a&&a.subnet_license?t.licenseContainer:"",children:a&&a.subnet_license?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.licenseInfo,children:[Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"License"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:"Commercial License"}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Organization"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:a.subnet_license.organization}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Registered Capacity"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:ce((1099511627776*a.subnet_license.storage_capacity).toString(10))}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Expiry Date"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:Object(n.jsx)(it.a,{format:"YYYY-MM-DD",children:a.subnet_license.expires_at})})]}),Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Subscription Plan"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:a.subnet_license.plan}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Requester"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:a.subnet_license.email})]}),Object(n.jsx)("img",{className:t.verifiedIcon,src:"/verified.svg",alt:"verified"})]})}):!r&&Object(n.jsxs)(x.a,{className:t.paperContainer,children:[!o&&Object(n.jsx)(qt.a,{to:"/license",onClick:function(e){e.stopPropagation()},className:t.noUnderLine,children:Object(n.jsx)(g.a,{className:t.licenseButton,variant:"contained",color:"primary",children:"Activate Product"})}),o&&a&&Object(n.jsx)(g.a,{disabled:c,className:t.licenseButton,variant:"contained",color:"primary",onClick:function(){return s(a.namespace,a.name)},children:"Attach License"})]})})})),gl=Object(s.b)(null,{setErrorSnackMessage:V}),fl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({buttonContainer:{textAlign:"right"},multiContainer:{display:"flex",alignItems:"center",justifyContent:"flex-start"},sizeFactorContainer:{marginLeft:8},containerHeader:{display:"flex",justifyContent:"space-between"},paperContainer:{padding:"15px 15px 15px 50px"},infoGrid:{display:"grid",gridTemplateColumns:"auto auto auto auto",gridGap:8,"& div":{display:"flex",alignItems:"center"},"& div:nth-child(odd)":{justifyContent:"flex-end",fontWeight:700},"& div:nth-child(2n)":{paddingRight:35}},masterActions:{width:"25%",minWidth:"120px","& div":{margin:"5px 0px"}},updateButton:{backgroundColor:"transparent",border:0,padding:"0 6px",cursor:"pointer","&:focus, &:active":{outline:"none"},"& svg":{height:12}},poolLabel:{color:"#666666"},titleCol:{fontWeight:"bold"},breadcrumLink:{textDecoration:"none",color:"black"}},we),Me),Ge),Fe),qe),{},{actionsTray:Object(j.a)(Object(j.a)({},Me.actionsTray),{},{padding:"15px 0 0"})},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(gl((function(e){var t=e.classes,a=e.match,r=e.setErrorSnackMessage,o=Object(c.useState)(0),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(0),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(0),O=Object(u.a)(p,2),v=O[0],y=O[1],S=Object(c.useState)([]),k=Object(u.a)(S,2),N=k[0],w=k[1],T=Object(c.useState)([]),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(0),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(0),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(!1),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(!1),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(!1),Q=Object(u.a)(Y,2),J=Q[0],$=Q[1],X=Object(c.useState)(null),ee=Object(u.a)(X,2),te=ee[0],ae=ee[1],ne=Object(c.useState)(!0),ie=Object(u.a)(ne,2),re=ie[0],oe=ie[1],se=Object(c.useState)(""),le=Object(u.a)(se,2),de=le[0],be=le[1],je=Object(c.useState)(0),me=Object(u.a)(je,2),he=me[0],Oe=me[1],ge=Object(c.useState)(!1),fe=Object(u.a)(ge,2),xe=fe[0],ve=fe[1],ye=Object(c.useState)(!1),Se=Object(u.a)(ye,2),Ce=Se[0],ke=Se[1],Ne=Object(c.useState)(),we=Object(u.a)(Ne,2),Te=we[0],Ee=we[1],Ae=Object(c.useState)(!0),_e=Object(u.a)(Ae,2),Ie=_e[0],Me=_e[1],Fe=Object(c.useState)(!1),De=Object(u.a)(Fe,2),Le=De[0],Be=De[1],Re=Object(c.useState)(!1),Pe=Object(u.a)(Re,2),ze=Pe[0],Ke=Pe[1],Ue=Object(c.useState)(!1),We=Object(u.a)(Ue,2),Ve=We[0],Ge=We[1],qe=Object(c.useState)(!1),He=Object(u.a)(qe,2),Ye=He[0],Qe=He[1],Ze=Object(c.useState)(!1),Je=Object(u.a)(Ze,2),$e=Je[0],et=Je[1],at=Object(c.useState)(!1),nt=Object(u.a)(at,2),ct=nt[0],it=nt[1],rt=a.params.tenantName,ot=a.params.tenantNamespace,lt=function(){pe.invoke("GET","/api/v1/namespaces/".concat(ot,"/tenants/").concat(rt)).then((function(e){var t,a=e.pools?e.pools:[],n=0,c=0,i=0,r=Object(Nr.a)(a);try{for(r.s();!(t=r.n()).done;){var o=t.value,s=o.volumes_per_server*o.servers*o.volume_configuration.size;o.label="pool-".concat(i),void 0!==o.name&&""!==o.name||(o.name=o.label),o.capacity=ce(s+""),o.volumes=o.servers*o.volumes_per_server,n+=o.servers,c+=o.volumes,i+=1}}catch(l){r.e(l)}finally{r.f()}h(e.total_size||0),y(a.length),P(c),D(n),w(a),Ke(e.logEnabled),Ge(e.monitoringEnabled),Qe(e.encryptionEnabled),et(e.idpAdEnabled),it(e.idpOicEnabled),ae(e)})).catch((function(e){r(e)}))},dt=function(){pe.invoke("GET","/api/v1/namespaces/".concat(ot,"/tenants/").concat(rt,"/usage")).then((function(e){var t=Z()(e,"disk_used","0");Oe(parseInt(t)),be(""),oe(!1)})).catch((function(e){be(e),Oe(0),oe(!1)}))};Object(c.useEffect)((function(){lt(),dt(),Me(!0),pe.invoke("GET","/api/v1/subscription/info").then((function(e){Ee(e),Me(!1)})).catch((function(e){Me(!1)})),pe.invoke("GET","/api/v1/namespaces/".concat(ot,"/tenants/").concat(rt,"/pods")).then((function(e){for(var t=0;t ".concat(a.params.tenantName),Object(n.jsx)(Lt.a,{"aria-label":"more","aria-controls":"long-menu","aria-haspopup":"true",onClick:function(e){mt(e.currentTarget)},children:Object(n.jsx)(jl.a,{})}),Object(n.jsx)(il.a,{id:"long-menu",anchorEl:jt,keepMounted:!0,open:Boolean(jt),onClose:ht,children:Object(n.jsx)(wa.a,{onClick:ht,children:"Edit YAML"},"yaml")})]})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)(an.a,{value:l,indicatorColor:"primary",textColor:"primary",onChange:function(e,t){d(t)},"aria-label":"tenant-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Summary"}),Object(n.jsx)(nn.a,{label:"Pools"}),Object(n.jsx)(nn.a,{label:"Pods"}),Object(n.jsx)(nn.a,{label:"License"})]})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===l&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:8,children:Object(n.jsxs)("table",{width:"100%",children:[Object(n.jsx)("tr",{children:Object(n.jsxs)("td",{colSpan:4,children:[Object(n.jsx)("h2",{children:"Details"}),Object(n.jsx)("hr",{className:t.hrClass})]})}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Capacity:"}),Object(n.jsx)("td",{children:ce(m.toString(10))}),Object(n.jsx)("td",{className:t.titleCol,children:"MinIO:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ve(!0)},children:te?te.image:""})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Clusters:"}),Object(n.jsx)("td",{children:v}),Object(n.jsx)("td",{className:t.titleCol,children:"Console:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,onClick:function(){ve(!0)},children:te?te.console_image:""})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Instances:"}),Object(n.jsx)("td",{children:F}),Object(n.jsx)("td",{className:t.titleCol,children:"Volumes:"}),Object(n.jsx)("td",{children:R})]}),(null===te||void 0===te?void 0:te.endpoints)&&Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Endpoint:"}),Object(n.jsx)("td",{children:Object(n.jsx)("a",{href:null===te||void 0===te?void 0:te.endpoints.minio,target:"_blank",rel:"noopener noreferrer",children:null===te||void 0===te?void 0:te.endpoints.minio})}),Object(n.jsx)("td",{className:t.titleCol,children:"Console:"}),Object(n.jsx)("td",{children:Object(n.jsx)("a",{href:null===te||void 0===te?void 0:te.endpoints.console,target:"_blank",rel:"noopener noreferrer",children:null===te||void 0===te?void 0:te.endpoints.console})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"State:"}),Object(n.jsx)("td",{colSpan:3,children:null===te||void 0===te?void 0:te.currentState})]})]})}),Object(n.jsx)(x.a,{item:!0,xs:4,children:Object(n.jsx)(ll,{currValue:he,maxValue:te?te.total_size:0,label:"Storage",renderFunction:ce,error:de,loading:re})})]})}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(C.a,{className:t.paperContainer,children:Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsxs)("table",{width:"100%",children:[Object(n.jsx)("tr",{children:Object(n.jsxs)("td",{colSpan:4,children:[Object(n.jsx)("h2",{children:"Features"}),Object(n.jsx)("hr",{className:t.hrClass})]})}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Logs:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:ze?"Enabled":"Disabled"})}),Object(n.jsx)("td",{className:t.titleCol,children:"Monitoring:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:Ve?"Enabled":"Disabled"})})]}),Object(n.jsxs)("tr",{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Encryption:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:Ye?"Enabled":"Disabled"})}),Object(n.jsx)("td",{}),Object(n.jsx)("td",{})]}),Object(n.jsxs)("tr",{children:[$e||!$e&&!ct&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("td",{className:t.titleCol,children:"Active Directory:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:$e?"Enabled":"Disabled"})})]}),ct||!ct&&!$e&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("td",{className:t.titleCol,children:"OpenID:"}),Object(n.jsx)("td",{children:Object(n.jsx)(g.a,{color:"primary",className:t.anchorButton,children:ct?"Enabled":"Disabled"})})]})]})]})})})})]}),1===l&&Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Filter",className:t.searchField,id:"search-resource",label:"",onChange:function(e){},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){W(!0)},children:"Expand Tenant"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"delete",onClick:function(e){console.log(e)},sendOnlyId:!0}],columns:[{label:"Name",elementKey:"name"},{label:"Capacity",elementKey:"capacity"},{label:"# of Instances",elementKey:"servers"},{label:"# of Drives",elementKey:"volumes"}],isLoading:!1,records:N,entityName:"Servers",idField:"name"})})]}),2===l&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(ma,{columns:[{label:"Name",elementKey:"name"},{label:"Status",elementKey:"status"},{label:"Age",elementKey:"time"},{label:"Pod IP",elementKey:"podIP"},{label:"Restarts",elementKey:"restarts",renderFunction:function(e){return null!=e?e:0}},{label:"Node",elementKey:"node"}],isLoading:!1,records:A,entityName:"Servers",idField:"name"})]}),3===l&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("br",{}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Ol,{tenant:te,loadingLicenseInfo:Ie,loadingActivateProduct:Le,licenseInfo:Te,activateProduct:function(e,t){Le||(Be(!0),pe.invoke("POST","/api/v1/subscription/namespaces/".concat(e,"/tenants/").concat(t,"/activate"),{}).then((function(){Be(!1),lt()})).catch((function(e){Be(!1),r(e)})))}})})})]})]})]})]})}))),xl="OBJECT_BROWSER/ADD_ROUTE",vl="OBJECT_BROWSER/RESET_ROUTES_LIST",yl="OBJECT_BROWSER/REMOVE_ROUTE_LEVEL",Sl="OBJECT_BROWSER/SET_ALL_ROUTES",Cl="OBJECT_BROWSER/CREATE_FOLDER",kl="OBJECT_BROWSER/SET_LAST_AS_FILE",Nl="OBJECT_BROWSER/DOWNLOAD_FILE_LOADER",wl="OBJECT_BROWSER/DOWNLOADED_FILE",Tl=function(e,t,a){return{type:xl,route:e,label:t,routeType:a}},El=function(e){return{type:yl,toRoute:e}},Al=function(e){return{type:Sl,currentRoute:e}},_l=function(e){return{type:Nl,path:e}},Il=function(e){return{type:wl,path:e}},Ml={removeRouteLevel:El},Fl=Object(s.b)((function(e){var t=e.objectBrowser;return{objectsList:Z()(t,"routesList",[])}}),Ml)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({},Le))}))((function(e){var t=e.classes,a=e.objectsList,c=e.removeRouteLevel,r=a.map((function(e,t){return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(qt.a,{to:e.route,onClick:function(){c(e.route)},children:e.label}),t0?a.slice(-1)[0].label:""})}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.breadcrumbs,children:r})]})}))),Dl={addRoute:Tl,resetRoutesList:function(e){return{type:vl,reset:e}},displayErrorMessage:V},Ll=Object(s.b)(null,Dl),Bl=Object(l.g)(Ll(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},usedSpaceCol:{width:150,textAlign:"right"},subTitleLabel:{alignItems:"center",display:"flex"},bucketName:{display:"flex",alignItems:"center"},iconBucket:{backgroundImage:"url(/images/ob_bucket_clear.svg)",backgroundRepeat:"no-repeat",backgroundPosition:"center center",width:16,height:40,marginRight:10},"@global":{".rowLine:hover .iconBucketElm":{backgroundImage:"url(/images/ob_bucket_filled.svg)"}},browsePaper:{height:"calc(100vh - 280px)"}},Me),Fe),Le))}))((function(e){var t=e.classes,a=e.match,i=e.addRoute,r=e.resetRoutesList,o=e.displayErrorMessage,s=Object(c.useState)(!0),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)([]),m=Object(u.a)(j,2),h=m[0],p=m[1],O=Object(c.useState)(!1),v=Object(u.a)(O,2),y=v[0],S=v[1],C=Object(c.useState)(""),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(!0),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(!1),M=Object(u.a)(I,2),F=M[0],D=M[1];Object(c.useEffect)((function(){A&&pe.invoke("POST","/api/v1/has-permission",{actions:[{id:"createBucket",action:"s3:CreateBucket"}]}).then((function(e){var t=e.permissions.filter((function(e){return"createBucket"===e.id})).pop();t&&t.can?D(!0):D(!1),_(!1)})).catch((function(e){_(!1),V(e)}))}),[A]),Object(c.useEffect)((function(){r(!0)}),[a,r]),Object(c.useEffect)((function(){d&&pe.invoke("GET","/api/v1/buckets").then((function(e){b(!1),p(e.buckets||[])})).catch((function(e){b(!1),o(e)}))}),[d,o]);var L=h.filter((function(e){return""===N||e.name.indexOf(N)>=0}));return Object(n.jsxs)(c.Fragment,{children:[y&&Object(n.jsx)(za,{open:y,closeModalAndRefresh:function(e){S(!1),e&&b(!0)}}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.obTitleSection,children:Object(n.jsx)("div",{children:Object(n.jsx)(Fl,{})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Buckets",className:t.searchField,id:"search-resource",label:"",onChange:function(e){w(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){b(!0)},children:Object(n.jsx)(Kn.a,{})}),F&&Object(n.jsx)("div",{children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){S(!0)},children:"Create Bucket"})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:[{type:"view",sendOnlyId:!0,onClick:function(e){var t=Z()(a,"url","/object-browser"),n="".concat(t,"/").concat(e);i(n,e,"path")}}],columns:[{label:"Name",elementKey:"name",renderFunction:function(e){return Object(n.jsxs)("div",{className:t.bucketName,children:[Object(n.jsx)("div",{className:"".concat(t.iconBucket," iconBucketElm")}),Object(n.jsx)("span",{children:e})]})}},{label:"Used Space",elementKey:"size",renderFunction:ce,globalClass:t.usedSpaceCol,rowClass:t.usedSpaceCol,width:100,contentTextAlign:"right",headerTextAlign:"right"}],isLoading:d,records:L,entityName:"Buckets",idField:"name",customPaperHeight:t.browsePaper})})]})]})})))),Rl=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({watchList:{background:"white",maxHeight:"400",overflow:"auto","& ul":{margin:"4",padding:"0"},"& ul li":{listStyle:"none",margin:"0",padding:"0",borderBottom:"1px solid #dedede"}},actionsTray:{textAlign:"right","& button":{marginLeft:10}},inputField:{background:"#FFFFFF",padding:12,borderRadius:5,marginLeft:10,boxShadow:"0px 3px 6px #00000012"},fieldContainer:{background:"#FFFFFF",padding:0,borderRadius:5,marginLeft:10,textAlign:"left",minWidth:"206",boxShadow:"0px 3px 6px #00000012"},lastElementWPadding:{paddingRight:"78"}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.match,a=e.classes,c=Z()(t,"url","");return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"Object Browser"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:a.container,children:"/object-browser"===c&&Object(n.jsx)(Bl,{})})})]})})),Pl={setErrorSnackMessage:V},zl=Object(s.b)(null,Pl)((function(e){var t=e.closeDeleteModalAndRefresh,a=e.deleteOpen,i=e.selectedBucket,r=e.selectedObject,o=e.setErrorSnackMessage,s=Object(c.useState)(!1),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(n.jsxs)(ha.a,{open:a,onClose:function(){t(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete"}),Object(n.jsxs)(Oa.a,{children:[d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete: ",Object(n.jsx)("b",{children:r}),"?"," "]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1)},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){!function(){if(!d){var e=!1;r.endsWith("/")&&(e=!0),b(!0),pe.invoke("DELETE","/api/v1/buckets/".concat(i,"/objects?path=").concat(r,"&recursive=").concat(e)).then((function(){b(!1),t(!0)})).catch((function(e){b(!1),o(e)}))}}()},color:"secondary",disabled:d,children:"Delete"})]})]})})),Kl=a(953),Ul={createFolder:function(e){return{type:Cl,newRoute:e}}},Wl=Object(s.b)(null,Ul)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},pathLabel:{marginTop:0,marginBottom:32}},we))}))((function(e){var t=e.modalOpen,a=e.folderName,r=e.onClose,o=e.createFolder,s=e.classes,l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=a.split("/").slice(2).join("/");return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(xa,{modalOpen:t,title:"Add Folder",onClose:r,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)("h3",{className:s.pathLabel,children:["Current Path: ",m,"/"]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:b,label:"Folder Path",id:"folderPath",name:"folderPath",placeholder:"Enter Folder Path",onChange:function(e){j(e.target.value)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:s.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:s.clearButton,onClick:function(){j("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:""===b.trim(),onClick:function(){o(b),r()},children:"Save"})]})]})})})}))),Vl=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 12.996",children:Object(n.jsxs)("g",{transform:"translate(-63.686 -70.783)",children:[Object(n.jsx)("path",{className:"a",d:"M74.736,79.879v1.95h-9.1v-1.95h-1.95v3.9h13v-3.9Z"}),Object(n.jsx)("path",{className:"a",d:"M69.211,80.533h1.95V73.861h1.525l-2.5-3.078-2.5,3.078h1.525Z"})]})})})},Gl=a(436),ql=function(e,t,a,n,c){var i=document.createElement("a");document.body.appendChild(i);var r=new XMLHttpRequest,o=t.split("/"),s=o[o.length-1],l="/api/v1/buckets/".concat(e,"/objects/download?prefix=").concat(t);Object(Gl.isNullOrUndefined)(a)||"null"===a||(l=l.concat("&version_id=".concat(a))),r.open("GET",l,!0),r.responseType="blob",r.onload=function(r){if(200===this.status){var o=new Blob([this.response],{type:"octet/stream"}),l=window.URL.createObjectURL(o);i.href=l,i.download=s,i.click(),window.URL.revokeObjectURL(l),i.remove(),n&&n("".concat(e,"/").concat(t).concat(c?"-".concat(a):""))}},r.send()},Hl={backgroundRepeat:"no-repeat",backgroundPosition:"center center",width:16,minWidth:16,height:40,marginRight:10};var Yl=Object(n.jsx)(v.a,{component:"h3",children:"Loading..."}),Ql={addRoute:Tl,setAllRoutes:Al,setLastAsFile:function(){return{type:kl}},setLoadingProgress:function(e){return{type:M,loadingProgress:e}},setSnackBarMessage:W,setErrorSnackMessage:V,fileIsBeingPrepared:_l,fileDownloadStarted:Il},Zl=Object(s.b)((function(e){var t=e.objectBrowser;return{routesList:Z()(t,"routesList",[]),downloadingFiles:Z()(t,"downloadingFiles",[])}}),Ql),Jl=Object(l.g)(Zl(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({seeMore:{marginTop:e.spacing(3)},paper:{display:"flex",overflow:"auto",flexDirection:"column"},addSideBar:{width:"320px",padding:"20px"},tableToolbar:{paddingLeft:e.spacing(2),paddingRight:e.spacing(0)},minTableHeader:{color:"#393939","& tr":{"& th":{fontWeight:"bold"}}},fileName:{display:"flex",alignItems:"center"},fileNameText:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},iconFolder:Object(j.a)({backgroundImage:"url(/images/ob_folder_clear.svg)"},Hl),iconFile:Object(j.a)({backgroundImage:"url(/images/ob_file_clear.svg)"},Hl),buttonsContainer:{"& .MuiButtonBase-root":{marginLeft:10}},browsePaper:{height:"calc(100vh - 280px)"},"@global":{".rowLine:hover .iconFileElm":{backgroundImage:"url(/images/ob_file_filled.svg)"},".rowLine:hover .iconFolderElm":{backgroundImage:"url(/images/ob_folder_filled.svg)"}},listButton:{marginLeft:"10px"}},Me),Fe),Le),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.match,r=e.addRoute,o=e.setAllRoutes,s=e.routesList,l=e.downloadingFiles,d=e.setLastAsFile,b=e.setLoadingProgress,j=e.setSnackBarMessage,m=e.setErrorSnackMessage,h=e.fileIsBeingPrepared,p=e.fileDownloadStarted,O=Object(c.useState)([]),y=Object(u.a)(O,2),S=y[0],C=y[1],k=Object(c.useState)(!0),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(""),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(""),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(""),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)(0),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)(Yl),te=Object(u.a)(ee,2),ae=te[0],ne=te[1];!function(e,t){var a=Object(c.useRef)(null);Object(c.useEffect)((function(){a.current=e}),[e]),Object(c.useEffect)((function(){if(null!==t){var e=setInterval((function(){void 0!==a&&a.current&&a.current()}),t);return function(){return clearInterval(e)}}}),[t])}((function(){w&&function(){var e=Date.now()-$;e/1e3>=6?ne(Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(v.a,{component:"h3",children:["This operation is taking longer than expected... (",Math.ceil(e/1e3),"s)"]})})):e/1e3>=3&&ne(Object(n.jsx)(v.a,{component:"h3",children:"This operation is taking longer than expected..."}))}()}),1e3),Object(c.useEffect)((function(){var e=a.params.bucket,t=a.params[0];if(w){var n="";t&&(n="?prefix=".concat(t,"/"));var c=Date.now()+0;X(c),ne(Yl),pe.invoke("GET","/api/v1/buckets/".concat(e,"/objects").concat(n)).then((function(t){V(e);var c=t.objects||[],i=[],r=[];c.forEach((function(e){e.name.endsWith("/")?i.push(e):r.push(e)}));var o=[].concat(i,r);C(o),t.objects||""===n?T(!1):function(){var e=a.params.bucket,t=a.params[0];pe.invoke("GET","/api/v1/buckets/".concat(e,"/objects?prefix=").concat(t)).then((function(e){null!==e.objects?d():T(!1)})).catch((function(e){T(!1),m(e)}))}()})).catch((function(e){T(!1),m(e)}))}}),[w,a,d,m]),Object(c.useEffect)((function(){var e=Z()(a,"url","/object-browser");e!==s[s.length-1].route&&o(e)}),[a,s,o]),Object(c.useEffect)((function(){T(!0)}),[s,T]);var ie=function(e){p(e)},re=function(e){var t=s[s.length-1].route.split("/").filter((function(e){return""!==e.trim()})),a="";t.length>2&&(a="".concat(t.slice(2).join("/"),"/")),function(e,t,a){if(null!==e&&void 0!==e&&null!==e.target&&void 0!==e.target){e.preventDefault();var n=e.target.files,c="/api/v1/buckets/".concat(t,"/objects/upload");""!==a&&(c="".concat(c,"?prefix=").concat(a));var i=new XMLHttpRequest,r=n.length>1,o="An error occurred while uploading the file".concat(r?"s":"","."),s="Object".concat(r?"s":""," uploaded successfully.");i.open("POST",c,!0),i.withCredentials=!1,i.onload=function(e){401!==i.status&&403!==i.status&&400!==i.status&&500!==i.status||j(o),200===i.status&&j(s)},i.upload.addEventListener("error",(function(e){j(o)})),i.upload.addEventListener("progress",(function(e){b(Math.floor(100*e.loaded/e.total))})),i.onerror=function(){j(o)},i.onloadend=function(){T(!0),b(100)};var l,d=new FormData,u=Object(Nr.a)(n);try{for(u.s();!(l=u.n()).done;){var m=l.value,h=m.name,p=new Blob([m]);d.append(h,p)}}catch(O){u.e(O)}finally{u.f()}i.send(d),e.target.value=null}}(e,W,a)},oe=[{type:"view",onClick:function(e){var t=Z()(a,"url","/object-browser");if(e.endsWith("/")){var n=e.substr(0,e.length-1).split("/"),c=n.length-1,i="".concat(t,"/").concat(n[c]);r(i,n[c],"path")}else{var o=e.split("/"),s=o[o.length-1],l="".concat(t,"/").concat(s);r(l,s,"file")}},sendOnlyId:!0},{type:"download",onClick:function(e){h("".concat(W,"/").concat(e.name)),e.size>104857600&&j("Download process started, it may take a few moments to complete"),ql(W,e.name,e.version_id,ie)},showLoaderFunction:function(e){return l.includes("".concat(a.params.bucket,"/").concat(e))}},{type:"delete",onClick:function(e){I(!0),z(e)},sendOnlyId:!0}],se=S.filter((function(e){return""===H||e.name.indexOf(H)>=0}));return Object(n.jsxs)(i.a.Fragment,{children:[_&&Object(n.jsx)(zl,{deleteOpen:_,selectedBucket:W,selectedObject:P,closeDeleteModalAndRefresh:function(e){I(!1),e&&(j("Object '".concat(P,"' deleted successfully.")),T(!0))}}),D&&Object(n.jsx)(Wl,{modalOpen:D,folderName:s[s.length-1].route,onClose:function(){L(!1)}}),Object(n.jsx)(Ga,{label:"Object Browser"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.obTitleSection,children:Object(n.jsx)("div",{children:Object(n.jsx)(Fl,{})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Objects",className:t.searchField,id:"search-resource",label:"",onChange:function(e){Y(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh List",component:"span",onClick:function(){T(!0)},children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),component:"label",onClick:function(){L(!0)},className:t.listButton,children:"Create Folder"}),Object(n.jsxs)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(Vl,{}),component:"label",className:t.listButton,children:["File",Object(n.jsx)(Kl.a,{type:"file",inputProps:{multiple:!0},onChange:function(e){return re(e)},id:"file-input",style:{display:"none"}})]})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{itemActions:oe,columns:[{label:"Name",elementKey:"name",renderFunction:function(e){var a=e,c="".concat(t.iconFile," iconFileElm");e.endsWith("/")&&(c="".concat(t.iconFolder," iconFolderElm"),a=e.substr(0,e.length-1));var i=a.split("/");return Object(n.jsxs)("div",{className:t.fileName,children:[Object(n.jsx)("div",{className:c}),Object(n.jsx)("span",{className:t.fileNameText,children:i[i.length-1]})]})}},{label:"Last Modified",elementKey:"last_modified",renderFunction:function(e){return e.name.endsWith("/")?"":Object(n.jsx)(it.a,{children:e.last_modified})},renderFullObject:!0},{label:"Size",elementKey:"size",renderFunction:function(e){return e.name.endsWith("/")?"":ce(String(e.size))},renderFullObject:!0,width:60,contentTextAlign:"right"}],isLoading:w,loadingMessage:ae,entityName:"Objects",idField:"name",records:se,customPaperHeight:t.browsePaper})})]})})]})})))),$l=a(1012),Xl=a(438),ed=a.n(Xl),td=a(437),ad=a.n(td),nd=Object(s.b)(null,{setModalSnackMessage:G,setModalErrorSnackMessage:q}),cd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({copyButtonContainer:{paddingLeft:16},modalContent:{paddingBottom:53}},we))}))(nd((function(e){var t=e.classes,a=e.open,r=e.closeModalAndRefresh,o=e.bucketName,s=e.dataObject,l=e.setModalSnackMessage,d=e.setModalErrorSnackMessage,b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(!1),O=Object(u.a)(p,2),f=O[0],v=O[1],y=Object(c.useState)(""),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(!0),w=Object(u.a)(N,2),T=w[0],E=w[1];return Object(c.useEffect)((function(){if(T){v(!0),h("");var e=new Date("".concat(C,"T23:59:59")),t=new Date,a=e.getTime()-t.getTime();return a<0?(d("Selected date must be greater than current time."),h(""),void v(!1)):a>6048e5?(d("You can share a file only for less than 7 days."),h(""),void v(!1)):void pe.invoke("GET","/api/v1/buckets/".concat(o,"/objects/share?prefix=").concat(s.name,"&version_id=").concat(s.version_id).concat(""!==C?"&expires=".concat(a,"ms"):"")).then((function(e){h(e),v(!1)})).catch((function(e){d(e),h(""),v(!1)}))}}),[s,C,o,T,h,d]),Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(xa,{title:"Share File",modalOpen:a,onClose:function(){r()},children:Object(n.jsxs)(x.a,{container:!0,className:t.modalContent,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.dateContainer,children:Object(n.jsx)(Xn,{id:"date",label:"Active until",borderBottom:!1,addSwitch:!0,onDateChange:function(e,t){E(t),k(t?e:"")}})}),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:10,children:Object(n.jsx)(Za,{content:m})}),Object(n.jsx)(x.a,{item:!0,xs:2,className:t.copyButtonContainer,children:Object(n.jsx)(ad.a,{text:m,children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(ot,{}),onClick:function(){l("Share URL Copied to clipboard")},disabled:""===m||f,children:"Copy"})})})]})]})})})}))),id=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 13",children:[Object(n.jsx)("path",{d:"M11.05 8.617v2.429h-9.1v-9.1h2.429v-1.95H0v13h13V8.617z",className:"a"}),Object(n.jsx)("path",{d:"M3.854 9.256h1.95a4.945 4.945 0 013.6-4.74v1.3l.6-.487 2.474-2.012L9.4.817v1.7a6.9 6.9 0 00-5.546 6.739z",className:"a"})]})})},rd=function(){return Object(n.jsx)(rt.a,{children:Object(n.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 12.996",children:[Object(n.jsx)("path",{d:"M11.05 9.096v1.95h-9.1v-1.95H0v3.9h13v-3.9z"}),Object(n.jsx)("path",{d:"M6.5 9.75L9 6.672H7.475V0h-1.95v6.672H4z"})]})})},od={setModalErrorSnackMessage:q},sd=Object(s.b)(null,od),ld=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({objectName:{fontSize:18,fontWeight:700,marginBottom:40},buttonContainer:{textAlign:"right"}},we))}))(sd((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.objectName,o=e.objectInfo,s=e.bucketName,l=e.setModalErrorSnackMessage,d=Object(c.useState)(!0),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(""),p=Object(u.a)(h,2),O=p[0],f=p[1],v=Object(c.useState)(""),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1];Object(c.useEffect)((function(){if(o.retention_mode&&(f(o.retention_mode.toLowerCase()),L(!0)),o.retention_until_date){var e=new Date(o.retention_until_date);if("Invalid Date"!==e.toString()){var t=e.getFullYear(),a=(c=e.getMonth()+1)<10?"0".concat(c):"".concat(c),n=e.getDate();isNaN(n)||"NaN"===a||isNaN(t)||C("".concat(t,"-").concat(a,"-").concat(n))}L(!0)}var c}),[o]);var B=Object(c.useRef)(null),R=function(){m(!1),f(""),B.current&&B.current.resetDate()},P=D&&("governance"===O||""===O);return Object(n.jsxs)(xa,{title:"Set Retention Policy",modalOpen:a,onClose:function(){R(),i(!1)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.objectName,children:r}),Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault()}(e)},children:[P&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"status",id:"status",name:"status",checked:j,onChange:function(e){m(!j)},label:"Status",indicatorLabels:["Enabled","Disabled"]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Da,{currentSelection:O,id:"type",name:"type",label:"Type",disableOptions:!j||D&&""!==O,onChange:function(e){f(e.target.value)},selectorOptions:[{label:"Governance",value:"governance"},{label:"Compliance",value:"compliance"}]})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Xn,{id:"date",label:"Date",disableOptions:!(j&&("governance"===O||"compliance"===O)),ref:B,value:S,borderBottom:!0,onDateChange:function(e,t){T(t),t&&C(e)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:R,children:"Reset"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:j&&""===O||j&&!w||_,onClick:function(){I(!0);var e=o.name,t=o.version_id,a=j||"governance"!==O?"".concat(S,"T23:59:59Z"):"";j||"governance"!==O?function(e,t,a){pe.invoke("PUT","/api/v1/buckets/".concat(s,"/objects/retention?prefix=").concat(e,"&version_id=").concat(t),{expires:a,mode:O}).then((function(e){I(!1),i(!0)})).catch((function(e){l(e),I(!1)}))}(e,t,a):function(e,t){pe.invoke("DELETE","/api/v1/buckets/".concat(s,"/objects/retention?prefix=").concat(e,"&version_id=").concat(t)).then((function(){I(!1),i(!0)})).catch((function(e){l(e),I(!1)}))}(e,t)},children:"Save"})]})]})]})}))),dd={setModalErrorSnackMessage:q},bd=Object(s.b)(null,dd),ud=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},pathLabel:{marginTop:0,marginBottom:32}},we))}))(bd((function(e){var t=e.modalOpen,a=e.currentTags,r=e.selectedObject,o=e.onCloseAndUpdate,s=e.bucketName,l=e.versionId,d=e.setModalErrorSnackMessage,b=e.classes,m=Object(c.useState)(""),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(""),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)(!1),k=Object(u.a)(C,2),N=k[0],w=k[1];return Object(n.jsx)(i.a.Fragment,{children:Object(n.jsx)(xa,{modalOpen:t,title:"Add New Tag",onClose:function(){o(!1)},children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)("h3",{className:b.pathLabel,children:["Selected Object: ",r]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:p,label:"New Tag Key",id:"newTagKey",name:"newTagKey",placeholder:"Enter New Tag Key",onChange:function(e){O(e.target.value)}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{value:y,label:"New Tag Label",id:"newTagLabel",name:"newTagLabel",placeholder:"Enter New Tag Label",onChange:function(e){S(e.target.value)}})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:b.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:b.clearButton,onClick:function(){S(""),O("")},children:"Clear"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:""===y.trim()||""===p.trim()||N,onClick:function(){w(!0);var e={};e[p]=y;var t=Object(j.a)(Object(j.a)({},a),e);pe.invoke("PUT","/api/v1/buckets/".concat(s,"/objects/tags?prefix=").concat(r,"&version_id=").concat(l),{tags:t}).then((function(e){w(!1),o(!0)})).catch((function(e){d(e),w(!1)}))},children:"Save"})]})]})})})}))),jd={setErrorSnackMessage:V},md=Object(s.b)(null,jd),hd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({buttonContainer:{textAlign:"right"},pathLabel:{marginTop:0,marginBottom:32}},we))}))(md((function(e){var t=e.deleteOpen,a=e.currentTags,i=e.selectedObject,r=e.selectedTag,o=e.onCloseAndUpdate,s=e.bucketName,l=e.versionId,d=e.setErrorSnackMessage,b=e.classes,m=Object(c.useState)(!1),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(u.a)(r,2),x=f[0],v=f[1];return Object(n.jsxs)(ha.a,{open:t,onClose:function(){o(!1)},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsx)(pa.a,{id:"alert-dialog-title",children:"Delete Tag"}),Object(n.jsxs)(Oa.a,{children:[p&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ka.a,{id:"alert-dialog-description",children:["Are you sure you want to delete the tag"," ",Object(n.jsxs)("b",{className:b.wrapText,children:[x," : ",v]})," ","from ",i,"?"]})]}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){o(!1)},color:"primary",disabled:p,children:"Cancel"}),Object(n.jsx)(g.a,{onClick:function(){O(!0);var e=Object(j.a)({},a);delete e[x],pe.invoke("PUT","/api/v1/buckets/".concat(s,"/objects/tags?prefix=").concat(i,"&version_id=").concat(l),{tags:e}).then((function(e){O(!1),o(!0)})).catch((function(e){d(e),O(!1)}))},color:"secondary",autoFocus:!0,children:"Delete"})]})]})}))),pd={setModalErrorSnackMessage:q},Od=Object(s.b)(null,pd),gd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({objectName:{fontSize:18,fontWeight:700,marginBottom:40},buttonContainer:{textAlign:"right"}},we))}))(Od((function(e){var t=e.classes,a=e.open,i=e.closeModalAndRefresh,r=e.objectName,o=e.bucketName,s=e.actualInfo,l=e.setModalErrorSnackMessage,d=Object(c.useState)(!1),b=Object(u.a)(d,2),j=b[0],m=b[1],h=Object(c.useState)(!1),p=Object(u.a)(h,2),O=p[0],f=p[1],v=s.version_id;Object(c.useEffect)((function(){var e=Z()(s,"legal_hold_status","OFF");m("ON"===e)}),[s]);var y=function(){m(!1)};return Object(n.jsxs)(xa,{title:"Set Legal Hold",modalOpen:a,onClose:function(){y(),i(!1)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.objectName,children:r}),Object(n.jsxs)("form",{noValidate:!0,autoComplete:"off",onSubmit:function(e){!function(e){e.preventDefault(),f(!0),pe.invoke("PUT","/api/v1/buckets/".concat(o,"/objects/legalhold?prefix=").concat(r,"&version_id=").concat(v),{status:j?"enabled":"disabled"}).then((function(){f(!1),i(!0)})).catch((function(e){l(e),f(!1)}))}(e)},children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"legalhold",id:"legalhold",name:"legalhold",checked:j,onChange:function(e){m(!j)},label:"Legal Hold Status",indicatorLabels:["Enabled","Disabled"],tooltip:"To enable this feature you need to enable versioning on the bucket before creation"})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.buttonContainer,children:[Object(n.jsx)("button",{type:"button",color:"primary",className:t.clearButton,onClick:y,children:"Reset"}),Object(n.jsx)(g.a,{type:"submit",variant:"contained",color:"primary",disabled:O,children:"Save"})]})]})]})}))),fd={is_latest:!0,last_modified:"",legal_hold_status:"",name:"",retention_mode:"",retention_until_date:"",size:"0",tags:{},version_id:null},xd={removeRouteLevel:El,setErrorSnackMessage:V,fileIsBeingPrepared:_l,fileDownloadStarted:Il,setSnackBarMessage:W},vd=Object(s.b)((function(e){var t=e.objectBrowser;return{downloadingFiles:Z()(t,"downloadingFiles",[])}}),xd)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({objectNameContainer:{marginBottom:8},objectPathContainer:{marginBottom:26,fontSize:10},objectPathLink:{"&:visited":{color:"#000"}},objectName:{fontSize:24},propertiesContainer:{display:"flex",flexDirection:"row",marginBottom:15},propertiesItem:{display:"flex",flexDirection:"row",marginRight:21},propertiesItemBold:{fontWeight:700},propertiesValue:{marginLeft:8,textTransform:"capitalize"},propertiesIcon:{marginLeft:5},actionsIconContainer:{marginLeft:12},actionsIcon:{height:16,width:16,"& .MuiSvgIcon-root":{height:16}},tagsContainer:{display:"flex",flexDirection:"row",alignItems:"center",marginBottom:15},tagText:{marginRight:13},tag:{marginRight:6,fontSize:10,fontWeight:700,"&.MuiChip-sizeSmall":{height:18},"& .MuiSvgIcon-root":{height:10,width:10}},search:{marginBottom:8,"&.MuiFormControl-root":{marginRight:0}},"@global":{".progressDetails":{paddingTop:3,display:"inline-block",position:"relative",width:18,height:18},".progressDetails > .MuiCircularProgress-root":{position:"absolute",left:0,top:3}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.routesList,r=e.downloadingFiles,o=e.removeRouteLevel,s=e.setErrorSnackMessage,l=e.setSnackBarMessage,d=e.fileIsBeingPrepared,j=e.fileDownloadStarted,m=Object(c.useState)(!0),h=Object(u.a)(m,2),p=h[0],O=h[1],g=Object(c.useState)(!1),v=Object(u.a)(g,2),y=v[0],C=v[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)(["",""]),R=Object(u.a)(B,2),P=R[0],z=R[1],K=Object(c.useState)(!1),U=Object(u.a)(K,2),W=U[0],V=U[1],G=Object(c.useState)(fd),q=Object(u.a)(G,2),H=q[0],Y=q[1],Q=Object(c.useState)([]),J=Object(u.a)(Q,2),$=J[0],X=J[1],ee=Object(c.useState)(""),te=Object(u.a)(ee,2),ae=te[0],ne=te[1],ce=Object(c.useState)(!1),ie=Object(u.a)(ce,2),re=ie[0],oe=ie[1],se=a[a.length-1].route.split("/"),le=se[se.length-1],de=se[2],be=se.slice(3).join("/");Object(c.useEffect)((function(){p&&pe.invoke("GET","/api/v1/buckets/".concat(de,"/objects?prefix=").concat(be,"&with_versions=true")).then((function(e){var t=Z()(e,"objects",[]);Y(t.find((function(e){return e.is_latest}))||fd),X(t.filter((function(e){return!e.is_latest}))),O(!1)})).catch((function(e){s(e),O(!1)}))}),[p,de,be,s]);var ue=[];H.tags&&(ue=Object.keys(H.tags));var je=function(){C(!0)},me=function(e){j(e)},he=function(e,t){d("".concat(de,"/").concat(e.name).concat(t?"-".concat(e.version_id):"")),e.size&&parseInt(e.size)>104857600&&l("Download process started, it may take a few moments to complete"),ql(de,be,e.version_id,me,t)},Oe=[{type:"share",onClick:je,sendOnlyId:!0},{type:"download",onClick:function(e){he(e,!0)},showLoaderFunction:function(e){return r.includes("".concat(de,"/").concat(le,"-").concat(e))}}],ge=$.filter((function(e){return!!e.version_id&&e.version_id.includes(ae)}));return Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"Object Browser"}),y&&Object(n.jsx)(cd,{open:y,closeModalAndRefresh:function(){C(!1)},bucketName:de,dataObject:H}),w&&Object(n.jsx)(ld,{open:w,closeModalAndRefresh:function(e){T(!1),e&&O(!0)},objectName:le,objectInfo:H,bucketName:de}),re&&Object(n.jsx)(zl,{deleteOpen:re,selectedBucket:de,selectedObject:be,closeDeleteModalAndRefresh:function(e){if(oe(!1),e){var t=se.slice(0,-1).join("/");o(t),b.push(t)}}}),_&&Object(n.jsx)(ud,{modalOpen:_,currentTags:H.tags,selectedObject:be,versionId:H.version_id,bucketName:de,onCloseAndUpdate:function(e){I(!1),e&&O(!0)}}),D&&Object(n.jsx)(hd,{deleteOpen:D,currentTags:H.tags,selectedObject:be,versionId:H.version_id,bucketName:de,onCloseAndUpdate:function(e){L(!1),e&&O(!0)},selectedTag:P}),W&&Object(n.jsx)(gd,{open:W,closeModalAndRefresh:function(e){V(!1),e&&O(!0)},objectName:be,bucketName:de,actualInfo:H}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.obTitleSection,children:Object(n.jsx)("div",{children:Object(n.jsx)(Fl,{})})}),Object(n.jsx)("br",{}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.propertiesContainer,children:[H.version_id&&"null"!==H.version_id&&Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsxs)("div",{className:t.propertiesItem,children:[Object(n.jsxs)("div",{children:[Object(n.jsx)("span",{className:t.propertiesItemBold,children:"Legal Hold:"}),Object(n.jsx)("span",{className:t.propertiesValue,children:H.legal_hold_status?H.legal_hold_status.toLowerCase():"Off"})]}),Object(n.jsx)("div",{children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"legal-hold",size:"small",className:t.propertiesIcon,onClick:function(){V(!0)},children:Object(n.jsx)(Zt,{active:!0})})})]}),Object(n.jsxs)("div",{className:t.propertiesItem,children:[Object(n.jsxs)("div",{children:[Object(n.jsx)("span",{className:t.propertiesItemBold,children:"Retention:"}),Object(n.jsx)("span",{className:t.propertiesValue,children:H.retention_mode?H.retention_mode.toLowerCase():"Undefined"})]}),Object(n.jsx)("div",{children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"retention",size:"small",className:t.propertiesIcon,onClick:function(){T(!0)},children:Object(n.jsx)(Zt,{active:!0})})})]})]}),Object(n.jsxs)("div",{className:t.propertiesItem,children:[Object(n.jsx)("div",{className:t.propertiesItemBold,children:"File Actions:"}),Object(n.jsx)("div",{className:t.actionsIconContainer,children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"share",size:"small",className:t.actionsIcon,onClick:function(){je()},children:Object(n.jsx)(id,{})})}),Object(n.jsx)("div",{className:t.actionsIconContainer,children:r.includes("".concat(de,"/").concat(H.name))?Object(n.jsx)("div",{className:"progressDetails",children:Object(n.jsx)(S.a,{color:"primary",size:17,variant:"indeterminate"})}):Object(n.jsx)(Lt.a,{color:"primary","aria-label":"download",size:"small",className:t.actionsIcon,onClick:function(){he(H)},children:Object(n.jsx)(rd,{})})}),Object(n.jsx)("div",{className:t.actionsIconContainer,children:Object(n.jsx)(Lt.a,{color:"primary","aria-label":"delete",size:"small",className:t.actionsIcon,onClick:function(){oe(!0)},children:Object(n.jsx)(lt,{})})})]})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.tagsContainer,children:[Object(n.jsx)("div",{className:t.tagText,children:"Tags:"}),ue&&ue.map((function(e,a){var c=Z()(H,"tags.".concat(e),"");return""!==c?Object(n.jsx)($l.a,{className:t.tag,size:"small",label:"".concat(e," : ").concat(c),color:"primary",deleteIcon:Object(n.jsx)(ed.a,{}),onDelete:function(){!function(e,t){z([e,t]),L(!0)}(e,c)}},"chip-".concat(a)):null})),Object(n.jsx)($l.a,{className:t.tag,icon:Object(n.jsx)(cs.a,{}),clickable:!0,size:"small",label:"Add tag",color:"primary",variant:"outlined",onClick:function(){I(!0)}})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.actionsTray,children:H.version_id&&"null"!==H.version_id&&Object(n.jsx)(f.a,{placeholder:"Search ".concat(le),className:Object(ve.a)(t.search,t.searchField),id:"search-resource",label:"",onChange:function(e){ne(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:H.version_id&&"null"!==H.version_id&&Object(n.jsx)(ma,{itemActions:Oe,columns:[{label:"Version ID",elementKey:"version_id"},{label:"Last Modified",elementKey:"last_modified",renderFunction:function(e){return Object(n.jsx)(it.a,{children:e})}}],isLoading:!1,entityName:"Versions",idField:"version_id",records:ge})})]})})]})}))),yd={setAllRoutes:Al},Sd=Object(s.b)((function(e){var t=e.objectBrowser;return{routesList:Z()(t,"routesList",[])}}),yd),Cd=Object(l.g)(Sd((function(e){var t=e.routesList,a=e.match,i=e.setAllRoutes,r=t[t.length-1];return Object(c.useEffect)((function(){var e=Z()(a,"url","/object-browser");e!==t[t.length-1].route&&i(e)}),[a,t,i]),"path"===r.type?Object(n.jsx)(Jl,{}):Object(n.jsx)(vd,{routesList:t})}))),kd=a(231),Nd=a.n(kd),wd=[{id:0,title:"Community",price:"Open Source",capacityMin:""},{id:1,title:"Standard",price:"$10/TB/month",capacityMax:"Up to 10PB. No additional charges for capacity over 10PB",capacityMin:""},{id:2,title:"Enterprise",price:"$20/TB/month",capacityMax:"Up to 5PB. No additional charges for capacity over 5PB",capacityMin:""}],Td=[{id:0,field:"License",community:"GNU AGPL v3",communityDetail:"",standard:"Commercial License",standardDetail:"",enterprise:"Commercial License",enterpriseDetail:""},{id:1,field:"Software Release",community:"Update to latest",standard:"1 Year Long Term Support",enterprise:"5 Years Long Term Support"},{id:2,field:"SLA",community:"No SLA",standard:"<24 hours",enterprise:"<1 hour"},{id:3,field:"Support",community:"Community:",communityDetail:"Public Slack Channel + Github Issues",standard:"24x7 L4 direct engineering",standardDetail:"Support via SUBNET",enterprise:"24x7 L4 direct engineering",enterpriseDetail:"Support via SUBNET"},{id:4,field:"Security Updates & Critical Bugs",community:"Self Update",standard:"Guided Update",enterprise:"Guided Update"},{id:5,field:"Panic Button",community:"N/A",standard:"1 per year",enterprise:"Unlimited"},{id:6,field:"Annual Architecture Review",community:"N/A",standard:"Yes",enterprise:"Yes"},{id:7,field:"Annual Performance Review",community:"N/A",standard:"Yes",enterprise:"Yes"},{id:8,field:"Indemnification",community:"N/A",standard:"N/A",enterprise:"Yes"},{id:9,field:"Security + Policy Review",community:"N/A",standard:"N/A",enterprise:"Yes"}],Ed=[{id:0,text:"Join Slack",text2:"",link:"https://slack.min.io",plan:"community"},{id:1,text:"Subscribe",text2:"Upgrade",link:"https://subnet.min.io/subscription",plan:"standard"},{id:2,text:"Subscribe",text2:"Upgrade",link:"https://subnet.min.io/subscription",plan:"enterprise"}],Ad=a(439),_d=a.n(Ad),Id=a(440),Md=a.n(Id),Fd={setModalErrorSnackMessage:q},Dd=Object(s.b)(null,Fd),Ld=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({errorBlock:{color:"red"},subnetLicenseKey:{padding:"10px 10px 10px 0px",borderRight:"1px solid rgba(0, 0, 0, 0.12)",opacity:.5,"&:hover":{opacity:1}},subnetLoginForm:{padding:"10px 0px 10px 10px",opacity:.5,"&:hover":{opacity:1}},licenseKeyField:{},pageTitle:{marginBottom:20},button:{textTransform:"none",fontSize:15,fontWeight:700,background:"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box",color:"#fff"},buttonSignup:{textTransform:"none",fontSize:15,fontWeight:700,marginLeft:15}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(Dd((function(e){var t=e.classes,a=e.open,i=e.closeModal,r=e.setModalErrorSnackMessage,o=Object(c.useState)(""),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(""),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(""),O=Object(u.a)(p,2),S=O[0],C=O[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=function(){if(!w){T(!0);var e={license:l,email:S,password:m};pe.invoke("POST","/api/v1/subscription/validate",e).then((function(){T(!1),d(""),h(""),C(""),i()})).catch((function(e){T(!1),d(""),h(""),C(""),r(e)}))}};return a?Object(n.jsxs)(xa,{title:"",modalOpen:a,onClose:function(){d(""),h(""),C(""),i()},"aria-labelledby":"alert-dialog-title","aria-describedby":"alert-dialog-description",children:[Object(n.jsxs)(x.a,{container:!0,alignItems:"center",item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{component:"h2",variant:"h6",className:t.pageTitle,children:"Activate SUBNET License"})}),Object(n.jsxs)(x.a,{item:!0,className:t.subnetLicenseKey,xs:6,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(v.a,{variant:"caption",display:"block",gutterBottom:!0,children:"Enter your license key here"})}),Object(n.jsx)(f.a,{id:"license-key",placeholder:"",multiline:!0,rows:3,value:l,onChange:function(e){return d(e.target.value)},fullWidth:!0,className:t.licenseKeyField,variant:"outlined"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",onClick:function(){return E()},disabled:w||0===l.trim().length,children:"Activate"})]}),Object(n.jsx)(x.a,{item:!0,className:t.subnetLoginForm,xs:6,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{overlayIcon:Object(n.jsx)(_d.a,{}),id:"subnet-email",name:"subnet-email",onChange:function(e){C(e.target.value)},placeholder:"email",label:"",type:"text",value:S})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{overlayIcon:Object(n.jsx)(Md.a,{}),id:"subnet-password",name:"subnet-password",onChange:function(e){h(e.target.value)},placeholder:"password",label:"",type:"password",value:m})}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[Object(n.jsx)(g.a,{className:t.button,color:"primary",onClick:function(){return E()},disabled:w||0===S.trim().length||0===m.trim().length,variant:"contained",children:"Activate"}),Object(n.jsx)(g.a,{className:t.buttonSignup,color:"primary",target:"_blank",rel:"noopener noreferrer",href:"#",onClick:function(e){e.preventDefault(),window.open("https://min.io/pricing","_blank")},variant:"outlined",children:"Sign Up"})]})]})})]}),w&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})})]}):null}))),Bd=Object(s.b)((function(e){return{operatorMode:e.system.operatorMode}}),null)(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({pageTitle:{fontSize:18,marginBottom:20},paper:{padding:"20px 52px 20px 28px"},licenseContainer:{position:"relative",padding:"20px 52px 0px 28px",background:"#032F51",boxShadow:"0px 3px 7px #00000014","& h2":{color:"#FFF",marginBottom:67},"& a":{textDecoration:"none"},"& h3":{color:"#FFFFFF",marginBottom:"30px",fontWeight:"bold"},"& h6":{color:"#FFFFFF !important"}},tableContainer:{marginLeft:28},detailsContainer:{textAlign:"center",paddingBottom:12,borderRadius:"3px 3px 0 0",marginLeft:8,maxWidth:"calc(25% - 8px)"},detailsContainerBorder:{border:"1px solid #e2e2e2",borderBottom:0,borderRadius:"4px 4px 0px 0px"},detailsContainerBorderHighlighted:{border:"1px solid #B5B5B5",borderBottom:0},detailsTitle:{fontSize:19,fontWeight:700,marginBottom:26,paddingTop:18},activePlanHeader:{fontWeight:700,background:"#D5DDE5",borderRadius:"3px 3px 0px 0px",color:"#121212",padding:8,borderTop:"1px solid #D5DDE5",marginTop:-2},planHeader:{background:"#FFFFFF",borderRadius:"3px 3px 0px 0px",padding:8,borderTop:"1px solid #D5DDE5"},detailsPrice:{fontSize:13,fontWeight:700,marginBottom:8},detailsCapacityMax:{minHeight:28,fontSize:10,fontWeight:700,marginBottom:12,padding:"0% 15%"},detailsCapacityMin:{fontSize:10},itemContainer:{height:36},itemContainerDetail:{height:48},item:{height:"100%",borderLeft:"1px solid #e2e2e2",borderRight:"1px solid #e2e2e2",textAlign:"center",fontSize:10,fontWeight:700,display:"flex",alignItems:"center",alignContent:"center",marginLeft:8,maxWidth:"calc(25% - 8px)",borderTop:"1px solid #e5e5e5"},itemFirst:{borderLeft:0,borderRight:0},itemHighlighted:{borderLeft:"1px solid #B5B5B5",borderRight:"1px solid #B5B5B5"},field:{textAlign:"left",fontWeight:400,fontSize:12},checkIcon:{height:12,color:"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box"},buttonContainer:{paddingTop:8,paddingBottom:24,height:"100%",display:"flex",justifyContent:"center",borderRadius:"0 0 3px 3px",border:"1px solid #e2e2e2",borderTop:0,marginLeft:8,maxWidth:"calc(25% - 8px)"},buttonContainerBlank:{border:0},buttonContainerHighlighted:{border:"1px solid #B5B5B5",borderTop:0},button:{textTransform:"none",fontSize:15,fontWeight:700},licenseButton:{float:"right",marginTop:25,marginRight:25},openSourcePolicy:{color:"#1C5A8D",fontWeight:"bold"},activateLink:{color:"#1C5A8D",fontWeight:"bold",clear:"both",background:"none",border:"none",textDecoration:"underline",cursor:"pointer"},subnetRefreshLicenseLink:{color:"#1C5A8D",fontWeight:"bold",clear:"both",background:"none",border:"none",textDecoration:"underline",cursor:"pointer",fontSize:13},fullWidth:{width:"100%",height:"100%"},midWidth:{width:"70%",float:"left",height:"100%"},smallWidth:{width:"30%",float:"right",height:"100%",borderRadius:"0px 3px 0px 0px !important"},licenseInfo:{color:"#FFFFFF",position:"relative"},licenseInfoTitle:{textTransform:"none",color:"#BFBFBF",fontSize:11},licenseInfoValue:{textTransform:"none",fontSize:14,fontWeight:"bold"},licenseDescription:{background:"#032F51",padding:"30px 30px",borderTop:"1px solid #e2e5e4",borderLeft:"1px solid #e2e5e4",borderRight:"1px solid #e2e5e4",bottom:0,left:"5%",right:"5%",position:"absolute"},currentPlanBG:{background:"#022A4A 0% 0% no-repeat padding-box",color:"#FFFFFF",borderTop:"1px solid #52687d"},currentPlanButton:{background:"#FFFFFF",color:"#022A4A","&:hover":{background:"#FFFFFF"}},planItemsPadding:{padding:"23px 33px"},subnetSubTitle:{fontSize:12},verifiedIcon:{width:96,position:"absolute",right:0,bottom:29},loadingLoginStrategy:{textAlign:"center"}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.operatorMode,r=function(){E(!0),pe.invoke("GET","/api/v1/subscription/info").then((function(e){e&&("STANDARD"===e.plan?k(1):"ENTERPRISE"===e.plan?k(2):k(1),h(e)),E(!1)})).catch((function(e){E(!1)}))},o=Object(c.useState)(!1),s=Object(u.a)(o,2),l=s[0],d=s[1],b=Object(c.useState)(),j=Object(u.a)(b,2),m=j[0],h=j[1],p=Object(c.useState)(0),O=Object(u.a)(p,2),f=O[0],k=O[1],N=Object(c.useState)(!0),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(!1),_=Object(u.a)(A,2),I=_[0],M=_[1];return Object(c.useEffect)((function(){r()}),[]),T?Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(y.a,{})}):Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"License"}),Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(C.a,{className:"".concat(t.licenseContainer," ").concat(t.midWidth),children:m?Object(n.jsx)(i.a.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.licenseInfo,children:[Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"License"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:"Commercial License"}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Organization"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:m.organization}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Registered Capacity"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:ce((1099511627776*m.storage_capacity).toString(10))}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Expiry Date"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:Object(n.jsx)(it.a,{format:"YYYY-MM-DD",children:m.expires_at})})]}),Object(n.jsxs)(x.a,{item:!0,xs:6,children:[Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Subscription Plan"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:m.plan}),Object(n.jsx)(v.a,{variant:"button",display:"block",gutterBottom:!0,className:t.licenseInfoTitle,children:"Requester"}),Object(n.jsx)(v.a,{variant:"overline",display:"block",gutterBottom:!0,className:t.licenseInfoValue,children:m.email})]}),Object(n.jsx)("img",{className:t.verifiedIcon,src:"/verified.svg",alt:"verified"})]})}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)("img",{src:"/agpl.svg",height:40,alt:"agpl"}),Object(n.jsx)(v.a,{component:"h2",variant:"h6",children:"GNU Affero General Public License"}),Object(n.jsx)("a",{href:"https://www.gnu.org/licenses/agpl-3.0.html",target:"_blank",rel:"nofollow noopener noreferrer",children:Object(n.jsxs)("div",{className:t.licenseDescription,children:[Object(n.jsx)(v.a,{component:"h3",children:"Version 3"}),Object(n.jsx)(v.a,{component:"h6",children:"The GNU Affero General Public License is a free, copyleft license for software and other kinds of works, specifically designed to ensure cooperation with the Community in the case of network server software."})]})})]})}),Object(n.jsx)(C.a,{className:"".concat(t.paper," ").concat(t.smallWidth),children:m?Object(n.jsxs)(i.a.Fragment,{children:[" ",Object(n.jsx)(v.a,{component:"h2",variant:"h6",className:t.pageTitle,children:"Login to MinIO SUBNET !"}),Object(n.jsx)(v.a,{component:"h6",className:t.subnetSubTitle,children:"It combines a commercial license with a support experience unlike any other."}),Object(n.jsx)("br",{}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",className:t.button,target:"_blank",rel:"noopener noreferrer",href:"https://subnet.min.io/support/?ref=".concat(a?"op":"con"),children:"Login to SUBNET"}),a&&Object(n.jsxs)(i.a.Fragment,{children:[" ",Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("button",{className:t.subnetRefreshLicenseLink,onClick:function(e){e.preventDefault(),M(!0),pe.invoke("POST","/api/v1/subscription/refresh",{}).then((function(e){e&&("STANDARD"===e.plan?k(1):"ENTERPRISE"===e.plan?k(2):k(1),h(e)),M(!1)})).catch((function(e){M(!1)}))},children:"Refresh Licence"}),I&&Object(n.jsx)(S.a,{size:16,className:t.loadingLoginStrategy})]})]}):Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(v.a,{component:"h2",variant:"h6",className:t.pageTitle,children:"Choosing between GNU AGPL v3 and Commercial License"}),Object(n.jsx)(v.a,{component:"h6",children:"If you are building proprietary applications, you may want to choose the commercial license included as part of the Standard and Enterprise subscription plans. Applications must otherwise comply with all the GNU AGPLv3 License & Trademark obligations. Follow the links below to learn more about the compliance policy."}),Object(n.jsx)("br",{}),Object(n.jsx)("a",{href:"https://min.io/compliance?ref=".concat(a?"op":"con"),className:t.openSourcePolicy,target:"_blank",rel:"nofollow noopener noreferrer",children:"Open Source Policy Compliance"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("a",{href:"https://min.io/logo?ref=".concat(a?"op":"con"),className:t.openSourcePolicy,target:"_blank",rel:"nofollow noopener noreferrer",children:"Trademark Policy"})]})})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:Object(ve.a)(t.planItemsPadding),children:Object(n.jsx)(C.a,{className:t.paper,style:{borderRadius:"0px 0px 3px 3px"},children:Object(n.jsxs)(x.a,{container:!0,children:[a?Object(n.jsx)(Ld,{open:l,closeModal:function(){return d(!1),void r()}}):null,Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,className:t.tableContainer,children:[Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:3,className:t.detailsContainer}),wd.map((function(e){var a=!m&&"Community"===e.title||m&&m.plan.toLowerCase()===e.title.toLowerCase();return Object(n.jsxs)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.detailsContainer,t.detailsContainerBorder,Object(xe.a)({},t.detailsContainerBorderHighlighted,"Community"!==e.title),a?t.currentPlanBG:""),children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:a?t.activePlanHeader:t.planHeader,children:a?"Current Plan":"\xa0"}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.detailsTitle,children:e.title}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.detailsPrice,children:e.price}),Object(n.jsx)(x.a,{item:!0,xs:12,className:t.detailsCapacityMax,children:e.capacityMax||""})]},e.id)}))]}),Td.map((function(e){return Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,className:Object(ve.a)(t.itemContainer,e.communityDetail&&t.itemContainerDetail),children:[Object(n.jsx)(x.a,{item:!0,xs:3,className:Object(ve.a)(t.item,t.field,t.itemFirst),children:e.field}),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.item,0===f?t.currentPlanBG:""),children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:"N/A"===e.community?"":"Yes"===e.community?Object(n.jsx)(Nd.a,{className:t.checkIcon}):e.community}),void 0!==e.communityDetail&&Object(n.jsx)(x.a,{item:!0,xs:12,children:e.communityDetail})]}),Object(n.jsx)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.item,t.itemHighlighted,1===f?t.currentPlanBG:""),children:Object(n.jsx)(x.a,{item:!0,xs:12,children:"N/A"===e.standard?"":"Yes"===e.standard?Object(n.jsx)(Nd.a,{className:t.checkIcon}):e.standard})}),Object(n.jsx)(x.a,{container:!0,item:!0,xs:3,className:Object(ve.a)(t.item,t.itemHighlighted,2===f?t.currentPlanBG:""),children:Object(n.jsx)(x.a,{item:!0,xs:12,children:"N/A"===e.enterprise?"":"Yes"===e.enterprise?Object(n.jsx)(Nd.a,{className:t.checkIcon}):e.enterprise})})]},e.id)})),Object(n.jsxs)(x.a,{container:!0,item:!0,xs:12,children:[Object(n.jsx)(x.a,{item:!0,xs:3,className:Object(ve.a)(t.buttonContainer,t.buttonContainerBlank)}),Ed.map((function(e,c){return Object(n.jsxs)(x.a,{container:!0,item:!0,xs:3,style:{textAlign:"center"},className:Object(ve.a)(t.buttonContainer,f===c?t.currentPlanBG:"",Object(xe.a)({},t.buttonContainerHighlighted,"Subscribe"===e.text)),children:[Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(g.a,{variant:"contained",color:"primary",className:Object(ve.a)(t.button,f===c?t.currentPlanButton:""),target:"_blank",rel:"noopener noreferrer",href:"#",disabled:m&&m.plan.toLowerCase()===e.plan.toLowerCase(),onClick:function(t){t.preventDefault(),window.open("".concat(e.link,"/?ref=").concat(a?"op":"con"),"_blank")},children:f!==c&&c>0?e.text2:e.text})}),a&&"Subscribe"===e.text&&!(m&&m.plan.toLowerCase()===e.plan.toLowerCase())&&Object(n.jsx)(x.a,{item:!0,xs:12,style:{marginTop:"10px"},children:Object(n.jsx)("button",{className:t.activateLink,onClick:function(e){e.preventDefault(),d(!0)},children:"Activate"})})]},e.id)}))]})]})]})})})]})]})})}))),Rd=a(91),Pd="TRACE_MESSAGE_RECEIVED",zd="TRACE_RESET_MESSAGES";var Kd=function(e){var t="ws";return"https:"===e&&(t="wss"),t},Ud=a(117),Wd=a.n(Ud),Vd=Object(s.b)((function(e){return{messages:e.trace.messages}}),{traceMessageReceived:function(e){return{type:Pd,message:e}},traceResetMessages:function(){return{type:zd}}})(Object(w.a)((function(e){return Object(k.a)(Object(j.a)({logList:{background:"white",height:"400px",overflow:"auto","& ul":{margin:"4px",padding:"0px"},"& ul li":{listStyle:"none",margin:"0px",padding:"0px",borderBottom:"1px solid #dedede"}},sizeItem:{width:150},timeItem:{width:100}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.traceMessageReceived,r=e.traceResetMessages,o=e.messages;return Object(c.useEffect)((function(){r();var e=new URL(window.location.toString()),t=e.port,n=Kd(e.protocol),c=new Rd.w3cwebsocket("".concat(n,"://").concat(e.hostname,":").concat(t,"/ws/trace")),i=null;if(null!==c)return c.onopen=function(){console.log("WebSocket Client Connected"),c.send("ok"),i=setInterval((function(){c.send("ok")}),1e4)},c.onmessage=function(e){var t=JSON.parse(e.data.toString());t.ptime=Wd()(t.time,"YYYY-MM-DD HH:mm:s.SSSS +0000 UTC").toDate(),t.key=Math.random(),a(t)},c.onclose=function(){clearInterval(i),console.log("connection closed by server")},function(){c.close(1e3),clearInterval(i),console.log("closing websockets")}}),[a,r]),Object(n.jsxs)(i.a.Fragment,{children:[Object(n.jsx)(Ga,{label:"Trace"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container,children:Object(n.jsx)(ma,{itemActions:[],columns:[{label:"Time",elementKey:"ptime",renderFunction:function(e){var t=new Date(e);return re(t)},globalClass:t.timeItem},{label:"Name",elementKey:"api"},{label:"Status",elementKey:"",renderFunction:function(e){return"".concat(e.statusCode," ").concat(e.statusMsg)},renderFullObject:!0},{label:"Location",elementKey:"configuration_id",renderFunction:function(e){return"".concat(e.host," ").concat(e.client)},renderFullObject:!0},{label:"Load Time",elementKey:"callStats.duration",globalClass:t.timeItem},{label:"Upload",elementKey:"callStats.rx",renderFunction:ce,globalClass:t.sizeItem},{label:"Download",elementKey:"callStats.tx",renderFunction:ce,globalClass:t.sizeItem}],isLoading:!1,records:o,entityName:"Traces",idField:"api",customEmptyMessage:"There are no traced Elements yet",autoScrollToBottom:!0})})})]})}))),Gd="LOG_MESSAGE_RECEIVED",qd="LOG_RESET_MESSAGES";var Hd=Object(s.b)((function(e){return{messages:e.logs.messages}}),{logMessageReceived:function(e){return{type:Gd,message:e}},logResetMessages:function(){return{type:qd}}}),Yd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({logList:{background:"#fff",minHeight:400,height:"calc(100vh - 304px)",overflow:"auto",fontSize:13,padding:"25px 45px 0",border:"1px solid #EAEDEE",borderRadius:4},tab:{paddingLeft:25},logerror:{color:"#A52A2A"},logerror_tab:{color:"#A52A2A",paddingLeft:25},ansidefault:{color:"#000"},highlight:{"& span":{backgroundColor:"#082F5238"}}},Me),Fe),ze))}))(Hd((function(e){var t=e.classes,a=e.logMessageReceived,i=e.logResetMessages,r=e.messages,o=Object(c.useState)(""),s=Object(u.a)(o,2),l=s[0],d=s[1];Object(c.useEffect)((function(){i();var e=new URL(window.location.toString()),t=e.port,n=Kd(e.protocol),c=new Rd.w3cwebsocket("".concat(n,"://").concat(e.hostname,":").concat(t,"/ws/console")),r=null;if(null!==c)return c.onopen=function(){console.log("WebSocket Client Connected"),c.send("ok"),r=setInterval((function(){c.send("ok")}),1e4)},c.onmessage=function(e){var t=JSON.parse(e.data.toString());t.time=Wd()(t.time,"HH:mm:s UTC MM/DD/YYYY").toDate(),t.key=Math.random(),a(t)},c.onclose=function(){clearInterval(r),console.log("connection closed by server")},function(){c.close(1e3),clearInterval(r),console.log("closing websockets")}}),[a,i]);var b=function(e){var a=e.ConsoleMsg,c=(a=a.replace(/([^\x20-\x7F])/g,"")).replace(/((\[[0-9;]+m))/g,""),i=""!==l&&a.toLowerCase().includes(l.toLowerCase());return c.startsWith(" ")?Object(n.jsx)("div",{className:"".concat(i?t.highlight:""),children:Object(n.jsx)("span",{className:t.tab,children:c})},e.key):null!==e.error&&void 0!==e.error?function(e){var a=[];if(null!==e.error&&void 0!==e.error){if(e.api&&e.api.name){var c="API: ".concat(e.api.name),i=""!==l&&c.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsxs)("div",{className:"".concat(i?t.highlight:""),children:[Object(n.jsx)("br",{}),Object(n.jsx)("span",{className:t.logerror,children:c})]},"api-".concat(e.key)))}if(e.time){var r="Time: ".concat(re(e.time)),o=""!==l&&r.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(o?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:r})},"time-".concat(e.key)))}if(e.deploymentid){var s="DeploymentID: ".concat(e.deploymentid),d=""!==l&&s.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(d?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:s})},"deploytmentid-".concat(e.key)))}if(e.requestID){var b="RequestID: ".concat(e.requestID),u=""!==l&&b.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(u?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:b})},"requestid-".concat(e.key)))}if(e.remotehost){var j="RemoteHost: ".concat(e.remotehost),m=""!==l&&j.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(m?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:j})},"remotehost-".concat(e.key)))}if(e.host){var h="Host: ".concat(e.host),p=""!==l&&h.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(p?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:h})},"host-".concat(e.key)))}if(e.userAgent){var O="UserAgent: ".concat(e.userAgent),g=""!==l&&O.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(g?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:O})},"useragent-".concat(e.key)))}if(e.error.message){var f="Error: ".concat(e.error.message),x=""!==l&&f.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(x?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror,children:f})},"message-".concat(e.key)))}if(e.error.source)for(var v in e.error.source){var y=e.error.source[v],S=""!==l&&y.toLowerCase().includes(l.toLowerCase());a.push(Object(n.jsx)("div",{className:"".concat(S?t.highlight:""),children:Object(n.jsx)("span",{className:t.logerror_tab,children:y})},"source-".concat(e.key,"-").concat(v)))}}return a}(e):Object(n.jsx)("div",{className:"".concat(i?t.highlight:""),children:Object(n.jsx)("span",{className:t.ansidefault,children:c})},e.key)},j=r.map((function(e){return b(e)}));return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.logsSubContainer,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.actionsTray,children:Object(n.jsx)(f.a,{placeholder:"Highlight Line",className:t.searchField,id:"search-resource",label:"",onChange:function(e){d(e.target.value)},InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})}})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("div",{className:t.logList,children:j})})]})})}))),Qd=a(993),Zd=Object(w.a)((function(e){return Object(k.a)({searchField:Object(j.a)(Object(j.a)({},Fe.searchField),{},{height:30,padding:0,"& input":{padding:"0 12px",height:28,fontSize:12,fontWeight:600,color:"#393939"},"&.isDisabled":{"&:hover":{borderColor:"#EAEDEE"}},"& input.Mui-disabled":{backgroundColor:"#EAEAEA"}}),labelStyle:{color:"#393939",fontSize:12,marginBottom:4},buttonKit:{display:"flex",alignItems:"center"},toggleButton:{marginRight:10},fieldContainer:{flexGrow:1,margin:"0 15px"}})}))((function(e){var t=e.classes,a=e.label,i=e.onChange,r=e.value,o=e.placeholder,s=void 0===o?"":o,l=e.id,d=e.name;return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("div",{className:t.fieldContainer,children:[Object(n.jsx)("div",{className:t.labelStyle,children:a}),Object(n.jsx)("div",{className:t.buttonKit,children:Object(n.jsx)(f.a,{placeholder:s,id:l,name:d,label:"",onChange:function(e){i(e.target.value)},InputProps:{disableUnderline:!0},className:t.searchField,value:r})})]})})})),Jd={setErrorSnackMessage:V},$d=Object(s.b)(null,Jd),Xd=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)(Object(j.a)({inputBar:{flexGrow:1,marginLeft:15},advancedLabel:{display:"flex",alignItems:"center",color:"#091C42",border:0,backgroundColor:"transparent",cursor:"pointer","&:focus, &:active":{outline:"none"}},advancedLabelContainer:{marginTop:10},getInformationContainer:{textAlign:"right"},orderButton:{width:93},recordsLabel:{alignSelf:"center",marginLeft:15},blockCollapsed:{height:0,overflowY:"hidden",transitionDuration:"0.3s"},filterOpen:{height:200,marginBottom:12},endLineAction:{marginBottom:15},filtersContainer:{display:"flex",justifyContent:"space-between",marginBottom:12},innerContainer:{backgroundColor:"#fff",border:"#EAEDEE 1px solid",borderRadius:3,padding:10,marginBottom:15},noticeLabel:{marginLeft:15,marginBottom:15,fontSize:12,color:"#9C9C9C"},tableFOpen:{height:"calc(100vh - 561px)"},tableFClosed:{height:"calc(100vh - 349px)"},"@global":{".overrideMargin":{marginLeft:0}}},Fe),Me),ze),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))($d((function(e){var t=e.classes,a=e.setErrorSnackMessage,i=Object(c.useState)(!0),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(null),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)(null),h=Object(u.a)(m,2),p=h[0],O=h[1],f=Object(c.useState)(!1),v=Object(u.a)(f,2),y=v[0],S=v[1],C=Object(c.useState)([]),k=Object(u.a)(C,2),N=k[0],w=k[1],T=Object(c.useState)(""),E=Object(u.a)(T,2),A=E[0],_=E[1],I=Object(c.useState)(""),M=Object(u.a)(I,2),F=M[0],D=M[1],L=Object(c.useState)(""),B=Object(u.a)(L,2),R=B[0],P=B[1],z=Object(c.useState)(""),K=Object(u.a)(z,2),U=K[0],W=K[1],V=Object(c.useState)(""),G=Object(u.a)(V,2),q=G[0],H=G[1],Y=Object(c.useState)(""),Q=Object(u.a)(Y,2),J=Q[0],$=Q[1],X=Object(c.useState)("DESC"),ee=Object(u.a)(X,2),te=ee[0],ae=ee[1],ne=Object(c.useState)(["time","api_name","bucket","object","remote_host","request_id","user_agent","response_status"]),ie=Object(u.a)(ne,2),re=ie[0],oe=ie[1],se=Object(c.useState)(0),le=Object(u.a)(se,2),de=le[0],be=le[1],ue=Object(c.useState)(!1),je=Object(u.a)(ue,2),he=je[0],Oe=je[1],ge=null,fe=Object(c.useCallback)((function(){if(!he){Oe(!0);var e="".concat(""!==A?"&fp=bucket:".concat(A):"").concat(""!==U?"&fp=object:".concat(U):"").concat(""!==F?"&fp=api_name:".concat(F):"").concat(""!==q?"&fp=request_id:".concat(q):"").concat(""!==R?"&fp=user_agent:".concat(R):"").concat(""!==J?"&fp=response_status:".concat(J):"");(e=e.trim()).endsWith(",")&&(e=e.slice(0,-1)),pe.invoke("GET","/api/v1/logs/search?q=reqinfo".concat(""!==e?"".concat(e):"","&pageSize=100&pageNo=").concat(de,"&order=").concat("DESC"===te?"timeDesc":"timeAsc").concat(null!==b?"&timeStart=".concat(b.toISOString()):"").concat(null!==p?"&timeEnd=".concat(p.toISOString()):"")).then((function(e){var t=e.results||[],a=[].concat(Object($e.a)(N),Object($e.a)(t));s(!1),Oe(!1),w(a),be(de+1),null!==ge&&ge()})).catch((function(e){s(!1),Oe(!1),a(e)}))}}),[A,U,F,q,R,J,de,te,b,p,he,N,ge,a]);Object(c.useEffect)((function(){o&&(w([]),fe())}),[o,te,fe]);return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)(x.a,{container:!0,className:t.logsSubContainer,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(t.actionsTray," ").concat(t.timeContainers),children:[Object(n.jsx)("span",{className:t.label,children:"Start Time"}),Object(n.jsx)(bi,{value:b,onChange:j}),Object(n.jsx)("span",{className:t.label,children:"End Time"}),Object(n.jsx)(bi,{value:p,onChange:O})]}),Object(n.jsx)(x.a,{item:!0,xs:12,className:"".concat(t.advancedLabelContainer),children:Object(n.jsx)("div",{className:"".concat(t.blockCollapsed," ").concat(y?t.filterOpen:""),children:Object(n.jsxs)("div",{className:t.innerContainer,children:[Object(n.jsxs)("div",{className:t.noticeLabel,children:["Enable your preferred options to get filtered records.",Object(n.jsx)("br",{}),"You can use '*' to match any character, '.' to signify a single character or '\\' to scape an special character (E.g. mybucket-*)"]}),Object(n.jsxs)("div",{className:t.filtersContainer,children:[Object(n.jsx)(Zd,{onChange:_,value:A,label:"Bucket",id:"bucket",name:"bucket"}),Object(n.jsx)(Zd,{onChange:D,value:F,label:"API Name",id:"api_name",name:"api_name"}),Object(n.jsx)(Zd,{onChange:P,value:R,label:"User Agent",id:"user_agent",name:"user_agent"})]}),Object(n.jsxs)("div",{className:t.filtersContainer,children:[Object(n.jsx)(Zd,{onChange:W,value:U,label:"Object",id:"object",name:"object"}),Object(n.jsx)(Zd,{onChange:H,value:q,label:"Request ID",id:"request_id",name:"request_id"}),Object(n.jsx)(Zd,{onChange:$,value:J,label:"Response Status",id:"response_status",name:"response_status"})]})]})})}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:"".concat(t.actionsTray," ").concat(t.endLineAction),children:[Object(n.jsx)("div",{children:Object(n.jsxs)("button",{type:"button",className:"".concat(t.advancedLabel," overrideMargin"),onClick:function(){S(!y)},children:["Advanced Filters"," ",y?Object(n.jsx)(Qd.a,{}):Object(n.jsx)(Wt.a,{})]})}),Object(n.jsx)(g.a,{type:"button",variant:"contained",color:"primary",onClick:function(){be(0),s(!0)},children:"Get Information"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(ma,{columns:[{label:"Timestamp",elementKey:"time",enableSort:!0},{label:"API Name",elementKey:"api_name"},{label:"Bucket",elementKey:"bucket"},{label:"Object",elementKey:"object"},{label:"Remote Host",elementKey:"remote_host"},{label:"Request ID",elementKey:"request_id"},{label:"User Agent",elementKey:"user_agent"},{label:"Response Status",elementKey:"response_status",renderFunction:function(e){return Object(n.jsx)(c.Fragment,{children:Object(n.jsxs)("span",{children:[e.response_status_code," (",e.response_status,")"]})})},renderFullObject:!0},{label:"Request Content Length",elementKey:"request_content_length",renderFunction:ce},{label:"Response Content Length",elementKey:"response_content_length",renderFunction:ce},{label:"Time to Response NS",elementKey:"time_to_response_ns",renderFunction:me,contentTextAlign:"right"}],isLoading:o,records:N,entityName:"Logs",customEmptyMessage:"There is no information with this criteria",idField:"request_id",columnsSelector:!0,columnsShown:re,onColumnChange:function(e,t){var a=Object($e.a)(re);t?a.includes(e)||a.push(e):a=re.filter((function(t){return t!==e})),oe(a)},customPaperHeight:y?t.tableFOpen:t.tableFClosed,sortConfig:{currentSort:"time",currentDirection:te,triggerSort:function(e){var t=Z()(e,"sortDirection","DESC");ae(t),be(0),s(!0)}},infiniteScrollConfig:{recordsCount:1e6,loadMoreRecords:function(e){return fe(),new Promise((function(e){ge=e}))}},textSelectable:!0})})]})})}))),eb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4}},(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=Object(c.useState)(0),i=Object(u.a)(a,2),r=i[0],o=i[1],s=Object(c.useState)(!0),l=Object(u.a)(s,2),d=l[0],b=l[1],j=Object(c.useState)(!1),m=Object(u.a)(j,2),h=m[0],p=m[1];return Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/logs/search?q=reqinfo&pageSize=10&pageNo=0").then((function(){p(!0),b(!1)})).catch((function(e){b(!1),console.info("Log Search API not available.")}))}),[d]),Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Logs"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsx)(x.a,{item:!0,xs:12,className:t.container,children:d?Object(n.jsx)(y.a,{}):Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.headerLabel,children:"All Logs"}),Object(n.jsxs)(an.a,{value:r,onChange:function(e,t){o(t)},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",variant:"scrollable",scrollButtons:"auto",children:[Object(n.jsx)(nn.a,{label:"Error Logs"}),h&&Object(n.jsx)(nn.a,{label:"Logs Search"})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,children:[0===r&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Yd,{})}),1===r&&h&&Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Xd,{})})]})]})})})]})})),tb=a(441),ab=Object(w.a)((function(e){return Object(k.a)({root:{width:450,lineHeight:"50px",marginRight:15,"label + &":{marginTop:e.spacing(3)},"& .MuiSelect-select:focus":{backgroundColor:"transparent"}},input:{height:50,fontSize:13,lineHeight:"50px",width:450}})}))(Ca.a),nb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({watchList:{background:"white",maxHeight:"400",overflow:"auto","& ul":{margin:"4",padding:"0"},"& ul li":{listStyle:"none",margin:"0",padding:"0",borderBottom:"1px solid #dedede"}},graphContainer:{backgroundColor:"#fff",border:"#EAEDEE 1px solid",borderRadius:3,padding:"19px 38px"},scanInfo:{marginTop:20,display:"flex",flexDirection:"row",justifyContent:"space-between"},scanData:{fontSize:13},inlineCheckboxes:{display:"flex",justifyContent:"flex-start"}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=Object(c.useState)(!1),r=Object(u.a)(a,2),o=r[0],s=r[1],l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],j=d[1],m=Object(c.useState)([]),h=Object(u.a)(m,2),p=h[0],O=h[1],v=Object(c.useState)(""),y=Object(u.a)(v,2),S=y[0],C=y[1],k=Object(c.useState)(!1),N=Object(u.a)(k,2),w=N[0],T=N[1],E=Object(c.useState)(!1),A=Object(u.a)(E,2),_=A[0],I=A[1],M=Object(c.useState)(!1),F=Object(u.a)(M,2),D=F[0],L=F[1],B=Object(c.useState)({beforeHeal:[0,0,0,0],afterHeal:[0,0,0,0],objectsHealed:0,objectsScanned:0,healDuration:0,sizeScanned:""}),R=Object(u.a)(B,2),P=R[0],z=R[1];Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/buckets").then((function(e){var t=[];null!==e.buckets&&(t=e.buckets),O(t)})).catch((function(e){console.log(e)}))}),[]),Object(c.useEffect)((function(){!0===_&&L(!1)}),[_]),Object(c.useEffect)((function(){!0===D&&I(!1)}),[D]);var K=function(e){return[e.Green,e.Yellow,e.Red,e.Grey]};Object(c.useEffect)((function(){if(o){var e={Green:0,Yellow:0,Red:0,Grey:0},t={Green:0,Yellow:0,Red:0,Grey:0},a=new URL(window.location.toString()),n=a.port,c=Kd(a.protocol),i=new Rd.w3cwebsocket("".concat(c,"://").concat(a.hostname,":").concat(n,"/ws/heal/").concat(b,"?prefix=").concat(S,"&recursive=").concat(w,"&force-start=").concat(_,"&force-stop=").concat(D));if(null!==i)return i.onopen=function(){console.log("WebSocket Client Connected"),i.send("ok")},i.onmessage=function(a){for(var n=JSON.parse(a.data.toString()),c=0,i=Object.entries(n.healthAfterCols);c1?"s":""),content:r.join(", ")}),Object(n.jsx)("br",{})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Pa,{value:"force",id:"force",name:"force",checked:v,onChange:function(e){S(e.target.checked)},label:"Force Format",indicatorLabels:["Yes","No"]})}),"Are you sure you want to format"," ",i?Object(n.jsx)("strong",{children:"All"}):"the selected"," drive",r.length>1||i?"s":"","?.",Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),Object(n.jsx)("strong",{children:"All information contained will be erased and cannot be recovered"}),Object(n.jsx)("br",{}),Object(n.jsx)("br",{}),"To continue please type ",Object(n.jsx)("b",{children:"YES, PROCEED"})," in the box.",Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)(Sa,{id:"format-confirm",name:"format-confirm",onChange:function(e){p(e.target.value)},label:"",value:h})})]})}),d&&Object(n.jsx)(y.a,{}),Object(n.jsxs)(Ua.a,{children:[Object(n.jsx)(g.a,{onClick:function(){t(!1,[])},color:"primary",disabled:d,children:"Cancel"}),Object(n.jsxs)(g.a,{onClick:function(){d||(b(!0),pe.invoke("POST","/api/v1/direct-csi/drives/format",{drives:r,force:v}).then((function(e){b(!1),t(!0,e.formatIssuesList)})).catch((function(e){b(!1),o(e)})))},color:"secondary",autoFocus:!0,disabled:"YES, PROCEED"!==h,children:["Format Drive",r.length>1||i?"s":""]})]})]})})),xb=Object(w.a)((function(e){return Object(k.a)({warningBlock:{color:"red"},buttonContainer:{textAlign:"right"},errorsList:{height:"calc(100vh - 280px)"}})}))((function(e){var t=e.open,a=e.onCloseFormatErrorsList,c=e.errorsList,i=e.classes;return Object(n.jsx)(xa,{modalOpen:t,title:"Format Errors",onClose:a,children:Object(n.jsxs)(x.a,{container:!0,children:[Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.formScrollable,children:["There were some issues trying to format the selected CSI Drives, please fix the issues and try again.",Object(n.jsx)("br",{}),Object(n.jsx)(ma,{columns:[{label:"Node",elementKey:"node"},{label:"Drive",elementKey:"drive"},{label:"Message",elementKey:"error"}],entityName:"Format Errors",idField:"drive",records:c,isLoading:!1,customPaperHeight:i.errorsList,textSelectable:!0,noBackground:!0})]}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:i.buttonContainer,children:[Object(n.jsx)(g.a,{onClick:function(){!function(e,t){var a=document.createElement("a");a.setAttribute("href","data:application/json;charset=utf-8,"+encodeURIComponent(t)),console.log(e),a.setAttribute("download",e),a.style.display="none",document.body.appendChild(a),a.click(),document.body.removeChild(a)}("csiFormatErrors.json",JSON.stringify(Object($e.a)(c)))},color:"primary",children:"Download"}),Object(n.jsx)(g.a,{onClick:a,color:"secondary",autoFocus:!0,children:"Done"})]})]})})})),vb={setErrorSnackMessage:V,selectDrive:function(e){return{type:Ob,driveName:e}}},yb=Object(s.b)(null,vb),Sb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4},tableWrapper:{height:"calc(100vh - 275px)"},notAvailableNotice:{border:"#EAEDEE 1px solid",backgroundColor:"#FFF",display:"flex",padding:"19px 38px",overflow:"auto",position:"relative",boxShadow:"none",minHeight:200,overflowY:"scroll",borderRadius:3,flexDirection:"column",alignItems:"center",justifyContent:"center",height:"calc(100vh - 275px)",fontSize:18,fontWeight:600,textAlign:"center"},linkItem:{display:"default",color:"#072F51",textDecoration:"none","&:hover":{textDecoration:"underline",color:"#000"}}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))(yb((function(e){var t=e.classes,a=(e.selectDrive,e.setErrorSnackMessage),i=Object(c.useState)([]),r=Object(u.a)(i,2),o=r[0],s=r[1],l=Object(c.useState)(""),d=Object(u.a)(l,2),b=d[0],m=d[1],h=Object(c.useState)([]),p=Object(u.a)(h,2),O=p[0],v=p[1],y=Object(c.useState)(!0),S=Object(u.a)(y,2),C=S[0],k=S[1],N=Object(c.useState)(!1),w=Object(u.a)(N,2),T=w[0],E=w[1],A=Object(c.useState)(!1),_=Object(u.a)(A,2),I=_[0],M=_[1],F=Object(c.useState)([]),D=Object(u.a)(F,2),L=D[0],B=D[1],R=Object(c.useState)(!1),P=Object(u.a)(R,2),z=P[0],K=P[1],U=Object(c.useState)([]),W=Object(u.a)(U,2),V=W[0],G=W[1],q=Object(c.useState)(!0),H=Object(u.a)(q,2),Y=H[0],Q=H[1];Object(c.useEffect)((function(){C&&!Y&&pe.invoke("GET","/api/v1/direct-csi/drives").then((function(e){var t=Z()(e,"drives",[]);t||(t=[]),(t=t.map((function(e){var t=Object(j.a)({},e);return t.joinName="".concat(t.node,":").concat(t.drive),t}))).sort((function(e,t){return e.drive>t.drive?1:e.drive0&&(B(t),K(!0)),k(!0),v([]))},deleteOpen:T,allDrives:I,drivesToFormat:V}),z&&Object(n.jsx)(xb,{errorsList:L,open:z,onCloseFormatErrorsList:function(){K(!1)}}),Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.actionsTray,children:[Object(n.jsx)(f.a,{placeholder:"Search Drives",className:t.searchField,id:"search-resource",label:"",InputProps:{disableUnderline:!0,startAdornment:Object(n.jsx)(Xe.a,{position:"start",children:Object(n.jsx)(tt.a,{})})},onChange:function(e){m(e.target.value)},disabled:Y}),Object(n.jsx)(Lt.a,{color:"primary","aria-label":"Refresh Tenant List",component:"span",onClick:function(){k(!0)},disabled:Y,children:Object(n.jsx)(Kn.a,{})}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(rr.a,{}),disabled:O.length<=0||Y,onClick:function(){O.length>0&&(G(O),M(!1),E(!0))},children:"Format Selected Drives"}),Object(n.jsx)(g.a,{variant:"contained",color:"primary",startIcon:Object(n.jsx)(st,{}),onClick:function(){var e=o.map((function(e){return"".concat(e.node,":").concat(e.drive)}));M(!0),G(e),E(!0)},disabled:Y,children:"Format All Drives"})]}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Object(n.jsx)("br",{})}),Object(n.jsx)(x.a,{item:!0,xs:12,children:Y?Object(n.jsxs)("div",{className:t.notAvailableNotice,children:["To manage locally attached drives you need to install direct-csi, for more information",Object(n.jsx)("br",{}),"please follow this",Object(n.jsx)("a",{href:"https://github.com/minio/direct-csi",rel:"noreferrer",target:"_blank",className:t.linkItem,children:"Link"})]}):Object(n.jsx)(ma,{itemActions:J,columns:[{label:"Drive",elementKey:"drive"},{label:"Capacity",elementKey:"capacity",renderFunction:ce},{label:"Allocated",elementKey:"allocated",renderFunction:ce},{label:"Volumes",elementKey:"volumes"},{label:"Node",elementKey:"node"},{label:"Status",elementKey:"status"}],onSelect:function(e){var t=e.target,a=t.value,n=t.checked,c=Object($e.a)(O);return n?c.push(a):c=c.filter((function(e){return e!==a})),v(c),c},selectedItems:O,isLoading:C,records:$,customPaperHeight:t.tableWrapper,entityName:"Drives",idField:"joinName"})})]})}))),Cb=["/storage/volumes","/storage/drives"],kb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)(Object(j.a)(Object(j.a)({headerLabel:{fontSize:22,fontWeight:600,color:"#000",marginTop:4},tabsContainer:{marginBottom:15}},Me),Fe),(e.spacing(4),{container:{padding:"110px 33px 0","& h6":{color:"#777777",fontSize:14},"& p":{"& span:not(*[class*='smallUnit'])":{fontSize:16}}}})))}))((function(e){var t=e.classes,a=e.match,i=Object(c.useState)(0),r=Object(u.a)(i,2),o=r[0],s=r[1];Object(c.useEffect)((function(){var e=Cb.findIndex((function(e){return e===a.path}));s(e)}),[a]);return Object(n.jsxs)(c.Fragment,{children:[Object(n.jsx)(Ga,{label:"Storage"}),Object(n.jsx)(x.a,{container:!0,children:Object(n.jsxs)(x.a,{item:!0,xs:12,className:t.container,children:[Object(n.jsx)(x.a,{item:!0,xs:12,className:t.tabsContainer,children:Object(n.jsxs)(an.a,{value:o,onChange:function(e,t){b.push(Cb[t])},indicatorColor:"primary",textColor:"primary","aria-label":"cluster-tabs",children:[Object(n.jsx)(nn.a,{label:"Volumes"}),Object(n.jsx)(nn.a,{label:"Drives"})]})}),Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{path:Cb[0],component:pb}),Object(n.jsx)(l.b,{path:Cb[1],component:Sb}),Object(n.jsx)(l.b,{render:function(){return Object(n.jsx)(l.a,{to:"/storage/volumes"})}})]})})]})})]})})),Nb=Object(s.b)((function(e){return{open:e.system.sidebarOpen,needsRestart:e.system.serverNeedsRestart,isServerLoading:e.system.serverIsLoading,session:e.console.session,loadingProgress:e.system.loadingProgress,snackBarMessage:e.system.snackBar}}),{setMenuOpen:z,serverNeedsRestart:K,serverIsLoading:function(e){return{type:I,isLoading:e}},setSnackBarMessage:W}),wb=Object(w.a)((function(e){return Object(k.a)(Object(j.a)({root:{display:"flex","& .MuiPaper-root.MuiSnackbarContent-root":{borderRadius:"0px 0px 5px 5px",boxShadow:"none"}},toolbar:{background:e.palette.background.default,color:"black",paddingRight:24},toolbarIcon:Object(j.a)({display:"flex",alignItems:"center",justifyContent:"flex-end",padding:"0 8px"},e.mixins.toolbar),appBar:{zIndex:e.zIndex.drawer+1,transition:e.transitions.create(["width","margin"],{easing:e.transitions.easing.sharp,duration:e.transitions.duration.leavingScreen})},appBarShift:{marginLeft:245,width:"calc(100% - ".concat(245,"px)"),transition:e.transitions.create(["width","margin"],{easing:e.transitions.easing.sharp,duration:e.transitions.duration.enteringScreen})},menuButton:{marginRight:36},menuButtonHidden:{display:"none"},title:{flexGrow:1},drawerPaper:{position:"relative",whiteSpace:"nowrap",width:245,transition:e.transitions.create("width",{easing:e.transitions.easing.sharp,duration:e.transitions.duration.enteringScreen}),overflowX:"hidden",background:"transparent linear-gradient(90deg, #073052 0%, #081C42 100%) 0% 0% no-repeat padding-box",boxShadow:"0px 3px 7px #00000014"},drawerPaperClose:Object(xe.a)({overflowX:"hidden",transition:e.transitions.create("width",{easing:e.transitions.easing.sharp,duration:e.transitions.duration.leavingScreen}),width:e.spacing(7)},e.breakpoints.up("sm"),{width:e.spacing(9)}),content:{flexGrow:1,height:"100vh",overflow:"auto",position:"relative"},container:{paddingBottom:e.spacing(4),margin:0,width:"100%",maxWidth:"initial"},paper:{padding:e.spacing(2),display:"flex",overflow:"auto",flexDirection:"column"},fixedHeight:{minHeight:240},warningBar:{background:e.palette.primary.main,color:"white",heigh:"60px",widht:"100%",lineHeight:"60px",textAlign:"center"},progress:{height:"3px",backgroundColor:"#eaeaea"}},We))}))(Nb((function(e){var t=e.classes,a=e.open,i=e.needsRestart,r=e.isServerLoading,o=e.serverNeedsRestart,s=e.serverIsLoading,d=e.session,m=e.loadingProgress,h=e.snackBarMessage,p=e.setSnackBarMessage,O=Object(c.useState)(!1),f=Object(u.a)(O,2),x=f[0],v=f[1],S=d.pages.reduce((function(e,t,a){return e[t]=!0,e}),{}),C=[{component:fi,path:"/dashboard"},{component:sc,path:"/buckets"},{component:sc,path:"/buckets/:bucketName"},{component:sc,path:"/buckets/:bucketName/summary"},{component:sc,path:"/buckets/:bucketName/events"},{component:sc,path:"/buckets/:bucketName/replication"},{component:sc,path:"/buckets/:bucketName/lifecycle"},{component:sc,path:"/buckets/:bucketName/access"},{component:sc,path:"/buckets/:bucketName/access"},{component:sc,path:"/buckets/:bucketName/access/policies"},{component:sc,path:"/buckets/:bucketName/access/users"},{component:Rl,path:"/object-browser"},{component:Cd,path:"/object-browser/:bucket"},{component:Cd,path:"/object-browser/:bucket/*"},{component:ob,path:"/watch"},{component:zr,path:"/users/:userName"},{component:zr,path:"/users"},{component:$r,path:"/groups"},{component:Sc,path:"/policies/:policyName"},{component:Sc,path:"/policies"},{component:nb,path:"/heal"},{component:Vd,path:"/trace"},{component:eb,path:"/logs"},{component:jb,path:"/health-info"},{component:as,path:"/settings"},{component:cr,path:"/account",props:{changePassword:d.pages.includes("/account/change-password")}},{component:rs,path:"/webhook/logger"},{component:rs,path:"/webhook/audit"},{component:cl,path:"/tenants"},{component:kb,path:"/storage"},{component:kb,path:"/storage/volumes"},{component:kb,path:"/storage/drives"},{component:fl,path:"/namespaces/:tenantNamespace/tenants/:tenantName"},{component:Bd,path:"/license"}].filter((function(e){return S[e.path]}));return Object(c.useEffect)((function(){""!==h.message?v(!0):v(!1)}),[h]),Object(n.jsx)(c.Fragment,{children:"ok"===d.status?Object(n.jsxs)("div",{className:t.root,children:[Object(n.jsx)(ye.a,{}),Object(n.jsx)(Se.a,{variant:"permanent",classes:{paper:Object(ve.a)(t.drawerPaper,!a&&t.drawerPaperClose)},open:a,children:Object(n.jsx)(Ui,{pages:d.pages})}),Object(n.jsxs)("main",{className:t.content,children:[i&&Object(n.jsx)("div",{className:t.warningBar,children:r?Object(n.jsxs)(c.Fragment,{children:["The server is restarting.",Object(n.jsx)(y.a,{className:t.progress})]}):Object(n.jsxs)(c.Fragment,{children:["The instance needs to be restarted for configuration changes to take effect."," ",Object(n.jsx)(g.a,{color:"secondary",size:"small",onClick:function(){s(!0),pe.invoke("POST","/api/v1/service/restart",{}).then((function(e){console.log("success restarting service"),console.log(e),s(!1),o(!1)})).catch((function(e){s(!1),console.log("failure restarting service"),console.log(e)}))},children:"Restart"})]})}),m<100&&Object(n.jsx)(y.a,{className:t.progress,variant:"determinate",value:m}),Object(n.jsx)("div",{className:t.snackDiv,children:Object(n.jsx)(ke.a,{open:x,onClose:function(){v(!1),p("")},autoHideDuration:"error"===h.type?1e4:5e3,message:h.message,className:t.snackBarExternal,ContentProps:{className:"".concat(t.snackBar," ").concat("error"===h.type?t.errorSnackBar:"")}})}),Object(n.jsx)(Ce.a,{className:t.container,children:Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[C.map((function(e){return Object(n.jsx)(l.b,{exact:!0,path:e.path,children:function(t){return Object(n.jsx)(e.component,Object(j.a)(Object(j.a)({},t),e.props))}},e.path)})),C.length>0?Object(n.jsx)(l.a,{to:C[0].path}):null]})})})]})]}):null})}))),Tb=function(e){var t=e.location,a=Object(c.useState)(""),i=Object(u.a)(a,2),r=i[0],o=i[1],s=Object(c.useState)(""),l=Object(u.a)(s,2),d=l[0],b=l[1];return Object(c.useEffect)((function(){var e=(t.search.match(/code=([^&]+)/)||[])[1],a=(t.search.match(/state=([^&]+)/)||[])[1],n=(t.search.match(/error=([^&]+)/)||[])[1],c=(t.search.match(/error_description=([^&]+)/)||[])[1];void 0!==n||void 0!==c?(o(n),b(c)):pe.invoke("POST","/api/v1/login/oauth2/auth",{code:e,state:a}).then((function(e){e&&e.sessionId&&($.a.setItem("token",e.sessionId),window.location.href="/")})).catch((function(e){window.location.href="/login"}))}),[t.search]),""!==r||""!==d?Object(n.jsxs)("div",{children:[Object(n.jsx)("h2",{children:"IDP Error:"}),Object(n.jsx)("p",{children:r}),Object(n.jsx)("p",{children:d})]}):null},Eb=a(442),Ab="SESSION_RESPONSE";var _b=Object(s.b)((function(e){return{loggedIn:e.system.loggedIn}}),{userLoggedIn:P,consoleOperatorMode:function(e){return{type:E,operatorMode:e}},saveSessionResponse:function(e){return{type:Ab,message:e}}})((function(e){var t=e.Component,a=e.loggedIn,i=e.userLoggedIn,r=e.consoleOperatorMode,o=e.saveSessionResponse,s=Object(c.useState)(!0),d=Object(u.a)(s,2),b=d[0],j=d[1];return Object(c.useEffect)((function(){pe.invoke("GET","/api/v1/session").then((function(e){o(e),i(!0),j(!1),e.operator&&(r(!0),document.title="MinIO Operator")})).catch((function(){return j(!1)}))}),[o,r,i]),b?null:a?Object(n.jsx)(t,{}):Object(n.jsx)(l.a,{to:{pathname:"/login"}})})),Ib=Object(Eb.hot)((function(){return Object(n.jsx)(l.c,{history:b,children:Object(n.jsxs)(l.d,{children:[Object(n.jsx)(l.b,{exact:!0,path:"/oauth_callback",component:Tb}),Object(n.jsx)(l.b,{exact:!0,path:"/login",component:fe}),Object(n.jsx)(_b,{Component:wb})]})})})),Mb=a(138),Fb=a(443),Db={loggedIn:!1,operatorMode:!1,session:"",userName:"",sidebarOpen:!0,serverNeedsRestart:!1,serverIsLoading:!1,loadingProgress:100,snackBar:{message:"",type:"message"},modalSnackBar:{message:"",type:"message"},serverDiagnosticStatus:""};var Lb={messages:[]};var Bb={messages:[]};var Rb={message:{}};var Pb={messages:[]};var zb={session:{operator:!1,status:"",pages:[],features:[]}};var Kb={open:!1,addBucketName:"",addBucketVersioningEnabled:!1,addBucketLockingEnabled:!1,addBucketQuotaEnabled:!1,addBucketQuotaType:"hard",addBucketQuotaSize:"1",addBucketQuotaUnit:"TiB",addBucketRetentionEnabled:!1,addBucketRetentionMode:"compliance",addBucketRetentionUnit:"days",addBucketRetentionValidity:1,bucketDetails:{selectedTab:"summary"}};var Ub=[{route:"/object-browser",label:"All Buckets",type:"path"}],Wb={routesList:Ub,downloadingFiles:[]};var Vb=a(444),Gb=a.n(Vb),qb={createTenant:{page:0,validPages:[],advancedModeOn:!1,storageClasses:[],limitSize:{},fields:{nameTenant:{tenantName:"",namespace:"",selectedStorageClass:""},configure:{customImage:!1,imageName:"",consoleImage:"",customDockerhub:!1,imageRegistry:"",imageRegistryUsername:"",imageRegistryPassword:"",exposeMinIO:!0,exposeConsole:!0,logSearchCustom:!1,prometheusCustom:!1,logSearchVolumeSize:"5",logSearchSizeFactor:"Gi",logSearchImage:"",kesImage:"",logSearchPostgresImage:"",prometheusVolumeSize:"5",prometheusSizeFactor:"Gi",logSearchSelectedStorageClass:"",prometheusSelectedStorageClass:"",prometheusImage:""},identityProvider:{idpSelection:"Built-in",accessKeys:[Ms(16)],secretKeys:[Ms(32)],openIDURL:"",openIDClientID:"",openIDSecretID:"",ADURL:"",ADSkipTLS:!1,ADServerInsecure:!1,ADUserNameFilter:"",ADGroupBaseDN:"",ADGroupSearchFilter:"",ADNameAttribute:""},security:{enableAutoCert:!0,enableCustomCerts:!1,enableTLS:!0},encryption:{enableEncryption:!1,encryptionType:"vault",gemaltoEndpoint:"",gemaltoToken:"",gemaltoDomain:"",gemaltoRetry:"0",awsEndpoint:"",awsRegion:"",awsKMSKey:"",awsAccessKey:"",awsSecretKey:"",awsToken:"",vaultEndpoint:"",vaultEngine:"",vaultNamespace:"",vaultPrefix:"",vaultAppRoleEngine:"",vaultId:"",vaultSecret:"",vaultRetry:"0",vaultPing:"0",gcpProjectID:"",gcpEndpoint:"",gcpClientEmail:"",gcpClientID:"",gcpPrivateKeyID:"",gcpPrivateKey:"",enableCustomCertsForKES:!1},tenantSize:{volumeSize:"100",sizeFactor:"Gi",drivesPerServer:"1",nodes:"4",memoryNode:"2",ecParity:"",ecParityChoices:[],cleanECChoices:[],maxAllocableMemo:0,memorySize:{error:"",limit:0,request:0},distribution:{error:"",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0},ecParityCalc:{error:0,defaultEC:"",erasureCodeSet:0,maxEC:"",rawCapacity:"0",storageFactors:[]},limitSize:{}},affinity:{nodeSelectorLabels:"",podAffinity:"default",withPodAntiAffinity:!0}},certificates:{minioCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],caCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],consoleCertificate:{id:"console_cert_pair",key:"",cert:"",encoded_key:"",encoded_cert:""},serverCertificate:{id:"encryptionServerCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},clientCertificate:{id:"encryptionClientCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCertificate:{id:"encryptionVaultCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCA:{id:"encryptionVaultCA",key:"",cert:"",encoded_key:"",encoded_cert:""},gemaltoCA:{id:"encryptionGemaltoCA",key:"",cert:"",encoded_key:"",encoded_cert:""}}}};var Hb={selectedDrive:""};var Yb=Object(Mb.c)({system:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Db,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case T:return Object(j.a)(Object(j.a)({},e),{},{loggedIn:t.logged});case E:return Object(j.a)(Object(j.a)({},e),{},{operatorMode:t.operatorMode});case A:return Object(j.a)(Object(j.a)({},e),{},{sidebarOpen:t.open});case _:return Object(j.a)(Object(j.a)({},e),{},{serverNeedsRestart:t.needsRestart});case I:return Object(j.a)(Object(j.a)({},e),{},{serverIsLoading:t.isLoading});case M:return Object(j.a)(Object(j.a)({},e),{},{loadingProgress:t.loadingProgress});case F:return Object(j.a)(Object(j.a)({},e),{},{snackBar:{message:t.message,type:"message"}});case L:return Object(j.a)(Object(j.a)({},e),{},{snackBar:{message:t.message,type:"error"}});case B:return Object(j.a)(Object(j.a)({},e),{},{modalSnackBar:{message:t.message,type:"message"}});case R:return Object(j.a)(Object(j.a)({},e),{},{modalSnackBar:{message:t.message,type:"error"}});case D:return Object(j.a)(Object(j.a)({},e),{},{serverDiagnosticStatus:t.serverDiagnosticStatus});default:return e}},trace:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Lb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Pd:return Object(j.a)(Object(j.a)({},e),{},{messages:[].concat(Object($e.a)(e.messages),[t.message])});case zd:return Object(j.a)(Object(j.a)({},e),{},{messages:[]});default:return e}},logs:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Bb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Gd:return Object(j.a)(Object(j.a)({},e),{},{messages:[].concat(Object($e.a)(e.messages),[t.message])});case qd:return Object(j.a)(Object(j.a)({},e),{},{messages:[]});default:return e}},watch:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Pb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case cb:return Object(j.a)(Object(j.a)({},e),{},{messages:[].concat(Object($e.a)(e.messages),[t.message])});case ib:return Object(j.a)(Object(j.a)({},e),{},{messages:[]});default:return e}},console:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:zb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Ab:return Object(j.a)(Object(j.a)({},e),{},{session:t.message});default:return e}},buckets:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Kb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case xt:return Object(j.a)(Object(j.a)({},e),{},{open:t.open});case vt:return Object(j.a)(Object(j.a)({},e),{},{addBucketName:t.name});case yt:return Object(j.a)(Object(j.a)({},e),{},{addBucketVersioningEnabled:t.versioned});case St:return Object(j.a)(Object(j.a)({},e),{},{addBucketLockingEnabled:t.locking});case Ct:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaEnabled:t.quota});case kt:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaType:t.quotaType});case Nt:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaSize:t.quotaSize});case wt:return Object(j.a)(Object(j.a)({},e),{},{addBucketQuotaUnit:t.quotaUnit});case Et:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionEnabled:t.retention});case At:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionMode:t.retentionMode});case _t:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionUnit:t.retentionUnit});case It:return Object(j.a)(Object(j.a)({},e),{},{addBucketRetentionValidity:t.retentionValidity});case Mt:return Object(j.a)(Object(j.a)({},e),{},{bucketDetails:Object(j.a)(Object(j.a)({},e.bucketDetails),{},{selectedTab:t.tab})});case Tt:return Object(j.a)(Object(j.a)({},e),{},{addBucketName:"",addBucketVersioningEnabled:!1,addBucketLockingEnabled:!1,addBucketQuotaEnabled:!1,addBucketQuotaType:"hard",addBucketQuotaSize:"1",addBucketQuotaUnit:"TiB",addBucketRetentionEnabled:!1,addBucketRetentionMode:"compliance",addBucketRetentionUnit:"days",addBucketRetentionValidity:1});default:return e}},objectBrowser:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Wb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case xl:var a=[].concat(Object($e.a)(e.routesList),[{route:t.route,label:t.label,type:t.routeType}]);return b.push(t.route),Object(j.a)(Object(j.a)({},e),{},{routesList:a});case vl:return Object(j.a)(Object(j.a)({},e),{},{routesList:[].concat(Ub)});case yl:var n=e.routesList.findIndex((function(e){return e.route===t.toRoute}))+1,c=e.routesList.slice(0,n);return Object(j.a)(Object(j.a)({},e),{},{routesList:c});case Sl:var i=t.currentRoute.split("/"),r=[],o=Ub[0].route;i.forEach((function(e){""!==e&&"object-browser"!==e&&(o="".concat(o,"/").concat(e),r.push({route:o,label:e,type:"path"}))}));var s=[].concat(Ub,r);return Object(j.a)(Object(j.a)({},e),{},{routesList:s});case Cl:var l=Object($e.a)(e.routesList),d=e.routesList[e.routesList.length-1].route,u=t.newRoute.split("/");return u.forEach((function(e){var t=e.trim();if(""!==t){var a={route:d="".concat(d,"/").concat(t),label:t,type:"path"};l.push(a)}})),b.push(d),Object(j.a)(Object(j.a)({},e),{},{routesList:l});case kl:var m=e.routesList,h=m.slice(-1)[0];"path"===h.type&&(h.type="file");var p=[].concat(Object($e.a)(m.slice(0,-1)),[h]);return Object(j.a)(Object(j.a)({},e),{},{routesList:p});case Nl:var O=Object($e.a)(e.downloadingFiles);return O.push(t.path),Object(j.a)(Object(j.a)({},e),{},{downloadingFiles:Object($e.a)(O)});case wl:var g=e.downloadingFiles.filter((function(e){return e!==t.path}));return Object(j.a)(Object(j.a)({},e),{},{downloadingFiles:Object($e.a)(g)});default:return e}},healthInfo:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Rb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case sb:return Object(j.a)(Object(j.a)({},e),{},{message:t.message});case lb:return Object(j.a)(Object(j.a)({},e),{},{message:{}});default:return e}},tenants:function(){var e,t,a,n,c=arguments.length>0&&void 0!==arguments[0]?arguments[0]:qb,i=arguments.length>1?arguments[1]:void 0,r=Object(j.a)({},c);switch(i.type){case ds:return r.createTenant.page=i.page,Object(j.a)({},r);case bs:return r.createTenant.advancedModeOn=i.state,Object(j.a)({},r);case us:if(Gb()(r.createTenant.fields,"".concat(i.pageName,".").concat(i.field))){var o=Z()(r.createTenant.fields,"".concat(i.pageName),{}),s={};s[i.field]=i.value;var l=Object(j.a)(Object(j.a)({},o),s);return r.createTenant.fields[i.pageName]=Object(j.a)({},l),Object(j.a)({},r)}return c;case js:var d=c.createTenant.validPages;if(i.valid)d.includes(i.pageName)||(d.push(i.pageName),r.createTenant.validPages=Object($e.a)(d));else{var b=d.filter((function(e){return e!==i.pageName}));r.createTenant.validPages=Object($e.a)(b)}return Object(j.a)({},r);case hs:var u=Object(j.a)(Object(j.a)({},c),{},{createTenant:Object(j.a)(Object(j.a)({},c.createTenant),{},{storageClasses:i.storageClasses})});return Object(j.a)({},u);case ps:var m=[].concat(Object($e.a)(c.createTenant.certificates.minioCertificates),[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}]);return r.createTenant.certificates.minioCertificates=Object($e.a)(m),Object(j.a)({},r);case Os:var h=c.createTenant.certificates.minioCertificates,p=h.map((function(e){var t;return e.id===i.id?Object(j.a)(Object(j.a)({},e),{},(t={},Object(xe.a)(t,i.key,i.fileName),Object(xe.a)(t,"encoded_".concat(i.key),i.value),t)):e}));return r.createTenant.certificates.minioCertificates=Object($e.a)(p),Object(j.a)({},r);case gs:var O=c.createTenant.certificates.minioCertificates;if(O.length>1){var g=O.filter((function(e){return e.id!==i.id}));return r.createTenant.certificates.minioCertificates=Object($e.a)(g),Object(j.a)({},r)}return Object(j.a)({},c);case fs:var f=[].concat(Object($e.a)(c.createTenant.certificates.caCertificates),[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}]);return r.createTenant.certificates.caCertificates=Object($e.a)(f),Object(j.a)({},r);case xs:var x=c.createTenant.certificates.caCertificates,v=x.map((function(e){var t;return e.id===i.id?Object(j.a)(Object(j.a)({},e),{},(t={},Object(xe.a)(t,i.key,i.fileName),Object(xe.a)(t,"encoded_".concat(i.key),i.value),t)):e}));return r.createTenant.certificates.caCertificates=Object($e.a)(v),Object(j.a)({},r);case vs:var y=c.createTenant.certificates.minioCertificates;if(y.length>1){var S=y.filter((function(e){return e.id!==i.id}));return r.createTenant.certificates.caCertificates=Object($e.a)(S),Object(j.a)({},r)}return Object(j.a)({},c);case ys:var C=c.createTenant.certificates.consoleCertificate;return r.createTenant.certificates.consoleCertificate=Object(j.a)(Object(j.a)({},C),{},(e={},Object(xe.a)(e,i.key,i.fileName),Object(xe.a)(e,"encoded_".concat(i.key),i.value),e)),Object(j.a)({},r);case Ss:var k=c.createTenant.certificates.serverCertificate;return r.createTenant.certificates.serverCertificate=Object(j.a)(Object(j.a)({},k),{},(t={},Object(xe.a)(t,i.key,i.fileName),Object(xe.a)(t,"encoded_".concat(i.key),i.value),t)),Object(j.a)({},r);case Cs:var N=c.createTenant.certificates.clientCertificate;return r.createTenant.certificates.clientCertificate=Object(j.a)(Object(j.a)({},N),{},(a={},Object(xe.a)(a,i.key,i.fileName),Object(xe.a)(a,"encoded_".concat(i.key),i.value),a)),Object(j.a)({},r);case ks:var w=c.createTenant.certificates.vaultCertificate;return r.createTenant.certificates.vaultCertificate=Object(j.a)(Object(j.a)({},w),{},(n={},Object(xe.a)(n,i.key,i.fileName),Object(xe.a)(n,"encoded_".concat(i.key),i.value),n)),Object(j.a)({},r);case Ns:var T=c.createTenant.certificates.vaultCA;return r.createTenant.certificates.vaultCA=Object(j.a)(Object(j.a)({},T),{},{cert:i.fileName,encoded_cert:i.value}),Object(j.a)({},r);case ws:var E=c.createTenant.certificates.gemaltoCA;return r.createTenant.certificates.gemaltoCA=Object(j.a)(Object(j.a)({},E),{},{cert:i.fileName,encoded_cert:i.value}),Object(j.a)({},r);case ms:return Object(j.a)(Object(j.a)({},c),{},{createTenant:{page:0,validPages:[],advancedModeOn:!1,storageClasses:[],limitSize:{},fields:{nameTenant:{tenantName:"",namespace:"",selectedStorageClass:""},configure:{customImage:!1,imageName:"",consoleImage:"",customDockerhub:!1,imageRegistry:"",imageRegistryUsername:"",imageRegistryPassword:"",exposeMinIO:!0,exposeConsole:!0,logSearchCustom:!1,prometheusCustom:!1,logSearchVolumeSize:"5",logSearchSizeFactor:"Gi",logSearchSelectedStorageClass:"",logSearchImage:"",kesImage:"",logSearchPostgresImage:"",prometheusVolumeSize:"5",prometheusSizeFactor:"Gi",prometheusSelectedStorageClass:"",prometheusImage:""},identityProvider:{idpSelection:"Built-in",accessKeys:[Ms(16)],secretKeys:[Ms(32)],openIDURL:"",openIDClientID:"",openIDSecretID:"",ADURL:"",ADSkipTLS:!1,ADServerInsecure:!1,ADUserNameFilter:"",ADGroupBaseDN:"",ADGroupSearchFilter:"",ADNameAttribute:""},security:{enableAutoCert:!0,enableCustomCerts:!1,enableTLS:!0},encryption:{enableEncryption:!1,encryptionType:"vault",gemaltoEndpoint:"",gemaltoToken:"",gemaltoDomain:"",gemaltoRetry:"0",awsEndpoint:"",awsRegion:"",awsKMSKey:"",awsAccessKey:"",awsSecretKey:"",awsToken:"",vaultEndpoint:"",vaultEngine:"",vaultNamespace:"",vaultPrefix:"",vaultAppRoleEngine:"",vaultId:"",vaultSecret:"",vaultRetry:"0",vaultPing:"0",gcpProjectID:"",gcpEndpoint:"",gcpClientEmail:"",gcpClientID:"",gcpPrivateKeyID:"",gcpPrivateKey:"",enableCustomCertsForKES:!1},tenantSize:{volumeSize:"100",sizeFactor:"Gi",drivesPerServer:"1",nodes:"4",memoryNode:"2",ecParity:"",ecParityChoices:[],cleanECChoices:[],maxAllocableMemo:0,memorySize:{error:"",limit:0,request:0},distribution:{error:"",nodes:0,persistentVolumes:0,disks:0,volumePerDisk:0},ecParityCalc:{error:0,defaultEC:"",erasureCodeSet:0,maxEC:"",rawCapacity:"0",storageFactors:[]},limitSize:{}},affinity:{nodeSelectorLabels:"",podAffinity:"default",withPodAntiAffinity:!0}},certificates:{minioCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],caCertificates:[{id:Date.now().toString(),key:"",cert:"",encoded_key:"",encoded_cert:""}],consoleCertificate:{id:"console_cert_pair",key:"",cert:"",encoded_key:"",encoded_cert:""},serverCertificate:{id:"encryptionServerCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},clientCertificate:{id:"encryptionClientCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCertificate:{id:"encryptionVaultCertificate",key:"",cert:"",encoded_key:"",encoded_cert:""},vaultCA:{id:"encryptionVaultCA",key:"",cert:"",encoded_key:"",encoded_cert:""},gemaltoCA:{id:"encryptionGemaltoCA",key:"",cert:"",encoded_key:"",encoded_cert:""}}}});default:return c}},directCSI:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Hb,t=arguments.length>1?arguments[1]:void 0;switch(t.type){case Ob:if(""!==t.driveName){var a=Object(j.a)({},e);return a.selectedDrive=t.driveName,a}return e;default:return e}}}),Qb=window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__||Mb.d;Boolean("localhost"===window.location.hostname||"[::1]"===window.location.hostname||window.location.hostname.match(/^127(?:\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/));var Zb=a(994),Jb=(a(905),a(906),a(907),a(908),a(445)),$b=Object(Jb.a)({palette:{primary:{light:"#073052",main:"#081C42",dark:"#05122B",contrastText:"#fff"},secondary:{light:"#ff7961",main:"#f44336",dark:"#ba000d",contrastText:"#000"},error:{light:"#e03a48",main:"#dc1f2e",contrastText:"#ffffff"},grey:{100:"#f0f0f0",200:"#e6e6e6",300:"#cccccc",400:"#999999",500:"#8c8c8c",600:"#737373",700:"#666666",800:"#4d4d4d",900:"#333333"},background:{default:"#F4F4F4"}},typography:{fontFamily:["Lato","sans-serif"].join(","),h1:{fontWeight:"bold",color:"#081C42"},h2:{fontWeight:"bold",color:"#081C42"},h3:{fontWeight:"bold",color:"#081C42"},h4:{fontWeight:"bold",color:"#081C42"},h5:{fontWeight:"bold",color:"#081C42"},h6:{fontWeight:"bold",color:"#000000"}},overrides:{MuiButton:{root:{borderRadius:3,color:"white",height:40,padding:"0 20px",fontSize:14,fontWeight:600,boxShadow:"none","& .MuiSvgIcon-root":{maxHeight:18},"&.MuiButton-contained.Mui-disabled":{backgroundColor:"#EAEDEE",fontWeight:600,color:"#767676"},"& .MuiButton-iconSizeMedium > *:first-child":{fontSize:12}}}}}),Xb=Object(w.a)({"@global":{".MuiButton-contained":{fontSize:"14px",textTransform:"capitalize",padding:"16px 25px 16px 25px",borderRadius:3},".MuiButton-sizeSmall":{padding:"4px 10px",fontSize:"0.8125rem"},".MuiTableCell-head":{borderRadius:"3px 3px 0px 0px",fontSize:13},".MuiPaper-root":{borderRadius:3},".MuiDrawer-paperAnchorDockedLeft":{borderRight:0},".MuiDrawer-root":{"& .MuiPaper-root":{borderRadius:0}}}})((function(){return null}));o.a.render(Object(n.jsxs)(s.a,{store:Object(Mb.e)(Yb,Qb(Object(Mb.a)(Fb.a))),children:[Object(n.jsx)(Xb,{}),Object(n.jsx)(Zb.a,{theme:$b,children:Object(n.jsx)(Ib,{})})]}),document.getElementById("root")),"serviceWorker"in navigator&&navigator.serviceWorker.ready.then((function(e){e.unregister()}))}},[[909,1,2]]]); //# sourceMappingURL=main.f0e70269.chunk.js.map \ No newline at end of file diff --git a/portal-ui/build/static/js/main.f0e70269.chunk.js.map b/portal-ui/build/static/js/main.f0e70269.chunk.js.map index e3de56a229..8a181c13f0 100644 --- a/portal-ui/build/static/js/main.f0e70269.chunk.js.map +++ b/portal-ui/build/static/js/main.f0e70269.chunk.js.map @@ -1 +1 @@ -{"version":3,"sources":["history.ts","types.ts","actions.ts","screens/LoginPage/types.ts","common/utils.ts","common/api/index.ts","screens/LoginPage/LoginPage.tsx","screens/Console/Common/FormComponents/common/styleLibrary.ts","common/Copyright.tsx","screens/NotFoundPage.tsx","icons/CopyIcon.tsx","icons/CreateIcon.tsx","icons/DeleteIcon.tsx","icons/DashboardIcon.tsx","icons/BucketsIcon.tsx","icons/UsersIcon.tsx","icons/ServiceAccountsIcon.tsx","icons/GroupsIcon.tsx","icons/IAMPoliciesIcon.tsx","icons/TraceIcon.tsx","icons/ConfigurationsListIcon.tsx","icons/ClustersIcon.tsx","icons/WatchIcon.tsx","screens/Console/Buckets/actions.ts","screens/Console/Common/TableWrapper/TableActionIcons/common.ts","screens/Console/Common/TableWrapper/TableActionIcons/ViewIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/PencilIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/ShareIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DeleteIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DescriptionIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/CloudIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/ConsoleIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DownloadIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DisableIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/FormatDriveIcon.tsx","screens/Console/Common/TableWrapper/TableActionButton.tsx","icons/HelpIcon.tsx","screens/Console/Common/FormComponents/CheckboxWrapper/CheckboxWrapper.tsx","screens/Console/Common/TableWrapper/TableWrapper.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx","screens/Console/Common/FormComponents/RadioGroupSelector/RadioGroupSelector.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Buckets/ListBuckets/AddBucket.tsx","screens/Console/Buckets/ListBuckets/DeleteBucket.tsx","screens/Console/Common/PageHeader/PageHeader.tsx","screens/Console/Common/FormComponents/PredefinedList/PredefinedList.tsx","screens/Console/Common/GenericWizard/WizardPage.tsx","screens/Console/Common/GenericWizard/GenericWizard.tsx","screens/Console/Buckets/ListBuckets/BulkReplicationModal.tsx","screens/Console/Buckets/ListBuckets/ListBuckets.tsx","screens/shared/tabs.tsx","screens/Console/Buckets/BucketDetails/AccessDetailsPanel.tsx","screens/Console/Buckets/BucketDetails/SetAccessPolicy.tsx","screens/Console/Buckets/BucketDetails/SetRetentionConfig.tsx","screens/Console/Buckets/BucketDetails/EnableBucketEncryption.tsx","screens/Console/Buckets/BucketDetails/EnableVersioningModal.tsx","icons/UsageIcon.tsx","screens/Console/Buckets/BucketDetails/BucketSummaryPanel.tsx","screens/Console/Buckets/BucketDetails/DeleteEvent.tsx","screens/Console/Buckets/BucketDetails/AddEvent.tsx","screens/Console/Buckets/BucketDetails/BucketEventsPanel.tsx","icons/AddIcon.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx","screens/Console/Buckets/BucketDetails/AddReplicationModal.tsx","screens/Console/Buckets/BucketDetails/DeleteReplicationRule.tsx","screens/Console/Buckets/BucketDetails/BucketReplicationPanel.tsx","screens/Console/Buckets/BucketDetails/EditLifecycleConfiguration.tsx","screens/Console/Common/FormComponents/DateSelector/utils.ts","screens/Console/Common/FormComponents/DateSelector/DateSelector.tsx","screens/Console/Buckets/BucketDetails/AddLifecycleModal.tsx","screens/Console/Buckets/BucketDetails/BucketLifecyclePanel.tsx","screens/Console/Buckets/BucketDetails/BucketDetails.tsx","screens/Console/Buckets/Buckets.tsx","screens/Console/Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper.tsx","screens/Console/Dashboard/Prometheus/types.ts","screens/Console/Policies/AddPolicy.tsx","screens/Console/Policies/DeletePolicy.tsx","screens/Console/Policies/ListPolicies.tsx","screens/Console/Policies/PolicyDetails.tsx","screens/Console/Policies/Policies.tsx","screens/Console/Dashboard/Prometheus/utils.ts","screens/Console/Dashboard/Prometheus/Widgets/SingleValueWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/LineChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/LinearGraphWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/BarChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/BarChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/PieChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/SingleRepWidget.tsx","screens/Console/Common/FormComponents/DateTimePickerWrapper/DateTimePickerWrapper.tsx","icons/SyncIcon.tsx","screens/Console/Dashboard/Prometheus/PrDashboard.tsx","icons/AllBucketsIcon.tsx","icons/EgressIcon.tsx","screens/Console/Dashboard/BasicDashboard/BasicDashboard.tsx","screens/Console/Dashboard/Dashboard.tsx","icons/minio_console_logo.svg","icons/minio_operator_logo.svg","screens/Console/Menu/utils.ts","icons/LicenseIcon.tsx","icons/LogoutIcon.tsx","icons/ConsoleIcon.tsx","icons/HealIcon.tsx","screens/Console/Menu/Menu.tsx","screens/Console/Account/AddServiceAccount.tsx","screens/Console/Account/DeleteServiceAccount.tsx","screens/Console/Common/CredentialsPrompt/CredentialsPrompt.tsx","utils/sortFunctions.ts","screens/Console/Account/ChangePasswordModal.tsx","screens/Console/Account/Account.tsx","screens/Console/Users/GroupsSelectors.tsx","screens/Console/Users/AddUser.tsx","screens/Console/Users/DeleteUser.tsx","screens/Console/Users/BulkAddToGroup.tsx","screens/Console/Policies/PolicySelectors.tsx","screens/Console/Policies/SetPolicy.tsx","screens/Console/Users/ListUsers.tsx","screens/Console/Users/ChangeUserGroups.tsx","screens/Console/Users/SetUserPolicies.tsx","screens/Console/Users/UserDetails.tsx","screens/Console/Users/Users.tsx","screens/Console/Groups/UsersSelectors.tsx","screens/Console/Groups/AddGroup.tsx","screens/Console/Groups/DeleteGroup.tsx","screens/Console/Groups/Groups.tsx","screens/Console/Configurations/utils.ts","screens/Console/Common/FormComponents/CSVMultiSelector/CSVMultiSelector.tsx","screens/Console/Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper.tsx","screens/Console/Configurations/ConfTargetGeneric.tsx","screens/Console/Configurations/CustomForms/EditConfiguration.tsx","screens/Console/Common/SlideOptions/SlideOptions.tsx","icons/BackSettingsIcon.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationsList.tsx","screens/Console/Configurations/NotificationEndpoints/utils.ts","screens/Console/Configurations/CustomForms/ConfPostgres.tsx","screens/Console/Configurations/CustomForms/ConfMySql.tsx","screens/Console/Configurations/NotificationEndpoints/AddNotificationEndpoint.tsx","screens/Console/Configurations/NotificationEndpoints/NotificationTypeSelector.tsx","screens/Console/Configurations/NotificationEndpoints/ListNotificationEndpoints.tsx","screens/shared/ErrorBlock.tsx","screens/Console/Common/FormComponents/FileSelector/FileSelector.tsx","screens/Console/Common/FormComponents/FileSelector/utils.ts","screens/Console/Configurations/TiersConfiguration/AddTierConfiguration.tsx","screens/Console/Configurations/TiersConfiguration/UpdateTierCredentiasModal.tsx","screens/Console/Configurations/TiersConfiguration/ListTiersConfiguration.tsx","screens/Console/Configurations/ConfigurationMain.tsx","screens/Console/Configurations/ConfigurationPanels/WebhookPanel.tsx","screens/Console/Tenants/ListTenants/DeleteTenant.tsx","screens/Console/Tenants/TenantDetails/utils.ts","screens/Console/Tenants/types.ts","screens/Console/Tenants/actions.ts","utils/validationFunctions.ts","screens/Console/Tenants/utils.ts","screens/Console/Tenants/AddTenant/Steps/NameTenant.tsx","screens/Console/Tenants/ListTenants/utils.ts","screens/Console/Tenants/AddTenant/Steps/Configure.tsx","screens/Console/Tenants/AddTenant/Steps/IdentityProvider.tsx","screens/Console/Tenants/AddTenant/Steps/Security.tsx","screens/Console/Tenants/AddTenant/Steps/Encryption.tsx","screens/Console/Tenants/AddTenant/Steps/TenantSize.tsx","screens/Console/Tenants/AddTenant/Steps/Preview.tsx","screens/Console/Tenants/AddTenant/Steps/Affinity.tsx","screens/Console/Tenants/AddTenant/AddTenant.tsx","screens/Console/Tenants/ListTenants/ListTenants.tsx","screens/Console/Tenants/TenantsMain.tsx","screens/Console/Tenants/TenantDetails/AddPoolModal.tsx","screens/Console/Tenants/TenantDetails/ReplicationSetup.tsx","screens/Console/Common/UsageBarWrapper/UsageBarWrapper.tsx","screens/Console/Tenants/TenantDetails/UpdateTenantModal.tsx","screens/Console/Tenants/TenantDetails/TenantYAML.tsx","screens/Console/Tenants/TenantDetails/SubnetLicenseTenant.tsx","screens/Console/Tenants/TenantDetails/TenantDetails.tsx","screens/Console/ObjectBrowser/actions.ts","screens/Console/ObjectBrowser/BrowserBreadcrumbs.tsx","screens/Console/ObjectBrowser/BrowseBuckets.tsx","screens/Console/ObjectBrowser/ObjectBrowser.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteObject.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/CreateFolderModal.tsx","icons/UploadFile.tsx","screens/Console/Buckets/ListBuckets/Objects/utils.ts","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ShareFile.tsx","icons/ShareIcon.tsx","icons/DownloadIcon.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetRetention.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/AddTagModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/DeleteTagModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetLegalHoldModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ObjectDetails.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ObjectRouting.tsx","screens/Console/License/utils.ts","screens/Console/License/ActivationModal.tsx","screens/Console/License/License.tsx","screens/Console/Trace/actions.ts","utils/wsUtils.ts","screens/Console/Trace/Trace.tsx","screens/Console/Logs/actions.ts","screens/Console/Logs/ErrorLogs/ErrorLogs.tsx","screens/Console/Common/FormComponents/FilterInputWrapper/FilterInputWrapper.tsx","screens/Console/Logs/LogSearch/LogsSearchMain.tsx","screens/Console/Logs/LogsMain.tsx","screens/Console/Heal/Heal.tsx","screens/Console/Watch/actions.ts","screens/Console/Watch/Watch.tsx","screens/Console/HealthInfo/actions.ts","screens/Console/HealthInfo/types.ts","screens/Console/HealthInfo/HealthInfo.tsx","screens/Console/Storage/StoragePVCs.tsx","screens/Console/DirectCSI/types.ts","screens/Console/DirectCSI/FormatDrives.tsx","screens/Console/DirectCSI/FormatErrorsResult.tsx","screens/Console/DirectCSI/DirectCSIDrives.tsx","screens/Console/DirectCSI/actions.ts","screens/Console/Storage/Storage.tsx","screens/Console/Console.tsx","screens/LoginPage/LoginCallback.tsx","screens/Console/actions.ts","ProtectedRoutes.tsx","Routes.tsx","reducer.ts","screens/Console/Trace/reducers.ts","screens/Console/Logs/reducers.ts","screens/Console/HealthInfo/reducers.ts","screens/Console/Watch/reducers.ts","screens/Console/reducer.ts","screens/Console/Buckets/reducers.ts","screens/Console/ObjectBrowser/reducers.ts","screens/Console/Tenants/reducer.ts","screens/Console/DirectCSI/reducer.ts","store.ts","serviceWorker.ts","theme/main.ts","index.tsx"],"names":["createBrowserHistory","USER_LOGGED","OPERATOR_MODE","MENU_OPEN","SERVER_NEEDS_RESTART","SERVER_IS_LOADING","SET_LOADING_PROGRESS","SET_SNACK_BAR_MESSAGE","SET_SERVER_DIAG_STAT","SET_ERROR_SNACK_MESSAGE","SET_SNACK_MODAL_MESSAGE","SET_MODAL_ERROR_MESSAGE","userLoggedIn","loggedIn","type","logged","setMenuOpen","open","serverNeedsRestart","needsRestart","loginStrategyType","setSnackBarMessage","message","setErrorSnackMessage","setModalSnackMessage","setModalErrorSnackMessage","minStReq","minMemReq","units","k8sUnits","k8sCalcUnits","niceBytes","x","showK8sUnits","l","n","parseInt","k8sUnitsN","toFixed","clearSession","name","storage","removeItem","document","cookie","timeFromDate","d","h","getHours","m","getMinutes","s","getSeconds","getMilliseconds","k8sfactorForDropdown","map","unit","label","value","getBytes","fromk8s","vl","parseFloat","unitsTake","powFactor","findIndex","element","factor","Math","pow","total","toString","calculateStorage","requestedBytes","forcedNodes","limitSize","drivesPerServer","intReqBytes","structureCalc","nodes","desiredCapacity","maxDiskSize","maxClusterSize","disksPerNode","isNaN","error","persistentVolumes","disks","volumePerDisk","persistentVolumeSize","numberPersistentVolumes","volumesPerServer","floor","min","max","ceil","pvSize","generatePoolName","pools","poolCounter","length","niceDays","secondsValue","timeVariant","seconds","days","hours","minutes","years","months","diffDays","weeks","getTimeFromTimestamp","timestamp","fullDate","dateObject","Date","getFullYear","String","getMonth","padStart","getDay","nsToSeconds","nanoseconds","conversion","round","Number","EPSILON","textToRGBColor","text","hashColored","split","reduce","acc","currItem","charCodeAt","toUpperCase","api","method","url","data","request","send","then","res","body","catch","err","status","window","location","href","onError","errMessage","get","response","throwMessage","charAt","slice","Promise","reject","inputStyles","makeStyles","theme","createStyles","disabled","borderColor","borderBottomStyle","LoginField","props","classes","TextField","InputProps","connector","connect","state","withStyles","backgroundColor","paper","borderRadius","display","flexDirection","alignItems","width","height","margin","position","top","left","marginLeft","marginTop","avatar","spacing","palette","secondary","main","form","submit","boxShadow","padding","errorBlock","justifyContent","color","fontWeight","fontSize","boxSizing","mainContainer","theOcean","borderTopLeftRadius","borderBottomLeftRadius","background","oceanBg","backgroundImage","backgroundRepeat","backgroundPosition","theLogin","loadingLoginStrategy","textAlign","headerTitle","marginBottom","submitContainer","disclaimer","jwtInput","linearPredef","errorIconStyle","marginRight","useState","accessKey","setAccessKey","jwt","setJwt","secretKey","setSecretKey","setError","loginStrategy","unknown","redirect","setLoginStrategy","loginSending","setLoginSending","loginStrategyEndpoints","loginStrategyPayload","formSubmit","e","preventDefault","post","bodyResponse","localStorage","setItem","btoa","history","push","useEffect","invoke","loginDetails","loginComponent","Fragment","Typography","component","variant","className","noValidate","onSubmit","Grid","container","item","xs","fullWidth","id","onChange","target","autoComplete","Button","LinearProgress","replace","hostname","serviceAccount","required","CircularProgress","Paper","fieldBasic","inputLabel","overflow","fieldLabelError","paddingBottom","fieldContainer","maxWidth","tooltipContainer","switchContainer","modalBasic","formScrollable","maxHeight","overflowY","formSlider","clearButton","fontFamily","border","outline","cursor","floatingEnabled","right","zIndex","configureString","tooltipHelper","tooltip","checkBoxBasic","checkboxIcons","unCheckedIcon","checkedIcon","radioBasic","radioIcons","radioUnselectedIcon","radioSelectedIcon","actionsTray","alignSelf","whiteSpace","timeContainers","flexGrow","searchField","opacity","predefinedList","prefinedContainer","predefinedTitle","minHeight","innerContent","overflowX","scrollbarWidth","innerContentMultiline","objectBrowserCommon","obTitleSection","sectionTitle","lineHeight","breadcrumbs","textDecoration","selectorsCommon","multiSelectTable","settingsCommon","customTitle","borderBottom","settingsFormContainer","settingsButtonContainer","borderTop","innerSettingsButtonContainer","settingsOptionsContainer","backButton","backContainer","typesSelection","iconContainer","flexWrap","nonIconContainer","pickTitle","centerElements","logoButton","lambdaNotif","logsCommon","logsSubContainer","widgetCommon","singleValueContainer","titleContainer","contentContainer","contentContainerWithLabel","legendBlock","bottom","singleLegendContainer","colorContainer","minWidth","legendLabel","textOverflow","tooltipCommon","customTooltip","labelContainer","labelColor","itemValue","valueContainer","timeStampTitle","snackBarCommon","snackBar","errorSnackBar","snackBarExternal","snackDiv","snackBarModal","wizardCommon","multiContainer","sizeFactorContainer","headerElement","paddingTop","tableTitle","poolError","paddingLeft","h3Section","descriptionText","buttonsStyles","anchorButton","textTransform","hrClass","borderLeft","borderRight","Copyright","align","Link","useStyles","common","white","NotFound","Container","CssBaseline","Box","mt","CopyIcon","SvgIcon","xmlns","viewBox","data-name","CreateIcon","transform","fill","DeleteIcon","DashboardIcon","BucketsIcon","UsersIcon","cx","cy","rx","ry","ServiceAccountsIcon","GroupsIcon","r","TraceIcon","ConfigurationsListIcon","ClustersIcon","y","WatchIcon","ADD_BUCKET_OPEN","ADD_BUCKET_NAME","ADD_BUCKET_VERSIONED","ADD_BUCKET_LOCKING","ADD_BUCKET_QUOTA","ADD_BUCKET_QUOTA_TYPE","ADD_BUCKET_QUOTA_SIZE","ADD_BUCKET_QUOTA_UNIT","ADD_BUCKET_RESET","ADD_BUCKET_RETENTION","ADD_BUCKET_RETENTION_MODE","ADD_BUCKET_RETENTION_UNIT","ADD_BUCKET_RETENTION_VALIDITY","BUCKET_DETAILS_SET_TAB","unSelected","selected","ViewIcon","active","PencilIcon","ShareIcon","DescriptionIcon","CloudIcon","ConsoleIcon","FormatDriveIcon","defineIcon","DisableIcon","buttonDisabled","filter","onClick","valueToSend","idField","to","sendOnlyId","valueClick","buttonElement","IconButton","aria-label","size","stopPropagation","isString","HelpIcon","flexBasis","checked","Checkbox","inputProps","icon","InputLabel","htmlFor","Tooltip","title","placement","rowText","borderWidth","transitionDuration","paddingRight","generateColumnsMap","columns","containerWidth","actionsWidth","hasSelect","hasActions","selectedItems","columnsSelector","columnsShown","sortColumn","sortDirection","commonRestWidth","colsItems","column","includes","elementKey","initialValue","currValue","el","calculateColumnRest","index","disableSort","enableSort","dataKey","headerClassName","headerTextAlign","headerRenderer","contentTextAlign","cellRenderer","rowData","isSelected","itemElement","renderConst","renderFullObject","renderElement","renderFunction","subRenderFunction","defaultSortDirection","dialogContainer","noBackground","defaultPaperHeight","allTableSettings","minTableHeader","rowUnselected","rowSelected","paginatorContainer","checkBoxHeader","actionsContainer","paginatorComponent","checkBoxRow","loadingBox","overlayColumnSelection","popoverContainer","popoverContent","shownColumnsLabel","userSelect","fontStyle","itemActions","onSelect","records","isLoading","loadingMessage","entityName","radioSelection","customEmptyMessage","customPaperHeight","textSelectable","onColumnChange","infiniteScrollConfig","sortConfig","autoScrollToBottom","columnSelectorOpen","setColumnSelectorOpen","React","anchorEl","setAnchorEl","findView","find","openColumnsSelector","event","currentTarget","closeColumnSelector","style","aria-describedby","Popover","anchorOrigin","vertical","horizontal","transformOrigin","onClose","columnsSelection","isRowLoaded","loadMoreRows","loadMoreRecords","rowCount","recordsCount","onRowsRendered","registerChild","optionsWidth","totalOptions","sizeOptions","calculateOptionsSize","hasOptions","ref","disableHeader","headerHeight","noRowsRenderer","overscanRowCount","rowHeight","rowGetter","onRowClick","rowItem","clickAction","rowClassName","sort","triggerSort","undefined","sortBy","currentSort","currentDirection","scrollToIndex","actions","action","vlSend","disableButtonFunction","showLoaderFunction","elementActions","baseCloseLine","content","modalSnackMessage","system","modalSnackBar","closeContainer","closeButton","modalCloseIcon","closeIcon","titleClass","modalContent","customDialogSize","modalOpen","children","wideLimit","noContentPadding","openSnackbar","setOpenSnackbar","customSize","Dialog","aria-labelledby","Snackbar","ContentProps","autoHideDuration","disableRipple","DialogTitle","DialogContent","root","input","InputField","textBoxContainer","textBoxWithIcon","errorState","overlayAction","multiline","placeholder","overlayIcon","errorInField","helperText","inputRebase","disableFocusRipple","disableTouchRipple","SelectStyled","InputBase","options","FormControl","Select","option","MenuItem","radioStyles","RadioButton","Radio","radioBoxContainer","optionLabel","checkedOption","selectorOptions","currentSelection","disableOptions","displayInColumn","RadioGroup","row","selectorOption","FormControlLabel","control","clsx","StyledSwitch","switchBase","track","thumb","Switch","seeMore","addSideBar","tableToolbar","wrapCell","wordWrap","noFound","tableContainer","stickyHeader","actionsTitle","tableBlock","filterField","divContainer","wrapperContainer","indicatorLabel","fieldDescription","switchOnly","description","indicatorLabels","containerClass","switchComponent","addBucketModalOpen","buckets","bucketName","addBucketName","versioningEnabled","addBucketVersioningEnabled","lockingEnabled","addBucketLockingEnabled","quotaEnabled","addBucketQuotaEnabled","quotaType","addBucketQuotaType","quotaSize","addBucketQuotaSize","quotaUnit","addBucketQuotaUnit","retentionEnabled","addBucketRetentionEnabled","retentionMode","addBucketRetentionMode","retentionUnit","addBucketRetentionUnit","retentionValidity","addBucketRetentionValidity","addBucketVersioned","versioned","enableObjectLocking","locking","addBucketQuota","quota","addBucketRetention","retention","mode","validity","setModalError","buttonContainer","quotaSizeContainer","closeModalAndRefresh","addLoading","setAddLoading","sendEnabled","setSendEnabled","lockingFieldDisabled","setLockingFieldDisabled","useDebounce","resetForm","valid","trim","versioning","amount","enabled","quota_type","addRecord","valueAsNumber","mapDispatchToProps","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","deleteLoading","setDeleteLoading","DialogContentText","DialogActions","autoFocus","headerContainer","labelStyle","multiLine","wizardStepContainer","wizardComponent","wizardModal","buttonsContainer","buttonInnerContainer","page","pageChange","loadingStep","forModal","componentRender","buttons","btn","toPage","buttonAction","wizardMain","wizFromContainer","wizFromModal","wizardSteps","listStyle","modalWizardSteps","buttonList","paddedContentGrid","stepsLabel","stepsMasterContainer","currentStep","setCurrentStep","toElement","lastPage","nextPage","prevPage","pg","stepsList","step","sm","md","lg","xl","remoteBucketList","gridTemplateColumns","errorIcon","successIcon","hide","bucketsToAlter","setBucketsToAlter","externalLoading","setExternalLoading","targetURL","setTargetURL","region","setRegion","useTLS","setUseTLS","replicationMode","setReplicationMode","bandwidthScalar","setBandwidthScalar","bandwidthUnit","setBandwidthUnit","healthCheck","setHealthCheck","relationBuckets","setRelationBuckets","remoteBucketsOpts","setRemoteBucketOpts","responseItem","setResponseItem","optionsForBucketsDrop","remoteBucketName","bucketsAlter","relationBucketsAlter","forEach","LogoToShow","errString","updateItem","indexItem","updatedList","removeSuccessItems","newBucketsToAlter","newRelationBuckets","successElement","errorString","indexToRemove","indexOf","originBucket","splice","join","wizardPageJump","remoteConnectInfo","dataReturn","arrayReplaceBuckets","errorItem","initialBucket","bucketResponse","stateOfItem","replicate","destinationBucket","endURL","hc","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","healthCheckPeriod","states","replicationState","itm","setTimeout","addBucketOpen","addBucketReset","setRecords","loading","setLoading","setDeleteOpen","setSelectedBucket","filterBuckets","setFilterBuckets","loadingPerms","setLoadingPerms","canCreateBucket","setCanCreateBucket","selectedBuckets","setSelectedBuckets","replicationModalOpen","setReplicationModalOpen","permissions","canCreate","can","tableActions","bucket","filteredRecords","b","refresh","BulkReplicationModal","unselectAll","val","disableUnderline","startAdornment","InputAdornment","startIcon","date","targetD","elements","TabPanel","other","role","hidden","session","console","a11yProps","match","curTab","setCurTab","loadingPolicies","setLoadingPolicies","bucketPolicy","setBucketPolicy","loadingUsers","setLoadingUsers","bucketUsers","setBucketUsers","params","usersEnabled","pages","PolicyActions","policy","userTableActions","user","policies","Tabs","newValue","indicatorColor","textColor","scrollButtons","Tab","actualPolicy","accessPolicy","setAccessPolicy","access","setRetentionMode","setRetentionUnit","setRetentionValidity","setValid","encryptionCfg","encryptionEnabled","kmsKeyID","setKmsKeyID","encryptionType","setEncryptionType","algorithm","kmsMasterKeyID","encType","closeVersioningModalAndRefresh","versioningCurrentState","versioningLoading","setVersioningLoading","UsageIcon","y1","x2","y2","gradientUnits","offset","stopColor","stroke","strokeMiterlimit","strokeWidth","paperContainer","elementTitle","consumptionValue","reportedUsage","info","setInfo","setEncryptionCfg","bucketSize","setBucketSize","hasObjectLocking","setHasObjectLocking","accessPolicyScreenOpen","setAccessPolicyScreenOpen","replicationRules","setReplicationRules","loadingObjectLocking","setLoadingLocking","loadingSize","setLoadingSize","loadingBucket","setLoadingBucket","loadingEncryption","setLoadingEncryption","loadingVersioning","setLoadingVersioning","loadingReplication","setLoadingReplication","isVersioned","setIsVersioned","setEncryptionEnabled","retentionConfigOpen","setRetentionConfigOpen","enableEncryptionScreenOpen","setEnableEncryptionScreenOpen","enableVersioningOpen","setEnableVersioningOpen","is_versioned","object_locking_enabled","bucketInfo","rules","loadAllBucketData","titleCol","capitalizeFirst","toLowerCase","doubleElement","colSpan","direction","gridContainer","bucketEvent","events","prefix","suffix","arn","removeRecord","setPrefix","setSuffix","setArn","selectedEvents","setSelectedEvents","arnList","setArnList","fetchArnList","useCallback","arns","handleClick","selectedIndex","newSelected","concat","arnValues","arnConstant","configuration","ignoreExisting","Table","TableHead","TableRow","TableCell","TableBody","addEventScreenOpen","setAddEventScreenOpen","loadingEvents","setLoadingEvents","selectedEvent","setSelectedEvent","setFilter","evnt","AddIcon","inputWithBorder","lineInputBoxes","queryDiv","keyPlaceholder","valuePlaceholder","withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","keys","values","splittedVals","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","onChangeValue","debounce","queryString","keyVal","insertString","inputs","keysList","valuesList","addEmptyLine","targetStorageClass","setTargetStorageClass","targetBucket","setTargetBucket","repDeleteMarker","setRepDeleteMarker","repDelete","setRepDelete","repMetadata","tags","setTags","replicateDeleteMarkers","replicateDeletes","replicateMetadata","itemVal","log","ruleToDelete","canPutReplication","setCanPutReplication","canGetReplication","setCanGetReplication","deleteReplicationModal","setDeleteReplicationModal","openSetReplication","setOpenSetReplication","selectedRRule","setSelectedRRule","bucket_name","userCanPutReplication","setOpenReplicationOpen","replicationTableActions","replication","strongText","keyName","lifecycle","setEnabled","tgs","stringLab","key","disable","Array","from","_","num","currentYear","numYear","DateSelector","forwardRef","addSwitch","onDateChange","useImperativeHandle","resetDate","dateEnabled","setDateEnabled","month","setMonth","day","setDay","year","setYear","valueSplit","currentDate","parse","parsedMonth","parsedDay","monthForString","dayForString","parsedDate","toISOString","dateString","validDate","isValid","isDateDisabled","fieldContainerBorder","dateInput","displayEmpty","dayNumber","flex","loadingTiers","setLoadingTiers","tiersList","setTiersList","storageClass","setStorageClass","NCTransitionSC","setNCTransitionSC","expiredObjectDM","setExpiredObjectDM","NCExpirationDays","setNCExpirationDays","NCTransitionDays","setNCTransitionDays","ilmType","setIlmType","expiryType","setExpiryType","expiryDays","setExpiryDays","expiryDate","setExpiryDate","transitionDays","setTransitionDays","transitionDate","setTransitionDate","transitionType","setTransitionType","isFormValid","setIsFormValid","objList","tier","tierType","expiry","expiry_date","expiry_days","noncurrentversion_expiration_days","transition","transition_date","transition_days","noncurrentversion_transition_days","noncurrentversion_transition_storage_class","storage_class","lifecycleInsert","expired_object_delete_marker","loadingLifecycle","setLoadingLifecycle","lifecycleRecords","setLifecycleRecords","addLifecycleOpen","setAddLifecycleOpen","editLifecycleOpen","setEditLifecycleOpen","lifecycleColumns","expiration","objectST","selectedTab","bucketDetails","setBucketDetailsTab","tab","noRecords","gridWrapper","gridGap","masterActions","encCheckbox","tabPan","fixedHeight","routerContainer","matchURL","splitMatch","canGetReplicationVal","newTab","mainRoute","changeRoute","path","BucketSummaryPanel","BucketEventsPanel","BucketReplicationPanel","BucketLifecyclePanel","AccessDetailsPanel","sidebarOpen","withRouter","BucketDetails","ListBuckets","NotFoundPage","require","widgetType","onBeforeChange","readOnly","lineNumbers","jsonPolicyEditor","policyEdit","policyName","setPolicyName","policyDefinition","setPolicyDefinition","JSON","stringify","validSave","editor","selectedPolicy","addScreenOpen","setAddScreenOpen","setSelectedPolicy","filterPolicies","setFilterPolicies","setPolicyEdit","fetchRecords","pa","pb","elementItem","containerHeader","infoGrid","updateButton","noUnderLine","poolLabel","licenseContainer","licenseInfo","licenseInfoTitle","licenseInfoValue","verifiedIcon","breadcrumLink","setSelectedTab","setPolicy","userList","setUserList","loadingPolicy","setLoadingPolicy","result","PolicyDetails","ListPolicies","dLocalStorageV","defaultWidgetsLayout","w","i","minW","moved","static","colorsMain","niceDaysFromNS","roundNumber","panelsConfiguration","singleValue","layoutIdentifier","labelDisplayFunction","dataOuter","widgetConfiguration","outerChart","colorList","innerRadius","outerRadius","startAngle","endAngle","innerChart","pieChart","innerLabel","keyLabel","lineColor","fillColor","linearGraph","yAxisFormatter","xAxisFormatter","customStructure","originTag","displayTag","barChart","singleRep","disableYAxis","calculateMainValue","metricCalc","sumValues","accumulator","sortResult","value1","value2","widgetDetailsToPanel","payloadData","panelItem","typeOfPayload","valueDisplay","chartSeries","valuesArray","totalValues","elementValue","metricKeyItem","Object","metric","metricName","targets","series","plotValues","targetMaster","results","legendFormat","itemVals","labelName","metrics","keysToReplace","expToReplace","RegExp","replacedLegend","matchItem","nwMatchItem","countVarsOpen","countVarsClose","cleanLegend","constructLabelNames","valInfo","itemIndex","itemToPush","seriesWithColors","series1","series2","serialC","sortedVals","chartBars","sortFunction","structureItem","metricTake","lastValue","a","valuesForBackground","eachVal","saveDashboardDistribution","displayErrorMessage","loadingAlign","timeStart","timeEnd","setData","stepCalc","secondsInPeriod","unix","periods","widgetsWithValue","payload","linearConfiguration","pl","containerElements","chartCont","legendChart","hideYAxis","panelWidth","setResult","intervalCount","ResponsiveContainer","AreaChart","CartesianGrid","strokeDasharray","strokeOpacity","XAxis","tickFormatter","interval","tick","tickCount","YAxis","domain","dataMax","section","Area","fillOpacity","wrapperStyle","barChartConfiguration","CustomizedAxisTick","textAnchor","dy","BarChart","layout","barCategoryGap","tickLine","axisLine","bar","Bar","dataInner","setDataInner","setDataOuter","pieChartConfiguration","middleLabel","innerColors","outerColors","PieChart","Pie","entry","Cell","dominantBaseline","dateSelectorOverride","parentDateOverride","utils","MomentUtils","DateTimePicker","ampm","format","SyncIcon","widgetsContainer","syncButton","setTimeStart","setTimeEnd","panelInformation","setPanelInformation","dashboardDistr","currentItems","storedConfiguration","getItem","parsedConfig","atob","getDashboardDistribution","panels","singlePanelWidth","xSpacing","componentToUse","fetchUsage","widgets","panelT","hpanel","totalWidth","cols","containerPadding","onLayoutChange","AllBucketsIcon","EgressIcon","notationContainer","dashboardBG","backgroundSize","dashboardContainer","smallUnit","usage","fixedHeightPaper","prettyNumber","niceBytesUsage","prettyUsage","objects","basicResult","setBasicResult","menuGroups","group","collapsible","LicenseIcon","LogoutIcon","HealIcon","operatorMode","logo","menuList","extraMargin","groupTitle","subTitleMenu","selectorArrow","borderStyle","selectorArrowOpen","menuItem","menuStateBuilder","menuOpen","menuItems","NavLink","IAMPoliciesIcon","allowedPages","documentation","forceDisplay","hasOwnProperty","allowedItems","src","operator_logo","alt","List","groupMember","filterByGroup","ListItem","menuClicked","newMenu","setMenuCollapse","Collapse","in","timeout","unmountOnExit","button","ListItemIcon","ListItemText","primary","Divider","deleteSession","infoDetails","containerScrollable","addSending","setAddSending","isRestrictedByPolicy","setIsRestrictedByPolicy","addServiceAccount","wrapText","selectedServiceAccount","warningBlock","credentialsPanel","newServiceAccount","closeModal","entity","consoleCreds","isArray","credentialsPair","consoleExtras","cCreds","itemMap","access_key","secret_key","filename","createElement","setAttribute","encodeURIComponent","appendChild","click","removeChild","download","usersSort","policySort","stringSort","currentPassword","setCurrentPassword","newPassword","setNewPassword","reNewPassword","setReNewPassword","current_secret_key","new_secret_key","changePassword","imageIcon","iconRoot","setSelectedServiceAccount","showNewCredentials","setShowNewCredentials","setNewServiceAccount","changePasswordModalOpen","setChangePasswordModalOpen","serviceAccounts","nsa","closeAddModalAndRefresh","ChangePasswordModal","selectedGroups","setSelectedGroups","fetchGroups","groups","selGroups","selectedUser","currentGroups","setCurrentGroups","getUserInformation","memberOf","checkedUsers","saving","isSaving","accepted","setAccepted","users","fetchPolicies","selectedGroup","setActualPolicy","groupPolicy","userPolicy","userName","entityType","setSelectedUser","addGroupOpen","setAddGroupOpen","setCheckedUsers","policyOpen","setPolicyOpen","selectionElement","topValue","close","unCheckAll","closeAddGroupBulk","currentPolicies","pol","setCurrentPolicies","isEnabled","Bookmark","UserDetails","ListUsers","selectedUsers","setSelectedUsers","editMode","fetchUsers","selUsers","groupName","setGroupName","groupEnabled","setGroupEnabled","loadingGroup","isLoadingGroup","validGroup","setValidGroup","members","isDeleting","closeNoAction","setGroupOpen","setSelectedGroup","resGroups","notifyPostgres","notifyMysql","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","configurationElements","configuration_id","configuration_label","fieldsConfigurations","cache","compression","etcd","identity_openid","identity_ldap","logger_webhook","audit_webhook","commonFields","notificationEndpointsFields","removeEmptyFields","formFields","field","commonPlaceholder","currentElements","setCurrentElements","onChangeElement","elementsString","elementsUp","cpList","cssOutlinedInput","rootContainer","InputLabelProps","shrink","notchedOutline","valueDef","defaults","defValue","storedConfig","fields","defaultVals","valueHolder","setValueHolder","fieldsElements","defValList","stateInsert","setValueElement","valuesDup","fieldDefinition","selectedConfiguration","valuesObj","setValueObj","setSaving","loadingConfig","setLoadingConfig","configValues","setConfigValues","configId","keyVals","key_values","onValueChange","masterContainer","sliderContainer","slide","float","slideOptions","currentSlide","currentSliderPosition","containerSize","block","BackSettingsIcon","strokeLinecap","initialConfiguration","iconText","customConfigurationPage","setSelectedConfiguration","currentConfiguration","setCurrentConfiguration","servicesList","actionTrigger","targetTitle","useConnectionString","setUseConnectionString","connectionString","setConnectionString","host","setHostname","dbName","setDbName","port","setPort","setUser","password","setPassword","sslMode","setSslMode","table","setTable","setFormat","queueDir","setQueueDir","queueLimit","setQueueLimit","comment","setComment","configToString","strValue","cs","kv","valueIndexes","n1","n2","kvFields","Map","j","substr","set","parseConnectionString","useDsnString","setUseDsnString","dsnString","setDsnString","configToDsnString","regex","exec","lastIndex","parseDsnString","lambdaFormIndicator","service","saveAndRefresh","valuesArr","setValueArr","srvComponent","targetElement","nonLogos","elService","withLogos","setService","lambdaContainer","setIsLoading","currentPanel","setCurrentPanel","resNotEndList","notification_endpoints","service_name","account_id","backClick","red","serviceName","errorMessage","withBreak","errorText","valueString","fileReselect","fieldBottom","fileInputField","accept","showFileSelector","setShowSelector","fileName","evt","callback","file","files","reader","FileReader","readAsDataURL","onload","fileBase64","fileArray","fileProcess","setName","endpoint","setEndpoint","setBucket","creds","setCreds","encodedCreds","setEncodedCreds","accountName","setAccountName","accountKey","setAccountKey","titleSelection","setTitleSelection","s3","accesskey","secretkey","storageclass","gcs","azure","accountname","accountkey","encodedValue","tierData","savingTiers","setSavingTiers","updateCredentialsOpen","setUpdateCredentialsOpen","selectedTier","setSelectedTier","setType","items","getItemName","getItemType","typeSelect","typeItem","UpdateTierCredentiasModal","headerLabel","logger","modalTitle","apiURL","audit","addWebhookOpen","setAddWebhookOpen","panelToDisplay","panelData","toLocaleLowerCase","selectedTenant","retypeTenant","setRetypeTenant","namespace","getDefaultAffinity","tenantName","poolName","podAntiAffinity","requiredDuringSchedulingIgnoredDuringExecution","labelSelector","matchExpressions","operator","topologyKey","getNodeSelector","labels","withPodAntiAffinity","splittedLabels","splitKeyValue","nodeSelector","nodeAffinity","nodeSelectorTerms","def","ADD_TENANT_SET_CURRENT_PAGE","ADD_TENANT_SET_ADVANCED_MODE","ADD_TENANT_UPDATE_FIELD","ADD_TENANT_SET_PAGE_VALID","ADD_TENANT_RESET_FORM","ADD_TENANT_SET_STORAGE_CLASSES_LIST","ADD_TENANT_ADD_MINIO_KEYPAIR","ADD_TENANT_ADD_FILE_TO_MINIO_KEYPAIR","ADD_TENANT_DELETE_MINIO_KEYPAIR","ADD_TENANT_ADD_CA_KEYPAIR","ADD_TENANT_ADD_FILE_TO_CA_KEYPAIR","ADD_TENANT_DELETE_CA_KEYPAIR","ADD_TENANT_ADD_CONSOLE_CERT","ADD_TENANT_ENCRYPTION_SERVER_CERT","ADD_TENANT_ENCRYPTION_CLIENT_CERT","ADD_TENANT_ENCRYPTION_VAULT_CERT","ADD_TENANT_ENCRYPTION_VAULT_CA","ADD_TENANT_ENCRYPTION_GEMALTO_CA","updateAddField","pageName","fieldName","isPageValid","addConsoleCertificate","commonFormValidation","fieldsValidate","returnErrors","fieldKey","customValidation","customValidationMessage","pattern","customPatternMessage","rgx","clearValidationError","validationErrors","newValidationElement","getRandomString","retval","legalcharacters","random","advancedMode","tenants","createTenant","advancedModeOn","nameTenant","selectedStorageClass","storageClasses","setAdvancedMode","setStorageClassesList","setLimitSize","setValidationErrors","emptyNamespace","setEmptyNamespace","loadingNamespaceInfo","setLoadingNamespaceInfo","updateField","getNamespaceInformation","tenantsList","resourceQuotas","quotas","returnQuotas","rsQuota","stCName","hard","used","getLimitSizes","newStorage","debounceNamespace","useMemo","cancel","customNamespaceError","commonValidation","frmValidationCleanup","customImage","configure","imageName","consoleImage","customDockerhub","imageRegistry","imageRegistryUsername","imageRegistryPassword","exposeMinIO","exposeConsole","prometheusCustom","logSearchCustom","logSearchVolumeSize","logSearchSizeFactor","prometheusVolumeSize","prometheusSizeFactor","logSearchSelectedStorageClass","logSearchImage","kesImage","logSearchPostgresImage","prometheusSelectedStorageClass","prometheusImage","customAccountValidation","commonVal","cleanValidation","idpSelection","identityProvider","accessKeys","secretKeys","openIDURL","openIDClientID","openIDSecretID","ADURL","ADSkipTLS","ADServerInsecure","ADUserNameFilter","ADGroupBaseDN","ADGroupSearchFilter","ADNameAttribute","shortened","buttonTray","updateUserField","newUserField","updatePwordField","customIDPValidation","gutterBottom","enableTLS","security","enableAutoCert","enableCustomCerts","minioCertificates","certificates","caCertificates","consoleCertificate","addFileToCaCertificates","deleteCaCertificate","addCaCertificate","addKeyPair","addFileToKeyPair","deleteKeyPair","keyPair","cert","enableEncryption","encryption","gemaltoEndpoint","gemaltoToken","gemaltoDomain","gemaltoRetry","awsEndpoint","awsRegion","awsKMSKey","awsAccessKey","awsSecretKey","awsToken","vaultEndpoint","vaultEngine","vaultNamespace","vaultPrefix","vaultAppRoleEngine","vaultId","vaultSecret","vaultRetry","vaultPing","gcpProjectID","gcpEndpoint","gcpClientEmail","gcpClientID","gcpPrivateKeyID","gcpPrivateKey","enableCustomCertsForKES","serverCertificate","clientCertificate","vaultCertificate","vaultCA","gemaltoCA","addFileServerCert","addFileClientCert","addFileVaultCert","addFileVaultCa","addFileGemaltoCa","encryptionAvailable","encoded_key","encoded_cert","encryptionValidation","volumeSize","tenantSize","sizeFactor","memoryNode","ecParity","ecParityChoices","cleanECChoices","maxAllocableMemo","memorySize","distribution","ecParityCalc","usableInformation","storageFactors","erasureCode","validateMemorySize","memSize","maxMemSize","clusterSizeFactor","memoSize","capacitySize","maxMemorySize","requestedSizeBytes","memReqSize","limit","capSize","memLimitSize","setMemoryResource","ecCodeValidated","parityValidValues","totalDisks","totalNodes","defaultEC","erasureCodeSet","maxEC","rawCapacity","totalStorage","erasureStripeSet","currentParity","parityNumber","storageFactor","maxCapacity","maxTolerations","maxFailureTolerations","fourVar","erasureCodeCalc","validateClusterSize","getECValue","maxMemory","max_memory","getMaxAllocableMemory","distrCalculate","capacityToUse","calculateDistribution","ecList","ecListTransform","parsedSize","scope","podAffinity","affinity","nodeSelectorLabels","splitItem","validPages","closeAndRefresh","createdAccount","setCreatedAccount","affinityType","affinityObject","dataSend","access_keys","secret_keys","enable_tls","enable_console","enable_prometheus","image","console_image","expose_minio","expose_console","servers","volumes_per_server","volume_configuration","storage_class_name","resources","requests","memory","limits","erasureCodingParity","image_registry","registry","username","logSearchConfiguration","storageSize","postgres_image","prometheusConfiguration","tenantCerts","consoleCerts","caCerts","ca_certificates","minio","crt","tls","insertEncrypt","gemaltoCAIntroduce","ca","gemalto","keysecure","credentials","token","retry","aws","secretsmanager","kmskey","gcp","secretmanager","project_id","client_email","client_id","private_key_id","private_key","vaultKeyPair","vaultCAInsert","vaultTLS","vault","engine","approle","secret","ping","encryptionServerKeyPair","encryptionClientKeyPair","client","server","dataIDP","keyarray","oidc","secret_id","active_directory","skip_tls_verification","server_insecure","username_format","user_search_filter","group_search_base_dn","group_search_filter","group_name_attribute","idp","consoleSAList","newSrvAcc","consoleItem","consoleKey","cancelButton","advancedOnly","filteredWizardSteps","resetAddTenantForm","tenantsContainer","setSelectedTenant","filterTenants","setFilterTenants","tenant","resTenants","capacity","total_size","reloadData","bottomContainer","factorElements","sizeNumber","sizeDescription","onClosePoolAndReload","numberOfNodes","setNumberOfNodes","setVolumeSize","setVolumesPerSever","setSelectedStorageClass","setStorageClasses","instanceCapacity","totalCapacity","defaultAffinity","sourceBucket","setSourceBucket","clusterSelected","setClusterSelected","setDestinationBucket","address","setAddress","BorderLinearProgress","colorPrimary","padChart","allValue","currentUsage","centerItem","maxValue","porcentualValue","idTenant","isSending","setIsSending","minioImage","setMinioImage","setConsoleImage","setImageRegistry","imageRegistryEndpoint","setImageRegistryEndpoint","setImageRegistryUsername","setImageRegistryPassword","validMinioImage","setValidMinioImage","validConsoleImage","setValidConsoleImage","validateImage","fieldToCheck","test","tenantYaml","setTenantYaml","setErrorMessage","yaml","loadingActivateProduct","loadingLicenseInfo","activateProduct","subnet_license","organization","storage_capacity","expires_at","plan","email","licenseButton","setCapacity","poolCount","setPoolCount","setPools","pods","setPods","instances","setInstances","volumes","setVolumes","addPoolOpen","setAddPool","setAddBucketOpen","addReplicationOpen","setAddReplicationOpen","setTenant","loadingUsage","setLoadingUsage","usageError","setUsageError","setUsage","updateMinioVersion","setUpdateMinioVersion","yamlScreenOpen","setYamlScreenOpen","setLicenseInfo","setLoadingLicenseInfo","setLoadingActivateProduct","logEnabled","setLogEnabled","monitoringEnabled","setMonitoringEnabled","adEnabled","setAdEnabled","oicEnabled","setOicEnabled","tenantNamespace","loadInfo","resPools","totalInstances","totalVolumes","poolNamedIndex","pool","cap","idpAdEnabled","idpOicEnabled","loadUsage","currentTime","time","timeCreated","editYaml","reload","aria-controls","aria-haspopup","keepMounted","Boolean","endpoints","rel","currentState","OBJECT_BROWSER_ADD_ROUTE","OBJECT_BROWSER_RESET_ROUTES_LIST","OBJECT_BROWSER_REMOVE_ROUTE_LEVEL","OBJECT_BROWSER_SET_ALL_ROUTES","OBJECT_BROWSER_CREATE_FOLDER","OBJECT_BROWSER_SET_LAST_AS_FILE","OBJECT_BROWSER_DOWNLOAD_FILE_LOADER","OBJECT_BROWSER_DOWNLOADED_FILE","addRoute","route","routeType","removeRouteLevel","toRoute","setAllRoutes","currentRoute","fileIsBeingPrepared","fileDownloadStarted","objectBrowser","objectsList","listBreadcrumbs","objectItem","resetRoutesList","reset","usedSpaceCol","subTitleLabel","iconBucket","browsePaper","pop","idElement","currentPath","newPath","globalClass","rowClass","watchList","inputField","lastElementWPadding","pathIn","selectedObject","recursive","endsWith","createFolder","newRoute","pathLabel","folderName","pathUrl","setPathUrl","folderTruncated","UploadFile","objectPath","versionID","callBack","includeVersionInCallback","anchor","xhr","XMLHttpRequest","allPathData","objectName","isNullOrUndefined","responseType","this","blob","Blob","blobUrl","URL","createObjectURL","revokeObjectURL","remove","commonIcon","defLoading","setLastAsFile","setLoadingProgress","progress","loadingProgress","routesList","downloadingFiles","fileNameText","iconFolder","iconFile","listButton","createFolderOpen","setCreateFolderOpen","setSelectedObject","filterObjects","setFilterObjects","loadingStartTime","setLoadingStartTime","setLoadingMessage","delay","savedCallback","setInterval","clearInterval","useInterval","timeDelta","now","updateMessage","internalPaths","extraPath","currentTimestamp","folders","record","recordsInElement","verifyIfIsFile","removeDownloadAnimation","uploadObject","splitPaths","uploadUrl","areMultipleFiles","okMessage","withCredentials","upload","addEventListener","loaded","onerror","onloadend","formData","FormData","blobFile","append","idElementClean","pathInArray","object","version_id","Input","multiple","elementString","last_modified","copyButtonContainer","dataObject","shareURL","setShareURL","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","slDate","currDate","diffDate","getTime","dateContainer","newDate","DownloadIcon","objectInfo","statusEnabled","setStatusEnabled","setDate","isDateValid","setIsDateValid","setIsSaving","alreadyConfigured","setAlreadyConfigured","retention_mode","retention_until_date","valueDate","getDate","dateElement","showSwitcher","versionId","expireDate","expires","addRetention","disableRetention","currentTags","onCloseAndUpdate","newKey","setNewKey","newLabel","setNewLabel","newTag","newTagList","selectedTag","setDeleteSending","tagKey","tagLabel","cleanObject","actualInfo","legalHoldEnabled","setLegalHoldEnabled","emptyFile","is_latest","legal_hold_status","objectNameContainer","objectPathContainer","objectPathLink","propertiesContainer","propertiesItem","propertiesItemBold","propertiesValue","propertiesIcon","actionsIconContainer","actionsIcon","tagsContainer","tagText","tag","search","loadObjectData","setLoadObjectData","shareFileModalOpen","setShareFileModalOpen","retentionModalOpen","setRetentionModalOpen","tagModalOpen","setTagModalOpen","deleteTagModalOpen","setDeleteTagModalOpen","setSelectedTag","legalholdOpen","setLegalholdOpen","setActualInfo","versions","setVersions","filterVersion","setFilterVersion","pathInBucket","tagKeys","shareObject","downloadObject","includeVersion","version","updateInfo","redirectBack","reloadObjectData","Chip","deleteIcon","onDelete","deleteTag","clickable","currentItem","planDetails","price","capacityMin","capacityMax","planItems","community","communityDetail","standard","standardDetail","enterprise","enterpriseDetail","planButtons","text2","link","subnetLicenseKey","subnetLoginForm","licenseKeyField","pageTitle","buttonSignup","license","setLicense","subnetPassword","setSubnetPassword","subnetEmail","setSubnetEmail","rows","detailsContainer","detailsContainerBorder","detailsContainerBorderHighlighted","detailsTitle","activePlanHeader","planHeader","detailsPrice","detailsCapacityMax","detailsCapacityMin","itemContainer","itemContainerDetail","alignContent","itemFirst","itemHighlighted","checkIcon","buttonContainerBlank","buttonContainerHighlighted","openSourcePolicy","activateLink","clear","subnetRefreshLicenseLink","midWidth","smallWidth","licenseDescription","currentPlanBG","currentPlanButton","planItemsPadding","subnetSubTitle","fetchLicenseInfo","setCurrentPlanID","activateProductModal","setActivateProductModal","currentPlanID","loadingRefreshLicense","setLoadingRefreshLicense","details","currentPlan","TRACE_MESSAGE_RECEIVED","TRACE_RESET_MESSAGES","wsProtocol","protocol","messages","trace","traceMessageReceived","traceResetMessages","logList","sizeItem","timeItem","wsProt","c","W3CWebSocket","onopen","onmessage","ptime","moment","toDate","onclose","timeParse","fullElement","statusCode","statusMsg","LOG_MESSAGE_RECEIVED","LOG_RESET_MESSAGES","logs","logMessageReceived","logResetMessages","logerror","logerror_tab","ansidefault","highlight","setHighlight","renderLog","logElement","logMessage","ConsoleMsg","highlightedLine","startsWith","errorElems","deploymentid","requestID","remotehost","userAgent","source","renderError","renderLines","buttonKit","toggleButton","inputBar","advancedLabel","advancedLabelContainer","getInformationContainer","orderButton","recordsLabel","blockCollapsed","filterOpen","endLineAction","filtersContainer","innerContainer","noticeLabel","tableFOpen","tableFClosed","setFilterOpen","apiName","setApiName","setUserAgent","setObject","setRequestID","responseStatus","setResponseStatus","sortOrder","setSortOrder","setColumnsShown","setNextPage","alreadyFetching","setAlreadyFetching","recordsResp","queryParams","fetchedResults","newResultSet","response_status_code","response_status","colName","newArray","sortData","newSortDirection","resolve","currentTab","setCurrentTab","showLogSearch","setShowLogSearch","graphContainer","scanInfo","scanData","inlineCheckboxes","start","setStart","setBucketName","bucketList","setBucketList","setRecursive","forceStart","setForceStart","forceStop","setForceStop","beforeHeal","afterHeal","objectsHealed","objectsScanned","healDuration","sizeScanned","hStatus","setHStatus","colorHealthArr","Green","Yellow","Red","Grey","cB","cA","entries","healthAfterCols","itemsScanned","healthBeforeCols","bytesScanned","datasets","bucketNames","legend","WATCH_MESSAGE_RECEIVED","WATCH_RESET_MESSAGES","watch","watchMessageReceived","watchResetMessages","searchPrefix","some","Time","HEALTH_INFO_MESSAGE_RECEIVED","HEALTH_INFO_RESET_MESSAGE","DiagStatError","DiagStatSuccess","DiagStatInProgress","healthInfo","serverDiagnosticStatus","healthInfoMessageReceived","healthInfoResetMessage","setServerDiagStat","gap","startDiagnostic","setStartDiagnostic","downloadDisabled","setDownloadDisabled","code","tableWrapper","DIRECT_CSI_SELECT_DRIVE","closeFormatModalAndRefresh","allDrives","drivesToFormat","formatAll","setFormatAll","force","setForce","drives","formatIssuesList","errorsList","onCloseFormatErrorsList","selectDrive","driveName","notAvailableNotice","linkItem","checkedDrives","setCheckedDrives","formatOpen","setFormatOpen","formatErrorsResult","setFormatErrorsResult","formatErrorsOpen","setFormatErrorsOpen","setDrivesToFormat","notAvailable","setNotAvailable","newItem","joinName","node","drive","d1","d2","driveID","routes","tabsContainer","StoragePVCs","DirectCSIDrives","render","isServerLoading","serverIsLoading","snackBarMessage","toolbar","default","toolbarIcon","mixins","appBar","drawer","transitions","create","easing","sharp","duration","leavingScreen","appBarShift","enteringScreen","menuButton","menuButtonHidden","drawerPaper","drawerPaperClose","breakpoints","up","warningBar","heigh","widht","allowedRoutes","Dashboard","Buckets","ObjectBrowser","ObjectRouting","Watch","Users","Groups","Policies","Heal","Trace","LogsMain","HealthInfo","ConfigurationMain","Account","WebhookPanel","TenantsMain","Storage","TenantDetails","License","Drawer","exact","routerProps","LoginCallback","errorDescription","setErrorDescription","sessionId","SESSION_RESPONSE","consoleOperatorMode","saveSessionResponse","Component","sessionLoading","setSessionLoading","pathname","hot","Login","Console","initialState","features","initialRoute","selectedDrive","globalReducer","combineReducers","newRouteList","indexOfTopPath","newRouteLevels","splitRoutes","routesArray","initRoute","newSetOfRoutes","newFoldersRoutes","lastRoute","splitElements","folderTrim","currentList","lastItem","newList","actualFiles","newState","has","originPageNameItems","joinValue","originValidPages","newSetOfPages","elm","changeCL","minioCerts","NCertList","minioCertsList","cleanMinioCertsList","CACerts","NACList","CACertsList","consoleCert","encServerCert","encClientCert","encVaultCert","encVaultCA","encGemaltoCA","directCSI","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","createMuiTheme","light","dark","contrastText","grey","100","200","300","400","500","600","700","800","900","typography","h1","h2","h3","h4","h5","h6","overrides","MuiButton","GlobalCss","ReactDOM","store","createStore","applyMiddleware","thunk","ThemeProvider","getElementById","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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,EACR6gC,IAET,IA+IIuiD,EA7IS,CACb,CACE3jF,UAAW4jF,GACX9lD,KAAM,cAER,CACE99B,UAAW6jF,GACX/lD,KAAM,YAER,CACE99B,UAAW6jF,GACX/lD,KAAM,wBAER,CACE99B,UAAW6jF,GACX/lD,KAAM,gCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,+BAER,CACE99B,UAAW6jF,GACX/lD,KAAM,oCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,kCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,+BAER,CACE99B,UAAW6jF,GACX/lD,KAAM,+BAER,CACE99B,UAAW6jF,GACX/lD,KAAM,wCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,qCAER,CACE99B,UAAW8jF,GACXhmD,KAAM,mBAER,CACE99B,UAAW+jF,GACXjmD,KAAM,2BAER,CACE99B,UAAW+jF,GACXjmD,KAAM,6BAER,CACE99B,UAAWgkF,GACXlmD,KAAM,UAER,CACE99B,UAAWikF,GACXnmD,KAAM,oBAER,CACE99B,UAAWikF,GACXnmD,KAAM,UAER,CACE99B,UAAWkkF,GACXpmD,KAAM,WAER,CACE99B,UAAWmkF,GACXrmD,KAAM,yBAER,CACE99B,UAAWmkF,GACXrmD,KAAM,aAER,CACE99B,UAAWokF,GACXtmD,KAAM,SAER,CACE99B,UAAWqkF,GACXvmD,KAAM,UAER,CACE99B,UAAWskF,GACXxmD,KAAM,SAER,CACE99B,UAAWukF,GACXzmD,KAAM,gBAER,CACE99B,UAAWwkF,GACX1mD,KAAM,aAER,CACE99B,UAAWykF,GACX3mD,KAAM,WACNvjC,MAAO,CACLg5C,eAAgBrqB,EAAQgB,MAAM/a,SAAS,8BAG3C,CACEnP,UAAW0kF,GACX5mD,KAAM,mBAER,CACE99B,UAAW0kF,GACX5mD,KAAM,kBAER,CACE99B,UAAW2kF,GACX7mD,KAAM,YAER,CACE99B,UAAW4kF,GACX9mD,KAAM,YAER,CACE99B,UAAW4kF,GACX9mD,KAAM,oBAER,CACE99B,UAAW4kF,GACX9mD,KAAM,mBAER,CACE99B,U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","file":"static/js/main.f0e70269.chunk.js","sourcesContent":["import { createBrowserHistory } from \"history\";\n\nexport default createBrowserHistory();\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nexport interface snackBarMessage {\n message: string;\n type: \"message\" | \"error\";\n}\n\nexport interface SystemState {\n loggedIn: boolean;\n operatorMode: boolean;\n sidebarOpen: boolean;\n session: string;\n userName: string;\n serverNeedsRestart: boolean;\n serverIsLoading: boolean;\n loadingProgress: number;\n snackBar: snackBarMessage;\n modalSnackBar: snackBarMessage;\n serverDiagnosticStatus: string;\n}\n\nexport const USER_LOGGED = \"USER_LOGGED\";\nexport const OPERATOR_MODE = \"OPERATOR_MODE\";\nexport const MENU_OPEN = \"MENU_OPEN\";\nexport const SERVER_NEEDS_RESTART = \"SERVER_NEEDS_RESTART\";\nexport const SERVER_IS_LOADING = \"SERVER_IS_LOADING\";\nexport const SET_LOADING_PROGRESS = \"SET_LOADING_PROGRESS\";\nexport const SET_SNACK_BAR_MESSAGE = \"SET_SNACK_BAR_MESSAGE\";\nexport const SET_SERVER_DIAG_STAT = \"SET_SERVER_DIAG_STAT\";\nexport const SET_ERROR_SNACK_MESSAGE = \"SET_ERROR_SNACK_MESSAGE\";\nexport const SET_SNACK_MODAL_MESSAGE = \"SET_SNACK_MODAL_MESSAGE\";\nexport const SET_MODAL_ERROR_MESSAGE = \"SET_MODAL_ERROR_MESSAGE\";\n\ninterface UserLoggedAction {\n type: typeof USER_LOGGED;\n logged: boolean;\n}\n\ninterface OperatorModeAction {\n type: typeof OPERATOR_MODE;\n operatorMode: boolean;\n}\n\ninterface SetMenuOpenAction {\n type: typeof MENU_OPEN;\n open: boolean;\n}\n\ninterface ServerNeedsRestartAction {\n type: typeof SERVER_NEEDS_RESTART;\n needsRestart: boolean;\n}\n\ninterface ServerIsLoading {\n type: typeof SERVER_IS_LOADING;\n isLoading: boolean;\n}\ninterface SetLoadingProgress {\n type: typeof SET_LOADING_PROGRESS;\n loadingProgress: number;\n}\n\ninterface SetServerDiagStat {\n type: typeof SET_SERVER_DIAG_STAT;\n serverDiagnosticStatus: string;\n}\n\ninterface SetSnackBarMessage {\n type: typeof SET_SNACK_BAR_MESSAGE;\n message: string;\n}\n\ninterface SetErrorSnackMessage {\n type: typeof SET_ERROR_SNACK_MESSAGE;\n message: string;\n}\n\ninterface SetModalSnackMessage {\n type: typeof SET_SNACK_MODAL_MESSAGE;\n message: string;\n}\n\ninterface SetModalErrorMessage {\n type: typeof SET_MODAL_ERROR_MESSAGE;\n message: string;\n}\n\nexport type SystemActionTypes =\n | UserLoggedAction\n | OperatorModeAction\n | SetMenuOpenAction\n | ServerNeedsRestartAction\n | ServerIsLoading\n | SetLoadingProgress\n | SetServerDiagStat\n | SetSnackBarMessage\n | SetErrorSnackMessage\n | SetModalSnackMessage\n | SetModalErrorMessage;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n MENU_OPEN,\n OPERATOR_MODE,\n SERVER_IS_LOADING,\n SERVER_NEEDS_RESTART,\n USER_LOGGED,\n SET_LOADING_PROGRESS,\n SET_SNACK_BAR_MESSAGE,\n SET_SERVER_DIAG_STAT,\n SET_ERROR_SNACK_MESSAGE,\n SET_SNACK_MODAL_MESSAGE,\n SET_MODAL_ERROR_MESSAGE,\n} from \"./types\";\n\nexport function userLoggedIn(loggedIn: boolean) {\n return {\n type: USER_LOGGED,\n logged: loggedIn,\n };\n}\n\nexport function consoleOperatorMode(operatorMode: boolean) {\n return {\n type: OPERATOR_MODE,\n operatorMode: operatorMode,\n };\n}\n\nexport function setMenuOpen(open: boolean) {\n return {\n type: MENU_OPEN,\n open: open,\n };\n}\n\nexport function serverNeedsRestart(needsRestart: boolean) {\n return {\n type: SERVER_NEEDS_RESTART,\n needsRestart: needsRestart,\n };\n}\n\nexport function serverIsLoading(isLoading: boolean) {\n return {\n type: SERVER_IS_LOADING,\n isLoading: isLoading,\n };\n}\n\nexport const setLoadingProgress = (progress: number) => {\n return {\n type: SET_LOADING_PROGRESS,\n loadingProgress: progress,\n };\n};\n\nexport const setServerDiagStat = (status: string) => {\n return {\n type: SET_SERVER_DIAG_STAT,\n serverDiagnosticStatus: status,\n };\n};\n\nexport const setSnackBarMessage = (message: string) => {\n return {\n type: SET_SNACK_BAR_MESSAGE,\n message,\n };\n};\n\nexport const setErrorSnackMessage = (message: string) => {\n return {\n type: SET_ERROR_SNACK_MESSAGE,\n message,\n };\n};\n\nexport const setModalSnackMessage = (message: string) => {\n return {\n type: SET_SNACK_MODAL_MESSAGE,\n message,\n };\n};\n\nexport const setModalErrorSnackMessage = (message: string) => {\n return {\n type: SET_MODAL_ERROR_MESSAGE,\n message,\n };\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport interface ILoginDetails {\n loginStrategy: loginStrategyType;\n redirect: string;\n}\n\nexport enum loginStrategyType {\n unknown = \"unknown\",\n form = \"form\",\n redirect = \"redirect\",\n serviceAccount = \"service-account\",\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport storage from \"local-storage-fallback\";\nimport { ICapacity, IErasureCodeCalc, IStorageFactors } from \"./types\";\nimport { IPool } from \"../screens/Console/Tenants/ListTenants/types\";\n\nconst minStReq = 1073741824; // Minimal Space required for MinIO\nconst minMemReq = 2147483648; // Minimal Memory required for MinIO in bytes\n\nexport const units = [\n \"B\",\n \"KiB\",\n \"MiB\",\n \"GiB\",\n \"TiB\",\n \"PiB\",\n \"EiB\",\n \"ZiB\",\n \"YiB\",\n];\nexport const k8sUnits = [\"Ki\", \"Mi\", \"Gi\", \"Ti\", \"Pi\", \"Ei\"];\nexport const k8sCalcUnits = [\"B\", ...k8sUnits];\n\nexport const niceBytes = (x: string, showK8sUnits: boolean = false) => {\n let l = 0,\n n = parseInt(x, 10) || 0;\n\n while (n >= 1024 && ++l) {\n n = n / 1024;\n }\n //include a decimal point and a tenths-place digit if presenting\n //less than ten of KB or greater units\n const k8sUnitsN = [\"B\", ...k8sUnits];\n return (\n n.toFixed(n < 10 && l > 0 ? 1 : 0) +\n \" \" +\n (showK8sUnits ? k8sUnitsN[l] : units[l])\n );\n};\n\nexport const setCookie = (name: string, val: string) => {\n const date = new Date();\n const value = val;\n\n // Set it expire in 45 minutes\n date.setTime(date.getTime() + 45 * 60 * 1000);\n\n // Set it\n document.cookie =\n name + \"=\" + value + \"; expires=\" + date.toUTCString() + \"; path=/\";\n};\n\nexport const deleteCookie = (name: string) => {\n document.cookie = name + \"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;\";\n};\n\nexport const clearSession = () => {\n storage.removeItem(\"token\");\n deleteCookie(\"token\");\n};\n\n// timeFromDate gets time string from date input\nexport const timeFromDate = (d: Date) => {\n let h = d.getHours() < 10 ? `0${d.getHours()}` : `${d.getHours()}`;\n let m = d.getMinutes() < 10 ? `0${d.getMinutes()}` : `${d.getMinutes()}`;\n let s = d.getSeconds() < 10 ? `0${d.getSeconds()}` : `${d.getSeconds()}`;\n\n return `${h}:${m}:${s}:${d.getMilliseconds()}`;\n};\n\n// units to be used in a dropdown\nexport const factorForDropdown = () => {\n return units.map((unit) => {\n return { label: unit, value: unit };\n });\n};\n\n// units to be used in a dropdown\nexport const k8sfactorForDropdown = () => {\n return k8sUnits.map((unit) => {\n return { label: unit, value: unit };\n });\n};\n\n//getBytes, converts from a value and a unit from units array to bytes\nexport const getBytes = (\n value: string,\n unit: string,\n fromk8s: boolean = false\n) => {\n const vl: number = parseFloat(value);\n\n const unitsTake = fromk8s ? k8sCalcUnits : units;\n\n const powFactor = unitsTake.findIndex((element) => element === unit);\n\n if (powFactor === -1) {\n return \"0\";\n }\n const factor = Math.pow(1024, powFactor);\n const total = vl * factor;\n\n return total.toString(10);\n};\n\n//getTotalSize gets the total size of a value & unit\nexport const getTotalSize = (value: string, unit: string) => {\n const bytes = getBytes(value, unit, true).toString();\n return niceBytes(bytes);\n};\n\nexport const setMemoryResource = (\n memorySize: number,\n capacitySize: string,\n maxMemorySize: number\n) => {\n // value always comes as Gi\n const requestedSizeBytes = getBytes(memorySize.toString(10), \"Gi\", true);\n const memReqSize = parseInt(requestedSizeBytes, 10);\n if (maxMemorySize === 0) {\n return {\n error: \"There is no memory available for the selected number of nodes\",\n request: 0,\n limit: 0,\n };\n }\n\n if (maxMemorySize < minMemReq) {\n return {\n error: \"There are not enough memory resources available\",\n request: 0,\n limit: 0,\n };\n }\n\n if (memReqSize < minMemReq) {\n return {\n error: \"The requested memory size must be greater than 2Gi\",\n request: 0,\n limit: 0,\n };\n }\n if (memReqSize > maxMemorySize) {\n return {\n error:\n \"The requested memory is greater than the max available memory for the selected number of nodes\",\n request: 0,\n limit: 0,\n };\n }\n\n const capSize = parseInt(capacitySize, 10);\n let memLimitSize = memReqSize;\n // set memory limit based on the capacitySize\n // if capacity size is lower than 1TiB we use the limit equal to request\n if (capSize >= parseInt(getBytes(\"1\", \"Pi\", true), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"64\", \"Gi\", true), 10)\n );\n } else if (capSize >= parseInt(getBytes(\"100\", \"Ti\"), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"32\", \"Gi\", true), 10)\n );\n } else if (capSize >= parseInt(getBytes(\"10\", \"Ti\"), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"16\", \"Gi\", true), 10)\n );\n } else if (capSize >= parseInt(getBytes(\"1\", \"Ti\"), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"8\", \"Gi\", true), 10)\n );\n }\n\n return {\n error: \"\",\n request: memReqSize,\n limit: memLimitSize,\n };\n};\n\nexport const calculateDistribution = (\n capacityToUse: ICapacity,\n forcedNodes: number = 0,\n limitSize: number = 0,\n drivesPerServer: number = 0\n) => {\n let numberOfNodes = {};\n const requestedSizeBytes = getBytes(\n capacityToUse.value,\n capacityToUse.unit,\n true\n );\n\n if (parseInt(requestedSizeBytes, 10) < minStReq) {\n return {\n error: \"The pool size must be greater than 1Gi\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n pvSize: 0,\n };\n }\n\n if (forcedNodes < 4) {\n return {\n error: \"Number of nodes cannot be less than 4\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n pvSize: 0,\n };\n }\n\n if (drivesPerServer <= 0) {\n return {\n error: \"Number of drives must be at least 1\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n pvSize: 0,\n };\n }\n\n numberOfNodes = calculateStorage(\n requestedSizeBytes,\n forcedNodes,\n limitSize,\n drivesPerServer\n );\n\n return numberOfNodes;\n};\n\nconst calculateStorage = (\n requestedBytes: string,\n forcedNodes: number,\n limitSize: number,\n drivesPerServer: number\n) => {\n // Size validation\n const intReqBytes = parseInt(requestedBytes, 10);\n const maxDiskSize = minStReq * 256; // 256 GiB\n\n // We get the distribution\n return structureCalc(\n forcedNodes,\n intReqBytes,\n maxDiskSize,\n limitSize,\n drivesPerServer\n );\n};\n\nconst structureCalc = (\n nodes: number,\n desiredCapacity: number,\n maxDiskSize: number,\n maxClusterSize: number,\n disksPerNode: number = 0\n) => {\n if (\n isNaN(nodes) ||\n isNaN(desiredCapacity) ||\n isNaN(maxDiskSize) ||\n isNaN(maxClusterSize)\n ) {\n return {\n error: \"Some provided data is invalid, please try again.\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n }; // Invalid Data\n }\n\n let persistentVolumeSize = 0;\n let numberPersistentVolumes = 0;\n let volumesPerServer = 0;\n\n if (disksPerNode === 0) {\n persistentVolumeSize = Math.floor(\n Math.min(desiredCapacity / Math.max(4, nodes), maxDiskSize)\n ); // pVS = min((desiredCapacity / max(4 | nodes)) | maxDiskSize)\n\n numberPersistentVolumes = desiredCapacity / persistentVolumeSize; // nPV = dC / pVS\n volumesPerServer = numberPersistentVolumes / nodes; // vPS = nPV / n\n }\n\n if (disksPerNode) {\n volumesPerServer = disksPerNode;\n numberPersistentVolumes = volumesPerServer * nodes;\n persistentVolumeSize = Math.floor(\n desiredCapacity / numberPersistentVolumes\n );\n }\n\n // Volumes are not exact, we force the volumes number & minimize the volume size\n if (volumesPerServer % 1 > 0) {\n volumesPerServer = Math.ceil(volumesPerServer); // Increment of volumes per server\n numberPersistentVolumes = volumesPerServer * nodes; // nPV = vPS * n\n persistentVolumeSize = Math.floor(\n desiredCapacity / numberPersistentVolumes\n ); // pVS = dC / nPV\n\n const limitSize = persistentVolumeSize * volumesPerServer * nodes; // lS = pVS * vPS * n\n\n if (limitSize > maxClusterSize) {\n return {\n error: \"We were not able to allocate this server.\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n }; // Cannot allocate this server\n }\n }\n\n if (persistentVolumeSize < minStReq) {\n return {\n error:\n \"Disk Size with this combination would be less than 1Gi, please try another combination\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n }; // Cannot allocate this volume size\n }\n\n return {\n error: \"\",\n nodes,\n persistentVolumes: numberPersistentVolumes,\n disks: volumesPerServer,\n pvSize: persistentVolumeSize,\n };\n};\n\n// Erasure Code Parity Calc\nexport const erasureCodeCalc = (\n parityValidValues: string[],\n totalDisks: number,\n pvSize: number,\n totalNodes: number\n): IErasureCodeCalc => {\n // Parity Values is empty\n if (parityValidValues.length < 1) {\n return {\n error: 1,\n defaultEC: \"\",\n erasureCodeSet: 0,\n maxEC: \"\",\n rawCapacity: \"0\",\n storageFactors: [],\n };\n }\n\n const totalStorage = totalDisks * pvSize;\n const maxEC = parityValidValues[0];\n const maxParityNumber = parseInt(maxEC.split(\":\")[1], 10);\n\n const erasureStripeSet = maxParityNumber * 2; // ESS is calculated by multiplying maximum parity by two.\n\n const storageFactors: IStorageFactors[] = parityValidValues.map(\n (currentParity) => {\n const parityNumber = parseInt(currentParity.split(\":\")[1], 10);\n const storageFactor =\n erasureStripeSet / (erasureStripeSet - parityNumber);\n\n const maxCapacity = Math.floor(totalStorage / storageFactor);\n const maxTolerations =\n totalDisks - Math.floor(totalDisks / storageFactor);\n return {\n erasureCode: currentParity,\n storageFactor,\n maxCapacity: maxCapacity.toString(10),\n maxFailureTolerations: maxTolerations,\n };\n }\n );\n\n let defaultEC = maxEC;\n\n const fourVar = parityValidValues.find((element) => element === \"EC:4\");\n\n if (totalDisks >= 8 && totalNodes > 16 && fourVar) {\n defaultEC = \"EC:4\";\n }\n\n return {\n error: 0,\n storageFactors,\n maxEC,\n rawCapacity: totalStorage.toString(10),\n erasureCodeSet: erasureStripeSet,\n defaultEC,\n };\n};\n\n// Pool Name Generator\nexport const generatePoolName = (pools: IPool[]) => {\n const poolCounter = pools.length;\n\n return `pool-${poolCounter}`;\n};\n\n// seconds / minutes /hours / Days / Years calculator\nexport const niceDays = (secondsValue: string, timeVariant: string = \"s\") => {\n let seconds = parseFloat(secondsValue);\n\n switch (timeVariant) {\n case \"ns\":\n seconds = Math.floor(seconds * 0.000000001);\n break;\n case \"ms\":\n seconds = Math.floor(seconds * 0.001);\n break;\n default:\n }\n\n const days = Math.floor(seconds / (3600 * 24));\n\n seconds -= days * 3600 * 24;\n const hours = Math.floor(seconds / 3600);\n seconds -= hours * 3600;\n const minutes = Math.floor(seconds / 60);\n seconds -= minutes * 60;\n\n if (days > 365) {\n const years = days / 365;\n return `${years} year${Math.floor(years) === 1 ? \"\" : \"s\"}`;\n }\n\n if (days > 30) {\n const months = Math.floor(days / 30);\n const diffDays = days - months * 30;\n\n return `${months} month${Math.floor(months) === 1 ? \"\" : \"s\"} ${\n diffDays > 0 ? `${diffDays} day${diffDays > 1 ? \"s\" : \"\"}` : \"\"\n }`;\n }\n\n if (days >= 7 && days <= 30) {\n const weeks = Math.floor(days / 7);\n\n return `${Math.floor(weeks)} week${weeks === 1 ? \"\" : \"s\"}`;\n }\n\n if (days >= 1 && days <= 6) {\n return `${days} day${days > 1 ? \"s\" : \"\"}`;\n }\n\n return `${hours >= 1 ? `${hours} hour${hours > 1 ? \"s\" : \"\"}` : \"\"} ${\n minutes >= 1 && hours === 0\n ? `${minutes} minute${minutes > 1 ? \"s\" : \"\"}`\n : \"\"\n } ${\n seconds >= 1 && minutes === 0 && hours === 0\n ? `${seconds} second${seconds > 1 ? \"s\" : \"\"}`\n : \"\"\n }`;\n};\n\nexport const getTimeFromTimestamp = (\n timestamp: string,\n fullDate: boolean = false\n) => {\n const dateObject = new Date(parseInt(timestamp) * 1000);\n\n if (fullDate) {\n return `${dateObject.getFullYear()}-${String(\n dateObject.getMonth() + 1\n ).padStart(2, \"0\")}-${String(dateObject.getDay()).padStart(\n 2,\n \"0\"\n )} ${dateObject.getHours()}:${String(dateObject.getMinutes()).padStart(\n 2,\n \"0\"\n )}:${String(dateObject.getSeconds()).padStart(2, \"0\")}`;\n }\n return `${dateObject.getHours()}:${String(dateObject.getMinutes()).padStart(\n 2,\n \"0\"\n )}`;\n};\n\nexport const calculateBytes = (\n x: string,\n showDecimals = false,\n roundFloor = true\n) => {\n const bytes = parseInt(x, 10);\n\n if (bytes === 0) {\n return { total: 0, unit: k8sCalcUnits[0] };\n }\n\n // Gi : GiB\n const k = 1024;\n\n // Get unit for measure\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n\n const fractionDigits = showDecimals ? 0 : 1;\n\n const bytesUnit = bytes / Math.pow(k, i);\n\n const roundedUnit = roundFloor ? Math.floor(bytesUnit) : bytesUnit;\n\n // Get Unit parsed\n const unitParsed = parseFloat(roundedUnit.toFixed(fractionDigits));\n const finalUnit = k8sCalcUnits[i];\n\n return { total: unitParsed, unit: finalUnit };\n};\n\nexport const nsToSeconds = (nanoseconds: number) => {\n const conversion = nanoseconds * 0.000000001;\n const round = Math.round((conversion + Number.EPSILON) * 10000) / 10000;\n\n return `${round} s`;\n};\n\nexport const textToRGBColor = (text: string) => {\n const splitText = text.split(\"\");\n\n const hashVl = splitText.reduce((acc, currItem) => {\n return acc + currItem.charCodeAt(0) + ((acc << 5) - acc);\n }, 0);\n\n const hashColored = ((hashVl * 100) & 0x00ffffff).toString(16).toUpperCase();\n\n return `#${hashColored.padStart(6, \"0\")}`;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport request from \"superagent\";\nimport get from \"lodash/get\";\nimport { clearSession } from \"../utils\";\n\nexport class API {\n invoke(method: string, url: string, data?: object) {\n return request(method, url)\n .send(data)\n .then((res) => res.body)\n .catch((err) => {\n // if we get unauthorized, kick out the user\n if (err.status === 401) {\n clearSession();\n // Refresh the whole page to ensure cache is clear\n // and we dont end on an infinite loop\n window.location.href = \"/login\";\n return;\n }\n return this.onError(err);\n });\n }\n\n onError(err: any) {\n if (err.status) {\n const errMessage = get(\n err.response,\n \"body.message\",\n err.status.toString()\n );\n\n const throwMessage =\n errMessage.charAt(0).toUpperCase() + errMessage.slice(1);\n\n return Promise.reject(throwMessage);\n } else {\n clearSession();\n window.location.href = \"/login\";\n }\n }\n}\n\nconst api = new API();\nexport default api;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport request from \"superagent\";\nimport { connect } from \"react-redux\";\nimport ErrorIcon from \"@material-ui/icons/Error\";\nimport Button from \"@material-ui/core/Button\";\nimport TextField from \"@material-ui/core/TextField\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Typography from \"@material-ui/core/Typography\";\nimport {\n CircularProgress,\n LinearProgress,\n Paper,\n TextFieldProps,\n} from \"@material-ui/core\";\nimport {\n createStyles,\n makeStyles,\n Theme,\n withStyles,\n} from \"@material-ui/core/styles\";\nimport { SystemState } from \"../../types\";\nimport { userLoggedIn } from \"../../actions\";\nimport api from \"../../common/api\";\nimport { ILoginDetails, loginStrategyType } from \"./types\";\nimport history from \"../../history\";\nimport { OutlinedInputProps } from \"@material-ui/core/OutlinedInput\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n \"@global\": {\n body: {\n backgroundColor: \"#FAFAFA\",\n },\n },\n paper: {\n borderRadius: 8,\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n width: 800,\n height: 424,\n margin: \"auto\",\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n marginLeft: -400,\n marginTop: -212,\n \"&.MuiPaper-root\": {\n borderRadius: 8,\n },\n },\n avatar: {\n margin: theme.spacing(1),\n backgroundColor: theme.palette.secondary.main,\n },\n form: {\n width: \"100%\", // Fix IE 11 issue.\n },\n submit: {\n margin: \"30px 0px 16px\",\n height: 40,\n boxShadow: \"none\",\n padding: \"16px 30px\",\n },\n errorBlock: {\n backgroundColor: \"#C72C48\",\n width: 800,\n height: 64,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n marginLeft: -400,\n marginTop: -290,\n color: \"#fff\",\n fontWeight: 700,\n fontSize: 14,\n borderRadius: 8,\n padding: 10,\n boxSizing: \"border-box\",\n },\n mainContainer: {\n position: \"relative\",\n height: 424,\n },\n theOcean: {\n borderTopLeftRadius: 8,\n borderBottomLeftRadius: 8,\n background:\n \"transparent linear-gradient(to bottom, #073052 0%,#05122b 100%); 0% 0% no-repeat padding-box;\",\n },\n oceanBg: {\n backgroundImage: \"url(/images/BG_Illustration.svg)\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"bottom left\",\n height: \"100%\",\n width: 324,\n },\n theLogin: {\n padding: \"40px 45px 20px 45px\",\n },\n loadingLoginStrategy: {\n textAlign: \"center\",\n },\n headerTitle: {\n marginBottom: 10,\n },\n submitContainer: {\n textAlign: \"right\",\n },\n disclaimer: {\n fontSize: 12,\n marginTop: 30,\n },\n jwtInput: {\n marginTop: 45,\n },\n linearPredef: {\n height: 10,\n },\n errorIconStyle: {\n marginRight: 3,\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n disabled: {\n \"&.MuiInput-underline::before\": {\n borderColor: \"#eaeaea\",\n borderBottomStyle: \"solid\",\n },\n },\n })\n);\n\nfunction LoginField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst mapState = (state: SystemState) => ({\n loggedIn: state.loggedIn,\n});\n\nconst connector = connect(mapState, { userLoggedIn });\n\n// The inferred type will look like:\n// {isOn: boolean, toggleOn: () => void}\n\ninterface ILoginProps {\n userLoggedIn: typeof userLoggedIn;\n classes: any;\n}\n\ninterface LoginStrategyRoutes {\n [key: string]: string;\n}\n\ninterface LoginStrategyPayload {\n [key: string]: any;\n}\n\nconst Login = ({ classes, userLoggedIn }: ILoginProps) => {\n const [accessKey, setAccessKey] = useState(\"\");\n const [jwt, setJwt] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [error, setError] = useState(\"\");\n const [loginStrategy, setLoginStrategy] = useState({\n loginStrategy: loginStrategyType.unknown,\n redirect: \"\",\n });\n const [loginSending, setLoginSending] = useState(false);\n\n const loginStrategyEndpoints: LoginStrategyRoutes = {\n form: \"/api/v1/login\",\n \"service-account\": \"/api/v1/login/operator\",\n };\n const loginStrategyPayload: LoginStrategyPayload = {\n form: { accessKey, secretKey },\n \"service-account\": { jwt },\n };\n\n const fetchConfiguration = () => {\n api\n .invoke(\"GET\", \"/api/v1/login\")\n .then((loginDetails: ILoginDetails) => {\n setLoginStrategy(loginDetails);\n setError(\"\");\n if (\n loginDetails.loginStrategy === \"redirect\" &&\n loginDetails.redirect !== \"\"\n ) {\n //location.href = loginDetails.redirect;\n }\n })\n .catch((err: any) => {\n setError(err);\n });\n };\n\n const formSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n setLoginSending(true);\n request\n .post(\n loginStrategyEndpoints[loginStrategy.loginStrategy] || \"/api/v1/login\"\n )\n .send(loginStrategyPayload[loginStrategy.loginStrategy])\n .then((res: any) => {\n const bodyResponse = res.body;\n if (bodyResponse.error) {\n setLoginSending(false);\n // throw will be moved to catch block once bad login returns 403\n throw bodyResponse.error;\n }\n })\n .then(() => {\n // We set the state in redux\n userLoggedIn(true);\n if (loginStrategy.loginStrategy === loginStrategyType.form) {\n localStorage.setItem(\"userLoggedIn\", btoa(accessKey));\n }\n\n history.push(\"/\");\n })\n .catch((err) => {\n setLoginSending(false);\n setError(err.message);\n });\n };\n\n useEffect(() => {\n fetchConfiguration();\n }, []);\n\n let loginComponent = null;\n\n switch (loginStrategy.loginStrategy) {\n case loginStrategyType.form: {\n loginComponent = (\n \n \n Console Login\n \n
\n \n \n ) =>\n setAccessKey(e.target.value)\n }\n label=\"Enter Access Key\"\n name=\"accessKey\"\n autoComplete=\"username\"\n disabled={loginSending}\n />\n \n \n ) =>\n setSecretKey(e.target.value)\n }\n name=\"secretKey\"\n label=\"Enter Secret Key\"\n type=\"password\"\n id=\"secretKey\"\n autoComplete=\"current-password\"\n disabled={loginSending}\n />\n \n \n \n \n Login\n \n \n \n {loginSending && }\n \n \n Don't have an access key?\n
\n
\n Contact your administrator to have one made\n
\n
\n
\n );\n break;\n }\n case loginStrategyType.redirect: {\n loginComponent = (\n \n \n Welcome\n \n \n Login with SSO\n \n \n );\n break;\n }\n case loginStrategyType.serviceAccount: {\n loginComponent = (\n \n \n Operator Login\n \n
\n \n \n ) =>\n setJwt(e.target.value)\n }\n label=\"JWT\"\n name=\"jwt\"\n autoComplete=\"off\"\n disabled={loginSending}\n />\n \n \n \n \n Login\n \n \n \n {loginSending && }\n \n \n Don't have an access key?\n
\n Contact your administrator to have one made\n
\n
\n
\n );\n break;\n }\n default:\n loginComponent = (\n \n );\n }\n\n return (\n \n {error !== \"\" && (\n
\n {\" \"}\n {error}\n
\n )}\n \n \n \n
\n \n \n {loginComponent}\n \n \n \n \n );\n};\n\nexport default connector(withStyles(styles)(Login));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// This object contains variables that will be used across form components.\n\nexport const fieldBasic = {\n inputLabel: {\n fontWeight: 600,\n marginRight: 10,\n fontSize: 15,\n color: \"#000\",\n textAlign: \"left\" as const,\n overflow: \"hidden\",\n \"& span\": {\n display: \"flex\",\n alignItems: \"center\",\n },\n display: \"flex\",\n },\n fieldLabelError: {\n paddingBottom: 22,\n },\n fieldContainer: {\n marginBottom: 20,\n position: \"relative\" as const,\n maxWidth: 840,\n },\n tooltipContainer: {\n marginLeft: 5,\n display: \"flex\",\n alignItems: \"center\",\n },\n switchContainer: {\n display: \"flex\",\n maxWidth: 840,\n },\n};\n\nexport const modalBasic = {\n formScrollable: {\n maxHeight: \"calc(100vh - 300px)\" as const,\n overflowY: \"auto\" as const,\n marginBottom: 25,\n },\n formSlider: {\n marginLeft: 0,\n },\n clearButton: {\n fontFamily: \"Lato, sans-serif\",\n border: \"0\",\n backgroundColor: \"transparent\",\n color: \"#393939\",\n fontWeight: 600,\n fontSize: 14,\n marginRight: 10,\n outline: \"0\",\n padding: \"16px 25px 16px 25px\",\n cursor: \"pointer\",\n },\n floatingEnabled: {\n position: \"absolute\" as const,\n right: 58,\n zIndex: 1000,\n marginTop: -38,\n },\n configureString: {\n border: \"#EAEAEA 1px solid\",\n borderRadius: 4,\n padding: \"24px 50px\",\n overflowY: \"auto\" as const,\n height: 170,\n maxWidth: 840,\n },\n};\n\nexport const tooltipHelper = {\n tooltip: {\n fontSize: 16,\n },\n};\n\nconst checkBoxBasic = {\n width: 14,\n height: 14,\n borderRadius: 2,\n};\n\nexport const checkboxIcons = {\n unCheckedIcon: { ...checkBoxBasic, border: \"1px solid #c3c3c3\" },\n checkedIcon: {\n ...checkBoxBasic,\n border: \"1px solid #081C42\",\n backgroundColor: \"#081C42\",\n },\n};\n\nconst radioBasic = {\n width: 12,\n height: 12,\n borderRadius: \"100%\",\n \"input:disabled ~ &\": {\n border: \"1px solid #9C9C9C\",\n },\n};\n\nexport const radioIcons = {\n radioUnselectedIcon: { ...radioBasic, border: \"1px solid #000\" },\n radioSelectedIcon: {\n ...radioBasic,\n border: \"1px solid #000\",\n backgroundColor: \"#000\",\n },\n};\n\nexport const containerForHeader = (bottomSpacing: any) => ({\n container: {\n padding: \"110px 33px 0\",\n \"& h6\": {\n color: \"#777777\",\n fontSize: 14,\n },\n \"& p\": {\n \"& span:not(*[class*='smallUnit'])\": {\n fontSize: 16,\n },\n },\n },\n});\n\nexport const actionsTray = {\n label: {\n color: \"#393939\",\n fontWeight: 600,\n fontSize: 13,\n alignSelf: \"center\" as const,\n whiteSpace: \"nowrap\" as const,\n \"&:not(:first-of-type)\": {\n marginLeft: 10,\n },\n },\n timeContainers: {\n height: 40,\n },\n actionsTray: {\n display: \"flex\" as const,\n justifyContent: \"space-between\" as const,\n \"& button\": {\n flexGrow: 0,\n marginLeft: 15,\n },\n },\n};\n\nexport const searchField = {\n searchField: {\n flexGrow: 1,\n height: 40,\n background: \"#FFFFFF\",\n borderRadius: 5,\n border: \"#EAEDEE 1px solid\",\n display: \"flex\",\n justifyContent: \"center\",\n padding: \"0 16px\",\n \"& input\": {\n fontSize: 12,\n fontWeight: 700,\n color: \"#000\",\n \"&::placeholder\": {\n color: \"#393939\",\n opacity: 1,\n },\n },\n \"&:hover\": {\n borderColor: \"#000\",\n },\n },\n};\n\nexport const predefinedList = {\n prefinedContainer: {\n maxWidth: 840,\n width: \"100%\",\n },\n predefinedTitle: {\n fontSize: 16,\n fontWeight: 600,\n color: \"#000\",\n margin: \"10px 0\",\n },\n predefinedList: {\n backgroundColor: \"#eaeaea\",\n padding: \"12px 10px\",\n color: \"#393939\",\n fontSize: 12,\n fontWeight: 600,\n minHeight: 41,\n },\n innerContent: {\n width: \"100%\",\n overflowX: \"auto\" as const,\n whiteSpace: \"nowrap\" as const,\n scrollbarWidth: \"none\" as const,\n \"&::-webkit-scrollbar\": {\n display: \"none\",\n },\n },\n innerContentMultiline: {\n width: \"100%\",\n maxHeight: 100,\n overflowY: \"auto\" as const,\n scrollbarWidth: \"none\" as const,\n \"&::-webkit-scrollbar\": {\n display: \"none\",\n },\n },\n};\n\nexport const objectBrowserCommon = {\n obTitleSection: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"flex-start\",\n marginBottom: 20,\n },\n sectionTitle: {\n fontSize: 22,\n color: \"#000\",\n fontWeight: 600,\n height: 40,\n lineHeight: \"40px\",\n },\n breadcrumbs: {\n fontSize: 10,\n color: \"#000\",\n marginTop: 2,\n \"& a\": {\n textDecoration: \"none\",\n color: \"#000\",\n \"&:hover\": {\n textDecoration: \"underline\",\n },\n },\n },\n};\n\nexport const selectorsCommon = {\n multiSelectTable: {\n height: 200,\n },\n};\n\nexport const settingsCommon = {\n customTitle: {\n fontSize: 18,\n color: \"#000\",\n fontWeight: 600,\n padding: \"12px 0\",\n borderBottom: \"#eaedee 1px solid\",\n marginBottom: 10,\n margin: \"15px 38px 27px\",\n },\n settingsFormContainer: {\n height: \"calc(100vh - 421px)\",\n padding: \"15px 38px\",\n overflowY: \"auto\" as const,\n scrollbarWidth: \"none\" as const,\n \"&::-webkit-scrollbar\": {\n display: \"none\",\n },\n },\n settingsButtonContainer: {\n borderTop: \"1px solid #EAEAEA\",\n padding: \"15px 38px\",\n textAlign: \"right\" as const,\n },\n innerSettingsButtonContainer: {\n maxWidth: 840,\n textAlign: \"right\" as const,\n },\n settingsOptionsContainer: {\n height: \"calc(100vh - 244px)\",\n backgroundColor: \"#fff\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n marginTop: 15,\n },\n backButton: {\n cursor: \"pointer\",\n fontSize: 10,\n fontWeight: 600,\n color: \"#000\",\n backgroundColor: \"transparent\",\n border: 0,\n padding: 0,\n display: \"flex\",\n alignItems: \"center\",\n \"&:active, &:focus\": {\n outline: 0,\n },\n \"& svg\": {\n width: 10,\n marginRight: 4,\n },\n },\n backContainer: {\n margin: \"20px 38px 0\",\n },\n};\n\nexport const typesSelection = {\n iconContainer: {\n display: \"flex\" as const,\n flexDirection: \"row\" as const,\n maxWidth: 455,\n justifyContent: \"space-between\" as const,\n flexWrap: \"wrap\" as const,\n width: \"100%\",\n },\n nonIconContainer: {\n marginBottom: 16,\n width: 455,\n marginTop: 15,\n \"& button\": {\n marginRight: 16,\n },\n },\n pickTitle: {\n fontWeight: 600,\n color: \"#393939\",\n fontSize: 14,\n marginBottom: 16,\n },\n centerElements: {\n display: \"flex\" as const,\n flexDirection: \"column\" as const,\n alignItems: \"center\" as const,\n justifyContent: \"center\" as const,\n },\n logoButton: {\n height: \"80px\",\n },\n lambdaNotif: {\n backgroundColor: \"#fff\",\n border: \"#393939 1px solid\",\n borderRadius: 5,\n width: 101,\n height: 91,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: 16,\n cursor: \"pointer\",\n \"& img\": {\n maxWidth: 71,\n maxHeight: 71,\n },\n },\n};\n\nexport const logsCommon = {\n logsSubContainer: {\n height: \"calc(100vh - 230px)\",\n padding: \"15px 0\",\n },\n};\n\nexport const widgetCommon = {\n singleValueContainer: {\n position: \"relative\" as const,\n flexGrow: 1,\n width: \"100%\",\n height: \"100%\",\n border: \"#EAEAEA 1px solid\",\n borderRadius: 5,\n backgroundColor: \"#fff\",\n },\n titleContainer: {\n color: \"#393939\",\n fontWeight: 600,\n height: 15,\n textAlign: \"center\" as const,\n fontSize: 10,\n },\n contentContainer: {\n flexGrow: 2,\n justifyContent: \"center\" as const,\n alignItems: \"center\" as const,\n display: \"flex\" as const,\n position: \"absolute\" as const,\n width: \"100%\",\n height: \"calc(100% - 15px)\",\n },\n contentContainerWithLabel: {\n height: \"calc(100% - 25px)\",\n },\n legendBlock: {\n position: \"absolute\" as const,\n bottom: 5,\n display: \"flex\" as const,\n width: \"100%\",\n height: 15,\n flexWrap: \"wrap\" as const,\n overflowY: \"auto\" as const,\n },\n singleLegendContainer: {\n display: \"flex\",\n alignItems: \"center\",\n padding: \"0 10px\",\n maxWidth: \"100%\",\n },\n colorContainer: {\n width: 8,\n height: 8,\n minWidth: 8,\n borderRadius: \"100%\",\n marginRight: 5,\n },\n legendLabel: {\n fontSize: \"80%\",\n color: \"#393939\",\n whiteSpace: \"nowrap\" as const,\n overflow: \"hidden\" as const,\n textOverflow: \"ellipsis\" as const,\n },\n};\n\nexport const tooltipCommon = {\n customTooltip: {\n backgroundColor: \"rgba(255, 255, 255, 0.90)\",\n border: \"#eaeaea 1px solid\",\n borderRadius: 3,\n padding: \"5px 10px\",\n maxHeight: 300,\n overflowY: \"auto\" as const,\n },\n labelContainer: {\n display: \"flex\" as const,\n alignItems: \"center\" as const,\n },\n labelColor: {\n width: 6,\n height: 6,\n display: \"block\" as const,\n borderRadius: \"100%\",\n marginRight: 5,\n },\n itemValue: {\n fontSize: \"75%\",\n color: \"#393939\",\n },\n valueContainer: {\n fontWeight: 600,\n },\n timeStampTitle: {\n fontSize: \"80%\",\n color: \"#9c9c9c\",\n textAlign: \"center\" as const,\n marginBottom: 6,\n },\n};\n\nexport const snackBarCommon = {\n snackBar: {\n backgroundColor: \"#081F44\",\n fontWeight: 400,\n fontFamily: \"Lato, sans-serif\",\n fontSize: 14,\n padding: \"0px 20px 0px 20px;\",\n boxShadow: \"none\" as const,\n \"&.MuiPaper-root.MuiSnackbarContent-root\": {\n borderRadius: \"0px 0px 5px 5px\",\n },\n \"& div\": {\n textAlign: \"center\" as const,\n padding: \"6px 30px\",\n width: \"100%\",\n overflowX: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n },\n errorSnackBar: {\n backgroundColor: \"#C72C48\",\n color: \"#fff\",\n },\n snackBarExternal: {\n top: \"-17px\",\n position: \"absolute\" as const,\n minWidth: \"348px\",\n whiteSpace: \"nowrap\" as const,\n height: \"33px\",\n },\n snackDiv: {\n top: \"17px\",\n left: \"50%\",\n position: \"absolute\" as const,\n },\n snackBarModal: {\n top: 0,\n position: \"absolute\" as const,\n minWidth: \"348px\",\n whiteSpace: \"nowrap\" as const,\n height: \"33px\",\n maxWidth: \"calc(100% - 140px)\",\n },\n};\n\nexport const wizardCommon = {\n multiContainer: {\n display: \"flex\" as const,\n alignItems: \"center\" as const,\n justifyContent: \"flex-start\" as const,\n },\n sizeFactorContainer: {\n marginLeft: 8,\n alignSelf: \"flex-start\" as const,\n },\n headerElement: {\n position: \"sticky\" as const,\n top: 0,\n paddingTop: 5,\n marginBottom: 10,\n zIndex: 500,\n backgroundColor: \"#fff\",\n },\n tableTitle: {\n fontWeight: 700,\n width: \"30%\",\n },\n poolError: {\n color: \"#dc1f2e\",\n fontSize: \"0.75rem\",\n paddingLeft: 120,\n },\n error: {\n color: \"#dc1f2e\",\n fontSize: \"0.75rem\",\n },\n h3Section: {\n marginTop: 0,\n },\n descriptionText: {\n fontSize: 13,\n color: \"#777777\",\n },\n container: {\n padding: \"77px 0 0 0\",\n \"& h6\": {\n color: \"#777777\",\n fontSize: 14,\n },\n \"& p\": {\n \"& span:not(*[class*='smallUnit'])\": {\n fontSize: 16,\n },\n },\n },\n};\n\nexport const buttonsStyles = {\n anchorButton: {\n textDecoration: \"underline\" as const,\n textTransform: \"unset\" as const,\n fontWeight: \"normal\" as const,\n padding: 0,\n lineHeight: \"unset\" as const,\n height: \"unset\" as const,\n width: \"unset\" as const,\n textAlign: \"left\" as const,\n border: 0,\n minWidth: \"unset\" as const,\n },\n};\n\nexport const hrClass = {\n hrClass: {\n borderTop: 0,\n borderLeft: 0,\n borderRight: 0,\n borderColor: \"#999999\",\n backgroundColor: \"transparent\" as const,\n },\n};\n","import React from \"react\";\nimport Typography from \"@material-ui/core/Typography\";\nimport Link from \"@material-ui/core/Link\";\n\nexport default function Copyright() {\n return (\n \n {\"Copyright © \"}\n \n MinIO\n {\" \"}\n {new Date().getFullYear()}\n {\".\"}\n \n );\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nimport Box from \"@material-ui/core/Box\";\nimport Typography from \"@material-ui/core/Typography\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport Container from \"@material-ui/core/Container\";\nimport Copyright from \"../common/Copyright\";\n\nconst useStyles = makeStyles((theme) => ({\n \"@global\": {\n body: {\n backgroundColor: theme.palette.common.white,\n },\n },\n paper: {\n marginTop: theme.spacing(8),\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n },\n}));\nconst NotFound: React.FC = () => {\n const classes = useStyles();\n return (\n \n \n
\n \n 404 Not Found\n \n
\n \n \n \n
\n );\n};\n\nexport default NotFound;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst CopyIcon = () => {\n return (\n \n \n ic_h_copy-new_sl\n \n \n \n \n \n \n \n );\n};\n\nexport default CopyIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\nconst CreateIcon = () => {\n return (\n \n \n \n \n \n \n \n \n );\n};\n\nexport default CreateIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst DeleteIcon = () => {\n return (\n \n \n \n \n \n );\n};\n\nexport default DeleteIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst DashboardIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default DashboardIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst BucketsIcon = () => {\n return (\n \n \n \n \n \n );\n};\n\nexport default BucketsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst UsersIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default UsersIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst ServiceAccountsIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ServiceAccountsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst GroupsIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default GroupsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst BucketsIcon = () => {\n return (\n \n \n \n \n \n );\n};\n\nexport default BucketsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst TraceIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default TraceIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst ConfigurationsListIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ConfigurationsListIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\nconst ClustersIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ClustersIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst WatchIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default WatchIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const ADD_BUCKET_OPEN = \"ADD_BUCKET_OPEN\";\nexport const ADD_BUCKET_NAME = \"ADD_BUCKET_NAME\";\nexport const ADD_BUCKET_VERSIONED = \"ADD_BUCKET_VERSIONED\";\nexport const ADD_BUCKET_LOCKING = \"ADD_BUCKET_LOCKING\";\nexport const ADD_BUCKET_QUOTA = \"ADD_BUCKET_QUOTA\";\nexport const ADD_BUCKET_QUOTA_TYPE = \"ADD_BUCKET_QUOTA_TYPE\";\nexport const ADD_BUCKET_QUOTA_SIZE = \"ADD_BUCKET_QUOTA_SIZE\";\nexport const ADD_BUCKET_QUOTA_UNIT = \"ADD_BUCKET_QUOTA_UNIT\";\nexport const ADD_BUCKET_RESET = \"ADD_BUCKET_RESET\";\nexport const ADD_BUCKET_RETENTION = \"ADD_BUCKET_RETENTION\";\nexport const ADD_BUCKET_RETENTION_MODE = \"ADD_BUCKET_RETENTION_MODE\";\nexport const ADD_BUCKET_RETENTION_UNIT = \"ADD_BUCKET_RETENTION_UNIT\";\nexport const ADD_BUCKET_RETENTION_VALIDITY = \"ADD_BUCKET_RETENTION_VALIDITY\";\nexport const BUCKET_DETAILS_SET_TAB = \"BUCKET_DETAILS/SET_TAB\";\n\ninterface AddBucketOpenAction {\n type: typeof ADD_BUCKET_OPEN;\n open: boolean;\n}\n\ninterface AddBucketNameAction {\n type: typeof ADD_BUCKET_NAME;\n name: string;\n}\n\ninterface AddBucketVersionedAction {\n type: typeof ADD_BUCKET_VERSIONED;\n versioned: boolean;\n}\n\ninterface AddBucketLockingAction {\n type: typeof ADD_BUCKET_LOCKING;\n locking: boolean;\n}\n\ninterface AddBucketQuotaAction {\n type: typeof ADD_BUCKET_QUOTA;\n quota: boolean;\n}\n\ninterface AddBucketQuotaTypeAction {\n type: typeof ADD_BUCKET_QUOTA_TYPE;\n quotaType: string;\n}\n\ninterface AddBucketQuotaSizeAction {\n type: typeof ADD_BUCKET_QUOTA_SIZE;\n quotaSize: string;\n}\n\ninterface AddBucketQuotaUnitAction {\n type: typeof ADD_BUCKET_QUOTA_UNIT;\n quotaUnit: string;\n}\ninterface AddBucketResetAction {\n type: typeof ADD_BUCKET_RESET;\n}\n\ninterface AddBucketRetentionAction {\n type: typeof ADD_BUCKET_RETENTION;\n retention: boolean;\n}\n\ninterface AddBucketRetentionModeAction {\n type: typeof ADD_BUCKET_RETENTION_MODE;\n retentionMode: string;\n}\n\ninterface AddBucketRetentionUnitAction {\n type: typeof ADD_BUCKET_RETENTION_UNIT;\n retentionUnit: string;\n}\ninterface AddBucketRetentionValidityAction {\n type: typeof ADD_BUCKET_RETENTION_VALIDITY;\n retentionValidity: number;\n}\n\ninterface SetBucketDetailsTab {\n type: typeof BUCKET_DETAILS_SET_TAB;\n tab: string;\n}\n\nexport type BucketActionTypes =\n | AddBucketOpenAction\n | AddBucketNameAction\n | AddBucketVersionedAction\n | AddBucketLockingAction\n | AddBucketQuotaAction\n | AddBucketQuotaTypeAction\n | AddBucketQuotaSizeAction\n | AddBucketQuotaUnitAction\n | AddBucketResetAction\n | AddBucketRetentionAction\n | AddBucketRetentionModeAction\n | AddBucketRetentionUnitAction\n | AddBucketRetentionValidityAction\n | SetBucketDetailsTab;\n\nexport function addBucketOpen(open: boolean) {\n return {\n type: ADD_BUCKET_OPEN,\n open: open,\n };\n}\nexport function addBucketName(name: string) {\n return {\n type: ADD_BUCKET_NAME,\n name: name,\n };\n}\n\nexport function addBucketVersioning(versioned: boolean) {\n return {\n type: ADD_BUCKET_VERSIONED,\n versioned: versioned,\n };\n}\n\nexport function addBucketEnableObjectLocking(locking: boolean) {\n return {\n type: ADD_BUCKET_LOCKING,\n locking: locking,\n };\n}\n\nexport function addBucketQuota(quota: boolean) {\n return {\n type: ADD_BUCKET_QUOTA,\n quota: quota,\n };\n}\n\nexport function addBucketQuotaType(quotaType: string) {\n return {\n type: ADD_BUCKET_QUOTA_TYPE,\n quotaType: quotaType,\n };\n}\n\nexport function addBucketQuotaSize(quotaSize: string) {\n return {\n type: ADD_BUCKET_QUOTA_SIZE,\n quotaSize: quotaSize,\n };\n}\n\nexport function addBucketQuotaUnit(quotaUnit: string) {\n return {\n type: ADD_BUCKET_QUOTA_UNIT,\n quotaUnit: quotaUnit,\n };\n}\n\nexport function addBucketReset() {\n return {\n type: ADD_BUCKET_RESET,\n };\n}\n\nexport function addBucketRetention(retention: boolean) {\n return {\n type: ADD_BUCKET_RETENTION,\n retention: retention,\n };\n}\n\nexport function addBucketRetentionMode(mode: string) {\n return {\n type: ADD_BUCKET_RETENTION_MODE,\n retentionMode: mode,\n };\n}\n\nexport function addBucketRetentionUnit(unit: string) {\n return {\n type: ADD_BUCKET_RETENTION_UNIT,\n retentionUnit: unit,\n };\n}\n\nexport function addBucketRetentionValidity(validity: number) {\n return {\n type: ADD_BUCKET_RETENTION_VALIDITY,\n retentionValidity: validity,\n };\n}\n\nexport function setBucketDetailsTab(tab: string) {\n return {\n type: BUCKET_DETAILS_SET_TAB,\n tab,\n };\n}\n","export interface IIcon {\n active: boolean;\n}\n\nexport const unSelected = \"#081C42\";\nexport const selected = \"#081C42\";\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst ViewIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default ViewIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst PencilIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default PencilIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst ShareIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n \n );\n};\n\nexport default ShareIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DeleteIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default DeleteIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DescriptionIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default DescriptionIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst CloudIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default CloudIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst ConsoleIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default ConsoleIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DeleteIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n \n );\n};\n\nexport default DeleteIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DescriptionIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default DescriptionIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst FormatDriveIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default FormatDriveIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport isString from \"lodash/isString\";\nimport { Link } from \"react-router-dom\";\nimport { createStyles, withStyles } from \"@material-ui/core/styles\";\nimport { IconButton } from \"@material-ui/core\";\nimport ViewIcon from \"./TableActionIcons/ViewIcon\";\nimport PencilIcon from \"./TableActionIcons/PencilIcon\";\nimport ShareIcon from \"./TableActionIcons/ShareIcon\";\nimport DeleteIcon from \"./TableActionIcons/DeleteIcon\";\nimport DescriptionIcon from \"./TableActionIcons/DescriptionIcon\";\nimport CloudIcon from \"./TableActionIcons/CloudIcon\";\nimport ConsoleIcon from \"./TableActionIcons/ConsoleIcon\";\nimport DownloadIcon from \"./TableActionIcons/DownloadIcon\";\nimport DisableIcon from \"./TableActionIcons/DisableIcon\";\nimport FormatDriveIcon from \"./TableActionIcons/FormatDriveIcon\";\n\nconst styles = () =>\n createStyles({\n spacing: {\n margin: \"0 8px\",\n },\n buttonDisabled: {\n \"&.MuiButtonBase-root.Mui-disabled\": {\n cursor: \"not-allowed\",\n filter: \"grayscale(100%)\",\n opacity: \"30%\",\n },\n },\n });\n\ninterface IActionButton {\n type: string;\n onClick?: (id: string) => any;\n to?: string;\n valueToSend: any;\n selected: boolean;\n sendOnlyId?: boolean;\n idField: string;\n disabled: boolean;\n classes: any;\n}\n\nconst defineIcon = (type: string, selected: boolean) => {\n switch (type) {\n case \"view\":\n return ;\n case \"edit\":\n return ;\n case \"delete\":\n return ;\n case \"description\":\n return ;\n case \"share\":\n return ;\n case \"cloud\":\n return ;\n case \"console\":\n return ;\n case \"download\":\n return ;\n case \"disable\":\n return ;\n case \"format\":\n return ;\n }\n\n return null;\n};\n\nconst TableActionButton = ({\n type,\n onClick,\n valueToSend,\n idField,\n selected,\n to,\n sendOnlyId = false,\n disabled = false,\n classes,\n}: IActionButton) => {\n const valueClick = sendOnlyId ? valueToSend[idField] : valueToSend;\n\n const buttonElement = (\n {\n e.stopPropagation();\n if (!disabled) {\n onClick(valueClick);\n } else {\n e.preventDefault();\n }\n }\n : () => null\n }\n className={`${classes.spacing} ${disabled ? classes.buttonDisabled : \"\"}`}\n disabled={disabled}\n >\n {defineIcon(type, selected)}\n \n );\n\n if (onClick) {\n return buttonElement;\n }\n\n if (isString(to)) {\n if (!disabled) {\n return (\n {\n e.stopPropagation();\n }}\n >\n {buttonElement}\n \n );\n }\n\n return buttonElement;\n }\n\n return null;\n};\n\nexport default withStyles(styles)(TableActionButton);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\nconst HelpIcon = (props: any) => {\n return (\n \n \n \n \n );\n};\n\nexport default HelpIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport { Checkbox, Grid, InputLabel, Tooltip } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n checkboxIcons,\n fieldBasic,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface CheckBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n index?: number;\n checked: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n ...checkboxIcons,\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n margin: \"15px 0\",\n marginBottom: 0,\n flexBasis: \"initial\",\n },\n });\n\nconst CheckboxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n tooltip = \"\",\n classes,\n}: CheckBoxProps) => {\n return (\n \n \n
\n }\n icon={}\n disabled={disabled}\n />\n
\n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(CheckboxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useState } from \"react\";\nimport get from \"lodash/get\";\nimport isString from \"lodash/isString\";\nimport {\n Checkbox,\n Grid,\n IconButton,\n LinearProgress,\n Paper,\n Popover,\n Typography,\n} from \"@material-ui/core\";\nimport { AutoSizer, Column, InfiniteLoader, Table } from \"react-virtualized\";\nimport { createStyles, withStyles } from \"@material-ui/core/styles\";\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\nimport ViewColumnIcon from \"@material-ui/icons/ViewColumn\";\nimport ArrowDropDownIcon from \"@material-ui/icons/ArrowDropDown\";\nimport ArrowDropUpIcon from \"@material-ui/icons/ArrowDropUp\";\nimport TableActionButton from \"./TableActionButton\";\nimport history from \"../../../../history\";\nimport {\n checkboxIcons,\n radioIcons,\n} from \"../FormComponents/common/styleLibrary\";\nimport CheckboxWrapper from \"../FormComponents/CheckboxWrapper/CheckboxWrapper\";\n\n//Interfaces for table Items\n\ninterface ItemActions {\n type: string;\n to?: string;\n sendOnlyId?: boolean;\n disableButtonFunction?: (itemValue: any) => boolean;\n showLoaderFunction?: (itemValue: any) => boolean;\n\n onClick?(valueToSend: any): any;\n}\n\ninterface IColumns {\n label: string;\n elementKey: string;\n renderFunction?: (input: any) => any;\n renderFullObject?: boolean;\n globalClass?: any;\n rowClass?: any;\n width?: number;\n headerTextAlign?: string;\n contentTextAlign?: string;\n enableSort?: boolean;\n}\n\ninterface IInfiniteScrollConfig {\n loadMoreRecords: (indexElements: {\n startIndex: number;\n stopIndex: number;\n }) => Promise;\n recordsCount: number;\n}\n\ninterface ISortConfig {\n triggerSort: (val: any) => any;\n currentSort: string;\n currentDirection: \"ASC\" | \"DESC\" | undefined;\n}\n\ninterface TableWrapperProps {\n itemActions?: ItemActions[] | null;\n columns: IColumns[];\n onSelect?: (e: React.ChangeEvent) => any;\n idField: string;\n isLoading: boolean;\n loadingMessage?: React.ReactNode;\n records: any[];\n classes: any;\n entityName: string;\n selectedItems?: string[];\n radioSelection?: boolean;\n customEmptyMessage?: string;\n customPaperHeight?: string;\n noBackground?: boolean;\n columnsSelector?: boolean;\n textSelectable?: boolean;\n columnsShown?: string[];\n onColumnChange?: (column: string, state: boolean) => any;\n autoScrollToBottom?: boolean;\n infiniteScrollConfig?: IInfiniteScrollConfig;\n sortConfig?: ISortConfig;\n}\n\nconst borderColor = \"#9c9c9c80\";\n\nconst rowText = {\n fontWeight: 400,\n fontSize: 14,\n borderColor: borderColor,\n borderWidth: \"0.5px\",\n height: 40,\n transitionDuration: \"0.3s\",\n padding: \"initial\",\n paddingRight: 6,\n paddingLeft: 6,\n};\n\nconst styles = () =>\n createStyles({\n dialogContainer: {\n padding: \"12px 26px 22px\",\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n padding: \"19px 38px\",\n boxShadow: \"none\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n minHeight: 200,\n overflowY: \"scroll\",\n position: \"relative\",\n \"&::-webkit-scrollbar\": {\n width: 3,\n height: 3,\n },\n },\n noBackground: {\n backgroundColor: \"transparent\",\n border: 0,\n },\n defaultPaperHeight: {\n height: \"calc(100vh - 205px)\",\n },\n allTableSettings: {\n \"& .MuiTableCell-sizeSmall:last-child\": {\n paddingRight: \"initial\",\n },\n \"& .MuiTableCell-body.MuiTableCell-sizeSmall:last-child\": {\n paddingRight: 6,\n },\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: 700,\n fontSize: 14,\n borderColor: \"#39393980\",\n borderWidth: \"0.5px\",\n padding: \"6px 0 10px\",\n },\n },\n },\n rowUnselected: {\n ...rowText,\n color: \"#393939\",\n },\n rowSelected: {\n ...rowText,\n color: \"#081C42\",\n fontWeight: 600,\n },\n paginatorContainer: {\n display: \"flex\",\n justifyContent: \"flex-end\",\n padding: \"5px 38px\",\n },\n checkBoxHeader: {\n width: 50,\n textAlign: \"left\",\n paddingRight: 10,\n \"&.MuiTableCell-paddingCheckbox\": {\n paddingBottom: 4,\n paddingLeft: 0,\n },\n },\n actionsContainer: {\n width: 150,\n borderColor: borderColor,\n },\n paginatorComponent: {\n borderBottom: 0,\n },\n checkBoxRow: {\n borderColor: borderColor,\n padding: \"0 10px 0 0\",\n },\n loadingBox: {\n paddingTop: \"100px\",\n paddingBottom: \"100px\",\n },\n overlayColumnSelection: {\n position: \"absolute\",\n right: 0,\n top: 0,\n },\n popoverContainer: {\n position: \"relative\",\n },\n popoverContent: {\n maxHeight: 250,\n overflowY: \"auto\",\n padding: \"0 10px 10px\",\n },\n shownColumnsLabel: {\n color: \"#9c9c9c\",\n fontSize: 12,\n padding: 10,\n borderBottom: \"#eaeaea 1px solid\",\n width: \"100%\",\n },\n \"@global\": {\n \".rowLine\": {\n borderBottom: `1px solid ${borderColor}`,\n height: 40,\n color: \"#393939\",\n fontSize: 14,\n transitionDuration: 0.3,\n \"&:focus\": {\n outline: \"initial\",\n },\n \"&:hover:not(.ReactVirtualized__Table__headerRow)\": {\n userSelect: \"none\",\n backgroundColor: \"#ececec\",\n fontWeight: 600,\n \"&.canClick\": {\n cursor: \"pointer\",\n },\n \"&.canSelectText\": {\n userSelect: \"text\",\n },\n },\n \"& .selected\": {\n color: \"#081C42\",\n fontWeight: 600,\n },\n },\n \".headerItem\": {\n userSelect: \"none\",\n fontWeight: 700,\n fontSize: 14,\n fontStyle: \"initial\",\n display: \"flex\",\n alignItems: \"center\",\n outline: \"none\",\n },\n \".ReactVirtualized__Table__headerRow\": {\n fontWeight: 700,\n fontSize: 14,\n borderColor: \"#39393980\",\n textTransform: \"initial\",\n },\n \".optionsAlignment\": {\n textAlign: \"center\",\n },\n \".text-center\": {\n textAlign: \"center\",\n },\n \".text-right\": {\n textAlign: \"right\",\n },\n \".progress-enabled\": {\n paddingTop: 3,\n display: \"inline-block\",\n margin: \"0 10px\",\n position: \"relative\",\n width: 18,\n height: 18,\n },\n \".progress-enabled > .MuiCircularProgress-root\": {\n position: \"absolute\",\n left: 0,\n top: 3,\n },\n },\n ...checkboxIcons,\n ...radioIcons,\n });\n\nconst selectWidth = 45;\n\n// Function to render elements in table\nconst subRenderFunction = (\n rowData: any,\n column: IColumns,\n isSelected: boolean\n) => {\n const itemElement = isString(rowData)\n ? rowData\n : get(rowData, column.elementKey, null); // If the element is just a string, we render it as it is\n const renderConst = column.renderFullObject ? rowData : itemElement;\n\n const renderElement = column.renderFunction\n ? column.renderFunction(renderConst)\n : renderConst; // If render function is set, we send the value to the function.\n\n return (\n \n {renderElement}\n \n );\n};\n\n// Function to calculate common column width for elements with no with size\nconst calculateColumnRest = (\n columns: IColumns[],\n containerWidth: number,\n actionsWidth: number,\n hasSelect: boolean,\n hasActions: boolean,\n columnsSelector: boolean,\n columnsShown: string[]\n) => {\n let colsItems = [...columns];\n\n if (columnsSelector) {\n colsItems = columns.filter((column) =>\n columnsShown.includes(column.elementKey)\n );\n }\n\n let initialValue = containerWidth;\n\n if (hasSelect) {\n initialValue -= selectWidth;\n }\n\n if (hasActions) {\n initialValue -= actionsWidth;\n }\n\n let freeSpacing = colsItems.reduce((total, currValue) => {\n return currValue.width ? total - currValue.width : total;\n }, initialValue);\n\n return freeSpacing / colsItems.filter((el) => !el.width).length;\n};\n\n// Function that renders Columns in table\nconst generateColumnsMap = (\n columns: IColumns[],\n containerWidth: number,\n actionsWidth: number,\n hasSelect: boolean,\n hasActions: boolean,\n selectedItems: string[],\n idField: string,\n columnsSelector: boolean,\n columnsShown: string[],\n sortColumn: string,\n sortDirection: \"ASC\" | \"DESC\" | undefined\n) => {\n const commonRestWidth = calculateColumnRest(\n columns,\n containerWidth,\n actionsWidth,\n hasSelect,\n hasActions,\n columnsSelector,\n columnsShown\n );\n return columns.map((column: IColumns, index: number) => {\n if (columnsSelector && !columnsShown.includes(column.elementKey)) {\n return null;\n }\n\n const disableSort = column.enableSort ? !column.enableSort : true;\n\n return (\n (\n \n {sortColumn === column.elementKey && (\n \n {sortDirection === \"ASC\" ? (\n \n ) : (\n \n )}\n \n )}\n {column.label}\n \n )}\n className={\n column.contentTextAlign ? `text-${column.contentTextAlign}` : \"\"\n }\n cellRenderer={({ rowData }) => {\n const isSelected = selectedItems\n ? selectedItems.includes(\n isString(rowData) ? rowData : rowData[idField]\n )\n : false;\n return subRenderFunction(rowData, column, isSelected);\n }}\n width={column.width || commonRestWidth}\n disableSort={disableSort}\n defaultSortDirection={\"ASC\"}\n />\n );\n });\n};\n\n// Function to render the action buttons\nconst elementActions = (\n actions: ItemActions[],\n valueToSend: any,\n selected: boolean,\n idField: string\n) => {\n return actions.map((action: ItemActions, index: number) => {\n if (action.type === \"view\") {\n return null;\n }\n\n const vlSend =\n typeof valueToSend === \"string\" ? valueToSend : valueToSend[idField];\n\n let disabled = false;\n\n if (action.disableButtonFunction) {\n if (action.disableButtonFunction(vlSend)) {\n disabled = true;\n }\n }\n\n if (action.showLoaderFunction) {\n if (action.showLoaderFunction(vlSend)) {\n return (\n
\n \n
\n );\n }\n }\n\n return (\n \n );\n });\n};\n\n// Function to calculate the options column width according elements inside\nconst calculateOptionsSize = (containerWidth: number, totalOptions: number) => {\n const minContainerSize = 80;\n const sizeOptions = totalOptions * 45;\n\n if (sizeOptions < minContainerSize) {\n return minContainerSize;\n }\n\n if (sizeOptions > containerWidth) {\n return containerWidth;\n }\n\n return sizeOptions;\n};\n\n// Main function to render the Table Wrapper\nconst TableWrapper = ({\n itemActions,\n columns,\n onSelect,\n records,\n isLoading,\n loadingMessage = Loading...,\n entityName,\n selectedItems,\n idField,\n classes,\n radioSelection = false,\n customEmptyMessage = \"\",\n customPaperHeight = \"\",\n noBackground = false,\n columnsSelector = false,\n textSelectable = false,\n columnsShown = [],\n onColumnChange = (column: string, state: boolean) => {},\n infiniteScrollConfig,\n sortConfig,\n autoScrollToBottom = false,\n}: TableWrapperProps) => {\n const [columnSelectorOpen, setColumnSelectorOpen] = useState(false);\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const findView = itemActions\n ? itemActions.find((el) => el.type === \"view\")\n : null;\n\n const clickAction = (rowItem: any) => {\n if (findView) {\n const valueClick = findView.sendOnlyId ? rowItem[idField] : rowItem;\n if (findView.to) {\n history.push(`${findView.to}/${valueClick}`);\n return;\n }\n\n if (findView.onClick) {\n findView.onClick(valueClick);\n }\n }\n };\n\n const openColumnsSelector = (event: { currentTarget: any }) => {\n setColumnSelectorOpen(!columnSelectorOpen);\n setAnchorEl(event.currentTarget);\n };\n\n const closeColumnSelector = () => {\n setColumnSelectorOpen(false);\n setAnchorEl(null);\n };\n\n const columnsSelection = (columns: IColumns[]) => {\n return (\n \n \n \n \n \n
Shown Columns
\n
\n {columns.map((column: IColumns) => {\n return (\n {\n onColumnChange(column.elementKey, e.target.checked);\n }}\n id={`chbox-${column.label}`}\n name={`chbox-${column.label}`}\n value={column.label}\n />\n );\n })}\n
\n \n
\n );\n };\n\n return (\n \n \n {isLoading && (\n \n \n {loadingMessage}\n \n \n \n \n \n )}\n {columnsSelector && !isLoading && records.length > 0 && (\n
\n {columnsSelection(columns)}\n
\n )}\n {records && !isLoading && records.length > 0 ? (\n !!records[index]}\n loadMoreRows={\n infiniteScrollConfig\n ? infiniteScrollConfig.loadMoreRecords\n : () => new Promise(() => true)\n }\n rowCount={\n infiniteScrollConfig\n ? infiniteScrollConfig.recordsCount\n : records.length\n }\n >\n {({ onRowsRendered, registerChild }) => (\n \n {({ width, height }: any) => {\n const optionsWidth = calculateOptionsSize(\n width,\n itemActions\n ? itemActions.filter((el) => el.type !== \"view\").length\n : 0\n );\n const hasSelect: boolean = !!(onSelect && selectedItems);\n const hasOptions: boolean = !!(\n (itemActions && itemActions.length > 1) ||\n (itemActions &&\n itemActions.length === 1 &&\n itemActions[0].type !== \"view\")\n );\n return (\n (\n \n {customEmptyMessage !== \"\"\n ? customEmptyMessage\n : `There are no ${entityName} yet.`}\n \n )}\n overscanRowCount={10}\n rowHeight={40}\n width={width}\n rowCount={records.length}\n rowGetter={({ index }) => records[index]}\n onRowClick={({ rowData }) => {\n clickAction(rowData);\n }}\n rowClassName={`rowLine ${findView ? \"canClick\" : \"\"} ${\n !findView && textSelectable ? \"canSelectText\" : \"\"\n }`}\n onRowsRendered={onRowsRendered}\n sort={sortConfig ? sortConfig.triggerSort : undefined}\n sortBy={sortConfig ? sortConfig.currentSort : undefined}\n sortDirection={\n sortConfig ? sortConfig.currentDirection : undefined\n }\n scrollToIndex={\n autoScrollToBottom ? records.length - 1 : -1\n }\n >\n {hasSelect && (\n Select}\n dataKey={idField}\n width={selectWidth}\n cellRenderer={({ rowData }) => {\n const isSelected = selectedItems\n ? selectedItems.includes(\n isString(rowData) ? rowData : rowData[idField]\n )\n : false;\n\n return (\n {\n e.stopPropagation();\n }}\n checkedIcon={\n \n }\n icon={\n \n }\n />\n );\n }}\n />\n )}\n {generateColumnsMap(\n columns,\n width,\n optionsWidth,\n hasSelect,\n hasOptions,\n selectedItems || [],\n idField,\n columnsSelector,\n columnsShown,\n sortConfig ? sortConfig.currentSort : \"\",\n sortConfig ? sortConfig.currentDirection : undefined\n )}\n {hasOptions && (\n Options}\n dataKey={idField}\n width={optionsWidth}\n headerClassName=\"optionsAlignment\"\n className=\"optionsAlignment\"\n cellRenderer={({ rowData }) => {\n const isSelected = selectedItems\n ? selectedItems.includes(\n isString(rowData) ? rowData : rowData[idField]\n )\n : false;\n return elementActions(\n itemActions || [],\n rowData,\n isSelected,\n idField\n );\n }}\n />\n )}\n \n );\n }}\n \n )}\n \n ) : (\n \n {!isLoading && (\n
\n {customEmptyMessage !== \"\"\n ? customEmptyMessage\n : `There are no ${entityName} yet.`}\n
\n )}\n
\n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(TableWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport Snackbar from \"@material-ui/core/Snackbar\";\nimport { Dialog, DialogContent, DialogTitle } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { snackBarCommon } from \"../FormComponents/common/styleLibrary\";\nimport { AppState } from \"../../../../store\";\nimport { snackBarMessage } from \"../../../../types\";\nimport { setModalSnackMessage } from \"../../../../actions\";\n\ninterface IModalProps {\n classes: any;\n onClose: () => void;\n modalOpen: boolean;\n title: string;\n children: any;\n wideLimit?: boolean;\n modalSnackMessage?: snackBarMessage;\n noContentPadding?: boolean;\n setModalSnackMessage: typeof setModalSnackMessage;\n}\n\nconst baseCloseLine = {\n content: '\" \"',\n borderLeft: \"2px solid #9C9C9C\",\n height: 33,\n width: 1,\n position: \"absolute\",\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n dialogContainer: {\n padding: \"8px 15px 22px\",\n },\n closeContainer: {\n textAlign: \"right\",\n },\n closeButton: {\n width: 45,\n height: 45,\n padding: 0,\n backgroundColor: \"initial\",\n \"&:hover\": {\n backgroundColor: \"initial\",\n },\n \"&:active\": {\n backgroundColor: \"initial\",\n },\n },\n modalCloseIcon: {\n fontSize: 35,\n color: \"#9C9C9C\",\n fontWeight: 300,\n \"&:hover\": {\n color: \"#9C9C9C\",\n },\n },\n closeIcon: {\n \"&::before\": {\n ...baseCloseLine,\n transform: \"rotate(45deg)\",\n },\n \"&::after\": {\n ...baseCloseLine,\n transform: \"rotate(-45deg)\",\n },\n \"&:hover::before, &:hover::after\": {\n borderColor: \"#9C9C9C\",\n },\n width: 24,\n height: 24,\n display: \"block\",\n position: \"relative\",\n },\n titleClass: {\n padding: \"0px 50px 12px\",\n \"& h2\": {\n fontWeight: 600,\n color: \"#000\",\n fontSize: 22,\n },\n },\n modalContent: {\n padding: \"0 50px\",\n },\n customDialogSize: {\n width: \"100%\",\n maxWidth: 765,\n },\n ...snackBarCommon,\n });\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n classes,\n wideLimit = true,\n modalSnackMessage,\n noContentPadding,\n setModalSnackMessage,\n}: IModalProps) => {\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n setOpenSnackbar(true);\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n setModalSnackMessage(\"\");\n };\n\n const customSize = wideLimit\n ? {\n classes: {\n paper: classes.customDialogSize,\n },\n }\n : { maxWidth: \"md\" as const, fullWidth: true };\n\n return (\n \n
\n {\n closeSnackBar();\n }}\n message={modalSnackMessage ? modalSnackMessage.message : \"\"}\n ContentProps={{\n className: `${classes.snackBar} ${\n modalSnackMessage && modalSnackMessage.type === \"error\"\n ? classes.errorSnackBar\n : \"\"\n }`,\n }}\n autoHideDuration={\n modalSnackMessage && modalSnackMessage.type === \"error\"\n ? 10000\n : 5000\n }\n />\n
\n \n \n \n
\n \n {title}\n \n \n {children}\n \n
\n \n );\n};\n\nconst mapState = (state: AppState) => ({\n modalSnackMessage: state.system.modalSnackBar,\n});\n\nconst connector = connect(mapState, {\n setModalSnackMessage,\n});\n\nexport default withStyles(styles)(connector(ModalWrapper));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@material-ui/core\";\nimport { OutlinedInputProps } from \"@material-ui/core/OutlinedInput\";\nimport {\n createStyles,\n makeStyles,\n Theme,\n withStyles,\n} from \"@material-ui/core/styles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n },\n textBoxWithIcon: {\n position: \"relative\",\n paddingRight: 25,\n },\n errorState: {\n color: \"#b53b4b\",\n fontSize: 14,\n position: \"absolute\",\n top: 7,\n right: 7,\n },\n overlayAction: {\n position: \"absolute\",\n right: 0,\n top: 15,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n root: {\n borderRadius: 0,\n \"&::before\": {\n borderColor: \"#9c9c9c\",\n },\n },\n disabled: {\n \"&.MuiInput-underline::before\": {\n borderColor: \"#eaeaea\",\n borderBottomStyle: \"solid\",\n },\n },\n input: {\n padding: \"15px 30px 10px 5px\",\n color: \"#393939\",\n fontSize: 13,\n fontWeight: 600,\n \"&:placeholder\": {\n color: \"#393939\",\n opacity: 1,\n },\n },\n error: {\n color: \"#b53b4b\",\n },\n })\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayIcon = null,\n overlayAction,\n classes,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index };\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n\n
\n \n
\n {overlayIcon && (\n
\n {\n overlayAction();\n }\n : () => null\n }\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {overlayIcon}\n \n
\n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport {\n FormControl,\n InputLabel,\n MenuItem,\n Select,\n InputBase,\n Tooltip,\n} from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (\n e: React.ChangeEvent<{ name?: string | undefined; value: unknown }>\n ) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n position: \"relative\",\n color: \"#393939\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"15px 20px 10px 10px\",\n borderBottom: \"1px solid #9c9c9c\",\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n })\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@material-ui/core/Grid\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport Radio, { RadioProps } from \"@material-ui/core/Radio\";\nimport { InputLabel, Tooltip } from \"@material-ui/core\";\nimport {\n createStyles,\n Theme,\n withStyles,\n makeStyles,\n} from \"@material-ui/core/styles\";\nimport { fieldBasic, radioIcons, tooltipHelper } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\nexport interface SelectorTypes {\n label: string;\n value: string;\n}\n\ninterface RadioGroupProps {\n selectorOptions: SelectorTypes[];\n currentSelection: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n disableOptions?: boolean;\n onChange: (e: React.ChangeEvent) => void;\n classes: any;\n displayInColumn?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n radioBoxContainer: {},\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n justifyContent: \"space-between\",\n borderBottom: \"#9c9c9c 1px solid\",\n paddingBottom: 10,\n marginTop: 11,\n },\n optionLabel: {\n \"&.Mui-disabled\": {\n \"& .MuiFormControlLabel-label\": {\n color: \"#9c9c9c\",\n },\n },\n \"&:last-child\": {\n marginRight: 0,\n },\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#000\",\n },\n },\n checkedOption: {\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#000\",\n fontWeight: 700,\n },\n },\n });\n\nconst radioStyles = makeStyles({\n root: {\n \"&:hover\": {\n backgroundColor: \"transparent\",\n },\n },\n ...radioIcons,\n});\n\nconst RadioButton = (props: RadioProps) => {\n const classes = radioStyles();\n\n return (\n }\n icon={}\n {...props}\n />\n );\n};\n\nexport const RadioGroupSelector = ({\n selectorOptions = [],\n currentSelection,\n label,\n id,\n name,\n onChange,\n tooltip = \"\",\n disableOptions = false,\n classes,\n displayInColumn = false,\n}: RadioGroupProps) => {\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n\n
\n \n {selectorOptions.map((selectorOption) => {\n return (\n }\n label={selectorOption.label}\n disabled={disableOptions}\n className={clsx(classes.optionLabel, {\n [classes.checkedOption]:\n selectorOption.value === currentSelection,\n })}\n />\n );\n })}\n \n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(RadioGroupSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@material-ui/core\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n indicatorLabels?: string[];\n checked: boolean;\n switchOnly?: boolean;\n containerClass?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n paddingTop: 15,\n boxShadow: \"none\",\n },\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n wrapCell: {\n maxWidth: \"200px\",\n whiteSpace: \"normal\",\n wordWrap: \"break-word\",\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n noFound: {\n textAlign: \"center\",\n padding: \"10px 0\",\n },\n tableContainer: {\n maxHeight: 200,\n },\n stickyHeader: {\n backgroundColor: \"#fff\",\n },\n actionsTitle: {\n fontWeight: 600,\n color: \"#081C42\",\n fontSize: 16,\n alignSelf: \"center\",\n },\n tableBlock: {\n marginTop: 15,\n },\n filterField: {\n width: 375,\n fontWeight: 600,\n \"& .input\": {\n \"&::placeholder\": {\n fontWeight: 600,\n color: \"#081C42\",\n },\n },\n },\n divContainer: {\n borderBottom: \"#9c9c9c 1px solid\",\n paddingBottom: 14,\n marginBottom: 20,\n maxWidth: 840,\n },\n wrapperContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n maxWidth: 840,\n },\n indicatorLabel: {\n fontSize: 12,\n fontWeight: 600,\n color: \"#081C42\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles({\n root: {\n alignItems: \"flex-start\",\n height: 18,\n padding: \"0 12px\",\n display: \"flex\",\n position: \"relative\",\n },\n switchBase: {\n color: \"#fff\",\n padding: 0,\n top: \"initial\",\n \"&$checked\": {\n color: \"#fff\",\n },\n \"&$checked + $track\": {\n backgroundColor: \"#081C42\",\n opacity: 1,\n height: 15,\n },\n \"&:hover\": {\n backgroundColor: \"#fff\",\n },\n },\n checked: {},\n track: {\n height: 15,\n backgroundColor: \"#9C9C9C\",\n border: \"#081C42 1px solid\",\n opacity: 1,\n padding: 0,\n marginTop: 1.5,\n \"&$checked\": {\n backgroundColor: \"#081C42\",\n },\n },\n thumb: {\n backgroundColor: \"#fff\",\n border: \"#081C42 1px solid\",\n boxShadow: \"none\",\n width: 18,\n height: 18,\n padding: 0,\n marginLeft: 10,\n },\n})(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n indicatorLabels = [],\n containerClass = \"\",\n classes,\n}: IFormSwitch) => {\n const switchComponent = (\n \n
\n \n {indicatorLabels.length === 2 && (\n \n {checked ? indicatorLabels[0] : indicatorLabels[1]}\n \n )}\n
\n
\n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { Button, LinearProgress, Typography } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../Common/FormComponents/common/styleLibrary\";\nimport api from \"../../../../common/api\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport RadioGroupSelector from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport { factorForDropdown, getBytes } from \"../../../../common/utils\";\nimport { AppState } from \"../../../../store\";\nimport { connect } from \"react-redux\";\nimport {\n addBucketEnableObjectLocking,\n addBucketName,\n addBucketQuota,\n addBucketQuotaSize,\n addBucketQuotaType,\n addBucketQuotaUnit,\n addBucketRetention,\n addBucketRetentionMode,\n addBucketRetentionUnit,\n addBucketRetentionValidity,\n addBucketVersioning,\n} from \"../actions\";\nimport { useDebounce } from \"use-debounce\";\nimport { MakeBucketRequest } from \"../types\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { setModalErrorSnackMessage } from \"../../../../actions\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n multiContainer: {\n display: \"flex\",\n alignItems: \"center\" as const,\n justifyContent: \"flex-start\" as const,\n },\n quotaSizeContainer: {\n flexGrow: 1,\n },\n sizeFactorContainer: {\n flexGrow: 0,\n maxWidth: 80,\n marginLeft: 8,\n alignSelf: \"flex-start\" as const,\n },\n ...modalBasic,\n });\n\ninterface IAddBucketProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (refresh: boolean) => void;\n addBucketName: typeof addBucketName;\n addBucketVersioned: typeof addBucketVersioning;\n enableObjectLocking: typeof addBucketEnableObjectLocking;\n addBucketQuota: typeof addBucketQuota;\n addBucketQuotaType: typeof addBucketQuotaType;\n addBucketQuotaSize: typeof addBucketQuotaSize;\n addBucketQuotaUnit: typeof addBucketQuotaUnit;\n addBucketRetention: typeof addBucketRetention;\n addBucketRetentionMode: typeof addBucketRetentionMode;\n addBucketRetentionUnit: typeof addBucketRetentionUnit;\n addBucketRetentionValidity: typeof addBucketRetentionValidity;\n setModalError: typeof setModalErrorSnackMessage;\n bucketName: string;\n versioningEnabled: boolean;\n lockingEnabled: boolean;\n quotaEnabled: boolean;\n quotaType: string;\n quotaSize: string;\n quotaUnit: string;\n retentionEnabled: boolean;\n retentionMode: string;\n retentionUnit: string;\n retentionValidity: number;\n}\n\nconst AddBucket = ({\n classes,\n open,\n closeModalAndRefresh,\n addBucketName,\n addBucketVersioned,\n enableObjectLocking,\n addBucketQuota,\n addBucketQuotaType,\n addBucketQuotaSize,\n addBucketQuotaUnit,\n addBucketRetention,\n addBucketRetentionMode,\n addBucketRetentionUnit,\n addBucketRetentionValidity,\n setModalError,\n bucketName,\n versioningEnabled,\n lockingEnabled,\n quotaEnabled,\n quotaType,\n quotaSize,\n quotaUnit,\n retentionEnabled,\n retentionMode,\n retentionUnit,\n retentionValidity,\n}: IAddBucketProps) => {\n const [addLoading, setAddLoading] = useState(false);\n const [sendEnabled, setSendEnabled] = useState(false);\n const [lockingFieldDisabled, setLockingFieldDisabled] =\n useState(false);\n\n const addRecord = (event: React.FormEvent) => {\n event.preventDefault();\n if (addLoading) {\n return;\n }\n setAddLoading(true);\n\n let request: MakeBucketRequest = {\n name: bucketName,\n versioning: versioningEnabled,\n locking: lockingEnabled,\n };\n\n if (quotaEnabled) {\n const amount = getBytes(quotaSize, quotaUnit, false);\n request.quota = {\n enabled: true,\n quota_type: quotaType,\n amount: parseInt(amount),\n };\n }\n\n if (retentionEnabled) {\n request.retention = {\n mode: retentionMode,\n unit: retentionUnit,\n validity: retentionValidity,\n };\n }\n\n api\n .invoke(\"POST\", \"/api/v1/buckets\", request)\n .then((res) => {\n setAddLoading(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n setAddLoading(false);\n setModalError(err);\n });\n\n resetForm();\n };\n\n const [value] = useDebounce(bucketName, 1000);\n\n useEffect(() => {\n addBucketName(value);\n }, [value, addBucketName]);\n\n const resetForm = () => {\n addBucketName(\"\");\n addBucketVersioned(false);\n enableObjectLocking(false);\n addBucketQuota(false);\n addBucketQuotaType(\"hard\");\n addBucketQuotaSize(\"1\");\n addBucketQuotaUnit(\"TiB\");\n addBucketRetention(false);\n addBucketRetentionMode(\"compliance\");\n addBucketRetentionUnit(\"days\");\n addBucketRetentionValidity(1);\n };\n\n useEffect(() => {\n let valid = false;\n\n if (bucketName.trim() !== \"\") {\n valid = true;\n }\n\n if (quotaEnabled && valid) {\n if (quotaSize.trim() === \"\" || parseInt(quotaSize) === 0) {\n valid = false;\n }\n }\n\n if (!versioningEnabled || !retentionEnabled) {\n addBucketRetention(false);\n addBucketRetentionMode(\"compliance\");\n addBucketRetentionUnit(\"days\");\n addBucketRetentionValidity(1);\n }\n\n if (retentionEnabled) {\n // if retention is enabled, then objec locking should be enabled as well\n enableObjectLocking(true);\n setLockingFieldDisabled(true);\n } else {\n setLockingFieldDisabled(false);\n }\n\n if (\n retentionEnabled &&\n (Number.isNaN(retentionValidity) || retentionValidity < 1)\n ) {\n valid = false;\n }\n\n setSendEnabled(valid);\n }, [\n bucketName,\n retentionEnabled,\n lockingEnabled,\n quotaType,\n quotaSize,\n quotaUnit,\n quotaEnabled,\n addBucketRetention,\n addBucketRetentionMode,\n addBucketRetentionUnit,\n addBucketRetentionValidity,\n retentionValidity,\n versioningEnabled,\n enableObjectLocking,\n ]);\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n ) => {\n addRecord(e);\n }}\n >\n \n \n \n ) => {\n addBucketName(event.target.value);\n }}\n label=\"Bucket Name\"\n value={bucketName}\n />\n \n \n \n Features\n \n
\n
\n \n ) => {\n addBucketVersioned(event.target.checked);\n }}\n description={\n \"Allows to keep multiple versions of the same object under the same key.\"\n }\n label={\"Versioning\"}\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n \n ) => {\n enableObjectLocking(event.target.checked);\n }}\n label={\"Object Locking\"}\n description={\n \"Required to support retention and legal hold. Can only be enabled at bucket creation.\"\n }\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n \n ) => {\n addBucketQuota(event.target.checked);\n }}\n label={\"Quota\"}\n description={\"Limit the amount of data in the bucket.\"}\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n {quotaEnabled && (\n \n \n ) => {\n addBucketQuotaType(e.target.value as string);\n }}\n selectorOptions={[\n { value: \"hard\", label: \"Hard\" },\n { value: \"fifo\", label: \"FIFO\" },\n ]}\n />\n \n \n
\n
\n ) => {\n addBucketQuotaSize(e.target.value);\n }}\n label=\"Quota\"\n value={quotaSize}\n required\n min=\"1\"\n />\n
\n
\n \n ) => {\n addBucketQuotaUnit(e.target.value as string);\n }}\n options={factorForDropdown()}\n />\n
\n
\n
\n
\n )}\n {versioningEnabled && (\n \n ) => {\n addBucketRetention(event.target.checked);\n }}\n label={\"Retention\"}\n description={\n \"Impose rules to prevent object deletion for a period of time.\"\n }\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n )}\n {retentionEnabled && (\n \n \n ) => {\n addBucketRetentionMode(e.target.value as string);\n }}\n selectorOptions={[\n { value: \"compliance\", label: \"Compliance\" },\n { value: \"governance\", label: \"Governance\" },\n ]}\n />\n \n \n ) => {\n addBucketRetentionUnit(e.target.value as string);\n }}\n selectorOptions={[\n { value: \"days\", label: \"Days\" },\n { value: \"years\", label: \"Years\" },\n ]}\n />\n \n \n ) => {\n addBucketRetentionValidity(e.target.valueAsNumber);\n }}\n label=\"Retention Validity\"\n value={String(retentionValidity)}\n required\n min=\"1\"\n />\n \n \n )}\n
\n \n \n Clear\n \n \n Save\n \n \n {addLoading && (\n \n \n \n )}\n
\n \n \n );\n};\n\nconst mapState = (state: AppState) => ({\n addBucketModalOpen: state.buckets.open,\n bucketName: state.buckets.addBucketName,\n versioningEnabled: state.buckets.addBucketVersioningEnabled,\n lockingEnabled: state.buckets.addBucketLockingEnabled,\n quotaEnabled: state.buckets.addBucketQuotaEnabled,\n quotaType: state.buckets.addBucketQuotaType,\n quotaSize: state.buckets.addBucketQuotaSize,\n quotaUnit: state.buckets.addBucketQuotaUnit,\n retentionEnabled: state.buckets.addBucketRetentionEnabled,\n retentionMode: state.buckets.addBucketRetentionMode,\n retentionUnit: state.buckets.addBucketRetentionUnit,\n retentionValidity: state.buckets.addBucketRetentionValidity,\n});\n\nconst connector = connect(mapState, {\n addBucketName: addBucketName,\n addBucketVersioned: addBucketVersioning,\n enableObjectLocking: addBucketEnableObjectLocking,\n addBucketQuota: addBucketQuota,\n addBucketQuotaType: addBucketQuotaType,\n addBucketQuotaSize: addBucketQuotaSize,\n addBucketQuotaUnit: addBucketQuotaUnit,\n addBucketRetention: addBucketRetention,\n addBucketRetentionMode: addBucketRetentionMode,\n addBucketRetentionUnit: addBucketRetentionUnit,\n addBucketRetentionValidity: addBucketRetentionValidity,\n setModalError: setModalErrorSnackMessage,\n});\n\nexport default connector(withStyles(styles)(AddBucket));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { BucketList } from \"../types\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport api from \"../../../../common/api\";\n\ninterface IDeleteBucketProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedBucket: string;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst DeleteBucket = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n setErrorSnackMessage,\n}: IDeleteBucketProps) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const removeRecord = () => {\n if (!deleteLoading) {\n setDeleteLoading(true);\n\n api\n .invoke(\"DELETE\", `/api/v1/buckets/${selectedBucket}`, {\n name: selectedBucket,\n })\n .then((res: BucketList) => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n setDeleteLoading(false);\n setErrorSnackMessage(err);\n });\n }\n };\n\n return (\n {\n closeDeleteModalAndRefresh(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n Delete Bucket\n \n {deleteLoading && }\n \n Are you sure you want to delete bucket {selectedBucket}?
\n A bucket can only be deleted if it's empty.\n
\n
\n \n {\n closeDeleteModalAndRefresh(false);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n {\n removeRecord();\n }}\n color=\"secondary\"\n autoFocus\n >\n Delete\n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(DeleteBucket);\n","import React from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Typography from \"@material-ui/core/Typography\";\n\ninterface IPageHeader {\n classes: any;\n label: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerContainer: {\n position: \"absolute\",\n width: \"100%\",\n height: 77,\n display: \"flex\",\n backgroundColor: \"#fff\",\n borderBottom: \"#E3E3E3 1px solid\",\n left: 0,\n },\n label: {\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n },\n labelStyle: {\n color: \"#000\",\n fontSize: 18,\n fontWeight: 700,\n marginLeft: 55,\n marginTop: 8,\n },\n });\n\nconst PageHeader = ({ classes, label }: IPageHeader) => {\n return (\n \n \n \n {label}\n \n \n \n );\n};\n\nexport default withStyles(styles)(PageHeader);\n","import React, { Fragment } from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { predefinedList } from \"../common/styleLibrary\";\n\ninterface IPredefinedList {\n classes: any;\n label?: string;\n content: any;\n multiLine?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...predefinedList,\n });\n\nconst PredefinedList = ({\n classes,\n label = \"\",\n content,\n multiLine = false,\n}: IPredefinedList) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n \n )}\n \n \n {content}\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(PredefinedList);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { IWizardButton, IWizardPage } from \"./types\";\nimport { Button, LinearProgress } from \"@material-ui/core\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizardStepContainer: {\n display: \"flex\",\n flexDirection: \"column\",\n },\n wizardComponent: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 435px)\",\n maxWidth: 840,\n width: \"100%\",\n },\n wizardModal: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 515px)\",\n },\n buttonsContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"flex-start\" as const,\n padding: \"10px 0\",\n borderTop: \"#EAEAEA 1px solid\",\n \"& button\": {\n marginLeft: 10,\n },\n \"&.forModal\": {\n paddingBottom: 0,\n },\n },\n buttonInnerContainer: {\n maxWidth: 840,\n width: \"100%\",\n textAlign: \"right\" as const,\n },\n });\n\nconst WizardPage = ({\n classes,\n page,\n pageChange,\n loadingStep,\n forModal,\n}: IWizardPage) => {\n const buttonAction = (btn: IWizardButton) => {\n switch (btn.type) {\n case \"next\":\n pageChange(\"++\");\n break;\n case \"back\":\n pageChange(\"--\");\n break;\n case \"to\":\n pageChange(btn.toPage || 0);\n break;\n case \"custom\":\n default:\n }\n\n if (btn.action) {\n btn.action(pageChange);\n }\n };\n\n return (\n
\n
\n {page.componentRender}\n
\n {loadingStep && (\n
\n \n
\n )}\n \n
\n {page.buttons.map((btn) => {\n return (\n {\n buttonAction(btn);\n }}\n disabled={!btn.enabled}\n key={`button-${page.label}-${btn.label}`}\n >\n {btn.label}\n \n );\n })}\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(WizardPage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, Fragment } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { IWizardMain } from \"./types\";\nimport WizardPage from \"./WizardPage\";\nimport { Grid } from \"@material-ui/core\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizardMain: {\n display: \"flex\",\n width: \"100%\",\n height: \"100%\",\n flexGrow: 1,\n },\n wizFromContainer: {\n height: \"calc(100vh - 365px)\",\n minHeight: 450,\n padding: \"0 30px\",\n },\n wizFromModal: {\n position: \"relative\",\n },\n wizardSteps: {\n minWidth: 180,\n marginRight: 10,\n borderRight: \"#eaeaea 1px solid\",\n display: \"flex\",\n flexGrow: 1,\n flexDirection: \"column\",\n height: \"100%\",\n \"& ul\": {\n padding: \"0 15px 0 40px\",\n marginTop: 0,\n\n \"& li\": {\n listStyle: \"lower-roman\",\n marginBottom: 12,\n },\n },\n },\n modalWizardSteps: {\n padding: 5,\n borderBottom: \"#eaeaea 1px solid\",\n \"& ul\": {\n padding: 0,\n marginTop: 0,\n display: \"flex\",\n justifyContent: \"space-evenly\",\n\n \"& li\": {\n listStyle: \"lower-roman\",\n \"&::marker\": {\n paddingLeft: 15,\n },\n },\n },\n },\n buttonList: {\n backgroundColor: \"transparent\",\n border: \"none\",\n cursor: \"pointer\",\n \"&:not(:disabled):hover\": {\n textDecoration: \"underline\",\n },\n \"&:selected, &:active, &:focus, &:focus:active\": {\n border: \"none\",\n outline: 0,\n boxShadow: \"none\",\n },\n },\n paddedContentGrid: {\n padding: \"0 10px\",\n },\n stepsLabel: {\n fontSize: 20,\n color: \"#393939\",\n fontWeight: 600,\n margin: \"15px 12px\",\n \"&.stepsModalTitle\": {\n textAlign: \"center\",\n width: \"100%\",\n marginTop: 0,\n marginBottom: 10,\n },\n },\n stepsMasterContainer: {\n position: \"sticky\",\n top: 0,\n backgroundColor: \"#FFFFFF\",\n width: \"100%\",\n maxHeight: 90,\n },\n });\n\nconst GenericWizard = ({\n classes,\n wizardSteps,\n loadingStep,\n forModal,\n}: IWizardMain) => {\n const [currentStep, setCurrentStep] = useState(0);\n\n const pageChange = (toElement: string | number) => {\n const lastPage = wizardSteps.length - 1;\n\n if (toElement === \"++\") {\n let nextPage = currentStep + 1;\n\n if (nextPage > lastPage) {\n nextPage = lastPage;\n }\n\n setCurrentStep(nextPage);\n }\n\n if (toElement === \"--\") {\n let prevPage = currentStep - 1;\n\n if (prevPage < 0) {\n prevPage = 0;\n }\n\n setCurrentStep(prevPage);\n }\n\n if (typeof toElement === \"number\") {\n let pg = toElement;\n if (toElement < 0) {\n pg = 0;\n }\n\n if (toElement > lastPage) {\n pg = lastPage;\n }\n\n setCurrentStep(pg);\n }\n };\n\n if (wizardSteps.length === 0) {\n return null;\n }\n\n const stepsList = () => {\n return (\n
    \n {wizardSteps.map((step, index) => {\n return (\n
  • \n pageChange(index)}\n disabled={index > currentStep}\n className={classes.buttonList}\n >\n {step.label}\n \n
  • \n );\n })}\n
\n );\n };\n\n return (\n \n {forModal ? (\n \n
\n
Steps
\n
{stepsList()}
\n
\n
\n ) : (\n \n \n
\n Steps\n {stepsList()}\n
\n
\n
\n )}\n\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(GenericWizard);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect, Fragment } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Tooltip } from \"@material-ui/core\";\nimport get from \"lodash/get\";\nimport Grid from \"@material-ui/core/Grid\";\nimport ErrorOutlineIcon from \"@material-ui/icons/ErrorOutline\";\nimport CheckCircleOutlineIcon from \"@material-ui/icons/CheckCircleOutline\";\nimport {\n modalBasic,\n wizardCommon,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../actions\";\nimport { BulkReplicationResponse, BulkReplicationItem } from \"../types\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport api from \"../../../../common/api\";\nimport GenericWizard from \"../../Common/GenericWizard/GenericWizard\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport { SelectorTypes } from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport { getBytes, k8sfactorForDropdown } from \"../../../../common/utils\";\n\ninterface IBulkReplicationModal {\n open: boolean;\n closeModalAndRefresh: (clearSelection: boolean) => any;\n classes: any;\n buckets: string[];\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n remoteBucketList: {\n display: \"grid\",\n gridTemplateColumns: \"auto auto 45px\",\n alignItems: \"center\",\n justifyContent: \"stretch\",\n },\n errorIcon: {\n color: \"#C72C48\",\n },\n successIcon: {\n color: \"#42C91A\",\n },\n hide: {\n opacity: 0,\n transitionDuration: \"0.3s\",\n },\n ...modalBasic,\n ...wizardCommon,\n });\n\nconst AddBulkReplicationModal = ({\n open,\n closeModalAndRefresh,\n classes,\n buckets,\n setModalErrorSnackMessage,\n}: IBulkReplicationModal) => {\n const [bucketsToAlter, setBucketsToAlter] = useState([]);\n const [addLoading, setAddLoading] = useState(false);\n const [externalLoading, setExternalLoading] = useState(false);\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [replicationMode, setReplicationMode] = useState(\"async\");\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n const [relationBuckets, setRelationBuckets] = useState([]);\n const [remoteBucketsOpts, setRemoteBucketOpts] = useState([]);\n const [responseItem, setResponseItem] = useState([]);\n\n const optionsForBucketsDrop: SelectorTypes[] = remoteBucketsOpts.map(\n (remoteBucketName: string) => {\n return {\n label: remoteBucketName,\n value: remoteBucketName,\n };\n }\n );\n\n useEffect(() => {\n if (relationBuckets.length === 0) {\n const bucketsAlter: string[] = [];\n const relationBucketsAlter: string[] = [];\n\n buckets.forEach((item: string) => {\n bucketsAlter.push(item);\n relationBucketsAlter.push(\"\");\n });\n\n setRelationBuckets(relationBucketsAlter);\n setBucketsToAlter(bucketsAlter);\n }\n }, [buckets, relationBuckets.length]);\n\n const addRecord = () => {\n setAddLoading(true);\n const replicate = bucketsToAlter.map((bucketName, index) => {\n return {\n originBucket: bucketName,\n destinationBucket: relationBuckets[index],\n };\n });\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n const hc = parseInt(healthCheck);\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n };\n\n api\n .invoke(\"POST\", \"/api/v1/buckets-replication\", remoteBucketsInfo)\n .then((response: BulkReplicationResponse) => {\n setAddLoading(false);\n\n const states = response.replicationState;\n setResponseItem(states);\n\n const filterErrors = states.filter(\n (itm) => itm.errorString && itm.errorString !== \"\"\n );\n\n if (filterErrors.length === 0) {\n closeModalAndRefresh(true);\n } else {\n setTimeout(() => {\n removeSuccessItems(states);\n }, 500);\n }\n })\n .catch((err) => {\n setAddLoading(false);\n setModalErrorSnackMessage(err);\n });\n };\n\n const retrieveRemoteBuckets = (\n wizardPageJump: (page: number | string) => void\n ) => {\n const remoteConnectInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: targetURL,\n useTLS,\n };\n setExternalLoading(true);\n\n api\n .invoke(\"POST\", \"api/v1/list-external-buckets\", remoteConnectInfo)\n .then((dataReturn) => {\n const buckets = get(dataReturn, \"buckets\", []);\n\n if (buckets && buckets.length > 0) {\n const arrayReplaceBuckets = buckets.map((element: any) => {\n return element.name;\n });\n\n setRemoteBucketOpts(arrayReplaceBuckets);\n }\n\n wizardPageJump(\"++\");\n setExternalLoading(false);\n })\n .catch((err) => {\n setExternalLoading(false);\n setModalErrorSnackMessage(err);\n });\n };\n\n const stateOfItem = (initialBucket: string) => {\n if (responseItem.length > 0) {\n const bucketResponse = responseItem.find(\n (item) => item.originBucket === initialBucket\n );\n\n if (bucketResponse) {\n const errString = get(bucketResponse, \"errorString\", \"\");\n\n if (errString) {\n return errString;\n }\n\n return \"\";\n }\n }\n return \"n/a\";\n };\n\n const LogoToShow = ({ errString }: { errString: string }) => {\n switch (errString) {\n case \"\":\n return (\n
\n \n
\n );\n case \"n/a\":\n return null;\n default:\n if (errString) {\n return (\n
\n \n \n \n
\n );\n }\n }\n return null;\n };\n\n const updateItem = (indexItem: number, value: string) => {\n const updatedList = [...relationBuckets];\n updatedList[indexItem] = value;\n setRelationBuckets(updatedList);\n };\n\n const itemDisplayBulk = (indexItem: number) => {\n if (remoteBucketsOpts.length > 0) {\n return (\n \n ) => {\n updateItem(indexItem, e.target.value as string);\n }}\n options={optionsForBucketsDrop}\n disabled={addLoading}\n />\n \n );\n }\n return (\n \n ) => {\n updateItem(indexItem, event.target.value);\n }}\n value={relationBuckets[indexItem]}\n disabled={addLoading}\n />\n \n );\n };\n\n const removeSuccessItems = (responseItem: BulkReplicationItem[]) => {\n let newBucketsToAlter = [...bucketsToAlter];\n let newRelationBuckets = [...relationBuckets];\n\n responseItem.forEach((successElement) => {\n const errorString = get(successElement, \"errorString\", \"\");\n\n if (!errorString || errorString === \"\") {\n const indexToRemove = newBucketsToAlter.indexOf(\n successElement.originBucket\n );\n\n newBucketsToAlter.splice(indexToRemove, 1);\n newRelationBuckets.splice(indexToRemove, 1);\n }\n });\n\n setBucketsToAlter(newBucketsToAlter);\n setRelationBuckets(newRelationBuckets);\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Set Multiple Bucket Replication\"\n >\n \n \n \n \n

Remote Endpoint Configuration

\n \n Please avoid the use of root credentials for this feature\n \n
\n
\n \n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n \n \n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n \n \n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io:9000\"\n label=\"Target URL\"\n value={targetURL}\n />\n \n \n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n \n \n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n \n \n ) => {\n setReplicationMode(e.target.value as string);\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n \n {replicationMode === \"async\" && (\n \n
\n
\n \n ) => {\n setBandwidthScalar(e.target.value as string);\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n />\n
\n
\n \n ) => {\n setBandwidthUnit(e.target.value as string);\n }}\n options={k8sfactorForDropdown()}\n />\n
\n
\n
\n )}\n \n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n \n \n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Next\",\n enabled: !externalLoading,\n action: retrieveRemoteBuckets,\n },\n ],\n },\n {\n label: \"Buckets Assignation\",\n componentRender: (\n \n

Remote Buckets Assignation

\n \n Please select / type the desired remote bucket were you want\n the local data to be replicated.\n \n
\n {bucketsToAlter.map((bucketName: string, index: number) => {\n const errorItem = stateOfItem(bucketName);\n return (\n \n
\n {bucketName}\n
\n
\n {itemDisplayBulk(index)}\n
\n
\n {responseItem.length > 0 && (\n \n )}\n
\n \n );\n })}\n
\n
\n ),\n buttons: [\n {\n type: \"back\",\n label: \"Back\",\n enabled: true,\n },\n {\n type: \"next\",\n label: \"Create\",\n enabled: !addLoading,\n action: addRecord,\n },\n ],\n },\n ]}\n forModal\n />\n \n );\n};\n\nconst connector = connect(null, {\n setModalErrorSnackMessage,\n});\n\nexport default withStyles(styles)(connector(AddBulkReplicationModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState, Fragment } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Button } from \"@material-ui/core\";\nimport Grid from \"@material-ui/core/Grid\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport FileCopyIcon from \"@material-ui/icons/FileCopy\";\nimport Moment from \"react-moment\";\nimport { Bucket, BucketList, HasPermissionResponse } from \"../types\";\nimport { CreateIcon } from \"../../../../icons\";\nimport { niceBytes } from \"../../../../common/utils\";\nimport { AppState } from \"../../../../store\";\nimport { addBucketOpen, addBucketReset } from \"../actions\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport api from \"../../../../common/api\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport AddBucket from \"./AddBucket\";\nimport DeleteBucket from \"./DeleteBucket\";\nimport PageHeader from \"../../Common/PageHeader/PageHeader\";\nimport BulkReplicationModal from \"./BulkReplicationModal\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IListBucketsProps {\n classes: any;\n addBucketOpen: typeof addBucketOpen;\n addBucketModalOpen: boolean;\n addBucketReset: typeof addBucketReset;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst ListBuckets = ({\n classes,\n addBucketOpen,\n addBucketModalOpen,\n addBucketReset,\n setErrorSnackMessage,\n}: IListBucketsProps) => {\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(true);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedBucket, setSelectedBucket] = useState(\"\");\n const [filterBuckets, setFilterBuckets] = useState(\"\");\n const [loadingPerms, setLoadingPerms] = useState(true);\n const [canCreateBucket, setCanCreateBucket] = useState(false);\n const [selectedBuckets, setSelectedBuckets] = useState([]);\n const [replicationModalOpen, setReplicationModalOpen] =\n useState(false);\n\n // check the permissions for creating bucket\n useEffect(() => {\n if (loadingPerms) {\n api\n .invoke(\"POST\", `/api/v1/has-permission`, {\n actions: [\n {\n id: \"createBucket\",\n action: \"s3:CreateBucket\",\n },\n ],\n })\n .then((res: HasPermissionResponse) => {\n setLoadingPerms(false);\n if (!res.permissions) {\n return;\n }\n const actions = res.permissions ? res.permissions : [];\n\n let canCreate = actions.find((s) => s.id === \"createBucket\");\n if (canCreate && canCreate.can) {\n setCanCreateBucket(true);\n } else {\n setCanCreateBucket(false);\n }\n\n setLoadingPerms(false);\n })\n .catch((err: any) => {\n setLoadingPerms(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loadingPerms, setErrorSnackMessage]);\n\n useEffect(() => {\n if (loading) {\n const fetchRecords = () => {\n setLoading(true);\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n setLoading(false);\n setRecords(res.buckets || []);\n })\n .catch((err: any) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n };\n fetchRecords();\n }\n }, [loading, setErrorSnackMessage]);\n\n const closeAddModalAndRefresh = (refresh: boolean) => {\n addBucketOpen(false);\n addBucketReset();\n\n if (refresh) {\n setLoading(true);\n setSelectedBuckets([]);\n }\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n if (refresh) {\n setLoading(true);\n setSelectedBuckets([]);\n }\n };\n\n const confirmDeleteBucket = (bucket: string) => {\n setDeleteOpen(true);\n setSelectedBucket(bucket);\n };\n\n const tableActions = [\n { type: \"view\", to: `/buckets`, sendOnlyId: true },\n { type: \"delete\", onClick: confirmDeleteBucket, sendOnlyId: true },\n ];\n\n const displayParsedDate = (date: string) => {\n return {date};\n };\n\n const filteredRecords = records.filter((b: Bucket) => {\n if (filterBuckets === \"\") {\n return true;\n } else {\n if (b.name.indexOf(filterBuckets) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n const selectListBuckets = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedBuckets]; // We clone the selectedBuckets array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedBucketsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedBuckets(elements);\n\n return elements;\n };\n\n const closeBulkReplicationModal = (unselectAll: boolean) => {\n setReplicationModalOpen(false);\n\n if (unselectAll) {\n setSelectedBuckets([]);\n }\n };\n\n return (\n \n {addBucketModalOpen && (\n \n )}\n {deleteOpen && (\n {\n closeDeleteModalAndRefresh(refresh);\n }}\n />\n )}\n {replicationModalOpen && (\n \n )}\n \n \n \n \n {\n setFilterBuckets(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n }\n onClick={() => {\n setReplicationModalOpen(true);\n }}\n disabled={selectedBuckets.length === 0}\n >\n Set Replication\n \n {canCreateBucket && (\n }\n onClick={() => {\n addBucketOpen(true);\n }}\n >\n Create Bucket\n \n )}\n \n \n
\n
\n \n \n \n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n addBucketModalOpen: state.buckets.open,\n});\n\nconst connector = connect(mapState, {\n addBucketOpen,\n addBucketReset,\n setErrorSnackMessage,\n});\n\nexport default connector(withStyles(styles)(ListBuckets));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\n\ninterface TabPanelProps {\n children?: React.ReactNode;\n index: any;\n value: any;\n}\n\nexport const TabPanel = (props: TabPanelProps) => {\n const { children, value, index, ...other } = props;\n\n return (\n
\n );\n};\n\nexport default withStyles(styles)(SubnetLicenseTenant);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n actionsTray,\n buttonsStyles,\n containerForHeader,\n hrClass,\n modalBasic,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport Grid from \"@material-ui/core/Grid\";\nimport {\n Button,\n IconButton,\n Menu,\n MenuItem,\n TextField,\n} from \"@material-ui/core\";\nimport Tabs from \"@material-ui/core/Tabs\";\nimport Tab from \"@material-ui/core/Tab\";\nimport { CreateIcon } from \"../../../../icons\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { niceBytes, niceDays } from \"../../../../common/utils\";\nimport AddPoolModal from \"./AddPoolModal\";\nimport AddBucket from \"../../Buckets/ListBuckets/AddBucket\";\nimport ReplicationSetup from \"./ReplicationSetup\";\nimport api from \"../../../../common/api\";\nimport { IPodListElement, IPool, ITenant } from \"../ListTenants/types\";\nimport PageHeader from \"../../Common/PageHeader/PageHeader\";\nimport UsageBarWrapper from \"../../Common/UsageBarWrapper/UsageBarWrapper\";\nimport UpdateTenantModal from \"./UpdateTenantModal\";\nimport { LicenseInfo } from \"../../License/types\";\nimport { Link } from \"react-router-dom\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport MoreVertIcon from \"@material-ui/icons/MoreVert\";\nimport TenantYAML from \"./TenantYAML\";\nimport SubnetLicenseTenant from \"./SubnetLicenseTenant\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\n\ninterface ITenantDetailsProps {\n classes: any;\n match: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\ninterface ITenantUsage {\n used: string;\n disk_used: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n multiContainer: {\n display: \"flex\",\n alignItems: \"center\" as const,\n justifyContent: \"flex-start\" as const,\n },\n sizeFactorContainer: {\n marginLeft: 8,\n },\n containerHeader: {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n paperContainer: {\n padding: \"15px 15px 15px 50px\",\n },\n infoGrid: {\n display: \"grid\",\n gridTemplateColumns: \"auto auto auto auto\",\n gridGap: 8,\n \"& div\": {\n display: \"flex\",\n alignItems: \"center\",\n },\n \"& div:nth-child(odd)\": {\n justifyContent: \"flex-end\",\n fontWeight: 700,\n },\n \"& div:nth-child(2n)\": {\n paddingRight: 35,\n },\n },\n masterActions: {\n width: \"25%\",\n minWidth: \"120px\",\n \"& div\": {\n margin: \"5px 0px\",\n },\n },\n updateButton: {\n backgroundColor: \"transparent\",\n border: 0,\n padding: \"0 6px\",\n cursor: \"pointer\",\n \"&:focus, &:active\": {\n outline: \"none\",\n },\n \"& svg\": {\n height: 12,\n },\n },\n poolLabel: {\n color: \"#666666\",\n },\n titleCol: {\n fontWeight: \"bold\",\n },\n breadcrumLink: {\n textDecoration: \"none\",\n color: \"black\",\n },\n ...modalBasic,\n ...actionsTray,\n ...buttonsStyles,\n ...searchField,\n ...hrClass,\n actionsTray: {\n ...actionsTray.actionsTray,\n padding: \"15px 0 0\",\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst TenantDetails = ({\n classes,\n match,\n setErrorSnackMessage,\n}: ITenantDetailsProps) => {\n const [selectedTab, setSelectedTab] = useState(0);\n const [capacity, setCapacity] = useState(0);\n const [poolCount, setPoolCount] = useState(0);\n const [pools, setPools] = useState([]);\n const [pods, setPods] = useState([]);\n const [instances, setInstances] = useState(0);\n const [volumes, setVolumes] = useState(0);\n const [addPoolOpen, setAddPool] = useState(false);\n const [addBucketOpen, setAddBucketOpen] = useState(false);\n const [addReplicationOpen, setAddReplicationOpen] = useState(false);\n const [tenant, setTenant] = useState(null);\n const [loadingUsage, setLoadingUsage] = useState(true);\n const [usageError, setUsageError] = useState(\"\");\n const [usage, setUsage] = useState(0);\n const [updateMinioVersion, setUpdateMinioVersion] = useState(false);\n const [yamlScreenOpen, setYamlScreenOpen] = useState(false);\n const [licenseInfo, setLicenseInfo] = useState();\n const [loadingLicenseInfo, setLoadingLicenseInfo] = useState(true);\n const [loadingActivateProduct, setLoadingActivateProduct] =\n useState(false);\n const [logEnabled, setLogEnabled] = useState(false);\n const [monitoringEnabled, setMonitoringEnabled] = useState(false);\n const [encryptionEnabled, setEncryptionEnabled] = useState(false);\n const [adEnabled, setAdEnabled] = useState(false);\n const [oicEnabled, setOicEnabled] = useState(false);\n\n const tenantName = match.params[\"tenantName\"];\n const tenantNamespace = match.params[\"tenantNamespace\"];\n\n const onClosePoolAndRefresh = (reload: boolean) => {\n setAddPool(false);\n\n if (reload) {\n loadInfo();\n loadUsage();\n }\n };\n\n const closeBucketsAndRefresh = () => {\n setAddBucketOpen(false);\n };\n\n const closeReplicationAndRefresh = (reload: boolean) => {\n setAddReplicationOpen(false);\n\n if (reload) {\n loadInfo();\n loadUsage();\n }\n };\n\n const activateProduct = (namespace: string, tenant: string) => {\n if (loadingActivateProduct) {\n return;\n }\n setLoadingActivateProduct(true);\n api\n .invoke(\n \"POST\",\n `/api/v1/subscription/namespaces/${namespace}/tenants/${tenant}/activate`,\n {}\n )\n .then(() => {\n setLoadingActivateProduct(false);\n loadInfo();\n })\n .catch((err) => {\n setLoadingActivateProduct(false);\n setErrorSnackMessage(err);\n });\n };\n\n const loadInfo = () => {\n api\n .invoke(\n \"GET\",\n `/api/v1/namespaces/${tenantNamespace}/tenants/${tenantName}`\n )\n .then((res: ITenant) => {\n const resPools = !res.pools ? [] : res.pools;\n\n let totalInstances = 0;\n let totalVolumes = 0;\n let poolNamedIndex = 0;\n for (let pool of resPools) {\n const cap =\n pool.volumes_per_server *\n pool.servers *\n pool.volume_configuration.size;\n pool.label = `pool-${poolNamedIndex}`;\n if (pool.name === undefined || pool.name === \"\") {\n pool.name = pool.label;\n }\n pool.capacity = niceBytes(cap + \"\");\n pool.volumes = pool.servers * pool.volumes_per_server;\n totalInstances += pool.servers;\n totalVolumes += pool.volumes;\n poolNamedIndex += 1;\n }\n setCapacity(res.total_size || 0);\n setPoolCount(resPools.length);\n setVolumes(totalVolumes);\n setInstances(totalInstances);\n\n setPools(resPools);\n\n setLogEnabled(res.logEnabled);\n setMonitoringEnabled(res.monitoringEnabled);\n setEncryptionEnabled(res.encryptionEnabled);\n setAdEnabled(res.idpAdEnabled);\n setOicEnabled(res.idpOicEnabled);\n\n setTenant(res);\n })\n .catch((err) => {\n setErrorSnackMessage(err);\n });\n };\n\n const loadUsage = () => {\n api\n .invoke(\n \"GET\",\n `/api/v1/namespaces/${tenantNamespace}/tenants/${tenantName}/usage`\n )\n .then((result: ITenantUsage) => {\n const usage = get(result, \"disk_used\", \"0\");\n setUsage(parseInt(usage));\n setUsageError(\"\");\n setLoadingUsage(false);\n })\n .catch((err) => {\n setUsageError(err);\n setUsage(0);\n setLoadingUsage(false);\n });\n };\n\n const loadPods = () => {\n api\n .invoke(\n \"GET\",\n `/api/v1/namespaces/${tenantNamespace}/tenants/${tenantName}/pods`\n )\n .then((result: IPodListElement[]) => {\n for (let i = 0; i < result.length; i++) {\n let currentTime = new Date().getSeconds();\n result[i].time = niceDays(\n (currentTime - parseInt(result[i].timeCreated)).toString()\n );\n }\n setPods(result);\n })\n .catch((err) => {\n setErrorSnackMessage(\"Error loading pods\");\n });\n };\n\n const fetchLicenseInfo = () => {\n setLoadingLicenseInfo(true);\n api\n .invoke(\"GET\", `/api/v1/subscription/info`)\n .then((res: LicenseInfo) => {\n setLicenseInfo(res);\n setLoadingLicenseInfo(false);\n })\n .catch((err: any) => {\n setLoadingLicenseInfo(false);\n });\n };\n\n useEffect(() => {\n loadInfo();\n loadUsage();\n fetchLicenseInfo();\n loadPods();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const handleTenantMenu = (event: any) => {\n setAnchorEl(event.currentTarget);\n };\n\n const editYaml = () => {\n setAnchorEl(null);\n setYamlScreenOpen(true);\n };\n\n const closeYAMLModalAndRefresh = () => {\n setYamlScreenOpen(false);\n loadInfo();\n };\n\n return (\n \n {addPoolOpen && tenant !== null && (\n \n )}\n {addBucketOpen && (\n \n )}\n {addReplicationOpen && (\n \n )}\n {updateMinioVersion && (\n {\n setUpdateMinioVersion(false);\n }}\n idTenant={tenantName}\n namespace={tenantNamespace}\n />\n )}\n {yamlScreenOpen && (\n \n )}\n \n \n Tenant\n \n {` > ${match.params[\"tenantName\"]}`}\n \n \n \n \n \n Edit YAML\n \n \n \n }\n />\n \n \n \n {\n setSelectedTab(newValue);\n }}\n aria-label=\"tenant-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n \n \n \n \n \n \n {selectedTab === 0 && (\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {tenant?.endpoints && (\n \n \n \n \n \n \n )}\n \n \n \n \n
\n

Details

\n
\n
Capacity:{niceBytes(capacity.toString(10))}MinIO:\n {\n setUpdateMinioVersion(true);\n }}\n >\n {tenant ? tenant.image : \"\"}\n \n
Clusters:{poolCount}Console:\n {\n setUpdateMinioVersion(true);\n }}\n >\n {tenant ? tenant.console_image : \"\"}\n \n
Instances:{instances}Volumes:{volumes}
Endpoint:\n \n {tenant?.endpoints.minio}\n \n Console:\n \n {tenant?.endpoints.console}\n \n
State:{tenant?.currentState}
\n
\n \n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {adEnabled ||\n (!adEnabled && !oicEnabled && (\n \n \n \n \n ))}\n {oicEnabled ||\n (!oicEnabled && !adEnabled && (\n \n \n \n \n ))}\n \n
\n

Features

\n
\n
Logs:\n \n {logEnabled ? \"Enabled\" : \"Disabled\"}\n \n Monitoring:\n \n {monitoringEnabled ? \"Enabled\" : \"Disabled\"}\n \n
Encryption:\n \n {encryptionEnabled ? \"Enabled\" : \"Disabled\"}\n \n
\n Active Directory:\n \n \n {adEnabled ? \"Enabled\" : \"Disabled\"}\n \n OpenID:\n \n {oicEnabled ? \"Enabled\" : \"Disabled\"}\n \n
\n
\n
\n
\n
\n )}\n {selectedTab === 1 && (\n \n \n {\n // setFilter(event.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n }\n onClick={() => {\n setAddPool(true);\n }}\n >\n Expand Tenant\n \n \n \n
\n
\n\n \n {\n console.log(element);\n },\n sendOnlyId: true,\n },\n ]}\n columns={[\n { label: \"Name\", elementKey: \"name\" },\n { label: \"Capacity\", elementKey: \"capacity\" },\n { label: \"# of Instances\", elementKey: \"servers\" },\n { label: \"# of Drives\", elementKey: \"volumes\" },\n ]}\n isLoading={false}\n records={pools}\n entityName=\"Servers\"\n idField=\"name\"\n />\n \n
\n )}\n {selectedTab === 2 && (\n \n
\n {\n return input != null ? input : 0;\n },\n },\n { label: \"Node\", elementKey: \"node\" },\n ]}\n isLoading={false}\n records={pods}\n entityName=\"Servers\"\n idField=\"name\"\n />\n
\n )}\n {selectedTab === 3 && (\n \n
\n \n \n \n \n \n
\n )}\n
\n
\n
\n );\n};\n\nconst connector = connect(null, {\n setErrorSnackMessage,\n});\n\nexport default withStyles(styles)(connector(TenantDetails));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const OBJECT_BROWSER_ADD_ROUTE = \"OBJECT_BROWSER/ADD_ROUTE\";\nexport const OBJECT_BROWSER_RESET_ROUTES_LIST =\n \"OBJECT_BROWSER/RESET_ROUTES_LIST\";\nexport const OBJECT_BROWSER_REMOVE_ROUTE_LEVEL =\n \"OBJECT_BROWSER/REMOVE_ROUTE_LEVEL\";\nexport const OBJECT_BROWSER_SET_ALL_ROUTES = \"OBJECT_BROWSER/SET_ALL_ROUTES\";\nexport const OBJECT_BROWSER_CREATE_FOLDER = \"OBJECT_BROWSER/CREATE_FOLDER\";\nexport const OBJECT_BROWSER_SET_LAST_AS_FILE =\n \"OBJECT_BROWSER/SET_LAST_AS_FILE\";\nexport const OBJECT_BROWSER_DOWNLOAD_FILE_LOADER =\n \"OBJECT_BROWSER/DOWNLOAD_FILE_LOADER\";\nexport const OBJECT_BROWSER_DOWNLOADED_FILE = \"OBJECT_BROWSER/DOWNLOADED_FILE\";\n\ninterface AddRouteAction {\n type: typeof OBJECT_BROWSER_ADD_ROUTE;\n route: string;\n label: string;\n routeType: string;\n}\n\ninterface ResetRoutesList {\n type: typeof OBJECT_BROWSER_RESET_ROUTES_LIST;\n reset: boolean;\n}\n\ninterface RemoveRouteLevel {\n type: typeof OBJECT_BROWSER_REMOVE_ROUTE_LEVEL;\n toRoute: string;\n}\n\ninterface SetAllRoutes {\n type: typeof OBJECT_BROWSER_SET_ALL_ROUTES;\n currentRoute: string;\n}\n\ninterface CreateFolder {\n type: typeof OBJECT_BROWSER_CREATE_FOLDER;\n newRoute: string;\n}\n\ninterface SetLastAsFile {\n type: typeof OBJECT_BROWSER_SET_LAST_AS_FILE;\n}\n\ninterface SetFileDownload {\n type: typeof OBJECT_BROWSER_DOWNLOAD_FILE_LOADER;\n path: string;\n}\n\ninterface FileDownloaded {\n type: typeof OBJECT_BROWSER_DOWNLOADED_FILE;\n path: string;\n}\n\nexport type ObjectBrowserActionTypes =\n | AddRouteAction\n | ResetRoutesList\n | RemoveRouteLevel\n | SetAllRoutes\n | CreateFolder\n | SetLastAsFile\n | SetFileDownload\n | FileDownloaded;\n\nexport const addRoute = (route: string, label: string, routeType: string) => {\n return {\n type: OBJECT_BROWSER_ADD_ROUTE,\n route,\n label,\n routeType,\n };\n};\n\nexport const resetRoutesList = (reset: boolean) => {\n return {\n type: OBJECT_BROWSER_RESET_ROUTES_LIST,\n reset,\n };\n};\n\nexport const removeRouteLevel = (toRoute: string) => {\n return {\n type: OBJECT_BROWSER_REMOVE_ROUTE_LEVEL,\n toRoute,\n };\n};\n\nexport const setAllRoutes = (currentRoute: string) => {\n return {\n type: OBJECT_BROWSER_SET_ALL_ROUTES,\n currentRoute,\n };\n};\n\nexport const createFolder = (newRoute: string) => {\n return {\n type: OBJECT_BROWSER_CREATE_FOLDER,\n newRoute,\n };\n};\n\nexport const setLastAsFile = () => {\n return {\n type: OBJECT_BROWSER_SET_LAST_AS_FILE,\n };\n};\n\nexport const fileIsBeingPrepared = (path: string) => {\n return {\n type: OBJECT_BROWSER_DOWNLOAD_FILE_LOADER,\n path,\n };\n};\n\nexport const fileDownloadStarted = (path: string) => {\n return {\n type: OBJECT_BROWSER_DOWNLOADED_FILE,\n path,\n };\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport get from \"lodash/get\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { connect } from \"react-redux\";\nimport { withStyles } from \"@material-ui/core\";\nimport { createStyles, Theme } from \"@material-ui/core/styles\";\nimport { removeRouteLevel } from \"./actions\";\nimport { ObjectBrowserState, Route } from \"./reducers\";\nimport { objectBrowserCommon } from \"../Common/FormComponents/common/styleLibrary\";\nimport { Link } from \"react-router-dom\";\n\ninterface ObjectBrowserReducer {\n objectBrowser: ObjectBrowserState;\n}\n\ninterface IObjectBrowser {\n classes: any;\n objectsList: Route[];\n removeRouteLevel: (path: string) => any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...objectBrowserCommon,\n });\n\nconst BrowserBreadcrumbs = ({\n classes,\n objectsList,\n removeRouteLevel,\n}: IObjectBrowser) => {\n const listBreadcrumbs = objectsList.map((objectItem, index) => {\n return (\n \n {\n removeRouteLevel(objectItem.route);\n }}\n >\n {objectItem.label}\n \n {index < objectsList.length - 1 && / }\n \n );\n });\n\n return (\n \n \n
\n {objectsList && objectsList.length > 0\n ? objectsList.slice(-1)[0].label\n : \"\"}\n
\n
\n \n {listBreadcrumbs}\n \n
\n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n objectsList: get(objectBrowser, \"routesList\", []),\n});\n\nconst mapDispatchToProps = {\n removeRouteLevel,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default connector(withStyles(styles)(BrowserBreadcrumbs));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect, Fragment } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport { Button, IconButton } from \"@material-ui/core\";\nimport { CreateIcon } from \"../../../icons\";\nimport { niceBytes } from \"../../../common/utils\";\nimport { Bucket, BucketList, HasPermissionResponse } from \"../Buckets/types\";\nimport {\n actionsTray,\n objectBrowserCommon,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { addRoute, resetRoutesList } from \"./actions\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport BrowserBreadcrumbs from \"./BrowserBreadcrumbs\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport AddBucket from \"../Buckets/ListBuckets/AddBucket\";\nimport api from \"../../../common/api\";\nimport RefreshIcon from \"@material-ui/icons/Refresh\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n usedSpaceCol: {\n width: 150,\n textAlign: \"right\",\n },\n subTitleLabel: {\n alignItems: \"center\",\n display: \"flex\",\n },\n bucketName: {\n display: \"flex\",\n alignItems: \"center\",\n },\n iconBucket: {\n backgroundImage: \"url(/images/ob_bucket_clear.svg)\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n width: 16,\n height: 40,\n marginRight: 10,\n },\n \"@global\": {\n \".rowLine:hover .iconBucketElm\": {\n backgroundImage: \"url(/images/ob_bucket_filled.svg)\",\n },\n },\n browsePaper: {\n height: \"calc(100vh - 280px)\",\n },\n ...actionsTray,\n ...searchField,\n ...objectBrowserCommon,\n });\n\ninterface IBrowseBucketsProps {\n classes: any;\n addRoute: (path: string, label: string, type: string) => any;\n resetRoutesList: (doVar: boolean) => any;\n displayErrorMessage: typeof setErrorSnackMessage;\n match: any;\n}\n\nconst BrowseBuckets = ({\n classes,\n match,\n addRoute,\n resetRoutesList,\n displayErrorMessage,\n}: IBrowseBucketsProps) => {\n const [loading, setLoading] = useState(true);\n const [records, setRecords] = useState([]);\n const [addScreenOpen, setAddScreenOpen] = useState(false);\n const [filterBuckets, setFilterBuckets] = useState(\"\");\n const [loadingPerms, setLoadingPerms] = useState(true);\n const [canCreateBucket, setCanCreateBucket] = useState(false);\n\n // check the permissions for creating bucket\n useEffect(() => {\n if (loadingPerms) {\n api\n .invoke(\"POST\", `/api/v1/has-permission`, {\n actions: [\n {\n id: \"createBucket\",\n action: \"s3:CreateBucket\",\n },\n ],\n })\n .then((res: HasPermissionResponse) => {\n const canCreate = res.permissions\n .filter((s) => s.id === \"createBucket\")\n .pop();\n if (canCreate && canCreate.can) {\n setCanCreateBucket(true);\n } else {\n setCanCreateBucket(false);\n }\n\n setLoadingPerms(false);\n // setRecords(res.buckets || []);\n })\n .catch((err: any) => {\n setLoadingPerms(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loadingPerms]);\n\n useEffect(() => {\n resetRoutesList(true);\n }, [match, resetRoutesList]);\n\n useEffect(() => {\n if (loading) {\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n setLoading(false);\n setRecords(res.buckets || []);\n })\n .catch((err: any) => {\n setLoading(false);\n displayErrorMessage(err);\n });\n }\n }, [loading, displayErrorMessage]);\n\n const closeAddModalAndRefresh = (refresh: boolean) => {\n setAddScreenOpen(false);\n\n if (refresh) {\n setLoading(true);\n }\n };\n\n const filteredRecords = records.filter((b: Bucket) => {\n if (filterBuckets === \"\") {\n return true;\n }\n return b.name.indexOf(filterBuckets) >= 0;\n });\n\n const handleViewChange = (idElement: string) => {\n const currentPath = get(match, \"url\", \"/object-browser\");\n const newPath = `${currentPath}/${idElement}`;\n\n addRoute(newPath, idElement, \"path\");\n };\n\n const renderBucket = (bucketName: string) => {\n return (\n
\n
\n {bucketName}\n
\n );\n };\n\n return (\n \n {addScreenOpen && (\n \n )}\n \n \n
\n \n
\n
\n \n {\n setFilterBuckets(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n {\n setLoading(true);\n }}\n >\n \n \n {canCreateBucket && (\n
\n }\n onClick={() => {\n setAddScreenOpen(true);\n }}\n >\n Create Bucket\n \n
\n )}\n
\n \n
\n
\n \n \n \n
\n
\n );\n};\n\nconst mapDispatchToProps = {\n addRoute,\n resetRoutesList,\n displayErrorMessage: setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withRouter(connector(withStyles(styles)(BrowseBuckets)));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Grid } from \"@material-ui/core\";\nimport BrowseBuckets from \"./BrowseBuckets\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\n\ninterface IObjectBrowserProps {\n match: any;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n watchList: {\n background: \"white\",\n maxHeight: \"400\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4\",\n padding: \"0\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0\",\n padding: \"0\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n actionsTray: {\n textAlign: \"right\",\n \"& button\": {\n marginLeft: 10,\n },\n },\n inputField: {\n background: \"#FFFFFF\",\n padding: 12,\n borderRadius: 5,\n marginLeft: 10,\n boxShadow: \"0px 3px 6px #00000012\",\n },\n fieldContainer: {\n background: \"#FFFFFF\",\n padding: 0,\n borderRadius: 5,\n marginLeft: 10,\n textAlign: \"left\",\n minWidth: \"206\",\n boxShadow: \"0px 3px 6px #00000012\",\n },\n lastElementWPadding: {\n paddingRight: \"78\",\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst ObjectBrowser = ({ match, classes }: IObjectBrowserProps) => {\n const pathIn = get(match, \"url\", \"\");\n\n return (\n \n \n \n \n {pathIn === \"/object-browser\" && }\n \n \n \n );\n};\n\nexport default withStyles(styles)(ObjectBrowser);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { setErrorSnackMessage } from \"../../../../../../actions\";\nimport api from \"../../../../../../common/api\";\n\ninterface IDeleteObjectProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n setErrorSnackMessage,\n}: IDeleteObjectProps) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const removeRecord = () => {\n if (deleteLoading) {\n return;\n }\n let recursive = false;\n if (selectedObject.endsWith(\"/\")) {\n recursive = true;\n }\n setDeleteLoading(true);\n api\n .invoke(\n \"DELETE\",\n `/api/v1/buckets/${selectedBucket}/objects?path=${selectedObject}&recursive=${recursive}`\n )\n .then(() => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n setDeleteLoading(false);\n setErrorSnackMessage(err);\n });\n };\n\n return (\n {\n closeDeleteModalAndRefresh(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n Delete\n \n {deleteLoading && }\n \n Are you sure you want to delete: {selectedObject}?{\" \"}\n \n \n \n {\n closeDeleteModalAndRefresh(false);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n {\n removeRecord();\n }}\n color=\"secondary\"\n disabled={deleteLoading}\n >\n Delete\n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(DeleteObject);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { Button, Grid } from \"@material-ui/core\";\nimport InputBoxWrapper from \"../../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { connect } from \"react-redux\";\nimport { createFolder } from \"../../../../ObjectBrowser/actions\";\n\ninterface ICreateFolder {\n classes: any;\n modalOpen: boolean;\n folderName: string;\n createFolder: (newFolder: string) => any;\n onClose: () => any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n pathLabel: {\n marginTop: 0,\n marginBottom: 32,\n },\n ...modalBasic,\n });\n\nconst CreateFolderModal = ({\n modalOpen,\n folderName,\n onClose,\n createFolder,\n classes,\n}: ICreateFolder) => {\n const [pathUrl, setPathUrl] = useState(\"\");\n\n const resetForm = () => {\n setPathUrl(\"\");\n };\n\n const createProcess = () => {\n createFolder(pathUrl);\n onClose();\n };\n\n const folderTruncated = folderName.split(\"/\").slice(2).join(\"/\");\n\n return (\n \n \n \n

\n Current Path: {folderTruncated}/\n

\n \n {\n setPathUrl(e.target.value);\n }}\n />\n \n \n \n Clear\n \n \n Save\n \n \n
\n
\n
\n );\n};\n\nconst mapDispatchToProps = {\n createFolder,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(withStyles(styles)(CreateFolderModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst UploadFile = () => {\n return (\n \n \n \n \n \n \n \n \n );\n};\n\nexport default UploadFile;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { isNullOrUndefined } from \"util\";\n\nexport const download = (\n bucketName: string,\n objectPath: string,\n versionID: any,\n callBack?: (objIdentifier: string) => void,\n includeVersionInCallback?: boolean\n) => {\n const anchor = document.createElement(\"a\");\n document.body.appendChild(anchor);\n const xhr = new XMLHttpRequest();\n const allPathData = objectPath.split(\"/\");\n const objectName = allPathData[allPathData.length - 1];\n\n let path = `/api/v1/buckets/${bucketName}/objects/download?prefix=${objectPath}`;\n if (!isNullOrUndefined(versionID) && versionID !== \"null\") {\n path = path.concat(`&version_id=${versionID}`);\n }\n\n xhr.open(\"GET\", path, true);\n xhr.responseType = \"blob\";\n\n xhr.onload = function (e) {\n if (this.status === 200) {\n const blob = new Blob([this.response], {\n type: \"octet/stream\",\n });\n const blobUrl = window.URL.createObjectURL(blob);\n\n anchor.href = blobUrl;\n anchor.download = objectName;\n\n anchor.click();\n window.URL.revokeObjectURL(blobUrl);\n anchor.remove();\n\n if (callBack) {\n callBack(\n `${bucketName}/${objectPath}${\n includeVersionInCallback ? `-${versionID}` : \"\"\n }`\n );\n }\n }\n };\n xhr.send();\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport { BucketObject, BucketObjectsList } from \"./types\";\nimport api from \"../../../../../../common/api\";\nimport TableWrapper from \"../../../../Common/TableWrapper/TableWrapper\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport DeleteObject from \"./DeleteObject\";\n\nimport {\n actionsTray,\n containerForHeader,\n objectBrowserCommon,\n searchField,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport PageHeader from \"../../../../Common/PageHeader/PageHeader\";\nimport { Button, IconButton, Input, Typography } from \"@material-ui/core\";\nimport * as reactMoment from \"react-moment\";\nimport { CreateIcon } from \"../../../../../../icons\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport get from \"lodash/get\";\nimport { withRouter } from \"react-router-dom\";\nimport {\n addRoute,\n setAllRoutes,\n setLastAsFile,\n fileIsBeingPrepared,\n fileDownloadStarted,\n} from \"../../../../ObjectBrowser/actions\";\nimport { connect } from \"react-redux\";\nimport {\n ObjectBrowserReducer,\n Route,\n} from \"../../../../ObjectBrowser/reducers\";\nimport CreateFolderModal from \"./CreateFolderModal\";\nimport UploadFile from \"../../../../../../icons/UploadFile\";\nimport { download } from \"../utils\";\nimport {\n setLoadingProgress,\n setSnackBarMessage,\n setErrorSnackMessage,\n} from \"../../../../../../actions\";\nimport RefreshIcon from \"@material-ui/icons/Refresh\";\n\nconst commonIcon = {\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n width: 16,\n minWidth: 16,\n height: 40,\n marginRight: 10,\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n fileName: {\n display: \"flex\",\n alignItems: \"center\",\n },\n fileNameText: {\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n iconFolder: {\n backgroundImage: \"url(/images/ob_folder_clear.svg)\",\n ...commonIcon,\n },\n iconFile: {\n backgroundImage: \"url(/images/ob_file_clear.svg)\",\n ...commonIcon,\n },\n buttonsContainer: {\n \"& .MuiButtonBase-root\": {\n marginLeft: 10,\n },\n },\n browsePaper: {\n height: \"calc(100vh - 280px)\",\n },\n \"@global\": {\n \".rowLine:hover .iconFileElm\": {\n backgroundImage: \"url(/images/ob_file_filled.svg)\",\n },\n \".rowLine:hover .iconFolderElm\": {\n backgroundImage: \"url(/images/ob_folder_filled.svg)\",\n },\n },\n listButton: {\n marginLeft: \"10px\",\n },\n ...actionsTray,\n ...searchField,\n ...objectBrowserCommon,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IListObjectsProps {\n classes: any;\n match: any;\n addRoute: (param1: string, param2: string, param3: string) => any;\n setAllRoutes: (path: string) => any;\n routesList: Route[];\n downloadingFiles: string[];\n setLastAsFile: () => any;\n setLoadingProgress: typeof setLoadingProgress;\n setSnackBarMessage: typeof setSnackBarMessage;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n fileIsBeingPrepared: typeof fileIsBeingPrepared;\n fileDownloadStarted: typeof fileDownloadStarted;\n}\n\nfunction useInterval(callback: any, delay: number) {\n const savedCallback = useRef(null);\n\n // Remember the latest callback.\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n // Set up the interval.\n useEffect(() => {\n function tick() {\n if (savedCallback !== undefined && savedCallback.current) {\n savedCallback.current();\n }\n }\n if (delay !== null) {\n let id = setInterval(tick, delay);\n return () => clearInterval(id);\n }\n }, [delay]);\n}\n\nconst defLoading = Loading...;\n\nconst ListObjects = ({\n classes,\n match,\n addRoute,\n setAllRoutes,\n routesList,\n downloadingFiles,\n setLastAsFile,\n setLoadingProgress,\n setSnackBarMessage,\n setErrorSnackMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n}: IListObjectsProps) => {\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(true);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [createFolderOpen, setCreateFolderOpen] = useState(false);\n const [selectedObject, setSelectedObject] = useState(\"\");\n const [selectedBucket, setSelectedBucket] = useState(\"\");\n const [filterObjects, setFilterObjects] = useState(\"\");\n const [loadingStartTime, setLoadingStartTime] = useState(0);\n const [loadingMessage, setLoadingMessage] =\n useState(defLoading);\n\n const updateMessage = () => {\n let timeDelta = Date.now() - loadingStartTime;\n\n if (timeDelta / 1000 >= 6) {\n setLoadingMessage(\n \n \n This operation is taking longer than expected... (\n {Math.ceil(timeDelta / 1000)}s)\n \n \n );\n } else if (timeDelta / 1000 >= 3) {\n setLoadingMessage(\n \n This operation is taking longer than expected...\n \n );\n }\n };\n\n useInterval(() => {\n // Your custom logic here\n if (loading) {\n updateMessage();\n }\n }, 1000);\n\n useEffect(() => {\n const bucketName = match.params[\"bucket\"];\n const internalPaths = match.params[0];\n\n const verifyIfIsFile = () => {\n const bucketName = match.params[\"bucket\"];\n const internalPaths = match.params[0];\n\n api\n .invoke(\n \"GET\",\n `/api/v1/buckets/${bucketName}/objects?prefix=${internalPaths}`\n )\n .then((res: BucketObjectsList) => {\n //It is a file since it has elements in the object, setting file flag and waiting for component mount\n if (res.objects !== null) {\n setLastAsFile();\n } else {\n // It is a folder, we remove loader\n setLoading(false);\n }\n })\n .catch((err: any) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n };\n\n if (loading) {\n let extraPath = \"\";\n if (internalPaths) {\n extraPath = `?prefix=${internalPaths}/`;\n }\n\n let currentTimestamp = Date.now() + 0;\n setLoadingStartTime(currentTimestamp);\n setLoadingMessage(defLoading);\n\n api\n .invoke(\"GET\", `/api/v1/buckets/${bucketName}/objects${extraPath}`)\n .then((res: BucketObjectsList) => {\n setSelectedBucket(bucketName);\n\n const records: BucketObject[] = res.objects || [];\n const folders: BucketObject[] = [];\n const files: BucketObject[] = [];\n\n records.forEach((record) => {\n // this is a folder\n if (record.name.endsWith(\"/\")) {\n folders.push(record);\n } else {\n // this is a file\n files.push(record);\n }\n });\n\n const recordsInElement = [...folders, ...files];\n\n setRecords(recordsInElement);\n // In case no objects were retrieved, We check if item is a file\n if (!res.objects && extraPath !== \"\") {\n verifyIfIsFile();\n return;\n }\n setLoading(false);\n })\n .catch((err: any) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loading, match, setLastAsFile, setErrorSnackMessage]);\n\n useEffect(() => {\n const url = get(match, \"url\", \"/object-browser\");\n if (url !== routesList[routesList.length - 1].route) {\n setAllRoutes(url);\n }\n }, [match, routesList, setAllRoutes]);\n\n useEffect(() => {\n setLoading(true);\n }, [routesList, setLoading]);\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n\n if (refresh) {\n setSnackBarMessage(`Object '${selectedObject}' deleted successfully.`);\n setLoading(true);\n }\n };\n\n const closeAddFolderModal = () => {\n setCreateFolderOpen(false);\n };\n\n const upload = (e: any, bucketName: string, path: string) => {\n if (\n e === null ||\n e === undefined ||\n e.target === null ||\n e.target === undefined\n ) {\n return;\n }\n e.preventDefault();\n let files = e.target.files;\n let uploadUrl = `/api/v1/buckets/${bucketName}/objects/upload`;\n if (path !== \"\") {\n uploadUrl = `${uploadUrl}?prefix=${path}`;\n }\n let xhr = new XMLHttpRequest();\n const areMultipleFiles = files.length > 1 ? true : false;\n const errorMessage = `An error occurred while uploading the file${\n areMultipleFiles ? \"s\" : \"\"\n }.`;\n const okMessage = `Object${\n areMultipleFiles ? \"s\" : ``\n } uploaded successfully.`;\n\n xhr.open(\"POST\", uploadUrl, true);\n\n xhr.withCredentials = false;\n xhr.onload = function (event) {\n if (\n xhr.status === 401 ||\n xhr.status === 403 ||\n xhr.status === 400 ||\n xhr.status === 500\n ) {\n setSnackBarMessage(errorMessage);\n }\n if (xhr.status === 200) {\n setSnackBarMessage(okMessage);\n }\n };\n\n xhr.upload.addEventListener(\"error\", (event) => {\n setSnackBarMessage(errorMessage);\n });\n\n xhr.upload.addEventListener(\"progress\", (event) => {\n setLoadingProgress(Math.floor((event.loaded * 100) / event.total));\n });\n\n xhr.onerror = () => {\n setSnackBarMessage(errorMessage);\n };\n xhr.onloadend = () => {\n setLoading(true);\n setLoadingProgress(100);\n };\n\n const formData = new FormData();\n\n for (let file of files) {\n const fileName = file.name;\n const blobFile = new Blob([file]);\n formData.append(fileName, blobFile);\n }\n\n xhr.send(formData);\n e.target.value = null;\n };\n\n const displayParsedDate = (object: BucketObject) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n return {object.last_modified};\n };\n\n const displayNiceBytes = (object: BucketObject) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n return niceBytes(String(object.size));\n };\n\n const confirmDeleteObject = (object: string) => {\n setDeleteOpen(true);\n setSelectedObject(object);\n };\n\n const removeDownloadAnimation = (path: string) => {\n fileDownloadStarted(path);\n };\n\n const downloadObject = (object: BucketObject) => {\n fileIsBeingPrepared(`${selectedBucket}/${object.name}`);\n if (object.size > 104857600) {\n // If file is bigger than 100MB we show a notification\n setSnackBarMessage(\n \"Download process started, it may take a few moments to complete\"\n );\n }\n\n download(\n selectedBucket,\n object.name,\n object.version_id,\n removeDownloadAnimation\n );\n };\n\n const openPath = (idElement: string) => {\n const currentPath = get(match, \"url\", \"/object-browser\");\n\n // Element is a folder, we redirect to it\n if (idElement.endsWith(\"/\")) {\n const idElementClean = idElement\n .substr(0, idElement.length - 1)\n .split(\"/\");\n const lastIndex = idElementClean.length - 1;\n const newPath = `${currentPath}/${idElementClean[lastIndex]}`;\n\n addRoute(newPath, idElementClean[lastIndex], \"path\");\n return;\n }\n // Element is a file. we open details here\n const pathInArray = idElement.split(\"/\");\n const fileName = pathInArray[pathInArray.length - 1];\n const newPath = `${currentPath}/${fileName}`;\n\n addRoute(newPath, fileName, \"file\");\n return;\n };\n\n const uploadObject = (e: any): void => {\n // Handle of deeper routes.\n const currentPath = routesList[routesList.length - 1].route;\n const splitPaths = currentPath\n .split(\"/\")\n .filter((item) => item.trim() !== \"\");\n\n let path = \"\";\n\n if (splitPaths.length > 2) {\n path = `${splitPaths.slice(2).join(\"/\")}/`;\n }\n\n upload(e, selectedBucket, path);\n };\n\n const tableActions = [\n { type: \"view\", onClick: openPath, sendOnlyId: true },\n {\n type: \"download\",\n onClick: downloadObject,\n showLoaderFunction: (item: string) =>\n downloadingFiles.includes(`${match.params[\"bucket\"]}/${item}`),\n },\n { type: \"delete\", onClick: confirmDeleteObject, sendOnlyId: true },\n ];\n\n const displayName = (element: string) => {\n let elementString = element;\n let icon = `${classes.iconFile} iconFileElm`;\n // Element is a folder\n if (element.endsWith(\"/\")) {\n icon = `${classes.iconFolder} iconFolderElm`;\n elementString = element.substr(0, element.length - 1);\n }\n\n const splitItem = elementString.split(\"/\");\n\n return (\n
\n
\n \n {splitItem[splitItem.length - 1]}\n \n
\n );\n };\n\n const filteredRecords = records.filter((b: BucketObject) => {\n if (filterObjects === \"\") {\n return true;\n } else {\n if (b.name.indexOf(filterObjects) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n return (\n \n {deleteOpen && (\n \n )}\n {createFolderOpen && (\n \n )}\n \n \n \n \n
\n \n
\n
\n \n {\n setFilterObjects(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n {\n setLoading(true);\n }}\n >\n \n \n }\n component=\"label\"\n onClick={() => {\n setCreateFolderOpen(true);\n }}\n className={classes.listButton}\n >\n Create Folder\n \n }\n component=\"label\"\n className={classes.listButton}\n >\n File\n uploadObject(e)}\n id=\"file-input\"\n style={{ display: \"none\" }}\n />\n \n \n \n
\n
\n \n \n \n
\n
\n
\n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n routesList: get(objectBrowser, \"routesList\", []),\n downloadingFiles: get(objectBrowser, \"downloadingFiles\", []),\n});\n\nconst mapDispatchToProps = {\n addRoute,\n setAllRoutes,\n setLastAsFile,\n setLoadingProgress,\n setSnackBarMessage,\n setErrorSnackMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default withRouter(connector(withStyles(styles)(ListObjects)));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Button from \"@material-ui/core/Button\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { CopyIcon } from \"../../../../../../icons\";\nimport { IFileInfo } from \"./types\";\nimport {\n setModalErrorSnackMessage,\n setModalSnackMessage,\n} from \"../../../../../../actions\";\nimport api from \"../../../../../../common/api\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\nimport PredefinedList from \"../../../../Common/FormComponents/PredefinedList/PredefinedList\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n copyButtonContainer: {\n paddingLeft: 16,\n },\n modalContent: {\n paddingBottom: 53,\n },\n ...modalBasic,\n });\n\ninterface IShareFileProps {\n classes: any;\n open: boolean;\n bucketName: string;\n dataObject: IFileInfo;\n closeModalAndRefresh: () => void;\n setModalSnackMessage: typeof setModalSnackMessage;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst ShareFile = ({\n classes,\n open,\n closeModalAndRefresh,\n bucketName,\n dataObject,\n setModalSnackMessage,\n setModalErrorSnackMessage,\n}: IShareFileProps) => {\n const [shareURL, setShareURL] = useState(\"\");\n const [isLoadingFile, setIsLoadingFile] = useState(false);\n const [selectedDate, setSelectedDate] = useState(\"\");\n const [dateValid, setDateValid] = useState(true);\n\n const dateChanged = (newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n };\n\n useEffect(() => {\n if (dateValid) {\n setIsLoadingFile(true);\n setShareURL(\"\");\n\n const slDate = new Date(`${selectedDate}T23:59:59`);\n const currDate = new Date();\n\n const diffDate = slDate.getTime() - currDate.getTime();\n\n if (diffDate < 0) {\n setModalErrorSnackMessage(\n \"Selected date must be greater than current time.\"\n );\n setShareURL(\"\");\n setIsLoadingFile(false);\n\n return;\n }\n\n if (diffDate > 604800000) {\n setModalErrorSnackMessage(\n \"You can share a file only for less than 7 days.\"\n );\n setShareURL(\"\");\n setIsLoadingFile(false);\n\n return;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/buckets/${bucketName}/objects/share?prefix=${\n dataObject.name\n }&version_id=${dataObject.version_id}${\n selectedDate !== \"\" ? `&expires=${diffDate}ms` : \"\"\n }`\n )\n .then((res: string) => {\n setShareURL(res);\n setIsLoadingFile(false);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setShareURL(\"\");\n setIsLoadingFile(false);\n });\n return;\n }\n }, [\n dataObject,\n selectedDate,\n bucketName,\n dateValid,\n setShareURL,\n setModalErrorSnackMessage,\n ]);\n\n return (\n \n {\n closeModalAndRefresh();\n }}\n >\n \n \n \n \n \n \n \n \n \n \n }\n onClick={() => {\n setModalSnackMessage(\"Share URL Copied to clipboard\");\n }}\n disabled={shareURL === \"\" || isLoadingFile}\n >\n Copy\n \n \n \n \n \n \n \n );\n};\n\nconst connector = connect(null, {\n setModalSnackMessage,\n setModalErrorSnackMessage,\n});\n\nexport default withStyles(styles)(connector(ShareFile));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\n\nconst ShareIcon = () => {\n return (\n \n \n \n \n \n \n );\n};\n\nexport default ShareIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\n\nconst DownloadIcon = () => {\n return (\n \n \n \n \n \n \n );\n};\n\nexport default DownloadIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Button from \"@material-ui/core/Button\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IFileInfo } from \"./types\";\nimport { setModalErrorSnackMessage } from \"../../../../../../actions\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport FormSwitchWrapper from \"../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport RadioGroupSelector from \"../../../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\nimport api from \"../../../../../../common/api\";\nimport { twoDigitDate } from \"../../../../Common/FormComponents/DateSelector/utils\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n objectName: {\n fontSize: 18,\n fontWeight: 700,\n marginBottom: 40,\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n ...modalBasic,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (updateInfo: boolean) => void;\n objectName: string;\n bucketName: string;\n objectInfo: IFileInfo;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\ninterface IRefObject {\n resetDate: () => void;\n}\n\nconst SetRetention = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n objectInfo,\n bucketName,\n setModalErrorSnackMessage,\n}: ISetRetentionProps) => {\n const [statusEnabled, setStatusEnabled] = useState(true);\n const [type, setType] = useState(\"\");\n const [date, setDate] = useState(\"\");\n const [isDateValid, setIsDateValid] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const [alreadyConfigured, setAlreadyConfigured] = useState(false);\n\n useEffect(() => {\n if (objectInfo.retention_mode) {\n setType(objectInfo.retention_mode.toLowerCase());\n setAlreadyConfigured(true);\n }\n // get retention_until_date if defined\n if (objectInfo.retention_until_date) {\n const valueDate = new Date(objectInfo.retention_until_date);\n if (valueDate.toString() !== \"Invalid Date\") {\n const year = valueDate.getFullYear();\n const month = twoDigitDate(valueDate.getMonth() + 1);\n const day = valueDate.getDate();\n if (!isNaN(day) && month !== \"NaN\" && !isNaN(year)) {\n setDate(`${year}-${month}-${day}`);\n }\n }\n setAlreadyConfigured(true);\n }\n }, [objectInfo]);\n\n const dateElement = useRef(null);\n\n const dateFieldDisabled = () => {\n return !(statusEnabled && (type === \"governance\" || type === \"compliance\"));\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n const resetForm = () => {\n setStatusEnabled(false);\n setType(\"\");\n if (dateElement.current) {\n dateElement.current.resetDate();\n }\n };\n\n const addRetention = (\n selectedObject: string,\n versionId: string | null,\n expireDate: string\n ) => {\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/retention?prefix=${selectedObject}&version_id=${versionId}`,\n {\n expires: expireDate,\n mode: type,\n }\n )\n .then((res: any) => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSaving(false);\n });\n };\n\n const disableRetention = (\n selectedObject: string,\n versionId: string | null\n ) => {\n api\n .invoke(\n \"DELETE\",\n `/api/v1/buckets/${bucketName}/objects/retention?prefix=${selectedObject}&version_id=${versionId}`\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSaving(false);\n });\n };\n\n const saveNewRetentionPolicy = () => {\n setIsSaving(true);\n const selectedObject = objectInfo.name;\n const versionId = objectInfo.version_id;\n\n const expireDate =\n !statusEnabled && type === \"governance\" ? \"\" : `${date}T23:59:59Z`;\n\n if (!statusEnabled && type === \"governance\") {\n disableRetention(selectedObject, versionId);\n\n return;\n }\n\n addRetention(selectedObject, versionId, expireDate);\n };\n\n const showSwitcher =\n alreadyConfigured && (type === \"governance\" || type === \"\");\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n \n {objectName}\n \n ) => {\n onSubmit(e);\n }}\n >\n {showSwitcher && (\n \n ) => {\n setStatusEnabled(!statusEnabled);\n }}\n label={\"Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n />\n \n )}\n \n {\n setType(e.target.value);\n }}\n selectorOptions={[\n { label: \"Governance\", value: \"governance\" },\n { label: \"Compliance\", value: \"compliance\" },\n ]}\n />\n \n \n {\n setIsDateValid(isValid);\n if (isValid) {\n setDate(date);\n }\n }}\n />\n \n \n \n Reset\n \n \n Save\n \n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(SetRetention));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { Button, Grid } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../../../actions\";\nimport InputBoxWrapper from \"../../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport api from \"../../../../../../common/api\";\n\ninterface ITagModal {\n modalOpen: boolean;\n currentTags: any;\n bucketName: string;\n versionId: string | null;\n onCloseAndUpdate: (refresh: boolean) => void;\n selectedObject: string;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n pathLabel: {\n marginTop: 0,\n marginBottom: 32,\n },\n ...modalBasic,\n });\n\nconst AddTagModal = ({\n modalOpen,\n currentTags,\n selectedObject,\n onCloseAndUpdate,\n bucketName,\n versionId,\n setModalErrorSnackMessage,\n classes,\n}: ITagModal) => {\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n\n const resetForm = () => {\n setNewLabel(\"\");\n setNewKey(\"\");\n };\n\n const addTagProcess = () => {\n setIsSending(true);\n const newTag: any = {};\n\n newTag[newKey] = newLabel;\n const newTagList = { ...currentTags, ...newTag };\n\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/tags?prefix=${selectedObject}&version_id=${versionId}`,\n { tags: newTagList }\n )\n .then((res: any) => {\n setIsSending(false);\n onCloseAndUpdate(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSending(false);\n });\n };\n\n return (\n \n {\n onCloseAndUpdate(false);\n }}\n >\n \n

\n Selected Object: {selectedObject}\n

\n \n {\n setNewKey(e.target.value);\n }}\n />\n \n \n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n Clear\n \n \n Save\n \n \n
\n \n
\n );\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(AddTagModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setErrorSnackMessage } from \"../../../../../../actions\";\nimport api from \"../../../../../../common/api\";\n\ninterface IDeleteTagModal {\n deleteOpen: boolean;\n currentTags: any;\n bucketName: string;\n versionId: string | null;\n selectedTag: string[];\n onCloseAndUpdate: (refresh: boolean) => void;\n selectedObject: string;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n pathLabel: {\n marginTop: 0,\n marginBottom: 32,\n },\n ...modalBasic,\n });\n\nconst DeleteTagModal = ({\n deleteOpen,\n currentTags,\n selectedObject,\n selectedTag,\n onCloseAndUpdate,\n bucketName,\n versionId,\n setErrorSnackMessage,\n classes,\n}: IDeleteTagModal) => {\n const [deleteLoading, setDeleteSending] = useState(false);\n const [tagKey, tagLabel] = selectedTag;\n\n const removeTagProcess = () => {\n setDeleteSending(true);\n const cleanObject = { ...currentTags };\n delete cleanObject[tagKey];\n\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/tags?prefix=${selectedObject}&version_id=${versionId}`,\n { tags: cleanObject }\n )\n .then((res: any) => {\n setDeleteSending(false);\n onCloseAndUpdate(true);\n })\n .catch((error) => {\n setErrorSnackMessage(error);\n setDeleteSending(false);\n });\n };\n\n return (\n {\n onCloseAndUpdate(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n Delete Tag\n \n {deleteLoading && }\n \n Are you sure you want to delete the tag{\" \"}\n \n {tagKey} : {tagLabel}\n {\" \"}\n from {selectedObject}?\n \n \n \n {\n onCloseAndUpdate(false);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(DeleteTagModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport get from \"lodash/get\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Button from \"@material-ui/core/Button\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../../../actions\";\nimport { IFileInfo } from \"./types\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport FormSwitchWrapper from \"../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport api from \"../../../../../../common/api\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n objectName: {\n fontSize: 18,\n fontWeight: 700,\n marginBottom: 40,\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n ...modalBasic,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (reload: boolean) => void;\n objectName: string;\n bucketName: string;\n actualInfo: IFileInfo;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst SetLegalHoldModal = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n bucketName,\n actualInfo,\n setModalErrorSnackMessage,\n}: ISetRetentionProps) => {\n const [legalHoldEnabled, setLegalHoldEnabled] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const versionId = actualInfo.version_id;\n\n useEffect(() => {\n const status = get(actualInfo, \"legal_hold_status\", \"OFF\");\n setLegalHoldEnabled(status === \"ON\");\n }, [actualInfo]);\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n setIsSaving(true);\n\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/legalhold?prefix=${objectName}&version_id=${versionId}`,\n { status: legalHoldEnabled ? \"enabled\" : \"disabled\" }\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSaving(false);\n });\n };\n\n const resetForm = () => {\n setLegalHoldEnabled(false);\n };\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n \n {objectName}\n \n ) => {\n onSubmit(e);\n }}\n >\n \n ) => {\n setLegalHoldEnabled(!legalHoldEnabled);\n }}\n label={\"Legal Hold Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n tooltip={\n \"To enable this feature you need to enable versioning on the bucket before creation\"\n }\n />\n \n \n \n Reset\n \n \n Save\n \n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(SetLegalHoldModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport * as reactMoment from \"react-moment\";\nimport clsx from \"clsx\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Chip from \"@material-ui/core/Chip\";\nimport TextField from \"@material-ui/core/TextField\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport AddIcon from \"@material-ui/icons/Add\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport ShareFile from \"./ShareFile\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IFileInfo } from \"./types\";\nimport {\n removeRouteLevel,\n fileIsBeingPrepared,\n fileDownloadStarted,\n} from \"../../../../ObjectBrowser/actions\";\nimport {\n ObjectBrowserReducer,\n Route,\n} from \"../../../../ObjectBrowser/reducers\";\nimport { download } from \"../utils\";\nimport history from \"../../../../../../history\";\nimport api from \"../../../../../../common/api\";\nimport PageHeader from \"../../../../Common/PageHeader/PageHeader\";\nimport ShareIcon from \"../../../../../../icons/ShareIcon\";\nimport DownloadIcon from \"../../../../../../icons/DownloadIcon\";\nimport DeleteIcon from \"../../../../../../icons/DeleteIcon\";\nimport TableWrapper from \"../../../../Common/TableWrapper/TableWrapper\";\nimport PencilIcon from \"../../../../Common/TableWrapper/TableActionIcons/PencilIcon\";\nimport SetRetention from \"./SetRetention\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport DeleteObject from \"../ListObjects/DeleteObject\";\nimport AddTagModal from \"./AddTagModal\";\nimport DeleteTagModal from \"./DeleteTagModal\";\nimport SetLegalHoldModal from \"./SetLegalHoldModal\";\nimport {\n setSnackBarMessage,\n setErrorSnackMessage,\n} from \"../../../../../../actions\";\nimport { CircularProgress } from \"@material-ui/core\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n objectNameContainer: {\n marginBottom: 8,\n },\n objectPathContainer: {\n marginBottom: 26,\n fontSize: 10,\n },\n objectPathLink: {\n \"&:visited\": {\n color: \"#000\",\n },\n },\n objectName: {\n fontSize: 24,\n },\n propertiesContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n marginBottom: 15,\n },\n propertiesItem: {\n display: \"flex\",\n flexDirection: \"row\",\n marginRight: 21,\n },\n propertiesItemBold: {\n fontWeight: 700,\n },\n propertiesValue: {\n marginLeft: 8,\n textTransform: \"capitalize\",\n },\n propertiesIcon: {\n marginLeft: 5,\n },\n actionsIconContainer: {\n marginLeft: 12,\n },\n actionsIcon: {\n height: 16,\n width: 16,\n \"& .MuiSvgIcon-root\": {\n height: 16,\n },\n },\n tagsContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n alignItems: \"center\",\n marginBottom: 15,\n },\n tagText: {\n marginRight: 13,\n },\n tag: {\n marginRight: 6,\n fontSize: 10,\n fontWeight: 700,\n \"&.MuiChip-sizeSmall\": {\n height: 18,\n },\n \"& .MuiSvgIcon-root\": {\n height: 10,\n width: 10,\n },\n },\n search: {\n marginBottom: 8,\n \"&.MuiFormControl-root\": {\n marginRight: 0,\n },\n },\n \"@global\": {\n \".progressDetails\": {\n paddingTop: 3,\n display: \"inline-block\",\n position: \"relative\",\n width: 18,\n height: 18,\n },\n \".progressDetails > .MuiCircularProgress-root\": {\n position: \"absolute\",\n left: 0,\n top: 3,\n },\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IObjectDetailsProps {\n classes: any;\n routesList: Route[];\n downloadingFiles: string[];\n removeRouteLevel: (newRoute: string) => any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n setSnackBarMessage: typeof setSnackBarMessage;\n fileIsBeingPrepared: typeof fileIsBeingPrepared;\n fileDownloadStarted: typeof fileDownloadStarted;\n}\n\nconst emptyFile: IFileInfo = {\n is_latest: true,\n last_modified: \"\",\n legal_hold_status: \"\",\n name: \"\",\n retention_mode: \"\",\n retention_until_date: \"\",\n size: \"0\",\n tags: {},\n version_id: null,\n};\n\nconst ObjectDetails = ({\n classes,\n routesList,\n downloadingFiles,\n removeRouteLevel,\n setErrorSnackMessage,\n setSnackBarMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n}: IObjectDetailsProps) => {\n const [loadObjectData, setLoadObjectData] = useState(true);\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [retentionModalOpen, setRetentionModalOpen] = useState(false);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [deleteTagModalOpen, setDeleteTagModalOpen] = useState(false);\n const [selectedTag, setSelectedTag] = useState([\"\", \"\"]);\n const [legalholdOpen, setLegalholdOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(emptyFile);\n const [versions, setVersions] = useState([]);\n const [filterVersion, setFilterVersion] = useState(\"\");\n const [deleteOpen, setDeleteOpen] = useState(false);\n\n const currentItem = routesList[routesList.length - 1];\n const allPathData = currentItem.route.split(\"/\");\n const objectName = allPathData[allPathData.length - 1];\n const bucketName = allPathData[2];\n const pathInBucket = allPathData.slice(3).join(\"/\");\n\n useEffect(() => {\n if (loadObjectData) {\n api\n .invoke(\n \"GET\",\n `/api/v1/buckets/${bucketName}/objects?prefix=${pathInBucket}&with_versions=true`\n )\n .then((res: IFileInfo[]) => {\n const result = get(res, \"objects\", []);\n setActualInfo(\n result.find((el: IFileInfo) => el.is_latest) || emptyFile\n );\n setVersions(result.filter((el: IFileInfo) => !el.is_latest));\n setLoadObjectData(false);\n })\n .catch((error) => {\n setErrorSnackMessage(error);\n setLoadObjectData(false);\n });\n }\n }, [loadObjectData, bucketName, pathInBucket, setErrorSnackMessage]);\n\n let tagKeys: string[] = [];\n\n if (actualInfo.tags) {\n tagKeys = Object.keys(actualInfo.tags);\n }\n\n const openRetentionModal = () => {\n setRetentionModalOpen(true);\n };\n\n const closeRetentionModal = (updateInfo: boolean) => {\n setRetentionModalOpen(false);\n if (updateInfo) {\n setLoadObjectData(true);\n }\n };\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setShareFileModalOpen(false);\n };\n\n const deleteTag = (tagKey: string, tagLabel: string) => {\n setSelectedTag([tagKey, tagLabel]);\n setDeleteTagModalOpen(true);\n };\n\n const removeDownloadAnimation = (path: string) => {\n fileDownloadStarted(path);\n };\n\n const downloadObject = (object: IFileInfo, includeVersion?: boolean) => {\n fileIsBeingPrepared(\n `${bucketName}/${object.name}${\n includeVersion ? `-${object.version_id}` : \"\"\n }`\n );\n if (object.size && parseInt(object.size) > 104857600) {\n // If file is bigger than 100MB we show a notification\n setSnackBarMessage(\n \"Download process started, it may take a few moments to complete\"\n );\n }\n download(\n bucketName,\n pathInBucket,\n object.version_id,\n removeDownloadAnimation,\n includeVersion\n );\n };\n\n const tableActions = [\n { type: \"share\", onClick: shareObject, sendOnlyId: true },\n {\n type: \"download\",\n onClick: (item: IFileInfo) => {\n downloadObject(item, true);\n },\n showLoaderFunction: (version: string) => {\n return downloadingFiles.includes(\n `${bucketName}/${objectName}-${version}`\n );\n },\n },\n ];\n\n const filteredRecords = versions.filter((version) => {\n if (version.version_id) {\n return version.version_id.includes(filterVersion);\n }\n return false;\n });\n\n const displayParsedDate = (date: string) => {\n return {date};\n };\n\n const closeDeleteModal = (redirectBack: boolean) => {\n setDeleteOpen(false);\n\n if (redirectBack) {\n const newPath = allPathData.slice(0, -1).join(\"/\");\n\n removeRouteLevel(newPath);\n history.push(newPath);\n }\n };\n\n const closeAddTagModal = (reloadObjectData: boolean) => {\n setTagModalOpen(false);\n\n if (reloadObjectData) {\n setLoadObjectData(true);\n }\n };\n\n const closeLegalholdModal = (reload: boolean) => {\n setLegalholdOpen(false);\n\n if (reload) {\n setLoadObjectData(true);\n }\n };\n\n const closeDeleteTagModal = (reloadObjectData: boolean) => {\n setDeleteTagModalOpen(false);\n\n if (reloadObjectData) {\n setLoadObjectData(true);\n }\n };\n\n return (\n \n \n {shareFileModalOpen && (\n \n )}\n {retentionModalOpen && (\n \n )}\n {deleteOpen && (\n \n )}\n {tagModalOpen && (\n \n )}\n {deleteTagModalOpen && (\n \n )}\n {legalholdOpen && (\n \n )}\n \n \n \n
\n \n
\n
\n
\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n \n
\n
\n \n Legal Hold:\n \n \n {actualInfo.legal_hold_status\n ? actualInfo.legal_hold_status.toLowerCase()\n : \"Off\"}\n \n
\n
\n {\n setLegalholdOpen(true);\n }}\n >\n \n \n
\n
\n
\n
\n \n Retention:\n \n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"Undefined\"}\n \n
\n
\n {\n openRetentionModal();\n }}\n >\n \n \n
\n
\n
\n )}\n
\n
File Actions:
\n
\n {\n shareObject();\n }}\n >\n \n \n
\n
\n {downloadingFiles.includes(\n `${bucketName}/${actualInfo.name}`\n ) ? (\n
\n \n
\n ) : (\n {\n downloadObject(actualInfo);\n }}\n >\n \n \n )}\n
\n
\n {\n setDeleteOpen(true);\n }}\n >\n \n \n
\n
\n
\n \n
Tags:
\n {tagKeys &&\n tagKeys.map((tagKey, index) => {\n const tag = get(actualInfo, `tags.${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n }\n onDelete={() => {\n deleteTag(tagKey, tag);\n }}\n />\n );\n }\n return null;\n })}\n }\n clickable\n size=\"small\"\n label=\"Add tag\"\n color=\"primary\"\n variant=\"outlined\"\n onClick={() => {\n setTagModalOpen(true);\n }}\n />\n
\n\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n {\n setFilterVersion(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n )}\n \n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n \n )}\n \n
\n
\n
\n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n downloadingFiles: get(objectBrowser, \"downloadingFiles\", []),\n});\n\nconst mapDispatchToProps = {\n removeRouteLevel,\n setErrorSnackMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n setSnackBarMessage,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default connector(withStyles(styles)(ObjectDetails));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect } from \"react\";\nimport ListObjects from \"./ListObjects\";\nimport ObjectDetails from \"../ObjectDetails/ObjectDetails\";\nimport get from \"lodash/get\";\nimport { setAllRoutes } from \"../../../../ObjectBrowser/actions\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\nimport { ObjectBrowserState, Route } from \"../../../../ObjectBrowser/reducers\";\n\ninterface ObjectBrowserReducer {\n objectBrowser: ObjectBrowserState;\n}\n\ninterface ObjectRoutingProps {\n routesList: Route[];\n setAllRoutes: (path: string) => any;\n match: any;\n}\n\nconst ObjectRouting = ({\n routesList,\n match,\n setAllRoutes,\n}: ObjectRoutingProps) => {\n const currentItem = routesList[routesList.length - 1];\n\n useEffect(() => {\n const url = get(match, \"url\", \"/object-browser\");\n\n if (url !== routesList[routesList.length - 1].route) {\n setAllRoutes(url);\n }\n }, [match, routesList, setAllRoutes]);\n\n return currentItem.type === \"path\" ? (\n \n ) : (\n \n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n routesList: get(objectBrowser, \"routesList\", []),\n});\n\nconst mapDispatchToProps = {\n setAllRoutes,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default withRouter(connector(ObjectRouting));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const planDetails = [\n {\n id: 0,\n title: \"Community\",\n price: \"Open Source\",\n capacityMin: \"\",\n },\n {\n id: 1,\n title: \"Standard\",\n price: \"$10/TB/month\",\n capacityMax: \"Up to 10PB. No additional charges for capacity over 10PB\",\n capacityMin: \"\",\n },\n {\n id: 2,\n title: \"Enterprise\",\n price: \"$20/TB/month\",\n capacityMax: \"Up to 5PB. No additional charges for capacity over 5PB\",\n capacityMin: \"\",\n },\n];\n\nexport const planItems = [\n {\n id: 0,\n field: \"License\",\n community: \"GNU AGPL v3\",\n communityDetail: \"\",\n standard: \"Commercial License\",\n standardDetail: \"\",\n enterprise: \"Commercial License\",\n enterpriseDetail: \"\",\n },\n {\n id: 1,\n field: \"Software Release\",\n community: \"Update to latest\",\n standard: \"1 Year Long Term Support\",\n enterprise: \"5 Years Long Term Support\",\n },\n {\n id: 2,\n field: \"SLA\",\n community: \"No SLA\",\n standard: \"<24 hours\",\n enterprise: \"<1 hour\",\n },\n {\n id: 3,\n field: \"Support\",\n community: \"Community:\",\n communityDetail: \"Public Slack Channel + Github Issues\",\n standard: \"24x7 L4 direct engineering\",\n standardDetail: \"Support via SUBNET\",\n enterprise: \"24x7 L4 direct engineering\",\n enterpriseDetail: \"Support via SUBNET\",\n },\n {\n id: 4,\n field: \"Security Updates & Critical Bugs\",\n community: \"Self Update\",\n standard: \"Guided Update\",\n enterprise: \"Guided Update\",\n },\n {\n id: 5,\n field: \"Panic Button\",\n community: \"N/A\",\n standard: \"1 per year\",\n enterprise: \"Unlimited\",\n },\n {\n id: 6,\n field: \"Annual Architecture Review\",\n community: \"N/A\",\n standard: \"Yes\",\n enterprise: \"Yes\",\n },\n {\n id: 7,\n field: \"Annual Performance Review\",\n community: \"N/A\",\n standard: \"Yes\",\n enterprise: \"Yes\",\n },\n {\n id: 8,\n field: \"Indemnification\",\n community: \"N/A\",\n standard: \"N/A\",\n enterprise: \"Yes\",\n },\n {\n id: 9,\n field: \"Security + Policy Review\",\n community: \"N/A\",\n standard: \"N/A\",\n enterprise: \"Yes\",\n },\n];\n\nexport const planButtons = [\n {\n id: 0,\n text: \"Join Slack\",\n text2: \"\",\n link: \"https://slack.min.io\",\n plan: \"community\",\n },\n {\n id: 1,\n text: \"Subscribe\",\n text2: \"Upgrade\",\n link: \"https://subnet.min.io/subscription\",\n plan: \"standard\",\n },\n {\n id: 2,\n text: \"Subscribe\",\n text2: \"Upgrade\",\n link: \"https://subnet.min.io/subscription\",\n plan: \"enterprise\",\n },\n];\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { LinearProgress, TextField } from \"@material-ui/core\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Typography from \"@material-ui/core/Typography\";\nimport Button from \"@material-ui/core/Button\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport { SubscriptionActivateRequest } from \"../Buckets/types\";\nimport { setModalErrorSnackMessage } from \"../../../actions\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport api from \"../../../common/api\";\nimport PersonOutlineOutlinedIcon from \"@material-ui/icons/PersonOutlineOutlined\";\nimport LockOutlinedIcon from \"@material-ui/icons/LockOutlined\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n errorBlock: {\n color: \"red\",\n },\n subnetLicenseKey: {\n padding: \"10px 10px 10px 0px\",\n borderRight: \"1px solid rgba(0, 0, 0, 0.12)\",\n opacity: 0.5,\n \"&:hover\": { opacity: 1 },\n },\n subnetLoginForm: {\n padding: \"10px 0px 10px 10px\",\n opacity: 0.5,\n \"&:hover\": { opacity: 1 },\n },\n licenseKeyField: {},\n pageTitle: {\n marginBottom: 20,\n },\n button: {\n textTransform: \"none\",\n fontSize: 15,\n fontWeight: 700,\n background:\n \"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box\",\n color: \"#fff\",\n },\n buttonSignup: {\n textTransform: \"none\",\n fontSize: 15,\n fontWeight: 700,\n marginLeft: 15,\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IActivationModal {\n classes: any;\n open: boolean;\n closeModal: () => void;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst ActivationModal = ({\n classes,\n open,\n closeModal,\n setModalErrorSnackMessage,\n}: IActivationModal) => {\n const [license, setLicense] = useState(\"\");\n const [subnetPassword, setSubnetPassword] = useState(\"\");\n const [subnetEmail, setSubnetEmail] = useState(\"\");\n const [loading, setLoading] = useState(false);\n\n const activateProduct = () => {\n if (loading) {\n return;\n }\n setLoading(true);\n let request: SubscriptionActivateRequest = {\n license: license,\n email: subnetEmail,\n password: subnetPassword,\n };\n api\n .invoke(\"POST\", \"/api/v1/subscription/validate\", request)\n .then(() => {\n setLoading(false);\n setLicense(\"\");\n setSubnetPassword(\"\");\n setSubnetEmail(\"\");\n closeModal();\n })\n .catch((err) => {\n setLoading(false);\n setLicense(\"\");\n setSubnetPassword(\"\");\n setSubnetEmail(\"\");\n setModalErrorSnackMessage(err);\n });\n };\n\n return open ? (\n {\n setLicense(\"\");\n setSubnetPassword(\"\");\n setSubnetEmail(\"\");\n closeModal();\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n \n \n \n Activate SUBNET License\n \n \n \n \n \n Enter your license key here\n \n \n ) =>\n setLicense(event.target.value)\n }\n fullWidth\n className={classes.licenseKeyField}\n variant=\"outlined\"\n />\n
\n
\n activateProduct()}\n disabled={loading || license.trim().length === 0}\n >\n Activate\n \n
\n \n \n \n }\n id=\"subnet-email\"\n name=\"subnet-email\"\n onChange={(event: React.ChangeEvent) => {\n setSubnetEmail(event.target.value);\n }}\n placeholder=\"email\"\n label=\"\"\n type=\"text\"\n value={subnetEmail}\n />\n \n \n }\n id=\"subnet-password\"\n name=\"subnet-password\"\n onChange={(event: React.ChangeEvent) => {\n setSubnetPassword(event.target.value);\n }}\n placeholder=\"password\"\n label=\"\"\n type=\"password\"\n value={subnetPassword}\n />\n \n \n activateProduct()}\n disabled={\n loading ||\n subnetEmail.trim().length === 0 ||\n subnetPassword.trim().length === 0\n }\n variant=\"contained\"\n >\n Activate\n \n {\n e.preventDefault();\n window.open(\"https://min.io/pricing\", \"_blank\");\n }}\n variant=\"outlined\"\n >\n Sign Up\n \n \n \n \n
\n {loading && (\n \n \n \n )}\n \n ) : null;\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(ActivationModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Paper from \"@material-ui/core/Paper\";\nimport Button from \"@material-ui/core/Button\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Typography from \"@material-ui/core/Typography\";\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport { planDetails, planItems, planButtons } from \"./utils\";\nimport ActivationModal from \"./ActivationModal\";\nimport api from \"../../../common/api\";\nimport { LicenseInfo } from \"./types\";\nimport { CircularProgress, LinearProgress } from \"@material-ui/core\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { niceBytes } from \"../../../common/utils\";\nimport Moment from \"react-moment\";\n\nconst mapState = (state: AppState) => ({\n operatorMode: state.system.operatorMode,\n});\n\nconst connector = connect(mapState, null);\n\nconst styles = (theme: Theme) =>\n createStyles({\n pageTitle: {\n fontSize: 18,\n marginBottom: 20,\n },\n paper: {\n padding: \"20px 52px 20px 28px\",\n },\n licenseContainer: {\n position: \"relative\",\n padding: \"20px 52px 0px 28px\",\n background: \"#032F51\",\n boxShadow: \"0px 3px 7px #00000014\",\n \"& h2\": {\n color: \"#FFF\",\n marginBottom: 67,\n },\n \"& a\": {\n textDecoration: \"none\",\n },\n \"& h3\": {\n color: \"#FFFFFF\",\n marginBottom: \"30px\",\n fontWeight: \"bold\",\n },\n \"& h6\": {\n color: \"#FFFFFF !important\",\n },\n },\n tableContainer: {\n marginLeft: 28,\n },\n detailsContainer: {\n textAlign: \"center\",\n paddingBottom: 12,\n borderRadius: \"3px 3px 0 0\",\n marginLeft: 8,\n maxWidth: \"calc(25% - 8px)\",\n },\n detailsContainerBorder: {\n border: \"1px solid #e2e2e2\",\n borderBottom: 0,\n borderRadius: \"4px 4px 0px 0px\",\n },\n detailsContainerBorderHighlighted: {\n border: \"1px solid #B5B5B5\",\n borderBottom: 0,\n },\n detailsTitle: {\n fontSize: 19,\n fontWeight: 700,\n marginBottom: 26,\n paddingTop: 18,\n },\n activePlanHeader: {\n fontWeight: 700,\n background: \"#D5DDE5\",\n borderRadius: \"3px 3px 0px 0px\",\n color: \"#121212\",\n padding: 8,\n borderTop: \"1px solid #D5DDE5\",\n marginTop: -2,\n },\n planHeader: {\n background: \"#FFFFFF\",\n borderRadius: \"3px 3px 0px 0px\",\n padding: 8,\n borderTop: \"1px solid #D5DDE5\",\n },\n detailsPrice: {\n fontSize: 13,\n fontWeight: 700,\n marginBottom: 8,\n },\n detailsCapacityMax: {\n minHeight: 28,\n fontSize: 10,\n fontWeight: 700,\n marginBottom: 12,\n padding: \"0% 15%\",\n },\n detailsCapacityMin: {\n fontSize: 10,\n },\n itemContainer: {\n height: 36,\n },\n itemContainerDetail: {\n height: 48,\n },\n item: {\n height: \"100%\",\n borderLeft: \"1px solid #e2e2e2\",\n borderRight: \"1px solid #e2e2e2\",\n textAlign: \"center\",\n fontSize: 10,\n fontWeight: 700,\n display: \"flex\",\n alignItems: \"center\",\n alignContent: \"center\",\n marginLeft: 8,\n maxWidth: \"calc(25% - 8px)\",\n borderTop: \"1px solid #e5e5e5\",\n },\n itemFirst: {\n borderLeft: 0,\n borderRight: 0,\n },\n itemHighlighted: {\n borderLeft: \"1px solid #B5B5B5\",\n borderRight: \"1px solid #B5B5B5\",\n },\n field: {\n textAlign: \"left\",\n fontWeight: 400,\n fontSize: 12,\n },\n checkIcon: {\n height: 12,\n color:\n \"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box\",\n },\n buttonContainer: {\n paddingTop: 8,\n paddingBottom: 24,\n height: \"100%\",\n display: \"flex\",\n justifyContent: \"center\",\n borderRadius: \"0 0 3px 3px\",\n border: \"1px solid #e2e2e2\",\n borderTop: 0,\n marginLeft: 8,\n maxWidth: \"calc(25% - 8px)\",\n },\n buttonContainerBlank: {\n border: 0,\n },\n buttonContainerHighlighted: {\n border: \"1px solid #B5B5B5\",\n borderTop: 0,\n },\n button: {\n textTransform: \"none\",\n fontSize: 15,\n fontWeight: 700,\n },\n licenseButton: {\n float: \"right\",\n marginTop: 25,\n marginRight: 25,\n },\n openSourcePolicy: {\n color: \"#1C5A8D\",\n fontWeight: \"bold\",\n },\n activateLink: {\n color: \"#1C5A8D\",\n fontWeight: \"bold\",\n clear: \"both\",\n background: \"none\",\n border: \"none\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n },\n subnetRefreshLicenseLink: {\n color: \"#1C5A8D\",\n fontWeight: \"bold\",\n clear: \"both\",\n background: \"none\",\n border: \"none\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n fontSize: 13,\n },\n fullWidth: {\n width: \"100%\",\n height: \"100%\",\n },\n midWidth: {\n width: \"70%\",\n float: \"left\",\n height: \"100%\",\n },\n smallWidth: {\n width: \"30%\",\n float: \"right\",\n height: \"100%\",\n borderRadius: \"0px 3px 0px 0px !important\",\n },\n licenseInfo: { color: \"#FFFFFF\", position: \"relative\" },\n licenseInfoTitle: {\n textTransform: \"none\",\n color: \"#BFBFBF\",\n fontSize: 11,\n },\n licenseInfoValue: {\n textTransform: \"none\",\n fontSize: 14,\n fontWeight: \"bold\",\n },\n licenseDescription: {\n background: \"#032F51\",\n padding: \"30px 30px\",\n borderTop: \"1px solid #e2e5e4\",\n borderLeft: \"1px solid #e2e5e4\",\n borderRight: \"1px solid #e2e5e4\",\n bottom: 0,\n left: \"5%\",\n right: \"5%\",\n position: \"absolute\",\n },\n currentPlanBG: {\n background: \"#022A4A 0% 0% no-repeat padding-box\",\n color: \"#FFFFFF\",\n borderTop: \"1px solid #52687d\",\n },\n currentPlanButton: {\n background: \"#FFFFFF\",\n color: \"#022A4A\",\n \"&:hover\": {\n background: \"#FFFFFF\",\n },\n },\n planItemsPadding: {\n padding: \"23px 33px\",\n },\n subnetSubTitle: {\n fontSize: 12,\n },\n verifiedIcon: {\n width: 96,\n position: \"absolute\",\n right: 0,\n bottom: 29,\n },\n loadingLoginStrategy: {\n textAlign: \"center\",\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface ILicenseProps {\n classes: any;\n operatorMode: boolean;\n}\n\nconst License = ({ classes, operatorMode }: ILicenseProps) => {\n const closeModalAndFetchLicenseInfo = () => {\n setActivateProductModal(false);\n fetchLicenseInfo();\n };\n const fetchLicenseInfo = () => {\n setLoadingLicenseInfo(true);\n api\n .invoke(\"GET\", `/api/v1/subscription/info`)\n .then((res: LicenseInfo) => {\n if (res) {\n if (res.plan === \"STANDARD\") {\n setCurrentPlanID(1);\n } else if (res.plan === \"ENTERPRISE\") {\n setCurrentPlanID(2);\n } else {\n setCurrentPlanID(1);\n }\n setLicenseInfo(res);\n }\n setLoadingLicenseInfo(false);\n })\n .catch((err: any) => {\n setLoadingLicenseInfo(false);\n });\n };\n const refreshLicense = () => {\n setLoadingRefreshLicense(true);\n api\n .invoke(\"POST\", `/api/v1/subscription/refresh`, {})\n .then((res: LicenseInfo) => {\n if (res) {\n if (res.plan === \"STANDARD\") {\n setCurrentPlanID(1);\n } else if (res.plan === \"ENTERPRISE\") {\n setCurrentPlanID(2);\n } else {\n setCurrentPlanID(1);\n }\n setLicenseInfo(res);\n }\n setLoadingRefreshLicense(false);\n })\n .catch((err: any) => {\n setLoadingRefreshLicense(false);\n });\n };\n\n const [activateProductModal, setActivateProductModal] =\n useState(false);\n\n const [licenseInfo, setLicenseInfo] = useState();\n const [currentPlanID, setCurrentPlanID] = useState(0);\n const [loadingLicenseInfo, setLoadingLicenseInfo] = useState(true);\n const [loadingRefreshLicense, setLoadingRefreshLicense] =\n useState(false);\n\n useEffect(() => {\n fetchLicenseInfo();\n }, []);\n\n if (loadingLicenseInfo) {\n return (\n \n \n \n );\n }\n return (\n \n \n \n \n \n \n {licenseInfo ? (\n \n \n \n \n License\n \n \n Commercial License\n \n \n Organization\n \n \n {licenseInfo.organization}\n \n \n Registered Capacity\n \n \n {niceBytes(\n (licenseInfo.storage_capacity * 1099511627776) // 1 Terabyte = 1099511627776 Bytes\n .toString(10)\n )}\n \n \n Expiry Date\n \n \n \n {licenseInfo.expires_at}\n \n \n \n \n \n Subscription Plan\n \n \n {licenseInfo.plan}\n \n \n Requester\n \n \n {licenseInfo.email}\n \n \n \n \n \n ) : (\n \n \"agpl\"\n \n GNU Affero General Public License\n \n \n
\n Version 3\n \n The GNU Affero General Public License is a free,\n copyleft license for software and other kinds of works,\n specifically designed to ensure cooperation with the\n Community in the case of network server software.\n \n
\n \n
\n )}\n \n \n {licenseInfo ? (\n \n {\" \"}\n \n Login to MinIO SUBNET !\n \n \n It combines a commercial license with a support experience\n unlike any other.\n \n
\n \n Login to SUBNET\n \n {operatorMode && (\n \n {\" \"}\n
\n
\n {\n e.preventDefault();\n refreshLicense();\n }}\n >\n Refresh Licence\n \n {loadingRefreshLicense && (\n \n )}\n
\n )}\n
\n ) : (\n \n \n Choosing between GNU AGPL v3 and Commercial License\n \n \n If you are building proprietary applications, you may want\n to choose the commercial license included as part of the\n Standard and Enterprise subscription plans. Applications\n must otherwise comply with all the GNU AGPLv3 License &\n Trademark obligations. Follow the links below to learn more\n about the compliance policy.\n \n
\n \n Open Source Policy Compliance\n \n
\n
\n \n Trademark Policy\n \n
\n )}\n
\n
\n \n \n \n {operatorMode ? (\n closeModalAndFetchLicenseInfo()}\n />\n ) : null}\n \n \n \n {planDetails.map((details: any) => {\n let currentPlan =\n (!licenseInfo && details.title === \"Community\") ||\n (licenseInfo &&\n licenseInfo.plan.toLowerCase() ===\n details.title.toLowerCase());\n return (\n \n \n {currentPlan ? \"Current Plan\" : \"\\u00A0\"}\n \n \n {details.title}\n \n \n {details.price}\n \n \n {details.capacityMax || \"\"}\n \n \n );\n })}\n \n {planItems.map((item: any) => {\n return (\n \n \n {item.field}\n \n \n \n {item.community === \"N/A\" ? (\n \"\"\n ) : item.community === \"Yes\" ? (\n \n ) : (\n item.community\n )}\n \n {item.communityDetail !== undefined && (\n \n {item.communityDetail}\n \n )}\n
\n \n \n {item.standard === \"N/A\" ? (\n \"\"\n ) : item.standard === \"Yes\" ? (\n \n ) : (\n item.standard\n )}\n \n \n \n \n {item.enterprise === \"N/A\" ? (\n \"\"\n ) : item.enterprise === \"Yes\" ? (\n \n ) : (\n item.enterprise\n )}\n \n \n \n );\n })}\n \n \n {planButtons.map((button: any, index: any) => {\n return (\n \n \n {\n e.preventDefault();\n window.open(\n `${button.link}/?ref=${\n operatorMode ? \"op\" : \"con\"\n }`,\n \"_blank\"\n );\n }}\n >\n {currentPlanID !== index && index > 0\n ? button.text2\n : button.text}\n \n \n {operatorMode &&\n button.text === \"Subscribe\" &&\n !(\n licenseInfo &&\n licenseInfo.plan.toLowerCase() ===\n button.plan.toLowerCase()\n ) && (\n \n {\n e.preventDefault();\n setActivateProductModal(true);\n }}\n >\n Activate\n \n \n )}\n \n );\n })}\n \n \n \n \n \n \n
\n
\n );\n};\n\nexport default connector(withStyles(styles)(License));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { TraceMessage } from \"./types\";\n\nexport const TRACE_MESSAGE_RECEIVED = \"TRACE_MESSAGE_RECEIVED\";\nexport const TRACE_RESET_MESSAGES = \"TRACE_RESET_MESSAGES\";\n\ninterface TraceMessageReceivedAction {\n type: typeof TRACE_MESSAGE_RECEIVED;\n message: TraceMessage;\n}\n\ninterface TraceResetMessagesAction {\n type: typeof TRACE_RESET_MESSAGES;\n}\n\nexport type TraceActionTypes =\n | TraceMessageReceivedAction\n | TraceResetMessagesAction;\n\nexport function traceMessageReceived(message: TraceMessage) {\n return {\n type: TRACE_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function traceResetMessages() {\n return {\n type: TRACE_RESET_MESSAGES,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseNormalClosure = 1000;\nexport const WSCloseCloseGoingAway = 1001;\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect } from \"react\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { traceMessageReceived, traceResetMessages } from \"./actions\";\nimport { TraceMessage } from \"./types\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { niceBytes, timeFromDate } from \"../../../common/utils\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport { Grid } from \"@material-ui/core\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport moment from \"moment/moment\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n logList: {\n background: \"white\",\n height: \"400px\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4px\",\n padding: \"0px\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0px\",\n padding: \"0px\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n sizeItem: {\n width: 150,\n },\n timeItem: {\n width: 100,\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface ITrace {\n classes: any;\n traceMessageReceived: typeof traceMessageReceived;\n traceResetMessages: typeof traceResetMessages;\n messages: TraceMessage[];\n namespace: string;\n tenant: string;\n}\n\nconst Trace = ({\n classes,\n traceMessageReceived,\n traceResetMessages,\n messages,\n}: ITrace) => {\n useEffect(() => {\n traceResetMessages();\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n const c = new W3CWebSocket(`${wsProt}://${url.hostname}:${port}/ws/trace`);\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: TraceMessage = JSON.parse(message.data.toString());\n m.ptime = moment(m.time, \"YYYY-MM-DD HH:mm:s.SSSS +0000 UTC\").toDate();\n m.key = Math.random();\n traceMessageReceived(m);\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n };\n return () => {\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n };\n }\n }, [traceMessageReceived, traceResetMessages]);\n\n return (\n \n \n \n \n {\n const timeParse = new Date(time);\n return timeFromDate(timeParse);\n },\n globalClass: classes.timeItem,\n },\n { label: \"Name\", elementKey: \"api\" },\n {\n label: \"Status\",\n elementKey: \"\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.statusCode} ${fullElement.statusMsg}`,\n renderFullObject: true,\n },\n {\n label: \"Location\",\n elementKey: \"configuration_id\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.host} ${fullElement.client}`,\n renderFullObject: true,\n },\n {\n label: \"Load Time\",\n elementKey: \"callStats.duration\",\n globalClass: classes.timeItem,\n },\n {\n label: \"Upload\",\n elementKey: \"callStats.rx\",\n renderFunction: niceBytes,\n globalClass: classes.sizeItem,\n },\n {\n label: \"Download\",\n elementKey: \"callStats.tx\",\n renderFunction: niceBytes,\n globalClass: classes.sizeItem,\n },\n ]}\n isLoading={false}\n records={messages}\n entityName=\"Traces\"\n idField=\"api\"\n customEmptyMessage=\"There are no traced Elements yet\"\n autoScrollToBottom\n />\n \n \n \n );\n};\n\nconst mapState = (state: AppState) => ({\n messages: state.trace.messages,\n});\n\nconst connector = connect(mapState, {\n traceMessageReceived: traceMessageReceived,\n traceResetMessages: traceResetMessages,\n});\n\nexport default connector(withStyles(styles)(Trace));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { LogMessage } from \"./types\";\n\nexport const LOG_MESSAGE_RECEIVED = \"LOG_MESSAGE_RECEIVED\";\nexport const LOG_RESET_MESSAGES = \"LOG_RESET_MESSAGES\";\n\ninterface LogMessageReceivedAction {\n type: typeof LOG_MESSAGE_RECEIVED;\n message: LogMessage;\n}\n\ninterface LogResetMessagesAction {\n type: typeof LOG_RESET_MESSAGES;\n}\n\nexport type LogActionTypes = LogMessageReceivedAction | LogResetMessagesAction;\n\nexport function logMessageReceived(message: LogMessage) {\n return {\n type: LOG_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function logResetMessages() {\n return {\n type: LOG_RESET_MESSAGES,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { connect } from \"react-redux\";\nimport { Grid } from \"@material-ui/core\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport moment from \"moment/moment\";\nimport { AppState } from \"../../../../store\";\nimport { logMessageReceived, logResetMessages } from \"../actions\";\nimport { LogMessage } from \"../types\";\nimport { timeFromDate } from \"../../../../common/utils\";\nimport { wsProtocol } from \"../../../../utils/wsUtils\";\nimport {\n actionsTray,\n logsCommon,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n logList: {\n background: \"#fff\",\n minHeight: 400,\n height: \"calc(100vh - 304px)\",\n overflow: \"auto\",\n fontSize: 13,\n padding: \"25px 45px 0\",\n border: \"1px solid #EAEDEE\",\n borderRadius: 4,\n },\n tab: {\n paddingLeft: 25,\n },\n logerror: {\n color: \"#A52A2A\",\n },\n logerror_tab: {\n color: \"#A52A2A\",\n paddingLeft: 25,\n },\n ansidefault: {\n color: \"#000\",\n },\n highlight: {\n \"& span\": {\n backgroundColor: \"#082F5238\",\n },\n },\n ...actionsTray,\n ...searchField,\n ...logsCommon,\n });\n\ninterface ILogs {\n classes: any;\n logMessageReceived: typeof logMessageReceived;\n logResetMessages: typeof logResetMessages;\n messages: LogMessage[];\n}\n\nconst ErrorLogs = ({\n classes,\n logMessageReceived,\n logResetMessages,\n messages,\n}: ILogs) => {\n const [highlight, setHighlight] = useState(\"\");\n\n useEffect(() => {\n logResetMessages();\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/console`\n );\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n // console.log(message.data.toString())\n // FORMAT: 00:35:17 UTC 01/01/2021\n let m: LogMessage = JSON.parse(message.data.toString());\n m.time = moment(m.time, \"HH:mm:s UTC MM/DD/YYYY\").toDate();\n m.key = Math.random();\n logMessageReceived(m);\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n };\n return () => {\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n };\n }\n }, [logMessageReceived, logResetMessages]);\n\n const renderError = (logElement: LogMessage) => {\n let errorElems = [];\n if (logElement.error !== null && logElement.error !== undefined) {\n if (logElement.api && logElement.api.name) {\n const errorText = `API: ${logElement.api.name}`;\n\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n\n errorElems.push(\n \n
\n {errorText}\n
\n );\n }\n if (logElement.time) {\n const errorText = `Time: ${timeFromDate(logElement.time)}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n
\n );\n }\n if (logElement.deploymentid) {\n const errorText = `DeploymentID: ${logElement.deploymentid}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.requestID) {\n const errorText = `RequestID: ${logElement.requestID}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.remotehost) {\n const errorText = `RemoteHost: ${logElement.remotehost}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.host) {\n const errorText = `Host: ${logElement.host}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.userAgent) {\n const errorText = `UserAgent: ${logElement.userAgent}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.error.message) {\n const errorText = `Error: ${logElement.error.message}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.error.source) {\n // for all sources add padding\n for (let s in logElement.error.source) {\n const errorText = logElement.error.source[s];\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n }\n }\n return errorElems;\n };\n\n const renderLog = (logElement: LogMessage) => {\n let logMessage = logElement.ConsoleMsg;\n // remove any non ascii characters, exclude any control codes\n logMessage = logMessage.replace(/([^\\x20-\\x7F])/g, \"\");\n\n // regex for terminal colors like e.g. `[31;4m `\n const tColorRegex = /((\\[[0-9;]+m))/g;\n\n // get substring if there was a match for to split what\n // is going to be colored and what not, here we add color\n // only to the first match.\n let substr = logMessage.replace(tColorRegex, \"\");\n\n // in case highlight is set, we select the line that contains the requested string\n let highlightedLine =\n highlight !== \"\"\n ? logMessage.toLowerCase().includes(highlight.toLowerCase())\n : false;\n\n // if starts with multiple spaces add padding\n if (substr.startsWith(\" \")) {\n return (\n \n {substr}\n \n );\n } else if (logElement.error !== null && logElement.error !== undefined) {\n // list error message and all sources and error elems\n return renderError(logElement);\n } else {\n // for all remaining set default class\n return (\n \n {substr}\n \n );\n }\n };\n\n const renderLines = messages.map((m) => {\n return renderLog(m);\n });\n\n return (\n \n \n \n {\n setHighlight(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n \n \n
\n
\n \n
{renderLines}
\n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n messages: state.logs.messages,\n});\n\nconst connector = connect(mapState, {\n logMessageReceived: logMessageReceived,\n logResetMessages: logResetMessages,\n});\n\nexport default withStyles(styles)(connector(ErrorLogs));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport TextField from \"@material-ui/core/TextField\";\nimport { searchField } from \"../common/styleLibrary\";\n\ninterface IFilterInputWrapper {\n classes: any;\n value: string;\n onChange: (txtVar: string) => any;\n label: string;\n placeholder?: string;\n id: string;\n name: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n searchField: {\n ...searchField.searchField,\n height: 30,\n padding: 0,\n \"& input\": {\n padding: \"0 12px\",\n height: 28,\n fontSize: 12,\n fontWeight: 600,\n color: \"#393939\",\n },\n \"&.isDisabled\": {\n \"&:hover\": {\n borderColor: \"#EAEDEE\",\n },\n },\n \"& input.Mui-disabled\": {\n backgroundColor: \"#EAEAEA\",\n },\n },\n labelStyle: {\n color: \"#393939\",\n fontSize: 12,\n marginBottom: 4,\n },\n buttonKit: {\n display: \"flex\",\n alignItems: \"center\",\n },\n toggleButton: {\n marginRight: 10,\n },\n fieldContainer: {\n flexGrow: 1,\n margin: \"0 15px\",\n },\n });\n\nconst FilterInputWrapper = ({\n classes,\n label,\n onChange,\n value,\n placeholder = \"\",\n id,\n name,\n}: IFilterInputWrapper) => {\n return (\n \n
\n
{label}
\n
\n {\n onChange(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n }}\n className={classes.searchField}\n value={value}\n />\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(FilterInputWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect, useCallback } from \"react\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Button, Grid } from \"@material-ui/core\";\nimport { ArrowDropUp } from \"@material-ui/icons\";\nimport ArrowDropDownIcon from \"@material-ui/icons/ArrowDropDown\";\nimport {\n actionsTray,\n containerForHeader,\n logsCommon,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { IReqInfoSearchResults, ISearchResponse } from \"./types\";\nimport { niceBytes, nsToSeconds } from \"../../../../common/utils\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport api from \"../../../../common/api\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport FilterInputWrapper from \"../../Common/FormComponents/FilterInputWrapper/FilterInputWrapper\";\nimport DateTimePickerWrapper from \"../../Common/FormComponents/DateTimePickerWrapper/DateTimePickerWrapper\";\n\ninterface ILogSearchProps {\n classes: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n inputBar: {\n flexGrow: 1,\n marginLeft: 15,\n },\n advancedLabel: {\n display: \"flex\",\n alignItems: \"center\",\n color: \"#091C42\",\n border: 0,\n backgroundColor: \"transparent\",\n cursor: \"pointer\",\n \"&:focus, &:active\": {\n outline: \"none\",\n },\n },\n advancedLabelContainer: {\n marginTop: 10,\n },\n getInformationContainer: {\n textAlign: \"right\",\n },\n orderButton: {\n width: 93,\n },\n recordsLabel: {\n alignSelf: \"center\",\n marginLeft: 15,\n },\n blockCollapsed: {\n height: 0,\n overflowY: \"hidden\",\n transitionDuration: \"0.3s\",\n },\n filterOpen: {\n height: 200,\n marginBottom: 12,\n },\n endLineAction: {\n marginBottom: 15,\n },\n filtersContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n marginBottom: 12,\n },\n innerContainer: {\n backgroundColor: \"#fff\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n padding: 10,\n marginBottom: 15,\n },\n noticeLabel: {\n marginLeft: 15,\n marginBottom: 15,\n fontSize: 12,\n color: \"#9C9C9C\",\n },\n\n tableFOpen: {\n height: \"calc(100vh - 561px)\",\n },\n tableFClosed: {\n height: \"calc(100vh - 349px)\",\n },\n \"@global\": {\n \".overrideMargin\": {\n marginLeft: 0,\n },\n },\n ...searchField,\n ...actionsTray,\n ...logsCommon,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst LogsSearchMain = ({ classes, setErrorSnackMessage }: ILogSearchProps) => {\n const [loading, setLoading] = useState(true);\n const [timeStart, setTimeStart] = useState(null);\n const [timeEnd, setTimeEnd] = useState(null);\n const [filterOpen, setFilterOpen] = useState(false);\n const [records, setRecords] = useState([]);\n const [bucket, setBucket] = useState(\"\");\n const [apiName, setApiName] = useState(\"\");\n const [userAgent, setUserAgent] = useState(\"\");\n const [object, setObject] = useState(\"\");\n const [requestID, setRequestID] = useState(\"\");\n const [responseStatus, setResponseStatus] = useState(\"\");\n const [sortOrder, setSortOrder] =\n useState<\"ASC\" | \"DESC\" | undefined>(\"DESC\");\n const [columnsShown, setColumnsShown] = useState([\n \"time\",\n \"api_name\",\n \"bucket\",\n \"object\",\n \"remote_host\",\n \"request_id\",\n \"user_agent\",\n \"response_status\",\n ]);\n const [nextPage, setNextPage] = useState(0);\n const [alreadyFetching, setAlreadyFetching] = useState(false);\n\n let recordsResp: any = null;\n\n const fetchRecords = useCallback(() => {\n if (!alreadyFetching) {\n setAlreadyFetching(true);\n let queryParams = `${bucket !== \"\" ? `&fp=bucket:${bucket}` : \"\"}${\n object !== \"\" ? `&fp=object:${object}` : \"\"\n }${apiName !== \"\" ? `&fp=api_name:${apiName}` : \"\"}${\n requestID !== \"\" ? `&fp=request_id:${requestID}` : \"\"\n }${userAgent !== \"\" ? `&fp=user_agent:${userAgent}` : \"\"}${\n responseStatus !== \"\" ? `&fp=response_status:${responseStatus}` : \"\"\n }`;\n\n queryParams = queryParams.trim();\n\n if (queryParams.endsWith(\",\")) {\n queryParams = queryParams.slice(0, -1);\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/logs/search?q=reqinfo${\n queryParams !== \"\" ? `${queryParams}` : \"\"\n }&pageSize=100&pageNo=${nextPage}&order=${\n sortOrder === \"DESC\" ? \"timeDesc\" : \"timeAsc\"\n }${\n timeStart !== null ? `&timeStart=${timeStart.toISOString()}` : \"\"\n }${timeEnd !== null ? `&timeEnd=${timeEnd.toISOString()}` : \"\"}`\n )\n .then((res: ISearchResponse) => {\n const fetchedResults = res.results || [];\n const newResultSet = [...records, ...fetchedResults];\n\n setLoading(false);\n setAlreadyFetching(false);\n setRecords(newResultSet);\n setNextPage(nextPage + 1);\n\n if (recordsResp !== null) {\n recordsResp();\n }\n })\n .catch((err: any) => {\n setLoading(false);\n setAlreadyFetching(false);\n setErrorSnackMessage(err);\n });\n }\n }, [\n bucket,\n object,\n apiName,\n requestID,\n userAgent,\n responseStatus,\n nextPage,\n sortOrder,\n timeStart,\n timeEnd,\n alreadyFetching,\n records,\n recordsResp,\n setErrorSnackMessage,\n ]);\n\n useEffect(() => {\n if (loading) {\n setRecords([]);\n fetchRecords();\n }\n }, [loading, sortOrder, fetchRecords]);\n\n const triggerLoad = () => {\n setNextPage(0);\n setLoading(true);\n };\n\n const selectColumn = (colName: string, active: boolean) => {\n let newArray = [...columnsShown];\n\n if (!active) {\n newArray = columnsShown.filter((element) => element !== colName);\n } else {\n if (!newArray.includes(colName)) {\n newArray.push(colName);\n }\n }\n setColumnsShown(newArray);\n };\n\n const sortChange = (sortData: any) => {\n const newSortDirection = get(sortData, \"sortDirection\", \"DESC\");\n setSortOrder(newSortDirection);\n setNextPage(0);\n setLoading(true);\n };\n\n const loadMoreRecords = (_: { startIndex: number; stopIndex: number }) => {\n fetchRecords();\n return new Promise((resolve) => {\n recordsResp = resolve;\n });\n };\n\n return (\n \n \n \n Start Time\n \n End Time\n \n \n \n \n
\n
\n Enable your preferred options to get filtered records.\n
\n You can use '*' to match any character, '.' to signify a single\n character or '\\' to scape an special character (E.g. mybucket-*)\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n
\n \n
\n {\n setFilterOpen(!filterOpen);\n }}\n >\n Advanced Filters{\" \"}\n {filterOpen ? : }\n \n
\n \n Get Information\n \n \n \n (\n \n \n {element.response_status_code} ({element.response_status})\n \n \n ),\n renderFullObject: true,\n },\n {\n label: \"Request Content Length\",\n elementKey: \"request_content_length\",\n renderFunction: niceBytes,\n },\n {\n label: \"Response Content Length\",\n elementKey: \"response_content_length\",\n renderFunction: niceBytes,\n },\n {\n label: \"Time to Response NS\",\n elementKey: \"time_to_response_ns\",\n renderFunction: nsToSeconds,\n contentTextAlign: \"right\",\n },\n ]}\n isLoading={loading}\n records={records}\n entityName=\"Logs\"\n customEmptyMessage={\"There is no information with this criteria\"}\n idField=\"request_id\"\n columnsSelector\n columnsShown={columnsShown}\n onColumnChange={selectColumn}\n customPaperHeight={\n filterOpen ? classes.tableFOpen : classes.tableFClosed\n }\n sortConfig={{\n currentSort: \"time\",\n currentDirection: sortOrder,\n triggerSort: sortChange,\n }}\n infiniteScrollConfig={{\n recordsCount: 1000000,\n loadMoreRecords: loadMoreRecords,\n }}\n textSelectable\n />\n \n \n
\n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(LogsSearchMain));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport { Grid, LinearProgress } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Tab from \"@material-ui/core/Tab\";\nimport Tabs from \"@material-ui/core/Tabs\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport ErrorLogs from \"./ErrorLogs/ErrorLogs\";\nimport LogsSearchMain from \"./LogSearch/LogsSearchMain\";\nimport api from \"../../../common/api\";\n\ninterface ILogsMainProps {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst LogsMain = ({ classes }: ILogsMainProps) => {\n const [currentTab, setCurrentTab] = useState(0);\n const [loading, setLoading] = useState(true);\n const [showLogSearch, setShowLogSearch] = useState(false);\n\n useEffect(() => {\n api\n .invoke(\"GET\", `/api/v1/logs/search?q=reqinfo&pageSize=10&pageNo=0`)\n .then(() => {\n setShowLogSearch(true);\n setLoading(false);\n })\n .catch((err: any) => {\n setLoading(false);\n console.info(\"Log Search API not available.\");\n });\n }, [loading]);\n\n return (\n \n \n \n \n {!loading ? (\n \n \n All Logs\n \n , newValue: number) => {\n setCurrentTab(newValue);\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n aria-label=\"cluster-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n {showLogSearch && }\n \n \n {currentTab === 0 && (\n \n \n \n )}\n {currentTab === 1 && showLogSearch && (\n \n \n \n )}\n \n \n ) : (\n \n )}\n \n \n \n );\n};\n\nexport default withStyles(styles)(LogsMain);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { HorizontalBar } from \"react-chartjs-2\";\nimport React, { useEffect, useState } from \"react\";\nimport { Button, Grid, TextField, InputBase } from \"@material-ui/core\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport api from \"../../../common/api\";\nimport { FormControl, MenuItem, Select } from \"@material-ui/core\";\nimport { BucketList, Bucket } from \"../Watch/types\";\nimport { HealStatus, colorH } from \"./types\";\nimport { niceBytes } from \"../../../common/utils\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport CheckboxWrapper from \"../Common/FormComponents/CheckboxWrapper/CheckboxWrapper\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n watchList: {\n background: \"white\",\n maxHeight: \"400\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4\",\n padding: \"0\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0\",\n padding: \"0\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n graphContainer: {\n backgroundColor: \"#fff\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n padding: \"19px 38px\",\n },\n scanInfo: {\n marginTop: 20,\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n },\n scanData: {\n fontSize: 13,\n },\n inlineCheckboxes: {\n display: \"flex\",\n justifyContent: \"flex-start\",\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IHeal {\n classes: any;\n}\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n width: 450,\n lineHeight: \"50px\",\n marginRight: 15,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n \"& .MuiSelect-select:focus\": {\n backgroundColor: \"transparent\",\n },\n },\n input: {\n height: 50,\n fontSize: 13,\n lineHeight: \"50px\",\n width: 450,\n },\n })\n)(InputBase);\n\nconst Heal = ({ classes }: IHeal) => {\n const [start, setStart] = useState(false);\n const [bucketName, setBucketName] = useState(\"\");\n const [bucketList, setBucketList] = useState([]);\n const [prefix, setPrefix] = useState(\"\");\n const [recursive, setRecursive] = useState(false);\n const [forceStart, setForceStart] = useState(false);\n const [forceStop, setForceStop] = useState(false);\n // healStatus states\n const [hStatus, setHStatus] = useState({\n beforeHeal: [0, 0, 0, 0],\n afterHeal: [0, 0, 0, 0],\n objectsHealed: 0,\n objectsScanned: 0,\n healDuration: 0,\n sizeScanned: \"\",\n });\n\n const fetchBucketList = () => {\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n let buckets: Bucket[] = [];\n if (res.buckets !== null) {\n buckets = res.buckets;\n }\n setBucketList(buckets);\n })\n .catch((err: any) => {\n console.log(err);\n });\n };\n\n useEffect(() => {\n fetchBucketList();\n }, []);\n\n // forceStart and forceStop need to be mutually exclusive\n useEffect(() => {\n if (forceStart === true) {\n setForceStop(false);\n }\n }, [forceStart]);\n\n useEffect(() => {\n if (forceStop === true) {\n setForceStart(false);\n }\n }, [forceStop]);\n\n const colorHealthArr = (color: colorH) => {\n return [color.Green, color.Yellow, color.Red, color.Grey];\n };\n\n useEffect(() => {\n // begin watch if bucketName in bucketList and start pressed\n if (start) {\n // values stored here to update chart\n const cB: colorH = { Green: 0, Yellow: 0, Red: 0, Grey: 0 };\n const cA: colorH = { Green: 0, Yellow: 0, Red: 0, Grey: 0 };\n\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/heal/${bucketName}?prefix=${prefix}&recursive=${recursive}&force-start=${forceStart}&force-stop=${forceStop}`\n );\n\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: HealStatus = JSON.parse(message.data.toString());\n // Store percentage per health color\n for (const [key, value] of Object.entries(m.healthAfterCols)) {\n cA[key] = (value * 100) / m.itemsScanned;\n }\n for (const [key, value] of Object.entries(m.healthBeforeCols)) {\n cB[key] = (value * 100) / m.itemsScanned;\n }\n setHStatus({\n beforeHeal: colorHealthArr(cB),\n afterHeal: colorHealthArr(cA),\n objectsHealed: m.objectsHealed,\n objectsScanned: m.objectsScanned,\n healDuration: m.healDuration,\n sizeScanned: niceBytes(m.bytesScanned.toString()),\n });\n };\n c.onclose = () => {\n setStart(false);\n console.log(\"connection closed by server\");\n };\n return () => {\n // close websocket on useEffect cleanup\n c.close(1000);\n console.log(\"closing websockets\");\n };\n }\n }\n }, [start, bucketName, forceStart, forceStop, prefix, recursive]);\n\n let data = {\n labels: [\"Green\", \"Yellow\", \"Red\", \"Grey\"],\n datasets: [\n {\n label: \"After Healing\",\n data: hStatus.afterHeal,\n backgroundColor: \"rgba(0, 0, 255, 0.2)\",\n borderColor: \"rgba(54, 162, 235, 1)\",\n borderWidth: 1,\n },\n {\n label: \"Before Healing\",\n data: hStatus.beforeHeal,\n backgroundColor: \"rgba(153, 102, 255, 0.2)\",\n borderColor: \"rgba(153, 102, 255, 1)\",\n borderWidth: 1,\n },\n ],\n };\n const bucketNames = bucketList.map((bucketName) => ({\n label: bucketName.name,\n value: bucketName.name,\n }));\n return (\n \n \n \n \n \n \n {\n setBucketName(e.target.value as string);\n }}\n className={classes.searchField}\n input={}\n displayEmpty\n >\n \n Select Bucket\n \n {bucketNames.map((option) => (\n \n {option.label}\n \n ))}\n \n \n {\n setPrefix(e.target.value);\n }}\n />\n setStart(true)}\n >\n Start\n \n \n \n {\n setRecursive(e.target.checked);\n }}\n disabled={false}\n label=\"Recursive\"\n />\n {\n setForceStart(e.target.checked);\n }}\n disabled={false}\n label=\"Force Start\"\n />\n {\n setForceStop(e.target.checked);\n }}\n disabled={false}\n label=\"Force Stop\"\n />\n \n \n
\n
\n \n \n \n
\n Size scanned: {hStatus.sizeScanned}\n
\n
\n Objects healed: {hStatus.objectsHealed} /{\" \"}\n {hStatus.objectsScanned}\n
\n
\n Healing time: {hStatus.healDuration}s\n
\n
\n
\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(Heal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { EventInfo } from \"./types\";\n\nexport const WATCH_MESSAGE_RECEIVED = \"WATCH_MESSAGE_RECEIVED\";\nexport const WATCH_RESET_MESSAGES = \"WATCH_RESET_MESSAGES\";\n\ninterface WatchMessageReceivedAction {\n type: typeof WATCH_MESSAGE_RECEIVED;\n message: EventInfo;\n}\n\ninterface WatchResetMessagesAction {\n type: typeof WATCH_RESET_MESSAGES;\n}\n\nexport type WatchActionTypes =\n | WatchMessageReceivedAction\n | WatchResetMessagesAction;\n\nexport function watchMessageReceived(message: EventInfo) {\n return {\n type: WATCH_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function watchResetMessages() {\n return {\n type: WATCH_RESET_MESSAGES,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { useEffect, useState } from \"react\";\nimport { Button, Grid, TextField, InputBase } from \"@material-ui/core\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { watchMessageReceived, watchResetMessages } from \"./actions\";\nimport { EventInfo, BucketList, Bucket } from \"./types\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { niceBytes, timeFromDate } from \"../../../common/utils\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport api from \"../../../common/api\";\nimport { FormControl, MenuItem, Select } from \"@material-ui/core\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n watchList: {\n background: \"white\",\n height: \"400px\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4px\",\n padding: \"0px\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0px\",\n padding: \"0px\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n searchPrefix: {\n flexGrow: 1,\n marginLeft: 15,\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n width: 450,\n lineHeight: \"50px\",\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n \"& .MuiSelect-select:focus\": {\n backgroundColor: \"transparent\",\n },\n },\n input: {\n height: 50,\n fontSize: 13,\n lineHeight: \"50px\",\n width: 450,\n },\n })\n)(InputBase);\n\ninterface IWatch {\n classes: any;\n watchMessageReceived: typeof watchMessageReceived;\n watchResetMessages: typeof watchResetMessages;\n messages: EventInfo[];\n}\n\nconst Watch = ({\n classes,\n watchMessageReceived,\n watchResetMessages,\n messages,\n}: IWatch) => {\n const [start, setStart] = useState(false);\n const [bucketName, setBucketName] = useState(\"Select Bucket\");\n const [prefix, setPrefix] = useState(\"\");\n const [suffix, setSuffix] = useState(\"\");\n const [bucketList, setBucketList] = useState([]);\n\n const fetchBucketList = () => {\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n let buckets: Bucket[] = [];\n if (res.buckets !== null) {\n buckets = res.buckets;\n }\n setBucketList(buckets);\n })\n .catch((err: any) => {\n console.log(err);\n });\n };\n useEffect(() => {\n fetchBucketList();\n }, []);\n\n useEffect(() => {\n watchResetMessages();\n // begin watch if bucketName in bucketList and start pressed\n if (start && bucketList.some((bucket) => bucket.name === bucketName)) {\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/watch/${bucketName}?prefix=${prefix}&suffix=${suffix}`\n );\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: EventInfo = JSON.parse(message.data.toString());\n m.Time = new Date(m.Time.toString());\n m.key = Math.random();\n watchMessageReceived(m);\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n // reset start status\n setStart(false);\n };\n return () => {\n // close websocket on useEffect cleanup\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n };\n }\n } else {\n // reset start status\n setStart(false);\n }\n }, [\n watchMessageReceived,\n start,\n bucketList,\n bucketName,\n prefix,\n suffix,\n watchResetMessages,\n ]);\n\n const bucketNames = bucketList.map((bucketName) => ({\n label: bucketName.name,\n value: bucketName.name,\n }));\n\n return (\n \n \n \n \n \n \n {\n setBucketName(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={start}\n input={}\n >\n \n Select Bucket\n \n {bucketNames.map((option) => (\n \n {option.label}\n \n ))}\n \n \n {\n setPrefix(e.target.value);\n }}\n />\n {\n setSuffix(e.target.value);\n }}\n />\n setStart(true)}\n >\n Start\n \n \n \n
\n
\n \n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n messages: state.watch.messages,\n});\n\nconst connector = connect(mapState, {\n watchMessageReceived: watchMessageReceived,\n watchResetMessages: watchResetMessages,\n});\n\nexport default connector(withStyles(styles)(Watch));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { HealthInfoMessage } from \"./types\";\n\nexport const HEALTH_INFO_MESSAGE_RECEIVED = \"HEALTH_INFO_MESSAGE_RECEIVED\";\nexport const HEALTH_INFO_RESET_MESSAGE = \"HEALTH_INFO_RESET_MESSAGE\";\n\ninterface HealthInfoMessageReceivedAction {\n type: typeof HEALTH_INFO_MESSAGE_RECEIVED;\n message: HealthInfoMessage;\n}\n\ninterface HealthInfoResetMessagesAction {\n type: typeof HEALTH_INFO_RESET_MESSAGE;\n}\n\nexport type HealthInfoActionTypes =\n | HealthInfoMessageReceivedAction\n | HealthInfoResetMessagesAction;\n\nexport function healthInfoMessageReceived(message: HealthInfoMessage) {\n return {\n type: HEALTH_INFO_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function healthInfoResetMessage() {\n return {\n type: HEALTH_INFO_RESET_MESSAGE,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const DiagStatError = \"error\";\nexport const DiagStatSuccess = \"success\";\nexport const DiagStatInProgress = \"inProgress\";\nexport interface HealthInfoMessage {\n timestamp: Date;\n error: string;\n perf: perfInfo;\n minio: minioHealthInfo;\n sys: sysHealthInfo;\n}\n\nexport interface perfInfo {\n drives: serverDrivesInfo[];\n net: serverNetHealthInfo[];\n net_parallel: serverNetHealthInfo;\n error: string;\n}\n\nexport interface serverDrivesInfo {\n addr: string;\n serial: drivePerfInfo[];\n parallel: drivePerfInfo[];\n error: string;\n}\n\nexport interface drivePerfInfo {\n endpoint: string;\n latency: diskLatency;\n throughput: diskThroughput;\n error: string;\n}\nexport interface diskLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\n\nexport interface diskThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface serverNetHealthInfo {\n addr: string;\n net: netPerfInfo[];\n error: string;\n}\n\nexport interface netPerfInfo {\n remote: string;\n latency: netLatency;\n throughput: netThroughput;\n error: string;\n}\n\nexport interface netLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\nexport interface netThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface minioHealthInfo {\n info: infoMessage;\n config: any;\n error: string;\n}\n\nexport interface infoMessage {\n mode: string;\n domain: string[];\n region: string;\n sqsARN: string[];\n deploymentID: string;\n buckets: buckets;\n objects: objects;\n usage: usage;\n services: services;\n backend: any;\n servers: serverProperties[];\n}\n\nexport interface buckets {\n count: number;\n}\n\nexport interface objects {\n count: number;\n}\n\nexport interface usage {\n size: number;\n}\n\nexport interface services {\n vault: vault;\n ldap: ldap;\n logger: Map[];\n audit: Map[];\n notifications: Map[]>;\n}\n\nexport interface vault {\n status: string;\n encrypt: string;\n decrypt: string;\n}\n\nexport interface ldap {\n status: string;\n}\n\nexport interface status {\n status: string;\n}\n\nexport interface serverProperties {\n state: string;\n endpoint: string;\n uptime: number;\n version: string;\n commitID: string;\n network: Map;\n drives: disk[];\n}\n\nexport interface disk {\n endpoint: string;\n rootDisk: boolean;\n path: string;\n healing: boolean;\n state: string;\n uuid: string;\n model: string;\n totalspace: number;\n usedspace: number;\n availspace: number;\n readthroughput: number;\n writethroughput: number;\n readlatency: number;\n writelatency: number;\n utilization: number;\n}\n\nexport interface sysHealthInfo {\n cpus: serverCpuInfo[];\n drives: serverDiskHwInfo[];\n osinfos: serverOsInfo[];\n meminfos: serverMemInfo[];\n procinfos: serverProcInfo[];\n error: string;\n}\n\nexport interface serverCpuInfo {\n addr: string;\n cpu: cpuInfoStat[];\n time: cpuTimeStat[];\n error: string;\n}\n\nexport interface cpuInfoStat {\n cpu: number;\n vendorId: string;\n family: string;\n model: string;\n stepping: number;\n physicalId: string;\n coreId: string;\n cores: number;\n modelName: string;\n mhz: number;\n cacheSize: number;\n flags: string[];\n microcode: string;\n}\n\nexport interface cpuTimeStat {\n cpu: string;\n user: number;\n system: number;\n idle: number;\n nice: number;\n iowait: number;\n irq: number;\n softirq: number;\n steal: number;\n guest: number;\n guestNice: number;\n}\n\nexport interface serverDiskHwInfo {\n addr: string;\n usages: diskUsageStat[];\n partitions: partitionStat[];\n counters: Map;\n error: string;\n}\n\nexport interface diskUsageStat {\n path: string;\n fstype: string;\n total: number;\n free: number;\n used: number;\n usedPercent: number;\n inodesTotal: number;\n inodesUsed: number;\n inodesFree: number;\n inodesUsedPercent: number;\n}\n\nexport interface partitionStat {\n device: string;\n mountpoint: string;\n fstype: string;\n opts: string;\n smartInfo: smartInfo;\n}\n\nexport interface smartInfo {\n device: string;\n scsi: scsiInfo;\n nvme: nvmeInfo;\n ata: ataInfo;\n error: string;\n}\n\nexport interface scsiInfo {\n scsiCapacityBytes: number;\n scsiModeSenseBuf: string;\n scsirespLen: number;\n scsiBdLen: number;\n scsiOffset: number;\n sciRpm: number;\n}\n\nexport interface nvmeInfo {\n serialNum: string;\n vendorId: string;\n firmwareVersion: string;\n modelNum: string;\n spareAvailable: string;\n spareThreshold: string;\n temperature: string;\n criticalWarning: string;\n maxDataTransferPages: number;\n controllerBusyTime: number;\n powerOnHours: number;\n powerCycles: number;\n unsafeShutdowns: number;\n mediaAndDataIntgerityErrors: number;\n dataUnitsReadBytes: number;\n dataUnitsWrittenBytes: number;\n hostReadCommands: number;\n hostWriteCommands: number;\n}\n\nexport interface ataInfo {\n scsiLuWWNDeviceID: string;\n serialNum: string;\n modelNum: string;\n firmwareRevision: string;\n RotationRate: string;\n MajorVersion: string;\n MinorVersion: string;\n smartSupportAvailable: boolean;\n smartSupportEnabled: boolean;\n smartErrorLog: string;\n transport: string;\n}\n\nexport interface diskIOCountersStat {\n readCount: number;\n mergedReadCount: number;\n DriteCount: number;\n mergedWriteCount: number;\n readBytes: number;\n writeBytes: number;\n readTime: number;\n writeTime: number;\n iopsInProgress: number;\n ioTime: number;\n weightedIO: number;\n name: string;\n serialNumber: string;\n label: string;\n}\n\nexport interface serverOsInfo {\n addr: string;\n info: infoStat;\n sensors: temperatureStat[];\n users: userStat[];\n error: string;\n}\n\nexport interface infoStat {\n hostname: string;\n uptime: number;\n bootTime: number;\n procs: number;\n os: string;\n platform: string;\n platformFamily: string;\n platformVersion: string;\n kernelVersion: string;\n kernelArch: string;\n virtualizationSystem: string;\n virtualizationRole: string;\n hostid: string;\n}\n\nexport interface temperatureStat {\n sensorKey: string;\n sensorTemperature: number;\n}\n\nexport interface userStat {\n user: string;\n terminal: string;\n host: string;\n started: number;\n}\n\nexport interface serverMemInfo {\n addr: string;\n swap: swapMemoryStat;\n virtualmem: virtualMemoryStat;\n error: string;\n}\n\nexport interface swapMemoryStat {\n total: number;\n used: number;\n free: number;\n usedPercent: number;\n sin: number;\n sout: number;\n pgin: number;\n pgout: number;\n pgfault: number;\n pgmajfault: number;\n}\n\nexport interface virtualMemoryStat {\n total: number;\n available: number;\n used: number;\n usedPercent: number;\n free: number;\n active: number;\n inactive: number;\n wired: number;\n laundry: number;\n buffers: number;\n cached: number;\n writeback: number;\n dirty: number;\n writebacktmp: number;\n shared: number;\n slab: number;\n sreclaimable: number;\n sunreclaim: number;\n pagetables: number;\n swapcached: number;\n commitlimit: number;\n committedas: number;\n hightotal: number;\n highfree: number;\n lowtotal: number;\n lowfree: number;\n swaptotal: number;\n swapfree: number;\n mapped: number;\n vmalloctotal: number;\n vmallocused: number;\n vmallocchunk: number;\n hugepagestotal: number;\n hugepagesfree: number;\n hugepagesize: number;\n}\n\nexport interface serverProcInfo {\n addr: string;\n processes: sysProcess[];\n error: string;\n}\n\nexport interface sysProcess {\n pid: number;\n background: boolean;\n cpupercent: number;\n children: number[];\n cmd: string;\n connections: nethwConnectionStat[];\n createtime: number;\n cwd: string;\n exe: string;\n gids: number[];\n iocounters: processIOCountersStat;\n isrunning: boolean;\n meminfo: memoryInfoStat;\n memmaps: any[];\n mempercent: number;\n name: string;\n netiocounters: nethwIOCounterStat[];\n nice: number;\n numctxswitches: processNmCtxSwitchesStat;\n numfds: number;\n numthreads: number;\n pagefaults: processPageFaultsStat;\n parent: number;\n ppid: number;\n rlimit: processRLimitStat[];\n status: string;\n tgid: number;\n cputimes: cpuTimeStat;\n uids: number[];\n username: string;\n}\n\nexport interface nethwConnectionStat {\n fd: number;\n family: number;\n type: number;\n localaddr: netAddr;\n remoteaddr: netAddr;\n status: string;\n uids: number[];\n pid: number;\n}\n\nexport interface netAddr {\n ip: string;\n port: number;\n}\n\nexport interface processIOCountersStat {\n readCount: number;\n writeCount: number;\n readBytes: number;\n writeBytes: number;\n}\n\nexport interface memoryInfoStat {\n rss: number;\n vms: number;\n hwm: number;\n data: number;\n stack: number;\n locked: number;\n swap: number;\n}\n\nexport interface nethwIOCounterStat {\n name: string;\n bytesSent: number;\n bytesRecv: number;\n packetsSent: number;\n packetsRecv: number;\n errin: number;\n errout: number;\n dropin: number;\n dropout: number;\n fifoin: number;\n fifoout: number;\n}\n\nexport interface processNmCtxSwitchesStat {\n voluntary: number;\n involuntary: number;\n}\n\nexport interface processPageFaultsStat {\n minorFaults: number;\n majorFaults: number;\n childMinorFaults: number;\n childMajorFaults: number;\n}\n\nexport interface processRLimitStat {\n resource: number;\n soft: number;\n hard: number;\n used: number;\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { useState, useEffect } from \"react\";\nimport {\n IMessageEvent,\n w3cwebsocket as W3CWebSocket,\n ICloseEvent,\n} from \"websocket\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { healthInfoMessageReceived, healthInfoResetMessage } from \"./actions\";\nimport {\n HealthInfoMessage,\n DiagStatInProgress,\n DiagStatSuccess,\n DiagStatError,\n} from \"./types\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n wsProtocol,\n WSCloseInternalServerErr,\n WSClosePolicyViolation,\n WSCloseAbnormalClosure,\n} from \"../../../utils/wsUtils\";\nimport {\n actionsTray,\n containerForHeader,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { Grid, Button } from \"@material-ui/core\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport { setSnackBarMessage, setServerDiagStat } from \"../../../actions\";\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n logList: {\n background: \"#fff\",\n minHeight: 400,\n height: \"calc(100vh - 270px)\",\n overflow: \"auto\",\n fontSize: 13,\n padding: \"25px 45px\",\n border: \"1px solid #EAEDEE\",\n borderRadius: 4,\n },\n loading: {\n paddingTop: 8,\n paddingLeft: 40,\n },\n buttons: {\n justifyContent: \"flex-start\",\n gap: 20,\n },\n ...actionsTray,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst download = (filename: string, text: string) => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n \"data:text/plain;charset=utf-8,\" + encodeURIComponent(text)\n );\n element.setAttribute(\"download\", filename);\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n};\n\ninterface IHealthInfo {\n classes: any;\n healthInfoMessageReceived: typeof healthInfoMessageReceived;\n healthInfoResetMessage: typeof healthInfoResetMessage;\n message: HealthInfoMessage;\n namespace: string;\n tenant: string;\n setSnackBarMessage: typeof setSnackBarMessage;\n setServerDiagStat: typeof setServerDiagStat;\n serverDiagnosticStatus: string;\n}\n\nconst HealthInfo = ({\n classes,\n healthInfoMessageReceived,\n healthInfoResetMessage,\n message,\n setSnackBarMessage,\n setServerDiagStat,\n serverDiagnosticStatus,\n}: IHealthInfo) => {\n const [startDiagnostic, setStartDiagnostic] = useState(false);\n const [downloadDisabled, setDownloadDisabled] = useState(true);\n\n useEffect(() => {\n if (\n serverDiagnosticStatus === DiagStatSuccess &&\n message !== ({} as HealthInfoMessage)\n ) {\n // Allow download of diagnostics file only when\n // it succeded fetching all the results and info is not empty.\n setDownloadDisabled(false);\n }\n if (serverDiagnosticStatus === DiagStatInProgress) {\n // Disable Start Diagnotic and Disable Download buttons\n // if a Diagnosis is in progress.\n setDownloadDisabled(true);\n }\n setStartDiagnostic(false);\n }, [serverDiagnosticStatus, message]);\n\n useEffect(() => {\n if (startDiagnostic) {\n healthInfoResetMessage();\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/health-info?deadline=1h`\n );\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n setSnackBarMessage(\n \"Diagnostic started. Please do not refresh page during diagnosis.\"\n );\n setServerDiagStat(DiagStatInProgress);\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: HealthInfoMessage = JSON.parse(message.data.toString());\n m.timestamp = new Date(m.timestamp.toString());\n healthInfoMessageReceived(m);\n };\n c.onerror = (error: Error) => {\n console.log(\"error closing websocket:\", error.message);\n c.close(1000);\n clearInterval(interval);\n setServerDiagStat(DiagStatError);\n };\n c.onclose = (event: ICloseEvent) => {\n clearInterval(interval);\n if (\n event.code === WSCloseInternalServerErr ||\n event.code === WSClosePolicyViolation ||\n event.code === WSCloseAbnormalClosure\n ) {\n // handle close with error\n console.log(\"connection closed by server with code:\", event.code);\n setSnackBarMessage(\n \"An error occurred while getting Diagnostic file.\"\n );\n setServerDiagStat(DiagStatError);\n } else {\n console.log(\"connection closed by server\");\n setSnackBarMessage(\"Diagnostic file is ready to be downloaded.\");\n setServerDiagStat(DiagStatSuccess);\n }\n };\n }\n } else {\n // reset start status\n setStartDiagnostic(false);\n }\n }, [\n healthInfoMessageReceived,\n healthInfoResetMessage,\n startDiagnostic,\n setSnackBarMessage,\n setServerDiagStat,\n ]);\n\n return (\n \n \n\n \n \n \n \n setStartDiagnostic(true)}\n >\n Start Diagnostic\n \n \n \n {serverDiagnosticStatus === DiagStatInProgress ? (\n
\n \n
\n ) : (\n {\n download(\n \"diagnostic.json\",\n JSON.stringify(message, null, 2)\n );\n }}\n disabled={downloadDisabled}\n >\n Download\n \n )}\n
\n
\n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n message: state.healthInfo.message,\n serverDiagnosticStatus: state.system.serverDiagnosticStatus,\n});\n\nconst connector = connect(mapState, {\n healthInfoMessageReceived: healthInfoMessageReceived,\n healthInfoResetMessage: healthInfoResetMessage,\n setSnackBarMessage,\n setServerDiagStat,\n});\n\nexport default connector(withStyles(styles)(HealthInfo));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Grid, InputAdornment, TextField } from \"@material-ui/core\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { IPVCsResponse, IStoragePVCs } from \"./types\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport api from \"../../../common/api\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\n\ninterface IStorageVolumesProps {\n classes: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n breadcrumLink: {\n textDecoration: \"none\",\n color: \"black\",\n },\n tableWrapper: {\n height: \"calc(100vh - 267px)\",\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst StorageVolumes = ({\n classes,\n setErrorSnackMessage,\n}: IStorageVolumesProps) => {\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n if (loading) {\n api\n .invoke(\"GET\", `/api/v1/list-pvcs`)\n .then((res: IPVCsResponse) => {\n let volumes = get(res, \"pvcs\", []);\n setRecords(volumes ? volumes : []);\n setLoading(false);\n })\n .catch((err) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loading, setErrorSnackMessage]);\n\n const filteredRecords: IStoragePVCs[] = records.filter((elementItem) =>\n elementItem.name.includes(filter)\n );\n\n return (\n \n \n \n \n \n ),\n }}\n onChange={(e) => {\n setFilter(e.target.value);\n }}\n />\n \n \n
\n
\n \n \n \n
\n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(StorageVolumes));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const DIRECT_CSI_SELECT_DRIVE = \"DIRECT_CSI/SELECT_DRIVE\";\n\nexport interface IDirectCSIDrives {\n joinName: string;\n drive: string;\n capacity: string;\n allocated: string;\n volumes: number;\n node: string;\n status: \"Available\" | \"Unavailable\" | \"InUse\" | \"Ready\" | \"Terminating\";\n}\n\nexport interface IDirectCSIVolumes {\n volume: string;\n capacity: string;\n node: string;\n drive: string;\n}\n\nexport interface IDrivesResponse {\n drives: IDirectCSIDrives[];\n}\n\nexport interface IVolumesResponse {\n volumes: IDirectCSIVolumes[];\n}\n\nexport interface IDirectCSIFormatResult {\n formatIssuesList: IDirectCSIFormatResItem[];\n}\n\nexport interface IDirectCSIFormatResItem {\n node: string;\n drive: string;\n error: string;\n}\n\ninterface SelectDrive {\n type: typeof DIRECT_CSI_SELECT_DRIVE;\n driveName: string;\n}\n\nexport interface IDirectCSIState {\n selectedDrive: string;\n}\n\nexport type DirectCSITypes = SelectDrive;\n","// This file is part of MinIO Kubernetes Cloud\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n Grid,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport api from \"../../../common/api\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport PredefinedList from \"../Common/FormComponents/PredefinedList/PredefinedList\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { IDirectCSIFormatResItem, IDirectCSIFormatResult } from \"./types\";\n\ninterface IFormatAllDrivesProps {\n closeFormatModalAndRefresh: (\n refresh: boolean,\n formatIssuesList: IDirectCSIFormatResItem[]\n ) => void;\n deleteOpen: boolean;\n allDrives: boolean;\n drivesToFormat: string[];\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst FormatDrives = ({\n closeFormatModalAndRefresh,\n deleteOpen,\n allDrives,\n drivesToFormat,\n setErrorSnackMessage,\n}: IFormatAllDrivesProps) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [formatAll, setFormatAll] = useState(\"\");\n const [force, setForce] = useState(false);\n\n const removeRecord = () => {\n if (deleteLoading) {\n return;\n }\n setDeleteLoading(true);\n api\n .invoke(\"POST\", `/api/v1/direct-csi/drives/format`, {\n drives: drivesToFormat,\n force,\n })\n .then((res: IDirectCSIFormatResult) => {\n setDeleteLoading(false);\n closeFormatModalAndRefresh(true, res.formatIssuesList);\n })\n .catch((err) => {\n setDeleteLoading(false);\n setErrorSnackMessage(err);\n });\n };\n return (\n {\n closeFormatModalAndRefresh(false, []);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n \n Format {allDrives ? \"All \" : \"\"}Drives\n \n \n \n {!allDrives && (\n \n 1 ? \"s\" : \"\"}`}\n content={drivesToFormat.join(\", \")}\n />\n
\n
\n )}\n \n ) => {\n setForce(event.target.checked);\n }}\n label={\"Force Format\"}\n indicatorLabels={[\"Yes\", \"No\"]}\n />\n \n Are you sure you want to format{\" \"}\n {allDrives ? All : \"the selected\"} drive\n {drivesToFormat.length > 1 || allDrives ? \"s\" : \"\"}?.\n
\n
\n \n All information contained will be erased and cannot be recovered\n \n
\n
\n To continue please type YES, PROCEED in the box.\n \n ) => {\n setFormatAll(event.target.value);\n }}\n label=\"\"\n value={formatAll}\n />\n \n
\n
\n {deleteLoading && }\n \n {\n closeFormatModalAndRefresh(false, []);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n \n Format Drive{drivesToFormat.length > 1 || allDrives ? \"s\" : \"\"}\n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(FormatDrives);\n","// This file is part of MinIO Kubernetes Cloud\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n Button,\n createStyles,\n Grid,\n Theme,\n withStyles,\n} from \"@material-ui/core\";\nimport React from \"react\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport { IDirectCSIFormatResItem } from \"./types\";\n\ninterface IFormatErrorsProps {\n open: boolean;\n onCloseFormatErrorsList: () => void;\n errorsList: IDirectCSIFormatResItem[];\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n warningBlock: {\n color: \"red\",\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n errorsList: {\n height: \"calc(100vh - 280px)\",\n },\n });\n\nconst download = (filename: string, text: string) => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n \"data:application/json;charset=utf-8,\" + encodeURIComponent(text)\n );\n console.log(filename);\n element.setAttribute(\"download\", filename);\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n};\n\nconst FormatErrorsResult = ({\n open,\n onCloseFormatErrorsList,\n errorsList,\n classes,\n}: IFormatErrorsProps) => {\n return (\n \n \n \n There were some issues trying to format the selected CSI Drives,\n please fix the issues and try again.\n
\n \n
\n \n {\n download(\"csiFormatErrors.json\", JSON.stringify([...errorsList]));\n }}\n color=\"primary\"\n >\n Download\n \n \n \n
\n \n );\n};\n\nexport default withStyles(styles)(FormatErrorsResult);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n Button,\n Grid,\n InputAdornment,\n TextField,\n IconButton,\n} from \"@material-ui/core\";\nimport get from \"lodash/get\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport GroupIcon from \"@material-ui/icons/Group\";\nimport RefreshIcon from \"@material-ui/icons/Refresh\";\nimport { CreateIcon } from \"../../../icons\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport {\n IDirectCSIDrives,\n IDirectCSIFormatResItem,\n IDrivesResponse,\n} from \"./types\";\nimport { niceBytes } from \"../../../common/utils\";\nimport { selectDrive } from \"./actions\";\nimport api from \"../../../common/api\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport FormatDrives from \"./FormatDrives\";\nimport FormatErrorsResult from \"./FormatErrorsResult\";\n\ninterface IDirectCSIMain {\n classes: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n selectDrive: typeof selectDrive;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n tableWrapper: {\n height: \"calc(100vh - 275px)\",\n },\n notAvailableNotice: {\n border: \"#EAEDEE 1px solid\",\n backgroundColor: \"#FFF\",\n display: \"flex\",\n padding: \"19px 38px\",\n overflow: \"auto\",\n position: \"relative\",\n boxShadow: \"none\",\n minHeight: 200,\n overflowY: \"scroll\",\n borderRadius: 3,\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n height: \"calc(100vh - 275px)\",\n fontSize: 18,\n fontWeight: 600,\n textAlign: \"center\",\n },\n linkItem: {\n display: \"default\",\n color: \"#072F51\",\n textDecoration: \"none\",\n \"&:hover\": {\n textDecoration: \"underline\",\n color: \"#000\",\n },\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst DirectCSIMain = ({\n classes,\n selectDrive,\n setErrorSnackMessage,\n}: IDirectCSIMain) => {\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n const [checkedDrives, setCheckedDrives] = useState([]);\n const [loading, setLoading] = useState(true);\n const [formatOpen, setFormatOpen] = useState(false);\n const [formatAll, setFormatAll] = useState(false);\n const [formatErrorsResult, setFormatErrorsResult] = useState<\n IDirectCSIFormatResItem[]\n >([]);\n const [formatErrorsOpen, setFormatErrorsOpen] = useState(false);\n const [drivesToFormat, setDrivesToFormat] = useState([]);\n const [notAvailable, setNotAvailable] = useState(true);\n\n useEffect(() => {\n if (loading && !notAvailable) {\n api\n .invoke(\"GET\", \"/api/v1/direct-csi/drives\")\n .then((res: IDrivesResponse) => {\n let drives: IDirectCSIDrives[] = get(res, \"drives\", []);\n\n if (!drives) {\n drives = [];\n }\n\n drives = drives.map((item) => {\n const newItem = { ...item };\n newItem.joinName = `${newItem.node}:${newItem.drive}`;\n\n return newItem;\n });\n\n drives.sort((d1, d2) => {\n if (d1.drive > d2.drive) {\n return 1;\n }\n\n if (d1.drive < d2.drive) {\n return -1;\n }\n\n return 0;\n });\n\n setRecords(drives);\n setLoading(false);\n setNotAvailable(false);\n })\n .catch((err) => {\n setLoading(false);\n setNotAvailable(true);\n });\n }\n }, [loading, setErrorSnackMessage, notAvailable]);\n\n const formatAllDrives = () => {\n const allDrives = records.map((item) => {\n return `${item.node}:${item.drive}`;\n });\n setFormatAll(true);\n setDrivesToFormat(allDrives);\n setFormatOpen(true);\n };\n\n const formatSingleUnit = (driveID: string) => {\n const selectedUnit = [driveID];\n setDrivesToFormat(selectedUnit);\n setFormatAll(false);\n setFormatOpen(true);\n };\n\n const formatSelectedDrives = () => {\n if (checkedDrives.length > 0) {\n setDrivesToFormat(checkedDrives);\n setFormatAll(false);\n setFormatOpen(true);\n }\n };\n\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...checkedDrives]; // We clone the checkedDrives array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedDrivesList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n\n setCheckedDrives(elements);\n\n return elements;\n };\n\n const closeFormatModal = (\n refresh: boolean,\n errorsList: IDirectCSIFormatResItem[]\n ) => {\n setFormatOpen(false);\n if (refresh) {\n // Errors are present, we trigger the modal box to show these changes.\n if (errorsList && errorsList.length > 0) {\n setFormatErrorsResult(errorsList);\n setFormatErrorsOpen(true);\n }\n setLoading(true);\n setCheckedDrives([]);\n }\n };\n\n const tableActions = [\n {\n type: \"format\",\n onClick: formatSingleUnit,\n sendOnlyId: true,\n },\n ];\n\n const filteredRecords: IDirectCSIDrives[] = records.filter((elementItem) =>\n elementItem.drive.includes(filter)\n );\n\n return (\n \n {formatOpen && (\n \n )}\n\n {formatErrorsOpen && (\n {\n setFormatErrorsOpen(false);\n }}\n />\n )}\n\n \n \n \n \n ),\n }}\n onChange={(e) => {\n setFilter(e.target.value);\n }}\n disabled={notAvailable}\n />\n {\n setLoading(true);\n }}\n disabled={notAvailable}\n >\n \n \n }\n disabled={checkedDrives.length <= 0 || notAvailable}\n onClick={formatSelectedDrives}\n >\n Format Selected Drives\n \n }\n onClick={formatAllDrives}\n disabled={notAvailable}\n >\n Format All Drives\n \n \n\n \n
\n
\n \n {notAvailable ? (\n
\n To manage locally attached drives you need to install direct-csi,\n for more information\n
\n please follow this\n \n Link\n \n
\n ) : (\n \n )}\n
\n
\n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n selectDrive,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(DirectCSIMain));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { DIRECT_CSI_SELECT_DRIVE } from \"./types\";\n\nexport const selectDrive = (driveName: string) => {\n return {\n type: DIRECT_CSI_SELECT_DRIVE,\n driveName,\n };\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Grid, Tab, Tabs } from \"@material-ui/core\";\nimport { Route, Router, Switch, Redirect } from \"react-router-dom\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport history from \"../../../history\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport StoragePVCs from \"./StoragePVCs\";\nimport DirectCSIDrives from \"../DirectCSI/DirectCSIDrives\";\n\ninterface IStorageProps {\n classes: any;\n match: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n tabsContainer: {\n marginBottom: 15,\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst routes = [\"/storage/volumes\", \"/storage/drives\"];\n\nconst Storage = ({ classes, match }: IStorageProps) => {\n const [selectedTab, setSelectedTab] = useState(0);\n\n useEffect(() => {\n const index = routes.findIndex((route) => route === match.path);\n setSelectedTab(index);\n }, [match]);\n\n const routeChange = (e: React.ChangeEvent<{}>, newValue: number) => {\n history.push(routes[newValue]);\n };\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n } />\n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(Storage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Button, LinearProgress } from \"@material-ui/core\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nimport Drawer from \"@material-ui/core/Drawer\";\nimport Container from \"@material-ui/core/Container\";\nimport Snackbar from \"@material-ui/core/Snackbar\";\nimport history from \"../../history\";\nimport { Redirect, Route, Router, Switch } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { AppState } from \"../../store\";\nimport {\n serverIsLoading,\n serverNeedsRestart,\n setMenuOpen,\n setSnackBarMessage,\n} from \"../../actions\";\nimport { ISessionResponse } from \"./types\";\nimport { snackBarMessage } from \"../../types\";\nimport { snackBarCommon } from \"./Common/FormComponents/common/styleLibrary\";\nimport Buckets from \"./Buckets/Buckets\";\nimport Policies from \"./Policies/Policies\";\nimport Dashboard from \"./Dashboard/Dashboard\";\nimport Menu from \"./Menu/Menu\";\nimport api from \"../../common/api\";\nimport Account from \"./Account/Account\";\nimport Users from \"./Users/Users\";\nimport Groups from \"./Groups/Groups\";\nimport ConfigurationMain from \"./Configurations/ConfigurationMain\";\nimport WebhookPanel from \"./Configurations/ConfigurationPanels/WebhookPanel\";\nimport TenantsMain from \"./Tenants/TenantsMain\";\nimport TenantDetails from \"./Tenants/TenantDetails/TenantDetails\";\nimport ObjectBrowser from \"./ObjectBrowser/ObjectBrowser\";\nimport ObjectRouting from \"./Buckets/ListBuckets/Objects/ListObjects/ObjectRouting\";\nimport License from \"./License/License\";\nimport Trace from \"./Trace/Trace\";\nimport LogsMain from \"./Logs/LogsMain\";\nimport Heal from \"./Heal/Heal\";\nimport Watch from \"./Watch/Watch\";\nimport HealthInfo from \"./HealthInfo/HealthInfo\";\nimport Storage from \"./Storage/Storage\";\n\nconst drawerWidth = 245;\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n display: \"flex\",\n \"& .MuiPaper-root.MuiSnackbarContent-root\": {\n borderRadius: \"0px 0px 5px 5px\",\n boxShadow: \"none\",\n },\n },\n toolbar: {\n background: theme.palette.background.default,\n color: \"black\",\n paddingRight: 24, // keep right padding when drawer closed\n },\n toolbarIcon: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n padding: \"0 8px\",\n ...theme.mixins.toolbar,\n },\n appBar: {\n zIndex: theme.zIndex.drawer + 1,\n transition: theme.transitions.create([\"width\", \"margin\"], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen,\n }),\n },\n appBarShift: {\n marginLeft: drawerWidth,\n width: `calc(100% - ${drawerWidth}px)`,\n transition: theme.transitions.create([\"width\", \"margin\"], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen,\n }),\n },\n menuButton: {\n marginRight: 36,\n },\n menuButtonHidden: {\n display: \"none\",\n },\n title: {\n flexGrow: 1,\n },\n drawerPaper: {\n position: \"relative\",\n whiteSpace: \"nowrap\",\n width: drawerWidth,\n transition: theme.transitions.create(\"width\", {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen,\n }),\n overflowX: \"hidden\",\n background:\n \"transparent linear-gradient(90deg, #073052 0%, #081C42 100%) 0% 0% no-repeat padding-box\",\n boxShadow: \"0px 3px 7px #00000014\",\n },\n drawerPaperClose: {\n overflowX: \"hidden\",\n transition: theme.transitions.create(\"width\", {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen,\n }),\n width: theme.spacing(7),\n [theme.breakpoints.up(\"sm\")]: {\n width: theme.spacing(9),\n },\n },\n content: {\n flexGrow: 1,\n height: \"100vh\",\n overflow: \"auto\",\n position: \"relative\",\n },\n container: {\n paddingBottom: theme.spacing(4),\n margin: 0,\n width: \"100%\",\n maxWidth: \"initial\",\n },\n paper: {\n padding: theme.spacing(2),\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n fixedHeight: {\n minHeight: 240,\n },\n warningBar: {\n background: theme.palette.primary.main,\n color: \"white\",\n heigh: \"60px\",\n widht: \"100%\",\n lineHeight: \"60px\",\n textAlign: \"center\",\n },\n progress: {\n height: \"3px\",\n backgroundColor: \"#eaeaea\",\n },\n ...snackBarCommon,\n });\n\ninterface IConsoleProps {\n open: boolean;\n needsRestart: boolean;\n isServerLoading: boolean;\n title: string;\n classes: any;\n setMenuOpen: typeof setMenuOpen;\n serverNeedsRestart: typeof serverNeedsRestart;\n serverIsLoading: typeof serverIsLoading;\n session: ISessionResponse;\n loadingProgress: number;\n snackBarMessage: snackBarMessage;\n setSnackBarMessage: typeof setSnackBarMessage;\n}\n\nconst Console = ({\n classes,\n open,\n needsRestart,\n isServerLoading,\n serverNeedsRestart,\n serverIsLoading,\n session,\n loadingProgress,\n snackBarMessage,\n setSnackBarMessage,\n}: IConsoleProps) => {\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const restartServer = () => {\n serverIsLoading(true);\n api\n .invoke(\"POST\", \"/api/v1/service/restart\", {})\n .then((res) => {\n console.log(\"success restarting service\");\n console.log(res);\n serverIsLoading(false);\n serverNeedsRestart(false);\n })\n .catch((err) => {\n serverIsLoading(false);\n console.log(\"failure restarting service\");\n console.log(err);\n });\n };\n\n const allowedPages = session.pages.reduce(\n (result: any, item: any, index: any) => {\n result[item] = true;\n return result;\n },\n {}\n );\n const routes = [\n {\n component: Dashboard,\n path: \"/dashboard\",\n },\n {\n component: Buckets,\n path: \"/buckets\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/summary\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/events\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/replication\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/lifecycle\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access/policies\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access/users\",\n },\n {\n component: ObjectBrowser,\n path: \"/object-browser\",\n },\n {\n component: ObjectRouting,\n path: \"/object-browser/:bucket\",\n },\n {\n component: ObjectRouting,\n path: \"/object-browser/:bucket/*\",\n },\n {\n component: Watch,\n path: \"/watch\",\n },\n {\n component: Users,\n path: \"/users/:userName\",\n },\n {\n component: Users,\n path: \"/users\",\n },\n {\n component: Groups,\n path: \"/groups\",\n },\n {\n component: Policies,\n path: \"/policies/:policyName\",\n },\n {\n component: Policies,\n path: \"/policies\",\n },\n {\n component: Heal,\n path: \"/heal\",\n },\n {\n component: Trace,\n path: \"/trace\",\n },\n {\n component: LogsMain,\n path: \"/logs\",\n },\n {\n component: HealthInfo,\n path: \"/health-info\",\n },\n {\n component: ConfigurationMain,\n path: \"/settings\",\n },\n {\n component: Account,\n path: \"/account\",\n props: {\n changePassword: session.pages.includes(\"/account/change-password\"),\n },\n },\n {\n component: WebhookPanel,\n path: \"/webhook/logger\",\n },\n {\n component: WebhookPanel,\n path: \"/webhook/audit\",\n },\n {\n component: TenantsMain,\n path: \"/tenants\",\n },\n {\n component: Storage,\n path: \"/storage\",\n },\n {\n component: Storage,\n path: \"/storage/volumes\",\n },\n {\n component: Storage,\n path: \"/storage/drives\",\n },\n {\n component: TenantDetails,\n path: \"/namespaces/:tenantNamespace/tenants/:tenantName\",\n },\n {\n component: License,\n path: \"/license\",\n },\n ];\n const allowedRoutes = routes.filter((route: any) => allowedPages[route.path]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n setSnackBarMessage(\"\");\n };\n\n useEffect(() => {\n if (snackBarMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n setOpenSnackbar(true);\n }, [snackBarMessage]);\n\n return (\n \n {session.status === \"ok\" ? (\n
\n \n \n \n \n\n
\n {needsRestart && (\n
\n {isServerLoading ? (\n \n The server is restarting.\n \n \n ) : (\n \n The instance needs to be restarted for configuration changes\n to take effect.{\" \"}\n {\n restartServer();\n }}\n >\n Restart\n \n \n )}\n
\n )}\n {loadingProgress < 100 && (\n \n )}\n
\n {\n closeSnackBar();\n }}\n autoHideDuration={\n snackBarMessage.type === \"error\" ? 10000 : 5000\n }\n message={snackBarMessage.message}\n className={classes.snackBarExternal}\n ContentProps={{\n className: `${classes.snackBar} ${\n snackBarMessage.type === \"error\"\n ? classes.errorSnackBar\n : \"\"\n }`,\n }}\n />\n
\n \n \n \n {allowedRoutes.map((route: any) => (\n (\n \n )}\n />\n ))}\n {allowedRoutes.length > 0 ? (\n \n ) : null}\n \n \n \n
\n
\n ) : null}\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n open: state.system.sidebarOpen,\n needsRestart: state.system.serverNeedsRestart,\n isServerLoading: state.system.serverIsLoading,\n session: state.console.session,\n loadingProgress: state.system.loadingProgress,\n snackBarMessage: state.system.snackBar,\n});\n\nconst connector = connect(mapState, {\n setMenuOpen,\n serverNeedsRestart,\n serverIsLoading,\n setSnackBarMessage,\n});\n\nexport default withStyles(styles)(connector(Console));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { FC, useEffect, useState } from \"react\"; // eslint-disable-line @typescript-eslint/no-unused-vars\nimport { RouteComponentProps } from \"react-router\";\nimport storage from \"local-storage-fallback\";\nimport api from \"../../common/api\";\n\nconst LoginCallback: FC = ({ location }) => {\n const [error, setError] = useState(\"\");\n const [errorDescription, setErrorDescription] = useState(\"\");\n useEffect(() => {\n const code = (location.search.match(/code=([^&]+)/) || [])[1];\n const state = (location.search.match(/state=([^&]+)/) || [])[1];\n const error = (location.search.match(/error=([^&]+)/) || [])[1];\n const errorDescription = (location.search.match(\n /error_description=([^&]+)/\n ) || [])[1];\n if (error !== undefined || errorDescription !== undefined) {\n setError(error);\n setErrorDescription(errorDescription);\n } else {\n api\n .invoke(\"POST\", \"/api/v1/login/oauth2/auth\", { code, state })\n .then((res: any) => {\n if (res && res.sessionId) {\n // store the jwt token\n storage.setItem(\"token\", res.sessionId);\n // We push to history the new URL.\n window.location.href = \"/\";\n }\n })\n .catch((res: any) => {\n window.location.href = \"/login\";\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }\n }, [location.search]);\n return error !== \"\" || errorDescription !== \"\" ? (\n
\n

IDP Error:

\n

{error}

\n

{errorDescription}

\n
\n ) : null;\n};\n\nexport default LoginCallback;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { ISessionResponse } from \"./types\";\n\nexport const SESSION_RESPONSE = \"SESSION_RESPONSE\";\n\ninterface SessionAction {\n type: typeof SESSION_RESPONSE;\n message: ISessionResponse;\n}\nexport type SessionActionTypes = SessionAction;\n\nexport function saveSessionResponse(message: ISessionResponse) {\n return {\n type: SESSION_RESPONSE,\n message: message,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { Redirect } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { AppState } from \"./store\";\nimport { consoleOperatorMode, userLoggedIn } from \"./actions\";\nimport api from \"./common/api\";\nimport { saveSessionResponse } from \"./screens/Console/actions\";\nimport { ISessionResponse } from \"./screens/Console/types\";\n\nconst mapState = (state: AppState) => ({\n loggedIn: state.system.loggedIn,\n});\n\nconst connector = connect(mapState, {\n userLoggedIn,\n consoleOperatorMode,\n saveSessionResponse,\n});\n\ninterface ProtectedRouteProps {\n loggedIn: boolean;\n Component: any;\n userLoggedIn: typeof userLoggedIn;\n consoleOperatorMode: typeof consoleOperatorMode;\n saveSessionResponse: typeof saveSessionResponse;\n}\n\nconst ProtectedRoute = ({\n Component,\n loggedIn,\n userLoggedIn,\n consoleOperatorMode,\n saveSessionResponse,\n}: ProtectedRouteProps) => {\n const [sessionLoading, setSessionLoading] = useState(true);\n useEffect(() => {\n api\n .invoke(\"GET\", `/api/v1/session`)\n .then((res: ISessionResponse) => {\n saveSessionResponse(res);\n userLoggedIn(true);\n setSessionLoading(false);\n // check for tenants presence, that indicates we are in operator mode\n if (res.operator) {\n consoleOperatorMode(true);\n document.title = \"MinIO Operator\";\n }\n })\n .catch(() => setSessionLoading(false));\n }, [saveSessionResponse, consoleOperatorMode, userLoggedIn]);\n\n // if we still trying to retrieve user session render nothing\n if (sessionLoading) {\n return null;\n }\n // redirect user to the right page based on session status\n return loggedIn ? : ;\n};\n\nexport default connector(ProtectedRoute);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Route, Router, Switch } from \"react-router-dom\";\nimport history from \"./history\";\nimport Login from \"./screens/LoginPage/LoginPage\";\nimport Console from \"./screens/Console/Console\";\nimport LoginCallback from \"./screens/LoginPage/LoginCallback\";\nimport { hot } from \"react-hot-loader/root\";\nimport ProtectedRoute from \"./ProtectedRoutes\";\n\nconst Routes = () => {\n return (\n \n \n \n \n \n \n \n );\n};\n\nexport default hot(Routes);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n MENU_OPEN,\n OPERATOR_MODE,\n SERVER_IS_LOADING,\n SERVER_NEEDS_RESTART,\n SystemActionTypes,\n SystemState,\n USER_LOGGED,\n SET_LOADING_PROGRESS,\n SET_SNACK_BAR_MESSAGE,\n SET_ERROR_SNACK_MESSAGE,\n SET_SERVER_DIAG_STAT,\n SET_SNACK_MODAL_MESSAGE,\n SET_MODAL_ERROR_MESSAGE,\n} from \"./types\";\n\nconst initialState: SystemState = {\n loggedIn: false,\n operatorMode: false,\n session: \"\",\n userName: \"\",\n sidebarOpen: true,\n serverNeedsRestart: false,\n serverIsLoading: false,\n loadingProgress: 100,\n snackBar: {\n message: \"\",\n type: \"message\",\n },\n modalSnackBar: {\n message: \"\",\n type: \"message\",\n },\n serverDiagnosticStatus: \"\",\n};\n\nexport function systemReducer(\n state = initialState,\n action: SystemActionTypes\n): SystemState {\n switch (action.type) {\n case USER_LOGGED:\n return {\n ...state,\n loggedIn: action.logged,\n };\n case OPERATOR_MODE:\n return {\n ...state,\n operatorMode: action.operatorMode,\n };\n case MENU_OPEN:\n return {\n ...state,\n sidebarOpen: action.open,\n };\n case SERVER_NEEDS_RESTART:\n return {\n ...state,\n serverNeedsRestart: action.needsRestart,\n };\n\n case SERVER_IS_LOADING:\n return {\n ...state,\n serverIsLoading: action.isLoading,\n };\n case SET_LOADING_PROGRESS:\n return {\n ...state,\n loadingProgress: action.loadingProgress,\n };\n case SET_SNACK_BAR_MESSAGE:\n return {\n ...state,\n snackBar: { message: action.message, type: \"message\" },\n };\n case SET_ERROR_SNACK_MESSAGE:\n return {\n ...state,\n snackBar: { message: action.message, type: \"error\" },\n };\n case SET_SNACK_MODAL_MESSAGE:\n return {\n ...state,\n modalSnackBar: { message: action.message, type: \"message\" },\n };\n case SET_MODAL_ERROR_MESSAGE:\n return {\n ...state,\n modalSnackBar: { message: action.message, type: \"error\" },\n };\n case SET_SERVER_DIAG_STAT:\n return {\n ...state,\n serverDiagnosticStatus: action.serverDiagnosticStatus,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n TRACE_MESSAGE_RECEIVED,\n TRACE_RESET_MESSAGES,\n TraceActionTypes,\n} from \"./actions\";\nimport { TraceMessage } from \"./types\";\n\nexport interface TraceState {\n messages: TraceMessage[];\n}\n\nconst initialState: TraceState = {\n messages: [],\n};\n\nexport function traceReducer(\n state = initialState,\n action: TraceActionTypes\n): TraceState {\n switch (action.type) {\n case TRACE_MESSAGE_RECEIVED:\n return {\n ...state,\n messages: [...state.messages, action.message],\n };\n case TRACE_RESET_MESSAGES:\n return {\n ...state,\n messages: [],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n LOG_MESSAGE_RECEIVED,\n LOG_RESET_MESSAGES,\n LogActionTypes,\n} from \"./actions\";\nimport { LogMessage } from \"./types\";\n\nexport interface LogState {\n messages: LogMessage[];\n}\n\nconst initialState: LogState = {\n messages: [],\n};\n\nexport function logReducer(\n state = initialState,\n action: LogActionTypes\n): LogState {\n switch (action.type) {\n case LOG_MESSAGE_RECEIVED:\n return {\n ...state,\n messages: [...state.messages, action.message],\n };\n case LOG_RESET_MESSAGES:\n return {\n ...state,\n messages: [],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n HEALTH_INFO_MESSAGE_RECEIVED,\n HEALTH_INFO_RESET_MESSAGE,\n HealthInfoActionTypes,\n} from \"./actions\";\nimport { HealthInfoMessage } from \"./types\";\n\nexport interface HealthInfoState {\n message: HealthInfoMessage;\n}\n\nconst initialState: HealthInfoState = {\n message: {} as HealthInfoMessage,\n};\n\nexport function healthInfoReducer(\n state = initialState,\n action: HealthInfoActionTypes\n): HealthInfoState {\n switch (action.type) {\n case HEALTH_INFO_MESSAGE_RECEIVED:\n return {\n ...state,\n message: action.message,\n };\n case HEALTH_INFO_RESET_MESSAGE:\n return {\n ...state,\n message: {} as HealthInfoMessage,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n WATCH_MESSAGE_RECEIVED,\n WATCH_RESET_MESSAGES,\n WatchActionTypes,\n} from \"./actions\";\nimport { EventInfo } from \"./types\";\n\nexport interface WatchState {\n messages: EventInfo[];\n}\n\nconst initialState: WatchState = {\n messages: [],\n};\n\nexport function watchReducer(\n state = initialState,\n action: WatchActionTypes\n): WatchState {\n switch (action.type) {\n case WATCH_MESSAGE_RECEIVED:\n return {\n ...state,\n messages: [...state.messages, action.message],\n };\n case WATCH_RESET_MESSAGES:\n return {\n ...state,\n messages: [],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { ISessionResponse } from \"./types\";\nimport { SessionActionTypes, SESSION_RESPONSE } from \"./actions\";\n\nexport interface ConsoleState {\n session: ISessionResponse;\n}\n\nconst initialState: ConsoleState = {\n session: {\n operator: false,\n status: \"\",\n pages: [],\n features: [],\n },\n};\n\nexport function consoleReducer(\n state = initialState,\n action: SessionActionTypes\n): ConsoleState {\n switch (action.type) {\n case SESSION_RESPONSE:\n return {\n ...state,\n session: action.message,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n ADD_BUCKET_NAME,\n ADD_BUCKET_OPEN,\n ADD_BUCKET_QUOTA,\n ADD_BUCKET_QUOTA_SIZE,\n ADD_BUCKET_QUOTA_TYPE,\n ADD_BUCKET_QUOTA_UNIT,\n ADD_BUCKET_RESET,\n ADD_BUCKET_VERSIONED,\n ADD_BUCKET_RETENTION,\n ADD_BUCKET_RETENTION_MODE,\n ADD_BUCKET_RETENTION_UNIT,\n ADD_BUCKET_RETENTION_VALIDITY,\n BucketActionTypes,\n ADD_BUCKET_LOCKING,\n BUCKET_DETAILS_SET_TAB,\n} from \"./actions\";\n\nexport interface BucketsState {\n open: boolean;\n addBucketName: string;\n addBucketVersioningEnabled: boolean;\n addBucketLockingEnabled: boolean;\n addBucketQuotaEnabled: boolean;\n addBucketQuotaType: string;\n addBucketQuotaSize: string;\n addBucketQuotaUnit: string;\n addBucketRetentionEnabled: boolean;\n addBucketRetentionMode: string;\n addBucketRetentionUnit: string;\n addBucketRetentionValidity: number;\n bucketDetails: BucketDetailsState;\n}\n\nexport interface BucketDetailsState {\n selectedTab: string;\n}\n\nconst initialState: BucketsState = {\n open: false,\n addBucketName: \"\",\n addBucketVersioningEnabled: false,\n addBucketLockingEnabled: false,\n addBucketQuotaEnabled: false,\n addBucketQuotaType: \"hard\",\n addBucketQuotaSize: \"1\",\n addBucketQuotaUnit: \"TiB\",\n addBucketRetentionEnabled: false,\n addBucketRetentionMode: \"compliance\",\n addBucketRetentionUnit: \"days\",\n addBucketRetentionValidity: 1,\n bucketDetails: {\n selectedTab: \"summary\",\n },\n};\n\nexport function bucketsReducer(\n state = initialState,\n action: BucketActionTypes\n): BucketsState {\n switch (action.type) {\n case ADD_BUCKET_OPEN:\n return {\n ...state,\n open: action.open,\n };\n case ADD_BUCKET_NAME:\n return {\n ...state,\n addBucketName: action.name,\n };\n case ADD_BUCKET_VERSIONED:\n return {\n ...state,\n addBucketVersioningEnabled: action.versioned,\n };\n case ADD_BUCKET_LOCKING:\n return {\n ...state,\n addBucketLockingEnabled: action.locking,\n };\n case ADD_BUCKET_QUOTA:\n return {\n ...state,\n addBucketQuotaEnabled: action.quota,\n };\n case ADD_BUCKET_QUOTA_TYPE:\n return {\n ...state,\n addBucketQuotaType: action.quotaType,\n };\n case ADD_BUCKET_QUOTA_SIZE:\n return {\n ...state,\n addBucketQuotaSize: action.quotaSize,\n };\n case ADD_BUCKET_QUOTA_UNIT:\n return {\n ...state,\n addBucketQuotaUnit: action.quotaUnit,\n };\n case ADD_BUCKET_RETENTION:\n return {\n ...state,\n addBucketRetentionEnabled: action.retention,\n };\n case ADD_BUCKET_RETENTION_MODE:\n return {\n ...state,\n addBucketRetentionMode: action.retentionMode,\n };\n case ADD_BUCKET_RETENTION_UNIT:\n return {\n ...state,\n addBucketRetentionUnit: action.retentionUnit,\n };\n case ADD_BUCKET_RETENTION_VALIDITY:\n return {\n ...state,\n addBucketRetentionValidity: action.retentionValidity,\n };\n case BUCKET_DETAILS_SET_TAB:\n return {\n ...state,\n bucketDetails: {\n ...state.bucketDetails,\n selectedTab: action.tab,\n },\n };\n case ADD_BUCKET_RESET:\n return {\n ...state,\n addBucketName: \"\",\n addBucketVersioningEnabled: false,\n addBucketLockingEnabled: false,\n addBucketQuotaEnabled: false,\n addBucketQuotaType: \"hard\",\n addBucketQuotaSize: \"1\",\n addBucketQuotaUnit: \"TiB\",\n addBucketRetentionEnabled: false,\n addBucketRetentionMode: \"compliance\",\n addBucketRetentionUnit: \"days\",\n addBucketRetentionValidity: 1,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport history from \"../../../history\";\n\nimport {\n OBJECT_BROWSER_ADD_ROUTE,\n OBJECT_BROWSER_CREATE_FOLDER,\n OBJECT_BROWSER_REMOVE_ROUTE_LEVEL,\n OBJECT_BROWSER_RESET_ROUTES_LIST,\n OBJECT_BROWSER_SET_ALL_ROUTES,\n OBJECT_BROWSER_SET_LAST_AS_FILE,\n OBJECT_BROWSER_DOWNLOAD_FILE_LOADER,\n OBJECT_BROWSER_DOWNLOADED_FILE,\n ObjectBrowserActionTypes,\n} from \"./actions\";\n\nexport interface Route {\n route: string;\n label: string;\n type: string;\n}\n\nexport interface ObjectBrowserState {\n routesList: Route[];\n downloadingFiles: string[];\n}\n\nexport interface ObjectBrowserReducer {\n objectBrowser: ObjectBrowserState;\n}\n\nconst initialRoute = [\n { route: \"/object-browser\", label: \"All Buckets\", type: \"path\" },\n];\n\nconst initialState: ObjectBrowserState = {\n routesList: initialRoute,\n downloadingFiles: [],\n};\n\nexport function objectBrowserReducer(\n state = initialState,\n action: ObjectBrowserActionTypes\n): ObjectBrowserState {\n switch (action.type) {\n case OBJECT_BROWSER_ADD_ROUTE:\n const newRouteList = [\n ...state.routesList,\n { route: action.route, label: action.label, type: action.routeType },\n ];\n history.push(action.route);\n\n return { ...state, routesList: newRouteList };\n case OBJECT_BROWSER_RESET_ROUTES_LIST:\n return {\n ...state,\n routesList: [...initialRoute],\n };\n case OBJECT_BROWSER_REMOVE_ROUTE_LEVEL:\n const indexOfTopPath =\n state.routesList.findIndex(\n (element) => element.route === action.toRoute\n ) + 1;\n const newRouteLevels = state.routesList.slice(0, indexOfTopPath);\n\n return {\n ...state,\n routesList: newRouteLevels,\n };\n case OBJECT_BROWSER_SET_ALL_ROUTES:\n const splitRoutes = action.currentRoute.split(\"/\");\n const routesArray: Route[] = [];\n let initRoute = initialRoute[0].route;\n\n splitRoutes.forEach((route) => {\n if (route !== \"\" && route !== \"object-browser\") {\n initRoute = `${initRoute}/${route}`;\n\n routesArray.push({\n route: initRoute,\n label: route,\n type: \"path\",\n });\n }\n });\n\n const newSetOfRoutes = [...initialRoute, ...routesArray];\n\n return {\n ...state,\n routesList: newSetOfRoutes,\n };\n case OBJECT_BROWSER_CREATE_FOLDER:\n const newFoldersRoutes = [...state.routesList];\n let lastRoute = state.routesList[state.routesList.length - 1].route;\n\n const splitElements = action.newRoute.split(\"/\");\n\n splitElements.forEach((element) => {\n const folderTrim = element.trim();\n if (folderTrim !== \"\") {\n lastRoute = `${lastRoute}/${folderTrim}`;\n\n const newItem = { route: lastRoute, label: folderTrim, type: \"path\" };\n newFoldersRoutes.push(newItem);\n }\n });\n\n history.push(lastRoute);\n\n return {\n ...state,\n routesList: newFoldersRoutes,\n };\n case OBJECT_BROWSER_SET_LAST_AS_FILE:\n const currentList = state.routesList;\n const lastItem = currentList.slice(-1)[0];\n\n if (lastItem.type === \"path\") {\n lastItem.type = \"file\";\n }\n\n const newList = [...currentList.slice(0, -1), lastItem];\n\n return {\n ...state,\n routesList: newList,\n };\n case OBJECT_BROWSER_DOWNLOAD_FILE_LOADER:\n const actualFiles = [...state.downloadingFiles];\n\n actualFiles.push(action.path);\n\n return {\n ...state,\n downloadingFiles: [...actualFiles],\n };\n case OBJECT_BROWSER_DOWNLOADED_FILE:\n const downloadingFiles = state.downloadingFiles.filter(\n (item) => item !== action.path\n );\n\n return {\n ...state,\n downloadingFiles: [...downloadingFiles],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport has from \"lodash/has\";\nimport get from \"lodash/get\";\nimport {\n TenantsManagementTypes,\n ITenantState,\n ADD_TENANT_SET_CURRENT_PAGE,\n ADD_TENANT_SET_ADVANCED_MODE,\n ADD_TENANT_UPDATE_FIELD,\n ADD_TENANT_SET_PAGE_VALID,\n ADD_TENANT_SET_STORAGE_CLASSES_LIST,\n ADD_TENANT_ADD_MINIO_KEYPAIR,\n ADD_TENANT_DELETE_MINIO_KEYPAIR,\n ADD_TENANT_ADD_CA_KEYPAIR,\n ADD_TENANT_ADD_FILE_TO_CA_KEYPAIR,\n ADD_TENANT_DELETE_CA_KEYPAIR,\n ADD_TENANT_ADD_CONSOLE_CERT,\n ADD_TENANT_ADD_FILE_TO_MINIO_KEYPAIR,\n ADD_TENANT_ENCRYPTION_SERVER_CERT,\n ADD_TENANT_ENCRYPTION_CLIENT_CERT,\n ADD_TENANT_ENCRYPTION_VAULT_CERT,\n ADD_TENANT_ENCRYPTION_VAULT_CA,\n ADD_TENANT_ENCRYPTION_GEMALTO_CA,\n ADD_TENANT_RESET_FORM,\n} from \"./types\";\nimport { KeyPair } from \"./ListTenants/utils\";\nimport { getRandomString } from \"./utils\";\n\nconst initialState: ITenantState = {\n createTenant: {\n page: 0,\n validPages: [],\n advancedModeOn: false,\n storageClasses: [],\n limitSize: {},\n fields: {\n nameTenant: {\n tenantName: \"\",\n namespace: \"\",\n selectedStorageClass: \"\",\n },\n configure: {\n customImage: false,\n imageName: \"\",\n consoleImage: \"\",\n customDockerhub: false,\n imageRegistry: \"\",\n imageRegistryUsername: \"\",\n imageRegistryPassword: \"\",\n exposeMinIO: true,\n exposeConsole: true,\n logSearchCustom: false,\n prometheusCustom: false,\n logSearchVolumeSize: \"5\",\n logSearchSizeFactor: \"Gi\",\n logSearchImage: \"\",\n kesImage: \"\",\n logSearchPostgresImage: \"\",\n prometheusVolumeSize: \"5\",\n prometheusSizeFactor: \"Gi\",\n logSearchSelectedStorageClass: \"\",\n prometheusSelectedStorageClass: \"\",\n prometheusImage: \"\",\n },\n identityProvider: {\n idpSelection: \"Built-in\",\n accessKeys: [getRandomString(16)],\n secretKeys: [getRandomString(32)],\n openIDURL: \"\",\n openIDClientID: \"\",\n openIDSecretID: \"\",\n ADURL: \"\",\n ADSkipTLS: false,\n ADServerInsecure: false,\n ADUserNameFilter: \"\",\n ADGroupBaseDN: \"\",\n ADGroupSearchFilter: \"\",\n ADNameAttribute: \"\",\n },\n security: {\n enableAutoCert: true,\n enableCustomCerts: false,\n enableTLS: true,\n },\n encryption: {\n enableEncryption: false,\n encryptionType: \"vault\",\n gemaltoEndpoint: \"\",\n gemaltoToken: \"\",\n gemaltoDomain: \"\",\n gemaltoRetry: \"0\",\n awsEndpoint: \"\",\n awsRegion: \"\",\n awsKMSKey: \"\",\n awsAccessKey: \"\",\n awsSecretKey: \"\",\n awsToken: \"\",\n vaultEndpoint: \"\",\n vaultEngine: \"\",\n vaultNamespace: \"\",\n vaultPrefix: \"\",\n vaultAppRoleEngine: \"\",\n vaultId: \"\",\n vaultSecret: \"\",\n vaultRetry: \"0\",\n vaultPing: \"0\",\n gcpProjectID: \"\",\n gcpEndpoint: \"\",\n gcpClientEmail: \"\",\n gcpClientID: \"\",\n gcpPrivateKeyID: \"\",\n gcpPrivateKey: \"\",\n enableCustomCertsForKES: false,\n },\n tenantSize: {\n volumeSize: \"100\",\n sizeFactor: \"Gi\",\n drivesPerServer: \"1\",\n nodes: \"4\",\n memoryNode: \"2\",\n ecParity: \"\",\n ecParityChoices: [],\n cleanECChoices: [],\n maxAllocableMemo: 0,\n memorySize: {\n error: \"\",\n limit: 0,\n request: 0,\n },\n distribution: {\n error: \"\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n },\n ecParityCalc: {\n error: 0,\n defaultEC: \"\",\n erasureCodeSet: 0,\n maxEC: \"\",\n rawCapacity: \"0\",\n storageFactors: [],\n },\n limitSize: {},\n },\n affinity: {\n nodeSelectorLabels: \"\",\n podAffinity: \"default\",\n withPodAntiAffinity: true,\n },\n },\n certificates: {\n minioCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n caCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n consoleCertificate: {\n id: \"console_cert_pair\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n serverCertificate: {\n id: \"encryptionServerCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n clientCertificate: {\n id: \"encryptionClientCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCertificate: {\n id: \"encryptionVaultCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCA: {\n id: \"encryptionVaultCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n gemaltoCA: {\n id: \"encryptionGemaltoCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n },\n },\n};\n\nexport function tenantsReducer(\n state = initialState,\n action: TenantsManagementTypes\n): ITenantState {\n let newState: ITenantState = { ...state };\n\n switch (action.type) {\n case ADD_TENANT_SET_CURRENT_PAGE:\n newState.createTenant.page = action.page;\n\n return { ...newState };\n case ADD_TENANT_SET_ADVANCED_MODE:\n newState.createTenant.advancedModeOn = action.state;\n\n return { ...newState };\n case ADD_TENANT_UPDATE_FIELD:\n if (\n has(newState.createTenant.fields, `${action.pageName}.${action.field}`)\n ) {\n const originPageNameItems = get(\n newState.createTenant.fields,\n `${action.pageName}`,\n {}\n );\n\n let newValue: typeof originPageNameItems = {};\n newValue[action.field] = action.value;\n\n const joinValue = { ...originPageNameItems, ...newValue };\n\n newState.createTenant.fields[action.pageName] = { ...joinValue };\n\n return { ...newState };\n }\n return state;\n case ADD_TENANT_SET_PAGE_VALID:\n let originValidPages = state.createTenant.validPages;\n\n if (action.valid) {\n if (!originValidPages.includes(action.pageName)) {\n originValidPages.push(action.pageName);\n\n newState.createTenant.validPages = [...originValidPages];\n }\n } else {\n const newSetOfPages = originValidPages.filter(\n (elm) => elm !== action.pageName\n );\n\n newState.createTenant.validPages = [...newSetOfPages];\n }\n\n return { ...newState };\n case ADD_TENANT_SET_STORAGE_CLASSES_LIST:\n const changeCL = {\n ...state,\n createTenant: {\n ...state.createTenant,\n storageClasses: action.storageClasses,\n },\n };\n return { ...changeCL };\n case ADD_TENANT_ADD_MINIO_KEYPAIR:\n const minioCerts = [\n ...state.createTenant.certificates.minioCertificates,\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ];\n newState.createTenant.certificates.minioCertificates = [...minioCerts];\n return { ...newState };\n case ADD_TENANT_ADD_FILE_TO_MINIO_KEYPAIR:\n const minioCertificates =\n state.createTenant.certificates.minioCertificates;\n\n const NCertList = minioCertificates.map((item: KeyPair) => {\n if (item.id === action.id) {\n return {\n ...item,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n }\n return item;\n });\n newState.createTenant.certificates.minioCertificates = [...NCertList];\n return { ...newState };\n case ADD_TENANT_DELETE_MINIO_KEYPAIR:\n const minioCertsList = state.createTenant.certificates.minioCertificates;\n\n if (minioCertsList.length > 1) {\n const cleanMinioCertsList = minioCertsList.filter(\n (item: KeyPair) => item.id !== action.id\n );\n newState.createTenant.certificates.minioCertificates = [\n ...cleanMinioCertsList,\n ];\n return { ...newState };\n }\n return { ...state };\n case ADD_TENANT_ADD_CA_KEYPAIR:\n const CACerts = [\n ...state.createTenant.certificates.caCertificates,\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ];\n newState.createTenant.certificates.caCertificates = [...CACerts];\n return { ...newState };\n case ADD_TENANT_ADD_FILE_TO_CA_KEYPAIR:\n const caCertificates = state.createTenant.certificates.caCertificates;\n\n const NACList = caCertificates.map((item: KeyPair) => {\n if (item.id === action.id) {\n return {\n ...item,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n }\n return item;\n });\n newState.createTenant.certificates.caCertificates = [...NACList];\n return { ...newState };\n case ADD_TENANT_DELETE_CA_KEYPAIR:\n const CACertsList = state.createTenant.certificates.minioCertificates;\n\n if (CACertsList.length > 1) {\n const cleanMinioCertsList = CACertsList.filter(\n (item: KeyPair) => item.id !== action.id\n );\n newState.createTenant.certificates.caCertificates = [\n ...cleanMinioCertsList,\n ];\n return { ...newState };\n }\n return { ...state };\n case ADD_TENANT_ADD_CONSOLE_CERT:\n const consoleCert = state.createTenant.certificates.consoleCertificate;\n\n newState.createTenant.certificates.consoleCertificate = {\n ...consoleCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_SERVER_CERT:\n const encServerCert = state.createTenant.certificates.serverCertificate;\n\n newState.createTenant.certificates.serverCertificate = {\n ...encServerCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_CLIENT_CERT:\n const encClientCert = state.createTenant.certificates.clientCertificate;\n\n newState.createTenant.certificates.clientCertificate = {\n ...encClientCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_VAULT_CERT:\n const encVaultCert = state.createTenant.certificates.vaultCertificate;\n\n newState.createTenant.certificates.vaultCertificate = {\n ...encVaultCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_VAULT_CA:\n const encVaultCA = state.createTenant.certificates.vaultCA;\n\n newState.createTenant.certificates.vaultCA = {\n ...encVaultCA,\n cert: action.fileName,\n encoded_cert: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_GEMALTO_CA:\n const encGemaltoCA = state.createTenant.certificates.gemaltoCA;\n\n newState.createTenant.certificates.gemaltoCA = {\n ...encGemaltoCA,\n cert: action.fileName,\n encoded_cert: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_RESET_FORM:\n return {\n ...state,\n createTenant: {\n page: 0,\n validPages: [],\n advancedModeOn: false,\n storageClasses: [],\n limitSize: {},\n fields: {\n nameTenant: {\n tenantName: \"\",\n namespace: \"\",\n selectedStorageClass: \"\",\n },\n configure: {\n customImage: false,\n imageName: \"\",\n consoleImage: \"\",\n customDockerhub: false,\n imageRegistry: \"\",\n imageRegistryUsername: \"\",\n imageRegistryPassword: \"\",\n exposeMinIO: true,\n exposeConsole: true,\n logSearchCustom: false,\n prometheusCustom: false,\n logSearchVolumeSize: \"5\",\n logSearchSizeFactor: \"Gi\",\n logSearchSelectedStorageClass: \"\",\n logSearchImage: \"\",\n kesImage: \"\",\n logSearchPostgresImage: \"\",\n prometheusVolumeSize: \"5\",\n prometheusSizeFactor: \"Gi\",\n prometheusSelectedStorageClass: \"\",\n prometheusImage: \"\",\n },\n identityProvider: {\n idpSelection: \"Built-in\",\n accessKeys: [getRandomString(16)],\n secretKeys: [getRandomString(32)],\n openIDURL: \"\",\n openIDClientID: \"\",\n openIDSecretID: \"\",\n ADURL: \"\",\n ADSkipTLS: false,\n ADServerInsecure: false,\n ADUserNameFilter: \"\",\n ADGroupBaseDN: \"\",\n ADGroupSearchFilter: \"\",\n ADNameAttribute: \"\",\n },\n security: {\n enableAutoCert: true,\n enableCustomCerts: false,\n enableTLS: true,\n },\n encryption: {\n enableEncryption: false,\n encryptionType: \"vault\",\n gemaltoEndpoint: \"\",\n gemaltoToken: \"\",\n gemaltoDomain: \"\",\n gemaltoRetry: \"0\",\n awsEndpoint: \"\",\n awsRegion: \"\",\n awsKMSKey: \"\",\n awsAccessKey: \"\",\n awsSecretKey: \"\",\n awsToken: \"\",\n vaultEndpoint: \"\",\n vaultEngine: \"\",\n vaultNamespace: \"\",\n vaultPrefix: \"\",\n vaultAppRoleEngine: \"\",\n vaultId: \"\",\n vaultSecret: \"\",\n vaultRetry: \"0\",\n vaultPing: \"0\",\n gcpProjectID: \"\",\n gcpEndpoint: \"\",\n gcpClientEmail: \"\",\n gcpClientID: \"\",\n gcpPrivateKeyID: \"\",\n gcpPrivateKey: \"\",\n enableCustomCertsForKES: false,\n },\n tenantSize: {\n volumeSize: \"100\",\n sizeFactor: \"Gi\",\n drivesPerServer: \"1\",\n nodes: \"4\",\n memoryNode: \"2\",\n ecParity: \"\",\n ecParityChoices: [],\n cleanECChoices: [],\n maxAllocableMemo: 0,\n memorySize: {\n error: \"\",\n limit: 0,\n request: 0,\n },\n distribution: {\n error: \"\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n },\n ecParityCalc: {\n error: 0,\n defaultEC: \"\",\n erasureCodeSet: 0,\n maxEC: \"\",\n rawCapacity: \"0\",\n storageFactors: [],\n },\n limitSize: {},\n },\n affinity: {\n nodeSelectorLabels: \"\",\n podAffinity: \"default\",\n withPodAntiAffinity: true,\n },\n },\n certificates: {\n minioCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n caCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n consoleCertificate: {\n id: \"console_cert_pair\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n serverCertificate: {\n id: \"encryptionServerCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n clientCertificate: {\n id: \"encryptionClientCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCertificate: {\n id: \"encryptionVaultCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCA: {\n id: \"encryptionVaultCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n gemaltoCA: {\n id: \"encryptionGemaltoCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n },\n },\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n DirectCSITypes,\n DIRECT_CSI_SELECT_DRIVE,\n IDirectCSIState,\n} from \"./types\";\n\nconst initialState: IDirectCSIState = {\n selectedDrive: \"\",\n};\n\nexport function directCSIReducer(\n state = initialState,\n action: DirectCSITypes\n): IDirectCSIState {\n switch (action.type) {\n case DIRECT_CSI_SELECT_DRIVE:\n if (action.driveName !== \"\") {\n const newState = { ...state };\n newState.selectedDrive = action.driveName;\n return newState;\n }\n return state;\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { applyMiddleware, combineReducers, compose, createStore } from \"redux\";\nimport thunk from \"redux-thunk\";\nimport { systemReducer } from \"./reducer\";\nimport { traceReducer } from \"./screens/Console/Trace/reducers\";\nimport { logReducer } from \"./screens/Console/Logs/reducers\";\nimport { healthInfoReducer } from \"./screens/Console/HealthInfo/reducers\";\nimport { watchReducer } from \"./screens/Console/Watch/reducers\";\nimport { consoleReducer } from \"./screens/Console/reducer\";\nimport { bucketsReducer } from \"./screens/Console/Buckets/reducers\";\nimport { objectBrowserReducer } from \"./screens/Console/ObjectBrowser/reducers\";\nimport { tenantsReducer } from \"./screens/Console/Tenants/reducer\";\nimport { directCSIReducer } from \"./screens/Console/DirectCSI/reducer\";\n\nconst globalReducer = combineReducers({\n system: systemReducer,\n trace: traceReducer,\n logs: logReducer,\n watch: watchReducer,\n console: consoleReducer,\n buckets: bucketsReducer,\n objectBrowser: objectBrowserReducer,\n healthInfo: healthInfoReducer,\n tenants: tenantsReducer,\n directCSI: directCSIReducer,\n});\n\ndeclare global {\n interface Window {\n __REDUX_DEVTOOLS_EXTENSION_COMPOSE__?: typeof compose;\n }\n}\n\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n\nexport type AppState = ReturnType;\n\nexport default function configureStore() {\n return createStore(globalReducer, composeEnhancers(applyMiddleware(thunk)));\n}\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === \"localhost\" ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === \"[::1]\" ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\ntype Config = {\n onSuccess?: (registration: ServiceWorkerRegistration) => void;\n onUpdate?: (registration: ServiceWorkerRegistration) => void;\n};\n\nexport function register(config?: Config) {\n if (process.env.NODE_ENV === \"production\" && \"serviceWorker\" in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(\n (process as { env: { [key: string]: string } }).env.PUBLIC_URL,\n window.location.href\n );\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener(\"load\", () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n \"This web app is being served cache-first by a service \" +\n \"worker. To learn more, visit https://bit.ly/CRA-PWA\"\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl: string, config?: Config) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === \"installed\") {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n \"New content is available and will be used when all \" +\n \"tabs for this page are closed. See https://bit.ly/CRA-PWA.\"\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log(\"Content is cached for offline use.\");\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch((error) => {\n console.error(\"Error during service worker registration:\", error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl: string, config?: Config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then((response) => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get(\"content-type\");\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf(\"javascript\") === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n \"No internet connection found. App is running in offline mode.\"\n );\n });\n}\n\nexport function unregister() {\n if (\"serviceWorker\" in navigator) {\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister();\n });\n }\n}\n","import { createMuiTheme } from \"@material-ui/core\";\n\nconst theme = createMuiTheme({\n palette: {\n primary: {\n light: \"#073052\",\n main: \"#081C42\",\n dark: \"#05122B\",\n contrastText: \"#fff\",\n },\n secondary: {\n light: \"#ff7961\",\n main: \"#f44336\",\n dark: \"#ba000d\",\n contrastText: \"#000\",\n },\n error: {\n light: \"#e03a48\",\n main: \"#dc1f2e\",\n contrastText: \"#ffffff\",\n },\n grey: {\n 100: \"#f0f0f0\",\n 200: \"#e6e6e6\",\n 300: \"#cccccc\",\n 400: \"#999999\",\n 500: \"#8c8c8c\",\n 600: \"#737373\",\n 700: \"#666666\",\n 800: \"#4d4d4d\",\n 900: \"#333333\",\n },\n background: {\n default: \"#F4F4F4\",\n },\n },\n typography: {\n fontFamily: [\"Lato\", \"sans-serif\"].join(\",\"),\n h1: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h2: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h3: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h4: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h5: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h6: {\n fontWeight: \"bold\",\n color: \"#000000\",\n },\n },\n overrides: {\n MuiButton: {\n root: {\n borderRadius: 3,\n color: \"white\",\n height: 40,\n padding: \"0 20px\",\n fontSize: 14,\n fontWeight: 600,\n boxShadow: \"none\",\n \"& .MuiSvgIcon-root\": {\n maxHeight: 18,\n },\n \"&.MuiButton-contained.Mui-disabled\": {\n backgroundColor: \"#EAEDEE\",\n fontWeight: 600,\n color: \"#767676\",\n },\n \"& .MuiButton-iconSizeMedium > *:first-child\": {\n fontSize: 12,\n },\n },\n },\n },\n});\n\nexport default theme;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Provider } from \"react-redux\";\nimport Routes from \"./Routes\";\nimport configureStore from \"./store\";\nimport * as serviceWorker from \"./serviceWorker\";\nimport { ThemeProvider, withStyles } from \"@material-ui/core/styles\";\nimport \"react-virtualized/styles.css\";\nimport \"react-grid-layout/css/styles.css\";\nimport \"react-resizable/css/styles.css\";\n\nimport \"./index.css\";\nimport theme from \"./theme/main\";\n\nconst GlobalCss = withStyles({\n // @global is handled by jss-plugin-global.\n \"@global\": {\n // You should target [class*=\"MuiButton-root\"] instead if you nest themes.\n \".MuiButton-contained\": {\n fontSize: \"14px\",\n textTransform: \"capitalize\",\n padding: \"16px 25px 16px 25px\",\n borderRadius: 3,\n },\n \".MuiButton-sizeSmall\": {\n padding: \"4px 10px\",\n fontSize: \"0.8125rem\",\n },\n \".MuiTableCell-head\": {\n borderRadius: \"3px 3px 0px 0px\",\n fontSize: 13,\n },\n \".MuiPaper-root\": {\n borderRadius: 3,\n },\n \".MuiDrawer-paperAnchorDockedLeft\": {\n borderRight: 0,\n },\n \".MuiDrawer-root\": {\n \"& .MuiPaper-root\": {\n borderRadius: 0,\n },\n },\n },\n})(() => null);\n\nReactDOM.render(\n \n \n \n {/**/}\n \n \n ,\n document.getElementById(\"root\")\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["history.ts","types.ts","actions.ts","screens/LoginPage/types.ts","common/utils.ts","common/api/index.ts","screens/LoginPage/LoginPage.tsx","screens/Console/Common/FormComponents/common/styleLibrary.ts","common/Copyright.tsx","screens/NotFoundPage.tsx","icons/CopyIcon.tsx","icons/CreateIcon.tsx","icons/DeleteIcon.tsx","icons/DashboardIcon.tsx","icons/BucketsIcon.tsx","icons/UsersIcon.tsx","icons/ServiceAccountsIcon.tsx","icons/GroupsIcon.tsx","icons/IAMPoliciesIcon.tsx","icons/TraceIcon.tsx","icons/ConfigurationsListIcon.tsx","icons/ClustersIcon.tsx","icons/WatchIcon.tsx","screens/Console/Buckets/actions.ts","screens/Console/Common/TableWrapper/TableActionIcons/common.ts","screens/Console/Common/TableWrapper/TableActionIcons/ViewIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/PencilIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/ShareIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DeleteIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DescriptionIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/CloudIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/ConsoleIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DownloadIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/DisableIcon.tsx","screens/Console/Common/TableWrapper/TableActionIcons/FormatDriveIcon.tsx","screens/Console/Common/TableWrapper/TableActionButton.tsx","icons/HelpIcon.tsx","screens/Console/Common/FormComponents/CheckboxWrapper/CheckboxWrapper.tsx","screens/Console/Common/TableWrapper/TableWrapper.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/Common/FormComponents/InputBoxWrapper/InputBoxWrapper.tsx","screens/Console/Common/FormComponents/SelectWrapper/SelectWrapper.tsx","screens/Console/Common/FormComponents/RadioGroupSelector/RadioGroupSelector.tsx","screens/Console/Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper.tsx","screens/Console/Buckets/ListBuckets/AddBucket.tsx","screens/Console/Buckets/ListBuckets/DeleteBucket.tsx","screens/Console/Common/PageHeader/PageHeader.tsx","screens/Console/Common/FormComponents/PredefinedList/PredefinedList.tsx","screens/Console/Common/GenericWizard/WizardPage.tsx","screens/Console/Common/GenericWizard/GenericWizard.tsx","screens/Console/Buckets/ListBuckets/BulkReplicationModal.tsx","screens/Console/Buckets/ListBuckets/ListBuckets.tsx","screens/shared/tabs.tsx","screens/Console/Buckets/BucketDetails/AccessDetailsPanel.tsx","screens/Console/Buckets/BucketDetails/SetAccessPolicy.tsx","screens/Console/Buckets/BucketDetails/SetRetentionConfig.tsx","screens/Console/Buckets/BucketDetails/EnableBucketEncryption.tsx","screens/Console/Buckets/BucketDetails/EnableVersioningModal.tsx","icons/UsageIcon.tsx","screens/Console/Buckets/BucketDetails/BucketSummaryPanel.tsx","screens/Console/Buckets/BucketDetails/DeleteEvent.tsx","screens/Console/Buckets/BucketDetails/AddEvent.tsx","screens/Console/Buckets/BucketDetails/BucketEventsPanel.tsx","icons/AddIcon.tsx","screens/Console/Common/FormComponents/QueryMultiSelector/QueryMultiSelector.tsx","screens/Console/Buckets/BucketDetails/AddReplicationModal.tsx","screens/Console/Buckets/BucketDetails/DeleteReplicationRule.tsx","screens/Console/Buckets/BucketDetails/BucketReplicationPanel.tsx","screens/Console/Buckets/BucketDetails/EditLifecycleConfiguration.tsx","screens/Console/Common/FormComponents/DateSelector/utils.ts","screens/Console/Common/FormComponents/DateSelector/DateSelector.tsx","screens/Console/Buckets/BucketDetails/AddLifecycleModal.tsx","screens/Console/Buckets/BucketDetails/BucketLifecyclePanel.tsx","screens/Console/Buckets/BucketDetails/BucketDetails.tsx","screens/Console/Buckets/Buckets.tsx","screens/Console/Common/FormComponents/CodeMirrorWrapper/CodeMirrorWrapper.tsx","screens/Console/Dashboard/Prometheus/types.ts","screens/Console/Policies/AddPolicy.tsx","screens/Console/Policies/DeletePolicy.tsx","screens/Console/Policies/ListPolicies.tsx","screens/Console/Policies/PolicyDetails.tsx","screens/Console/Policies/Policies.tsx","screens/Console/Dashboard/Prometheus/utils.ts","screens/Console/Dashboard/Prometheus/Widgets/SingleValueWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/LineChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/LinearGraphWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/BarChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/BarChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/PieChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/SingleRepWidget.tsx","screens/Console/Common/FormComponents/DateTimePickerWrapper/DateTimePickerWrapper.tsx","icons/SyncIcon.tsx","screens/Console/Dashboard/Prometheus/PrDashboard.tsx","icons/AllBucketsIcon.tsx","icons/EgressIcon.tsx","screens/Console/Dashboard/BasicDashboard/BasicDashboard.tsx","screens/Console/Dashboard/Dashboard.tsx","icons/minio_console_logo.svg","icons/minio_operator_logo.svg","screens/Console/Menu/utils.ts","icons/LicenseIcon.tsx","icons/LogoutIcon.tsx","icons/ConsoleIcon.tsx","icons/HealIcon.tsx","screens/Console/Menu/Menu.tsx","screens/Console/Account/AddServiceAccount.tsx","screens/Console/Account/DeleteServiceAccount.tsx","screens/Console/Common/CredentialsPrompt/CredentialsPrompt.tsx","utils/sortFunctions.ts","screens/Console/Account/ChangePasswordModal.tsx","screens/Console/Account/Account.tsx","screens/Console/Users/GroupsSelectors.tsx","screens/Console/Users/AddUser.tsx","screens/Console/Users/DeleteUser.tsx","screens/Console/Users/BulkAddToGroup.tsx","screens/Console/Policies/PolicySelectors.tsx","screens/Console/Policies/SetPolicy.tsx","screens/Console/Users/ListUsers.tsx","screens/Console/Users/ChangeUserGroups.tsx","screens/Console/Users/SetUserPolicies.tsx","screens/Console/Users/UserDetails.tsx","screens/Console/Users/Users.tsx","screens/Console/Groups/UsersSelectors.tsx","screens/Console/Groups/AddGroup.tsx","screens/Console/Groups/DeleteGroup.tsx","screens/Console/Groups/Groups.tsx","screens/Console/Configurations/utils.ts","screens/Console/Common/FormComponents/CSVMultiSelector/CSVMultiSelector.tsx","screens/Console/Common/FormComponents/CommentBoxWrapper/CommentBoxWrapper.tsx","screens/Console/Configurations/ConfTargetGeneric.tsx","screens/Console/Configurations/CustomForms/EditConfiguration.tsx","screens/Console/Common/SlideOptions/SlideOptions.tsx","icons/BackSettingsIcon.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationsList.tsx","screens/Console/Configurations/NotificationEndpoints/utils.ts","screens/Console/Configurations/CustomForms/ConfPostgres.tsx","screens/Console/Configurations/CustomForms/ConfMySql.tsx","screens/Console/Configurations/NotificationEndpoints/AddNotificationEndpoint.tsx","screens/Console/Configurations/NotificationEndpoints/NotificationTypeSelector.tsx","screens/Console/Configurations/NotificationEndpoints/ListNotificationEndpoints.tsx","screens/shared/ErrorBlock.tsx","screens/Console/Common/FormComponents/FileSelector/FileSelector.tsx","screens/Console/Common/FormComponents/FileSelector/utils.ts","screens/Console/Configurations/TiersConfiguration/AddTierConfiguration.tsx","screens/Console/Configurations/TiersConfiguration/UpdateTierCredentiasModal.tsx","screens/Console/Configurations/TiersConfiguration/ListTiersConfiguration.tsx","screens/Console/Configurations/ConfigurationMain.tsx","screens/Console/Configurations/ConfigurationPanels/WebhookPanel.tsx","screens/Console/Tenants/ListTenants/DeleteTenant.tsx","screens/Console/Tenants/TenantDetails/utils.ts","screens/Console/Tenants/types.ts","screens/Console/Tenants/actions.ts","utils/validationFunctions.ts","screens/Console/Tenants/utils.ts","screens/Console/Tenants/AddTenant/Steps/NameTenant.tsx","screens/Console/Tenants/ListTenants/utils.ts","screens/Console/Tenants/AddTenant/Steps/Configure.tsx","screens/Console/Tenants/AddTenant/Steps/IdentityProvider.tsx","screens/Console/Tenants/AddTenant/Steps/Security.tsx","screens/Console/Tenants/AddTenant/Steps/Encryption.tsx","screens/Console/Tenants/AddTenant/Steps/TenantSize.tsx","screens/Console/Tenants/AddTenant/Steps/Preview.tsx","screens/Console/Tenants/AddTenant/Steps/Affinity.tsx","screens/Console/Tenants/AddTenant/AddTenant.tsx","screens/Console/Tenants/ListTenants/ListTenants.tsx","screens/Console/Tenants/TenantsMain.tsx","screens/Console/Tenants/TenantDetails/AddPoolModal.tsx","screens/Console/Tenants/TenantDetails/ReplicationSetup.tsx","screens/Console/Common/UsageBarWrapper/UsageBarWrapper.tsx","screens/Console/Tenants/TenantDetails/UpdateTenantModal.tsx","screens/Console/Tenants/TenantDetails/TenantYAML.tsx","screens/Console/Tenants/TenantDetails/SubnetLicenseTenant.tsx","screens/Console/Tenants/TenantDetails/TenantDetails.tsx","screens/Console/ObjectBrowser/actions.ts","screens/Console/ObjectBrowser/BrowserBreadcrumbs.tsx","screens/Console/ObjectBrowser/BrowseBuckets.tsx","screens/Console/ObjectBrowser/ObjectBrowser.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteObject.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/CreateFolderModal.tsx","icons/UploadFile.tsx","screens/Console/Buckets/ListBuckets/Objects/utils.ts","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ShareFile.tsx","icons/ShareIcon.tsx","icons/DownloadIcon.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetRetention.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/AddTagModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/DeleteTagModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetLegalHoldModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ObjectDetails.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ObjectRouting.tsx","screens/Console/License/utils.ts","screens/Console/License/ActivationModal.tsx","screens/Console/License/License.tsx","screens/Console/Trace/actions.ts","utils/wsUtils.ts","screens/Console/Trace/Trace.tsx","screens/Console/Logs/actions.ts","screens/Console/Logs/ErrorLogs/ErrorLogs.tsx","screens/Console/Common/FormComponents/FilterInputWrapper/FilterInputWrapper.tsx","screens/Console/Logs/LogSearch/LogsSearchMain.tsx","screens/Console/Logs/LogsMain.tsx","screens/Console/Heal/Heal.tsx","screens/Console/Watch/actions.ts","screens/Console/Watch/Watch.tsx","screens/Console/HealthInfo/actions.ts","screens/Console/HealthInfo/types.ts","screens/Console/HealthInfo/HealthInfo.tsx","screens/Console/Storage/StoragePVCs.tsx","screens/Console/DirectCSI/types.ts","screens/Console/DirectCSI/FormatDrives.tsx","screens/Console/DirectCSI/FormatErrorsResult.tsx","screens/Console/DirectCSI/DirectCSIDrives.tsx","screens/Console/DirectCSI/actions.ts","screens/Console/Storage/Storage.tsx","screens/Console/Console.tsx","screens/LoginPage/LoginCallback.tsx","screens/Console/actions.ts","ProtectedRoutes.tsx","Routes.tsx","reducer.ts","screens/Console/Trace/reducers.ts","screens/Console/Logs/reducers.ts","screens/Console/HealthInfo/reducers.ts","screens/Console/Watch/reducers.ts","screens/Console/reducer.ts","screens/Console/Buckets/reducers.ts","screens/Console/ObjectBrowser/reducers.ts","screens/Console/Tenants/reducer.ts","screens/Console/DirectCSI/reducer.ts","store.ts","serviceWorker.ts","theme/main.ts","index.tsx"],"names":["createBrowserHistory","USER_LOGGED","OPERATOR_MODE","MENU_OPEN","SERVER_NEEDS_RESTART","SERVER_IS_LOADING","SET_LOADING_PROGRESS","SET_SNACK_BAR_MESSAGE","SET_SERVER_DIAG_STAT","SET_ERROR_SNACK_MESSAGE","SET_SNACK_MODAL_MESSAGE","SET_MODAL_ERROR_MESSAGE","userLoggedIn","loggedIn","type","logged","setMenuOpen","open","serverNeedsRestart","needsRestart","loginStrategyType","setSnackBarMessage","message","setErrorSnackMessage","setModalSnackMessage","setModalErrorSnackMessage","minStReq","minMemReq","units","k8sUnits","k8sCalcUnits","niceBytes","x","showK8sUnits","l","n","parseInt","k8sUnitsN","toFixed","clearSession","name","storage","removeItem","document","cookie","timeFromDate","d","h","getHours","m","getMinutes","s","getSeconds","getMilliseconds","k8sfactorForDropdown","map","unit","label","value","getBytes","fromk8s","vl","parseFloat","unitsTake","powFactor","findIndex","element","factor","Math","pow","total","toString","calculateStorage","requestedBytes","forcedNodes","limitSize","drivesPerServer","intReqBytes","structureCalc","nodes","desiredCapacity","maxDiskSize","maxClusterSize","disksPerNode","isNaN","error","persistentVolumes","disks","volumePerDisk","persistentVolumeSize","numberPersistentVolumes","volumesPerServer","floor","min","max","ceil","pvSize","generatePoolName","pools","poolCounter","length","niceDays","secondsValue","timeVariant","seconds","days","hours","minutes","years","months","diffDays","weeks","getTimeFromTimestamp","timestamp","fullDate","dateObject","Date","getFullYear","String","getMonth","padStart","getDay","nsToSeconds","nanoseconds","conversion","round","Number","EPSILON","textToRGBColor","text","hashColored","split","reduce","acc","currItem","charCodeAt","toUpperCase","api","method","url","data","request","send","then","res","body","catch","err","status","window","location","href","onError","errMessage","get","response","throwMessage","charAt","slice","Promise","reject","inputStyles","makeStyles","theme","createStyles","disabled","borderColor","borderBottomStyle","LoginField","props","classes","TextField","InputProps","connector","connect","state","withStyles","backgroundColor","paper","borderRadius","display","flexDirection","alignItems","width","height","margin","position","top","left","marginLeft","marginTop","avatar","spacing","palette","secondary","main","form","submit","boxShadow","padding","errorBlock","justifyContent","color","fontWeight","fontSize","boxSizing","mainContainer","theOcean","borderTopLeftRadius","borderBottomLeftRadius","background","oceanBg","backgroundImage","backgroundRepeat","backgroundPosition","theLogin","loadingLoginStrategy","textAlign","headerTitle","marginBottom","submitContainer","disclaimer","jwtInput","linearPredef","errorIconStyle","marginRight","useState","accessKey","setAccessKey","jwt","setJwt","secretKey","setSecretKey","setError","loginStrategy","unknown","redirect","setLoginStrategy","loginSending","setLoginSending","loginStrategyEndpoints","loginStrategyPayload","formSubmit","e","preventDefault","post","bodyResponse","localStorage","setItem","btoa","history","push","useEffect","invoke","loginDetails","loginComponent","Fragment","Typography","component","variant","className","noValidate","onSubmit","Grid","container","item","xs","fullWidth","id","onChange","target","autoComplete","Button","LinearProgress","replace","hostname","serviceAccount","required","CircularProgress","Paper","fieldBasic","inputLabel","overflow","fieldLabelError","paddingBottom","fieldContainer","maxWidth","tooltipContainer","switchContainer","modalBasic","formScrollable","maxHeight","overflowY","formSlider","clearButton","fontFamily","border","outline","cursor","floatingEnabled","right","zIndex","configureString","tooltipHelper","tooltip","checkBoxBasic","checkboxIcons","unCheckedIcon","checkedIcon","radioBasic","radioIcons","radioUnselectedIcon","radioSelectedIcon","actionsTray","alignSelf","whiteSpace","timeContainers","flexGrow","searchField","opacity","predefinedList","prefinedContainer","predefinedTitle","minHeight","innerContent","overflowX","scrollbarWidth","innerContentMultiline","objectBrowserCommon","obTitleSection","sectionTitle","lineHeight","breadcrumbs","textDecoration","selectorsCommon","multiSelectTable","settingsCommon","customTitle","borderBottom","settingsFormContainer","settingsButtonContainer","borderTop","innerSettingsButtonContainer","settingsOptionsContainer","backButton","backContainer","typesSelection","iconContainer","flexWrap","nonIconContainer","pickTitle","centerElements","logoButton","lambdaNotif","logsCommon","logsSubContainer","widgetCommon","singleValueContainer","titleContainer","contentContainer","contentContainerWithLabel","legendBlock","bottom","singleLegendContainer","colorContainer","minWidth","legendLabel","textOverflow","tooltipCommon","customTooltip","labelContainer","labelColor","itemValue","valueContainer","timeStampTitle","snackBarCommon","snackBar","errorSnackBar","snackBarExternal","snackDiv","snackBarModal","wizardCommon","multiContainer","sizeFactorContainer","headerElement","paddingTop","tableTitle","poolError","paddingLeft","h3Section","descriptionText","buttonsStyles","anchorButton","textTransform","hrClass","borderLeft","borderRight","Copyright","align","Link","useStyles","common","white","NotFound","Container","CssBaseline","Box","mt","CopyIcon","SvgIcon","xmlns","viewBox","data-name","CreateIcon","transform","fill","DeleteIcon","DashboardIcon","BucketsIcon","UsersIcon","cx","cy","rx","ry","ServiceAccountsIcon","GroupsIcon","r","TraceIcon","ConfigurationsListIcon","ClustersIcon","y","WatchIcon","ADD_BUCKET_OPEN","ADD_BUCKET_NAME","ADD_BUCKET_VERSIONED","ADD_BUCKET_LOCKING","ADD_BUCKET_QUOTA","ADD_BUCKET_QUOTA_TYPE","ADD_BUCKET_QUOTA_SIZE","ADD_BUCKET_QUOTA_UNIT","ADD_BUCKET_RESET","ADD_BUCKET_RETENTION","ADD_BUCKET_RETENTION_MODE","ADD_BUCKET_RETENTION_UNIT","ADD_BUCKET_RETENTION_VALIDITY","BUCKET_DETAILS_SET_TAB","unSelected","selected","ViewIcon","active","PencilIcon","ShareIcon","DescriptionIcon","CloudIcon","ConsoleIcon","FormatDriveIcon","defineIcon","DisableIcon","buttonDisabled","filter","onClick","valueToSend","idField","to","sendOnlyId","valueClick","buttonElement","IconButton","aria-label","size","stopPropagation","isString","HelpIcon","flexBasis","checked","Checkbox","inputProps","icon","InputLabel","htmlFor","Tooltip","title","placement","rowText","borderWidth","transitionDuration","paddingRight","generateColumnsMap","columns","containerWidth","actionsWidth","hasSelect","hasActions","selectedItems","columnsSelector","columnsShown","sortColumn","sortDirection","commonRestWidth","colsItems","column","includes","elementKey","initialValue","currValue","el","calculateColumnRest","index","disableSort","enableSort","dataKey","headerClassName","headerTextAlign","headerRenderer","contentTextAlign","cellRenderer","rowData","isSelected","itemElement","renderConst","renderFullObject","renderElement","renderFunction","subRenderFunction","defaultSortDirection","dialogContainer","noBackground","defaultPaperHeight","allTableSettings","minTableHeader","rowUnselected","rowSelected","paginatorContainer","checkBoxHeader","actionsContainer","paginatorComponent","checkBoxRow","loadingBox","overlayColumnSelection","popoverContainer","popoverContent","shownColumnsLabel","userSelect","fontStyle","itemActions","onSelect","records","isLoading","loadingMessage","entityName","radioSelection","customEmptyMessage","customPaperHeight","textSelectable","onColumnChange","infiniteScrollConfig","sortConfig","autoScrollToBottom","columnSelectorOpen","setColumnSelectorOpen","React","anchorEl","setAnchorEl","findView","find","openColumnsSelector","event","currentTarget","closeColumnSelector","style","aria-describedby","Popover","anchorOrigin","vertical","horizontal","transformOrigin","onClose","columnsSelection","isRowLoaded","loadMoreRows","loadMoreRecords","rowCount","recordsCount","onRowsRendered","registerChild","optionsWidth","totalOptions","sizeOptions","calculateOptionsSize","hasOptions","ref","disableHeader","headerHeight","noRowsRenderer","overscanRowCount","rowHeight","rowGetter","onRowClick","rowItem","clickAction","rowClassName","sort","triggerSort","undefined","sortBy","currentSort","currentDirection","scrollToIndex","actions","action","vlSend","disableButtonFunction","showLoaderFunction","elementActions","baseCloseLine","content","modalSnackMessage","system","modalSnackBar","closeContainer","closeButton","modalCloseIcon","closeIcon","titleClass","modalContent","customDialogSize","modalOpen","children","wideLimit","noContentPadding","openSnackbar","setOpenSnackbar","customSize","Dialog","aria-labelledby","Snackbar","ContentProps","autoHideDuration","disableRipple","DialogTitle","DialogContent","root","input","InputField","textBoxContainer","textBoxWithIcon","errorState","overlayAction","multiline","placeholder","overlayIcon","errorInField","helperText","inputRebase","disableFocusRipple","disableTouchRipple","SelectStyled","InputBase","options","FormControl","Select","option","MenuItem","radioStyles","RadioButton","Radio","radioBoxContainer","optionLabel","checkedOption","selectorOptions","currentSelection","disableOptions","displayInColumn","RadioGroup","row","selectorOption","FormControlLabel","control","clsx","StyledSwitch","switchBase","track","thumb","Switch","seeMore","addSideBar","tableToolbar","wrapCell","wordWrap","noFound","tableContainer","stickyHeader","actionsTitle","tableBlock","filterField","divContainer","wrapperContainer","indicatorLabel","fieldDescription","switchOnly","description","indicatorLabels","containerClass","switchComponent","addBucketModalOpen","buckets","bucketName","addBucketName","versioningEnabled","addBucketVersioningEnabled","lockingEnabled","addBucketLockingEnabled","quotaEnabled","addBucketQuotaEnabled","quotaType","addBucketQuotaType","quotaSize","addBucketQuotaSize","quotaUnit","addBucketQuotaUnit","retentionEnabled","addBucketRetentionEnabled","retentionMode","addBucketRetentionMode","retentionUnit","addBucketRetentionUnit","retentionValidity","addBucketRetentionValidity","addBucketVersioned","versioned","enableObjectLocking","locking","addBucketQuota","quota","addBucketRetention","retention","mode","validity","setModalError","buttonContainer","quotaSizeContainer","closeModalAndRefresh","addLoading","setAddLoading","sendEnabled","setSendEnabled","lockingFieldDisabled","setLockingFieldDisabled","useDebounce","resetForm","valid","trim","versioning","amount","enabled","quota_type","addRecord","valueAsNumber","mapDispatchToProps","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","deleteLoading","setDeleteLoading","DialogContentText","DialogActions","autoFocus","headerContainer","labelStyle","multiLine","wizardStepContainer","wizardComponent","wizardModal","buttonsContainer","buttonInnerContainer","page","pageChange","loadingStep","forModal","componentRender","buttons","btn","toPage","buttonAction","wizardMain","wizFromContainer","wizFromModal","wizardSteps","listStyle","modalWizardSteps","buttonList","paddedContentGrid","stepsLabel","stepsMasterContainer","currentStep","setCurrentStep","toElement","lastPage","nextPage","prevPage","pg","stepsList","step","sm","md","lg","xl","remoteBucketList","gridTemplateColumns","errorIcon","successIcon","hide","bucketsToAlter","setBucketsToAlter","externalLoading","setExternalLoading","targetURL","setTargetURL","region","setRegion","useTLS","setUseTLS","replicationMode","setReplicationMode","bandwidthScalar","setBandwidthScalar","bandwidthUnit","setBandwidthUnit","healthCheck","setHealthCheck","relationBuckets","setRelationBuckets","remoteBucketsOpts","setRemoteBucketOpts","responseItem","setResponseItem","optionsForBucketsDrop","remoteBucketName","bucketsAlter","relationBucketsAlter","forEach","LogoToShow","errString","updateItem","indexItem","updatedList","removeSuccessItems","newBucketsToAlter","newRelationBuckets","successElement","errorString","indexToRemove","indexOf","originBucket","splice","join","wizardPageJump","remoteConnectInfo","dataReturn","arrayReplaceBuckets","errorItem","initialBucket","bucketResponse","stateOfItem","replicate","destinationBucket","endURL","hc","remoteBucketsInfo","bucketsRelation","syncMode","bandwidth","healthCheckPeriod","states","replicationState","itm","setTimeout","addBucketOpen","addBucketReset","setRecords","loading","setLoading","setDeleteOpen","setSelectedBucket","filterBuckets","setFilterBuckets","loadingPerms","setLoadingPerms","canCreateBucket","setCanCreateBucket","selectedBuckets","setSelectedBuckets","replicationModalOpen","setReplicationModalOpen","permissions","canCreate","can","tableActions","bucket","filteredRecords","b","refresh","BulkReplicationModal","unselectAll","val","disableUnderline","startAdornment","InputAdornment","startIcon","date","targetD","elements","TabPanel","other","role","hidden","session","console","a11yProps","match","curTab","setCurTab","loadingPolicies","setLoadingPolicies","bucketPolicy","setBucketPolicy","loadingUsers","setLoadingUsers","bucketUsers","setBucketUsers","params","usersEnabled","pages","PolicyActions","policy","userTableActions","user","policies","Tabs","newValue","indicatorColor","textColor","scrollButtons","Tab","actualPolicy","accessPolicy","setAccessPolicy","access","setRetentionMode","setRetentionUnit","setRetentionValidity","setValid","encryptionCfg","encryptionEnabled","kmsKeyID","setKmsKeyID","encryptionType","setEncryptionType","algorithm","kmsMasterKeyID","encType","closeVersioningModalAndRefresh","versioningCurrentState","versioningLoading","setVersioningLoading","UsageIcon","y1","x2","y2","gradientUnits","offset","stopColor","stroke","strokeMiterlimit","strokeWidth","paperContainer","elementTitle","consumptionValue","reportedUsage","info","setInfo","setEncryptionCfg","bucketSize","setBucketSize","hasObjectLocking","setHasObjectLocking","accessPolicyScreenOpen","setAccessPolicyScreenOpen","replicationRules","setReplicationRules","loadingObjectLocking","setLoadingLocking","loadingSize","setLoadingSize","loadingBucket","setLoadingBucket","loadingEncryption","setLoadingEncryption","loadingVersioning","setLoadingVersioning","loadingReplication","setLoadingReplication","isVersioned","setIsVersioned","setEncryptionEnabled","retentionConfigOpen","setRetentionConfigOpen","enableEncryptionScreenOpen","setEnableEncryptionScreenOpen","enableVersioningOpen","setEnableVersioningOpen","is_versioned","object_locking_enabled","bucketInfo","rules","loadAllBucketData","titleCol","capitalizeFirst","toLowerCase","doubleElement","colSpan","direction","gridContainer","bucketEvent","events","prefix","suffix","arn","removeRecord","setPrefix","setSuffix","setArn","selectedEvents","setSelectedEvents","arnList","setArnList","fetchArnList","useCallback","arns","handleClick","selectedIndex","newSelected","concat","arnValues","arnConstant","configuration","ignoreExisting","Table","TableHead","TableRow","TableCell","TableBody","addEventScreenOpen","setAddEventScreenOpen","loadingEvents","setLoadingEvents","selectedEvent","setSelectedEvent","setFilter","evnt","AddIcon","inputWithBorder","lineInputBoxes","queryDiv","keyPlaceholder","valuePlaceholder","withBorder","currentKeys","setCurrentKeys","currentValues","setCurrentValues","bottomList","createRef","elementsSplit","keys","values","splittedVals","refScroll","current","scrollIntoView","firstUpdate","useRef","useLayoutEffect","debouncedOnChange","onChangeKey","persist","updatedElement","onChangeValue","debounce","queryString","keyVal","insertString","inputs","keysList","valuesList","addEmptyLine","targetStorageClass","setTargetStorageClass","targetBucket","setTargetBucket","repDeleteMarker","setRepDeleteMarker","repDelete","setRepDelete","repMetadata","tags","setTags","replicateDeleteMarkers","replicateDeletes","replicateMetadata","itemVal","log","ruleToDelete","canPutReplication","setCanPutReplication","canGetReplication","setCanGetReplication","deleteReplicationModal","setDeleteReplicationModal","openSetReplication","setOpenSetReplication","selectedRRule","setSelectedRRule","bucket_name","userCanPutReplication","setOpenReplicationOpen","replicationTableActions","replication","strongText","keyName","lifecycle","setEnabled","tgs","stringLab","key","disable","Array","from","_","num","currentYear","numYear","DateSelector","forwardRef","addSwitch","onDateChange","useImperativeHandle","resetDate","dateEnabled","setDateEnabled","month","setMonth","day","setDay","year","setYear","valueSplit","currentDate","parse","parsedMonth","parsedDay","monthForString","dayForString","parsedDate","toISOString","dateString","validDate","isValid","isDateDisabled","fieldContainerBorder","dateInput","displayEmpty","dayNumber","flex","loadingTiers","setLoadingTiers","tiersList","setTiersList","storageClass","setStorageClass","NCTransitionSC","setNCTransitionSC","expiredObjectDM","setExpiredObjectDM","NCExpirationDays","setNCExpirationDays","NCTransitionDays","setNCTransitionDays","ilmType","setIlmType","expiryType","setExpiryType","expiryDays","setExpiryDays","expiryDate","setExpiryDate","transitionDays","setTransitionDays","transitionDate","setTransitionDate","transitionType","setTransitionType","isFormValid","setIsFormValid","objList","tier","tierType","expiry","expiry_date","expiry_days","noncurrentversion_expiration_days","transition","transition_date","transition_days","noncurrentversion_transition_days","noncurrentversion_transition_storage_class","storage_class","lifecycleInsert","expired_object_delete_marker","loadingLifecycle","setLoadingLifecycle","lifecycleRecords","setLifecycleRecords","addLifecycleOpen","setAddLifecycleOpen","editLifecycleOpen","setEditLifecycleOpen","lifecycleColumns","expiration","objectST","selectedTab","bucketDetails","setBucketDetailsTab","tab","noRecords","gridWrapper","gridGap","masterActions","encCheckbox","tabPan","fixedHeight","routerContainer","matchURL","splitMatch","canGetReplicationVal","newTab","mainRoute","changeRoute","path","BucketSummaryPanel","BucketEventsPanel","BucketReplicationPanel","BucketLifecyclePanel","AccessDetailsPanel","sidebarOpen","withRouter","BucketDetails","ListBuckets","NotFoundPage","require","widgetType","onBeforeChange","readOnly","lineNumbers","jsonPolicyEditor","policyEdit","policyName","setPolicyName","policyDefinition","setPolicyDefinition","JSON","stringify","validSave","editor","selectedPolicy","addScreenOpen","setAddScreenOpen","setSelectedPolicy","filterPolicies","setFilterPolicies","setPolicyEdit","fetchRecords","pa","pb","elementItem","containerHeader","infoGrid","updateButton","noUnderLine","poolLabel","licenseContainer","licenseInfo","licenseInfoTitle","licenseInfoValue","verifiedIcon","breadcrumLink","setSelectedTab","setPolicy","userList","setUserList","loadingPolicy","setLoadingPolicy","result","PolicyDetails","ListPolicies","dLocalStorageV","defaultWidgetsLayout","w","i","minW","moved","static","colorsMain","niceDaysFromNS","roundNumber","panelsConfiguration","singleValue","layoutIdentifier","labelDisplayFunction","dataOuter","widgetConfiguration","outerChart","colorList","innerRadius","outerRadius","startAngle","endAngle","innerChart","pieChart","innerLabel","keyLabel","lineColor","fillColor","linearGraph","yAxisFormatter","xAxisFormatter","customStructure","originTag","displayTag","barChart","singleRep","disableYAxis","calculateMainValue","metricCalc","sumValues","accumulator","sortResult","value1","value2","widgetDetailsToPanel","payloadData","panelItem","typeOfPayload","valueDisplay","chartSeries","valuesArray","totalValues","elementValue","metricKeyItem","Object","metric","metricName","targets","series","plotValues","targetMaster","results","legendFormat","itemVals","labelName","metrics","keysToReplace","expToReplace","RegExp","replacedLegend","matchItem","nwMatchItem","countVarsOpen","countVarsClose","cleanLegend","constructLabelNames","valInfo","itemIndex","itemToPush","seriesWithColors","series1","series2","serialC","sortedVals","chartBars","sortFunction","structureItem","metricTake","lastValue","a","valuesForBackground","eachVal","saveDashboardDistribution","displayErrorMessage","loadingAlign","timeStart","timeEnd","setData","stepCalc","secondsInPeriod","unix","periods","widgetsWithValue","payload","linearConfiguration","pl","containerElements","chartCont","legendChart","hideYAxis","panelWidth","setResult","intervalCount","ResponsiveContainer","AreaChart","CartesianGrid","strokeDasharray","strokeOpacity","XAxis","tickFormatter","interval","tick","tickCount","YAxis","domain","dataMax","section","Area","fillOpacity","wrapperStyle","barChartConfiguration","CustomizedAxisTick","textAnchor","dy","BarChart","layout","barCategoryGap","tickLine","axisLine","bar","Bar","dataInner","setDataInner","setDataOuter","pieChartConfiguration","middleLabel","innerColors","outerColors","PieChart","Pie","entry","Cell","dominantBaseline","dateSelectorOverride","parentDateOverride","utils","MomentUtils","DateTimePicker","ampm","format","SyncIcon","widgetsContainer","syncButton","setTimeStart","setTimeEnd","panelInformation","setPanelInformation","dashboardDistr","currentItems","storedConfiguration","getItem","parsedConfig","atob","getDashboardDistribution","panels","singlePanelWidth","xSpacing","componentToUse","fetchUsage","widgets","panelT","hpanel","totalWidth","cols","containerPadding","onLayoutChange","AllBucketsIcon","EgressIcon","notationContainer","dashboardBG","backgroundSize","dashboardContainer","smallUnit","usage","fixedHeightPaper","prettyNumber","niceBytesUsage","prettyUsage","objects","basicResult","setBasicResult","menuGroups","group","collapsible","LicenseIcon","LogoutIcon","HealIcon","operatorMode","logo","menuList","extraMargin","groupTitle","subTitleMenu","selectorArrow","borderStyle","selectorArrowOpen","menuItem","menuStateBuilder","menuOpen","menuItems","NavLink","IAMPoliciesIcon","allowedPages","documentation","forceDisplay","hasOwnProperty","allowedItems","src","operator_logo","alt","List","groupMember","filterByGroup","ListItem","menuClicked","newMenu","setMenuCollapse","Collapse","in","timeout","unmountOnExit","button","ListItemIcon","ListItemText","primary","Divider","deleteSession","infoDetails","containerScrollable","addSending","setAddSending","isRestrictedByPolicy","setIsRestrictedByPolicy","addServiceAccount","wrapText","selectedServiceAccount","warningBlock","credentialsPanel","newServiceAccount","closeModal","entity","consoleCreds","isArray","credentialsPair","consoleExtras","cCreds","itemMap","access_key","secret_key","filename","createElement","setAttribute","encodeURIComponent","appendChild","click","removeChild","download","usersSort","policySort","stringSort","currentPassword","setCurrentPassword","newPassword","setNewPassword","reNewPassword","setReNewPassword","current_secret_key","new_secret_key","changePassword","imageIcon","iconRoot","setSelectedServiceAccount","showNewCredentials","setShowNewCredentials","setNewServiceAccount","changePasswordModalOpen","setChangePasswordModalOpen","serviceAccounts","nsa","closeAddModalAndRefresh","ChangePasswordModal","selectedGroups","setSelectedGroups","fetchGroups","groups","selGroups","selectedUser","currentGroups","setCurrentGroups","getUserInformation","memberOf","checkedUsers","saving","isSaving","accepted","setAccepted","users","fetchPolicies","selectedGroup","setActualPolicy","groupPolicy","userPolicy","userName","entityType","setSelectedUser","addGroupOpen","setAddGroupOpen","setCheckedUsers","policyOpen","setPolicyOpen","selectionElement","topValue","close","unCheckAll","closeAddGroupBulk","currentPolicies","pol","setCurrentPolicies","isEnabled","Bookmark","UserDetails","ListUsers","selectedUsers","setSelectedUsers","editMode","fetchUsers","selUsers","groupName","setGroupName","groupEnabled","setGroupEnabled","loadingGroup","isLoadingGroup","validGroup","setValidGroup","members","isDeleting","closeNoAction","setGroupOpen","setSelectedGroup","resGroups","notifyPostgres","notifyMysql","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","configurationElements","configuration_id","configuration_label","fieldsConfigurations","cache","compression","etcd","identity_openid","identity_ldap","logger_webhook","audit_webhook","commonFields","notificationEndpointsFields","removeEmptyFields","formFields","field","commonPlaceholder","currentElements","setCurrentElements","onChangeElement","elementsString","elementsUp","cpList","cssOutlinedInput","rootContainer","InputLabelProps","shrink","notchedOutline","valueDef","defaults","defValue","storedConfig","fields","defaultVals","valueHolder","setValueHolder","fieldsElements","defValList","stateInsert","setValueElement","valuesDup","fieldDefinition","selectedConfiguration","valuesObj","setValueObj","setSaving","loadingConfig","setLoadingConfig","configValues","setConfigValues","configId","keyVals","key_values","onValueChange","masterContainer","sliderContainer","slide","float","slideOptions","currentSlide","currentSliderPosition","containerSize","block","BackSettingsIcon","strokeLinecap","initialConfiguration","iconText","customConfigurationPage","setSelectedConfiguration","currentConfiguration","setCurrentConfiguration","servicesList","actionTrigger","targetTitle","useConnectionString","setUseConnectionString","connectionString","setConnectionString","host","setHostname","dbName","setDbName","port","setPort","setUser","password","setPassword","sslMode","setSslMode","table","setTable","setFormat","queueDir","setQueueDir","queueLimit","setQueueLimit","comment","setComment","configToString","strValue","cs","kv","valueIndexes","n1","n2","kvFields","Map","j","substr","set","parseConnectionString","useDsnString","setUseDsnString","dsnString","setDsnString","configToDsnString","regex","exec","lastIndex","parseDsnString","lambdaFormIndicator","service","saveAndRefresh","valuesArr","setValueArr","srvComponent","targetElement","nonLogos","elService","withLogos","setService","lambdaContainer","setIsLoading","currentPanel","setCurrentPanel","resNotEndList","notification_endpoints","service_name","account_id","backClick","red","serviceName","errorMessage","withBreak","errorText","valueString","fileReselect","fieldBottom","fileInputField","accept","showFileSelector","setShowSelector","fileName","evt","callback","file","files","reader","FileReader","readAsDataURL","onload","fileBase64","fileArray","fileProcess","setName","endpoint","setEndpoint","setBucket","creds","setCreds","encodedCreds","setEncodedCreds","accountName","setAccountName","accountKey","setAccountKey","titleSelection","setTitleSelection","s3","accesskey","secretkey","storageclass","gcs","azure","accountname","accountkey","encodedValue","tierData","savingTiers","setSavingTiers","updateCredentialsOpen","setUpdateCredentialsOpen","selectedTier","setSelectedTier","setType","items","getItemName","getItemType","typeSelect","typeItem","UpdateTierCredentiasModal","headerLabel","logger","modalTitle","apiURL","audit","addWebhookOpen","setAddWebhookOpen","panelToDisplay","panelData","toLocaleLowerCase","selectedTenant","retypeTenant","setRetypeTenant","namespace","getDefaultAffinity","tenantName","poolName","podAntiAffinity","requiredDuringSchedulingIgnoredDuringExecution","labelSelector","matchExpressions","operator","topologyKey","getNodeSelector","labels","withPodAntiAffinity","splittedLabels","splitKeyValue","nodeSelector","nodeAffinity","nodeSelectorTerms","def","ADD_TENANT_SET_CURRENT_PAGE","ADD_TENANT_SET_ADVANCED_MODE","ADD_TENANT_UPDATE_FIELD","ADD_TENANT_SET_PAGE_VALID","ADD_TENANT_RESET_FORM","ADD_TENANT_SET_STORAGE_CLASSES_LIST","ADD_TENANT_ADD_MINIO_KEYPAIR","ADD_TENANT_ADD_FILE_TO_MINIO_KEYPAIR","ADD_TENANT_DELETE_MINIO_KEYPAIR","ADD_TENANT_ADD_CA_KEYPAIR","ADD_TENANT_ADD_FILE_TO_CA_KEYPAIR","ADD_TENANT_DELETE_CA_KEYPAIR","ADD_TENANT_ADD_CONSOLE_CERT","ADD_TENANT_ENCRYPTION_SERVER_CERT","ADD_TENANT_ENCRYPTION_CLIENT_CERT","ADD_TENANT_ENCRYPTION_VAULT_CERT","ADD_TENANT_ENCRYPTION_VAULT_CA","ADD_TENANT_ENCRYPTION_GEMALTO_CA","updateAddField","pageName","fieldName","isPageValid","addConsoleCertificate","commonFormValidation","fieldsValidate","returnErrors","fieldKey","customValidation","customValidationMessage","pattern","customPatternMessage","rgx","clearValidationError","validationErrors","newValidationElement","getRandomString","retval","legalcharacters","random","advancedMode","tenants","createTenant","advancedModeOn","nameTenant","selectedStorageClass","storageClasses","setAdvancedMode","setStorageClassesList","setLimitSize","setValidationErrors","emptyNamespace","setEmptyNamespace","loadingNamespaceInfo","setLoadingNamespaceInfo","updateField","getNamespaceInformation","tenantsList","resourceQuotas","quotas","returnQuotas","rsQuota","stCName","hard","used","getLimitSizes","newStorage","debounceNamespace","useMemo","cancel","customNamespaceError","commonValidation","frmValidationCleanup","customImage","configure","imageName","consoleImage","customDockerhub","imageRegistry","imageRegistryUsername","imageRegistryPassword","exposeMinIO","exposeConsole","prometheusCustom","logSearchCustom","logSearchVolumeSize","logSearchSizeFactor","prometheusVolumeSize","prometheusSizeFactor","logSearchSelectedStorageClass","logSearchImage","kesImage","logSearchPostgresImage","prometheusSelectedStorageClass","prometheusImage","customAccountValidation","commonVal","cleanValidation","idpSelection","identityProvider","accessKeys","secretKeys","openIDURL","openIDClientID","openIDSecretID","ADURL","ADSkipTLS","ADServerInsecure","ADUserNameFilter","ADGroupBaseDN","ADGroupSearchFilter","ADNameAttribute","shortened","buttonTray","updateUserField","newUserField","updatePwordField","customIDPValidation","gutterBottom","enableTLS","security","enableAutoCert","enableCustomCerts","minioCertificates","certificates","caCertificates","consoleCertificate","addFileToCaCertificates","deleteCaCertificate","addCaCertificate","addKeyPair","addFileToKeyPair","deleteKeyPair","keyPair","cert","enableEncryption","encryption","gemaltoEndpoint","gemaltoToken","gemaltoDomain","gemaltoRetry","awsEndpoint","awsRegion","awsKMSKey","awsAccessKey","awsSecretKey","awsToken","vaultEndpoint","vaultEngine","vaultNamespace","vaultPrefix","vaultAppRoleEngine","vaultId","vaultSecret","vaultRetry","vaultPing","gcpProjectID","gcpEndpoint","gcpClientEmail","gcpClientID","gcpPrivateKeyID","gcpPrivateKey","enableCustomCertsForKES","serverCertificate","clientCertificate","vaultCertificate","vaultCA","gemaltoCA","addFileServerCert","addFileClientCert","addFileVaultCert","addFileVaultCa","addFileGemaltoCa","encryptionAvailable","encoded_key","encoded_cert","encryptionValidation","volumeSize","tenantSize","sizeFactor","memoryNode","ecParity","ecParityChoices","cleanECChoices","maxAllocableMemo","memorySize","distribution","ecParityCalc","usableInformation","storageFactors","erasureCode","validateMemorySize","memSize","maxMemSize","clusterSizeFactor","memoSize","capacitySize","maxMemorySize","requestedSizeBytes","memReqSize","limit","capSize","memLimitSize","setMemoryResource","ecCodeValidated","parityValidValues","totalDisks","totalNodes","defaultEC","erasureCodeSet","maxEC","rawCapacity","totalStorage","erasureStripeSet","currentParity","parityNumber","storageFactor","maxCapacity","maxTolerations","maxFailureTolerations","fourVar","erasureCodeCalc","validateClusterSize","getECValue","maxMemory","max_memory","getMaxAllocableMemory","distrCalculate","capacityToUse","calculateDistribution","ecList","ecListTransform","parsedSize","scope","podAffinity","affinity","nodeSelectorLabels","splitItem","validPages","closeAndRefresh","createdAccount","setCreatedAccount","affinityType","affinityObject","dataSend","access_keys","secret_keys","enable_tls","enable_console","enable_prometheus","image","console_image","expose_minio","expose_console","servers","volumes_per_server","volume_configuration","storage_class_name","resources","requests","memory","limits","erasureCodingParity","image_registry","registry","username","logSearchConfiguration","storageSize","postgres_image","prometheusConfiguration","tenantCerts","consoleCerts","caCerts","ca_certificates","minio","crt","tls","insertEncrypt","gemaltoCAIntroduce","ca","gemalto","keysecure","credentials","token","retry","aws","secretsmanager","kmskey","gcp","secretmanager","project_id","client_email","client_id","private_key_id","private_key","vaultKeyPair","vaultCAInsert","vaultTLS","vault","engine","approle","secret","ping","encryptionServerKeyPair","encryptionClientKeyPair","client","server","dataIDP","keyarray","oidc","secret_id","active_directory","skip_tls_verification","server_insecure","username_format","user_search_filter","group_search_base_dn","group_search_filter","group_name_attribute","idp","consoleSAList","newSrvAcc","consoleItem","consoleKey","cancelButton","advancedOnly","filteredWizardSteps","resetAddTenantForm","tenantsContainer","setSelectedTenant","filterTenants","setFilterTenants","tenant","resTenants","capacity","total_size","reloadData","bottomContainer","factorElements","sizeNumber","sizeDescription","onClosePoolAndReload","numberOfNodes","setNumberOfNodes","setVolumeSize","setVolumesPerSever","setSelectedStorageClass","setStorageClasses","instanceCapacity","totalCapacity","defaultAffinity","sourceBucket","setSourceBucket","clusterSelected","setClusterSelected","setDestinationBucket","address","setAddress","BorderLinearProgress","colorPrimary","padChart","allValue","currentUsage","centerItem","maxValue","porcentualValue","idTenant","isSending","setIsSending","minioImage","setMinioImage","setConsoleImage","setImageRegistry","imageRegistryEndpoint","setImageRegistryEndpoint","setImageRegistryUsername","setImageRegistryPassword","validMinioImage","setValidMinioImage","validConsoleImage","setValidConsoleImage","validateImage","fieldToCheck","test","tenantYaml","setTenantYaml","setErrorMessage","yaml","loadingActivateProduct","loadingLicenseInfo","activateProduct","subnet_license","organization","storage_capacity","expires_at","plan","email","licenseButton","setCapacity","poolCount","setPoolCount","setPools","pods","setPods","instances","setInstances","volumes","setVolumes","addPoolOpen","setAddPool","setAddBucketOpen","addReplicationOpen","setAddReplicationOpen","setTenant","loadingUsage","setLoadingUsage","usageError","setUsageError","setUsage","updateMinioVersion","setUpdateMinioVersion","yamlScreenOpen","setYamlScreenOpen","setLicenseInfo","setLoadingLicenseInfo","setLoadingActivateProduct","logEnabled","setLogEnabled","monitoringEnabled","setMonitoringEnabled","adEnabled","setAdEnabled","oicEnabled","setOicEnabled","tenantNamespace","loadInfo","resPools","totalInstances","totalVolumes","poolNamedIndex","pool","cap","idpAdEnabled","idpOicEnabled","loadUsage","currentTime","time","timeCreated","editYaml","reload","aria-controls","aria-haspopup","keepMounted","Boolean","endpoints","rel","currentState","OBJECT_BROWSER_ADD_ROUTE","OBJECT_BROWSER_RESET_ROUTES_LIST","OBJECT_BROWSER_REMOVE_ROUTE_LEVEL","OBJECT_BROWSER_SET_ALL_ROUTES","OBJECT_BROWSER_CREATE_FOLDER","OBJECT_BROWSER_SET_LAST_AS_FILE","OBJECT_BROWSER_DOWNLOAD_FILE_LOADER","OBJECT_BROWSER_DOWNLOADED_FILE","addRoute","route","routeType","removeRouteLevel","toRoute","setAllRoutes","currentRoute","fileIsBeingPrepared","fileDownloadStarted","objectBrowser","objectsList","listBreadcrumbs","objectItem","resetRoutesList","reset","usedSpaceCol","subTitleLabel","iconBucket","browsePaper","pop","idElement","currentPath","newPath","globalClass","rowClass","watchList","inputField","lastElementWPadding","pathIn","selectedObject","recursive","endsWith","createFolder","newRoute","pathLabel","folderName","pathUrl","setPathUrl","folderTruncated","UploadFile","objectPath","versionID","callBack","includeVersionInCallback","anchor","xhr","XMLHttpRequest","allPathData","objectName","isNullOrUndefined","responseType","this","blob","Blob","blobUrl","URL","createObjectURL","revokeObjectURL","remove","commonIcon","defLoading","setLastAsFile","setLoadingProgress","progress","loadingProgress","routesList","downloadingFiles","fileNameText","iconFolder","iconFile","listButton","createFolderOpen","setCreateFolderOpen","setSelectedObject","filterObjects","setFilterObjects","loadingStartTime","setLoadingStartTime","setLoadingMessage","delay","savedCallback","setInterval","clearInterval","useInterval","timeDelta","now","updateMessage","internalPaths","extraPath","currentTimestamp","folders","record","recordsInElement","verifyIfIsFile","removeDownloadAnimation","uploadObject","splitPaths","uploadUrl","areMultipleFiles","okMessage","withCredentials","upload","addEventListener","loaded","onerror","onloadend","formData","FormData","blobFile","append","idElementClean","pathInArray","object","version_id","Input","multiple","elementString","last_modified","copyButtonContainer","dataObject","shareURL","setShareURL","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","slDate","currDate","diffDate","getTime","dateContainer","newDate","DownloadIcon","objectInfo","statusEnabled","setStatusEnabled","setDate","isDateValid","setIsDateValid","setIsSaving","alreadyConfigured","setAlreadyConfigured","retention_mode","retention_until_date","valueDate","getDate","dateElement","showSwitcher","versionId","expireDate","expires","addRetention","disableRetention","currentTags","onCloseAndUpdate","newKey","setNewKey","newLabel","setNewLabel","newTag","newTagList","selectedTag","setDeleteSending","tagKey","tagLabel","cleanObject","actualInfo","legalHoldEnabled","setLegalHoldEnabled","emptyFile","is_latest","legal_hold_status","objectNameContainer","objectPathContainer","objectPathLink","propertiesContainer","propertiesItem","propertiesItemBold","propertiesValue","propertiesIcon","actionsIconContainer","actionsIcon","tagsContainer","tagText","tag","search","loadObjectData","setLoadObjectData","shareFileModalOpen","setShareFileModalOpen","retentionModalOpen","setRetentionModalOpen","tagModalOpen","setTagModalOpen","deleteTagModalOpen","setDeleteTagModalOpen","setSelectedTag","legalholdOpen","setLegalholdOpen","setActualInfo","versions","setVersions","filterVersion","setFilterVersion","pathInBucket","tagKeys","shareObject","downloadObject","includeVersion","version","updateInfo","redirectBack","reloadObjectData","Chip","deleteIcon","onDelete","deleteTag","clickable","currentItem","planDetails","price","capacityMin","capacityMax","planItems","community","communityDetail","standard","standardDetail","enterprise","enterpriseDetail","planButtons","text2","link","subnetLicenseKey","subnetLoginForm","licenseKeyField","pageTitle","buttonSignup","license","setLicense","subnetPassword","setSubnetPassword","subnetEmail","setSubnetEmail","rows","detailsContainer","detailsContainerBorder","detailsContainerBorderHighlighted","detailsTitle","activePlanHeader","planHeader","detailsPrice","detailsCapacityMax","detailsCapacityMin","itemContainer","itemContainerDetail","alignContent","itemFirst","itemHighlighted","checkIcon","buttonContainerBlank","buttonContainerHighlighted","openSourcePolicy","activateLink","clear","subnetRefreshLicenseLink","midWidth","smallWidth","licenseDescription","currentPlanBG","currentPlanButton","planItemsPadding","subnetSubTitle","fetchLicenseInfo","setCurrentPlanID","activateProductModal","setActivateProductModal","currentPlanID","loadingRefreshLicense","setLoadingRefreshLicense","details","currentPlan","TRACE_MESSAGE_RECEIVED","TRACE_RESET_MESSAGES","wsProtocol","protocol","messages","trace","traceMessageReceived","traceResetMessages","logList","sizeItem","timeItem","wsProt","c","W3CWebSocket","onopen","onmessage","ptime","moment","toDate","onclose","timeParse","fullElement","statusCode","statusMsg","LOG_MESSAGE_RECEIVED","LOG_RESET_MESSAGES","logs","logMessageReceived","logResetMessages","logerror","logerror_tab","ansidefault","highlight","setHighlight","renderLog","logElement","logMessage","ConsoleMsg","highlightedLine","startsWith","errorElems","deploymentid","requestID","remotehost","userAgent","source","renderError","renderLines","buttonKit","toggleButton","inputBar","advancedLabel","advancedLabelContainer","getInformationContainer","orderButton","recordsLabel","blockCollapsed","filterOpen","endLineAction","filtersContainer","innerContainer","noticeLabel","tableFOpen","tableFClosed","setFilterOpen","apiName","setApiName","setUserAgent","setObject","setRequestID","responseStatus","setResponseStatus","sortOrder","setSortOrder","setColumnsShown","setNextPage","alreadyFetching","setAlreadyFetching","recordsResp","queryParams","fetchedResults","newResultSet","response_status_code","response_status","colName","newArray","sortData","newSortDirection","resolve","currentTab","setCurrentTab","showLogSearch","setShowLogSearch","graphContainer","scanInfo","scanData","inlineCheckboxes","start","setStart","setBucketName","bucketList","setBucketList","setRecursive","forceStart","setForceStart","forceStop","setForceStop","beforeHeal","afterHeal","objectsHealed","objectsScanned","healDuration","sizeScanned","hStatus","setHStatus","colorHealthArr","Green","Yellow","Red","Grey","cB","cA","entries","healthAfterCols","itemsScanned","healthBeforeCols","bytesScanned","datasets","bucketNames","legend","WATCH_MESSAGE_RECEIVED","WATCH_RESET_MESSAGES","watch","watchMessageReceived","watchResetMessages","searchPrefix","some","Time","HEALTH_INFO_MESSAGE_RECEIVED","HEALTH_INFO_RESET_MESSAGE","DiagStatError","DiagStatSuccess","DiagStatInProgress","healthInfo","serverDiagnosticStatus","healthInfoMessageReceived","healthInfoResetMessage","setServerDiagStat","gap","startDiagnostic","setStartDiagnostic","downloadDisabled","setDownloadDisabled","code","tableWrapper","DIRECT_CSI_SELECT_DRIVE","closeFormatModalAndRefresh","allDrives","drivesToFormat","formatAll","setFormatAll","force","setForce","drives","formatIssuesList","errorsList","onCloseFormatErrorsList","selectDrive","driveName","notAvailableNotice","linkItem","checkedDrives","setCheckedDrives","formatOpen","setFormatOpen","formatErrorsResult","setFormatErrorsResult","formatErrorsOpen","setFormatErrorsOpen","setDrivesToFormat","notAvailable","setNotAvailable","newItem","joinName","node","drive","d1","d2","driveID","routes","tabsContainer","StoragePVCs","DirectCSIDrives","render","isServerLoading","serverIsLoading","snackBarMessage","toolbar","default","toolbarIcon","mixins","appBar","drawer","transitions","create","easing","sharp","duration","leavingScreen","appBarShift","enteringScreen","menuButton","menuButtonHidden","drawerPaper","drawerPaperClose","breakpoints","up","warningBar","heigh","widht","allowedRoutes","Dashboard","Buckets","ObjectBrowser","ObjectRouting","Watch","Users","Groups","Policies","Heal","Trace","LogsMain","HealthInfo","ConfigurationMain","Account","WebhookPanel","TenantsMain","Storage","TenantDetails","License","Drawer","exact","routerProps","LoginCallback","errorDescription","setErrorDescription","sessionId","SESSION_RESPONSE","consoleOperatorMode","saveSessionResponse","Component","sessionLoading","setSessionLoading","pathname","hot","Login","Console","initialState","features","initialRoute","selectedDrive","globalReducer","combineReducers","newRouteList","indexOfTopPath","newRouteLevels","splitRoutes","routesArray","initRoute","newSetOfRoutes","newFoldersRoutes","lastRoute","splitElements","folderTrim","currentList","lastItem","newList","actualFiles","newState","has","originPageNameItems","joinValue","originValidPages","newSetOfPages","elm","changeCL","minioCerts","NCertList","minioCertsList","cleanMinioCertsList","CACerts","NACList","CACertsList","consoleCert","encServerCert","encClientCert","encVaultCert","encVaultCA","encGemaltoCA","directCSI","composeEnhancers","__REDUX_DEVTOOLS_EXTENSION_COMPOSE__","compose","createMuiTheme","light","dark","contrastText","grey","100","200","300","400","500","600","700","800","900","typography","h1","h2","h3","h4","h5","h6","overrides","MuiButton","GlobalCss","ReactDOM","store","createStore","applyMiddleware","thunk","ThemeProvider","getElementById","navigator","serviceWorker","ready","registration","unregister"],"mappings":"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,EACR6gC,IAET,IA+IIuiD,EA7IS,CACb,CACE3jF,UAAW4jF,GACX9lD,KAAM,cAER,CACE99B,UAAW6jF,GACX/lD,KAAM,YAER,CACE99B,UAAW6jF,GACX/lD,KAAM,wBAER,CACE99B,UAAW6jF,GACX/lD,KAAM,gCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,+BAER,CACE99B,UAAW6jF,GACX/lD,KAAM,oCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,kCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,+BAER,CACE99B,UAAW6jF,GACX/lD,KAAM,+BAER,CACE99B,UAAW6jF,GACX/lD,KAAM,wCAER,CACE99B,UAAW6jF,GACX/lD,KAAM,qCAER,CACE99B,UAAW8jF,GACXhmD,KAAM,mBAER,CACE99B,UAAW+jF,GACXjmD,KAAM,2BAER,CACE99B,UAAW+jF,GACXjmD,KAAM,6BAER,CACE99B,UAAWgkF,GACXlmD,KAAM,UAER,CACE99B,UAAWikF,GACXnmD,KAAM,oBAER,CACE99B,UAAWikF,GACXnmD,KAAM,UAER,CACE99B,UAAWkkF,GACXpmD,KAAM,WAER,CACE99B,UAAWmkF,GACXrmD,KAAM,yBAER,CACE99B,UAAWmkF,GACXrmD,KAAM,aAER,CACE99B,UAAWokF,GACXtmD,KAAM,SAER,CACE99B,UAAWqkF,GACXvmD,KAAM,UAER,CACE99B,UAAWskF,GACXxmD,KAAM,SAER,CACE99B,UAAWukF,GACXzmD,KAAM,gBAER,CACE99B,UAAWwkF,GACX1mD,KAAM,aAER,CACE99B,UAAWykF,GACX3mD,KAAM,WACNvjC,MAAO,CACLg5C,eAAgBrqB,EAAQgB,MAAM/a,SAAS,8BAG3C,CACEnP,UAAW0kF,GACX5mD,KAAM,mBAER,CACE99B,UAAW0kF,GACX5mD,KAAM,kBAER,CACE99B,UAAW2kF,GACX7mD,KAAM,YAER,CACE99B,UAAW4kF,GACX9mD,KAAM,YAER,CACE99B,UAAW4kF,GACX9mD,KAAM,oBAER,CACE99B,UAAW4kF,GACX9mD,KAAM,mBAER,CACE99B,U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","file":"static/js/main.f0e70269.chunk.js","sourcesContent":["import { createBrowserHistory } from \"history\";\n\nexport default createBrowserHistory();\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nexport interface snackBarMessage {\n message: string;\n type: \"message\" | \"error\";\n}\n\nexport interface SystemState {\n loggedIn: boolean;\n operatorMode: boolean;\n sidebarOpen: boolean;\n session: string;\n userName: string;\n serverNeedsRestart: boolean;\n serverIsLoading: boolean;\n loadingProgress: number;\n snackBar: snackBarMessage;\n modalSnackBar: snackBarMessage;\n serverDiagnosticStatus: string;\n}\n\nexport const USER_LOGGED = \"USER_LOGGED\";\nexport const OPERATOR_MODE = \"OPERATOR_MODE\";\nexport const MENU_OPEN = \"MENU_OPEN\";\nexport const SERVER_NEEDS_RESTART = \"SERVER_NEEDS_RESTART\";\nexport const SERVER_IS_LOADING = \"SERVER_IS_LOADING\";\nexport const SET_LOADING_PROGRESS = \"SET_LOADING_PROGRESS\";\nexport const SET_SNACK_BAR_MESSAGE = \"SET_SNACK_BAR_MESSAGE\";\nexport const SET_SERVER_DIAG_STAT = \"SET_SERVER_DIAG_STAT\";\nexport const SET_ERROR_SNACK_MESSAGE = \"SET_ERROR_SNACK_MESSAGE\";\nexport const SET_SNACK_MODAL_MESSAGE = \"SET_SNACK_MODAL_MESSAGE\";\nexport const SET_MODAL_ERROR_MESSAGE = \"SET_MODAL_ERROR_MESSAGE\";\n\ninterface UserLoggedAction {\n type: typeof USER_LOGGED;\n logged: boolean;\n}\n\ninterface OperatorModeAction {\n type: typeof OPERATOR_MODE;\n operatorMode: boolean;\n}\n\ninterface SetMenuOpenAction {\n type: typeof MENU_OPEN;\n open: boolean;\n}\n\ninterface ServerNeedsRestartAction {\n type: typeof SERVER_NEEDS_RESTART;\n needsRestart: boolean;\n}\n\ninterface ServerIsLoading {\n type: typeof SERVER_IS_LOADING;\n isLoading: boolean;\n}\ninterface SetLoadingProgress {\n type: typeof SET_LOADING_PROGRESS;\n loadingProgress: number;\n}\n\ninterface SetServerDiagStat {\n type: typeof SET_SERVER_DIAG_STAT;\n serverDiagnosticStatus: string;\n}\n\ninterface SetSnackBarMessage {\n type: typeof SET_SNACK_BAR_MESSAGE;\n message: string;\n}\n\ninterface SetErrorSnackMessage {\n type: typeof SET_ERROR_SNACK_MESSAGE;\n message: string;\n}\n\ninterface SetModalSnackMessage {\n type: typeof SET_SNACK_MODAL_MESSAGE;\n message: string;\n}\n\ninterface SetModalErrorMessage {\n type: typeof SET_MODAL_ERROR_MESSAGE;\n message: string;\n}\n\nexport type SystemActionTypes =\n | UserLoggedAction\n | OperatorModeAction\n | SetMenuOpenAction\n | ServerNeedsRestartAction\n | ServerIsLoading\n | SetLoadingProgress\n | SetServerDiagStat\n | SetSnackBarMessage\n | SetErrorSnackMessage\n | SetModalSnackMessage\n | SetModalErrorMessage;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n MENU_OPEN,\n OPERATOR_MODE,\n SERVER_IS_LOADING,\n SERVER_NEEDS_RESTART,\n USER_LOGGED,\n SET_LOADING_PROGRESS,\n SET_SNACK_BAR_MESSAGE,\n SET_SERVER_DIAG_STAT,\n SET_ERROR_SNACK_MESSAGE,\n SET_SNACK_MODAL_MESSAGE,\n SET_MODAL_ERROR_MESSAGE,\n} from \"./types\";\n\nexport function userLoggedIn(loggedIn: boolean) {\n return {\n type: USER_LOGGED,\n logged: loggedIn,\n };\n}\n\nexport function consoleOperatorMode(operatorMode: boolean) {\n return {\n type: OPERATOR_MODE,\n operatorMode: operatorMode,\n };\n}\n\nexport function setMenuOpen(open: boolean) {\n return {\n type: MENU_OPEN,\n open: open,\n };\n}\n\nexport function serverNeedsRestart(needsRestart: boolean) {\n return {\n type: SERVER_NEEDS_RESTART,\n needsRestart: needsRestart,\n };\n}\n\nexport function serverIsLoading(isLoading: boolean) {\n return {\n type: SERVER_IS_LOADING,\n isLoading: isLoading,\n };\n}\n\nexport const setLoadingProgress = (progress: number) => {\n return {\n type: SET_LOADING_PROGRESS,\n loadingProgress: progress,\n };\n};\n\nexport const setServerDiagStat = (status: string) => {\n return {\n type: SET_SERVER_DIAG_STAT,\n serverDiagnosticStatus: status,\n };\n};\n\nexport const setSnackBarMessage = (message: string) => {\n return {\n type: SET_SNACK_BAR_MESSAGE,\n message,\n };\n};\n\nexport const setErrorSnackMessage = (message: string) => {\n return {\n type: SET_ERROR_SNACK_MESSAGE,\n message,\n };\n};\n\nexport const setModalSnackMessage = (message: string) => {\n return {\n type: SET_SNACK_MODAL_MESSAGE,\n message,\n };\n};\n\nexport const setModalErrorSnackMessage = (message: string) => {\n return {\n type: SET_MODAL_ERROR_MESSAGE,\n message,\n };\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport interface ILoginDetails {\n loginStrategy: loginStrategyType;\n redirect: string;\n}\n\nexport enum loginStrategyType {\n unknown = \"unknown\",\n form = \"form\",\n redirect = \"redirect\",\n serviceAccount = \"service-account\",\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport storage from \"local-storage-fallback\";\nimport { ICapacity, IErasureCodeCalc, IStorageFactors } from \"./types\";\nimport { IPool } from \"../screens/Console/Tenants/ListTenants/types\";\n\nconst minStReq = 1073741824; // Minimal Space required for MinIO\nconst minMemReq = 2147483648; // Minimal Memory required for MinIO in bytes\n\nexport const units = [\n \"B\",\n \"KiB\",\n \"MiB\",\n \"GiB\",\n \"TiB\",\n \"PiB\",\n \"EiB\",\n \"ZiB\",\n \"YiB\",\n];\nexport const k8sUnits = [\"Ki\", \"Mi\", \"Gi\", \"Ti\", \"Pi\", \"Ei\"];\nexport const k8sCalcUnits = [\"B\", ...k8sUnits];\n\nexport const niceBytes = (x: string, showK8sUnits: boolean = false) => {\n let l = 0,\n n = parseInt(x, 10) || 0;\n\n while (n >= 1024 && ++l) {\n n = n / 1024;\n }\n //include a decimal point and a tenths-place digit if presenting\n //less than ten of KB or greater units\n const k8sUnitsN = [\"B\", ...k8sUnits];\n return (\n n.toFixed(n < 10 && l > 0 ? 1 : 0) +\n \" \" +\n (showK8sUnits ? k8sUnitsN[l] : units[l])\n );\n};\n\nexport const setCookie = (name: string, val: string) => {\n const date = new Date();\n const value = val;\n\n // Set it expire in 45 minutes\n date.setTime(date.getTime() + 45 * 60 * 1000);\n\n // Set it\n document.cookie =\n name + \"=\" + value + \"; expires=\" + date.toUTCString() + \"; path=/\";\n};\n\nexport const deleteCookie = (name: string) => {\n document.cookie = name + \"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;\";\n};\n\nexport const clearSession = () => {\n storage.removeItem(\"token\");\n deleteCookie(\"token\");\n};\n\n// timeFromDate gets time string from date input\nexport const timeFromDate = (d: Date) => {\n let h = d.getHours() < 10 ? `0${d.getHours()}` : `${d.getHours()}`;\n let m = d.getMinutes() < 10 ? `0${d.getMinutes()}` : `${d.getMinutes()}`;\n let s = d.getSeconds() < 10 ? `0${d.getSeconds()}` : `${d.getSeconds()}`;\n\n return `${h}:${m}:${s}:${d.getMilliseconds()}`;\n};\n\n// units to be used in a dropdown\nexport const factorForDropdown = () => {\n return units.map((unit) => {\n return { label: unit, value: unit };\n });\n};\n\n// units to be used in a dropdown\nexport const k8sfactorForDropdown = () => {\n return k8sUnits.map((unit) => {\n return { label: unit, value: unit };\n });\n};\n\n//getBytes, converts from a value and a unit from units array to bytes\nexport const getBytes = (\n value: string,\n unit: string,\n fromk8s: boolean = false\n) => {\n const vl: number = parseFloat(value);\n\n const unitsTake = fromk8s ? k8sCalcUnits : units;\n\n const powFactor = unitsTake.findIndex((element) => element === unit);\n\n if (powFactor === -1) {\n return \"0\";\n }\n const factor = Math.pow(1024, powFactor);\n const total = vl * factor;\n\n return total.toString(10);\n};\n\n//getTotalSize gets the total size of a value & unit\nexport const getTotalSize = (value: string, unit: string) => {\n const bytes = getBytes(value, unit, true).toString();\n return niceBytes(bytes);\n};\n\nexport const setMemoryResource = (\n memorySize: number,\n capacitySize: string,\n maxMemorySize: number\n) => {\n // value always comes as Gi\n const requestedSizeBytes = getBytes(memorySize.toString(10), \"Gi\", true);\n const memReqSize = parseInt(requestedSizeBytes, 10);\n if (maxMemorySize === 0) {\n return {\n error: \"There is no memory available for the selected number of nodes\",\n request: 0,\n limit: 0,\n };\n }\n\n if (maxMemorySize < minMemReq) {\n return {\n error: \"There are not enough memory resources available\",\n request: 0,\n limit: 0,\n };\n }\n\n if (memReqSize < minMemReq) {\n return {\n error: \"The requested memory size must be greater than 2Gi\",\n request: 0,\n limit: 0,\n };\n }\n if (memReqSize > maxMemorySize) {\n return {\n error:\n \"The requested memory is greater than the max available memory for the selected number of nodes\",\n request: 0,\n limit: 0,\n };\n }\n\n const capSize = parseInt(capacitySize, 10);\n let memLimitSize = memReqSize;\n // set memory limit based on the capacitySize\n // if capacity size is lower than 1TiB we use the limit equal to request\n if (capSize >= parseInt(getBytes(\"1\", \"Pi\", true), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"64\", \"Gi\", true), 10)\n );\n } else if (capSize >= parseInt(getBytes(\"100\", \"Ti\"), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"32\", \"Gi\", true), 10)\n );\n } else if (capSize >= parseInt(getBytes(\"10\", \"Ti\"), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"16\", \"Gi\", true), 10)\n );\n } else if (capSize >= parseInt(getBytes(\"1\", \"Ti\"), 10)) {\n memLimitSize = Math.max(\n memReqSize,\n parseInt(getBytes(\"8\", \"Gi\", true), 10)\n );\n }\n\n return {\n error: \"\",\n request: memReqSize,\n limit: memLimitSize,\n };\n};\n\nexport const calculateDistribution = (\n capacityToUse: ICapacity,\n forcedNodes: number = 0,\n limitSize: number = 0,\n drivesPerServer: number = 0\n) => {\n let numberOfNodes = {};\n const requestedSizeBytes = getBytes(\n capacityToUse.value,\n capacityToUse.unit,\n true\n );\n\n if (parseInt(requestedSizeBytes, 10) < minStReq) {\n return {\n error: \"The pool size must be greater than 1Gi\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n pvSize: 0,\n };\n }\n\n if (forcedNodes < 4) {\n return {\n error: \"Number of nodes cannot be less than 4\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n pvSize: 0,\n };\n }\n\n if (drivesPerServer <= 0) {\n return {\n error: \"Number of drives must be at least 1\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n pvSize: 0,\n };\n }\n\n numberOfNodes = calculateStorage(\n requestedSizeBytes,\n forcedNodes,\n limitSize,\n drivesPerServer\n );\n\n return numberOfNodes;\n};\n\nconst calculateStorage = (\n requestedBytes: string,\n forcedNodes: number,\n limitSize: number,\n drivesPerServer: number\n) => {\n // Size validation\n const intReqBytes = parseInt(requestedBytes, 10);\n const maxDiskSize = minStReq * 256; // 256 GiB\n\n // We get the distribution\n return structureCalc(\n forcedNodes,\n intReqBytes,\n maxDiskSize,\n limitSize,\n drivesPerServer\n );\n};\n\nconst structureCalc = (\n nodes: number,\n desiredCapacity: number,\n maxDiskSize: number,\n maxClusterSize: number,\n disksPerNode: number = 0\n) => {\n if (\n isNaN(nodes) ||\n isNaN(desiredCapacity) ||\n isNaN(maxDiskSize) ||\n isNaN(maxClusterSize)\n ) {\n return {\n error: \"Some provided data is invalid, please try again.\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n }; // Invalid Data\n }\n\n let persistentVolumeSize = 0;\n let numberPersistentVolumes = 0;\n let volumesPerServer = 0;\n\n if (disksPerNode === 0) {\n persistentVolumeSize = Math.floor(\n Math.min(desiredCapacity / Math.max(4, nodes), maxDiskSize)\n ); // pVS = min((desiredCapacity / max(4 | nodes)) | maxDiskSize)\n\n numberPersistentVolumes = desiredCapacity / persistentVolumeSize; // nPV = dC / pVS\n volumesPerServer = numberPersistentVolumes / nodes; // vPS = nPV / n\n }\n\n if (disksPerNode) {\n volumesPerServer = disksPerNode;\n numberPersistentVolumes = volumesPerServer * nodes;\n persistentVolumeSize = Math.floor(\n desiredCapacity / numberPersistentVolumes\n );\n }\n\n // Volumes are not exact, we force the volumes number & minimize the volume size\n if (volumesPerServer % 1 > 0) {\n volumesPerServer = Math.ceil(volumesPerServer); // Increment of volumes per server\n numberPersistentVolumes = volumesPerServer * nodes; // nPV = vPS * n\n persistentVolumeSize = Math.floor(\n desiredCapacity / numberPersistentVolumes\n ); // pVS = dC / nPV\n\n const limitSize = persistentVolumeSize * volumesPerServer * nodes; // lS = pVS * vPS * n\n\n if (limitSize > maxClusterSize) {\n return {\n error: \"We were not able to allocate this server.\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n }; // Cannot allocate this server\n }\n }\n\n if (persistentVolumeSize < minStReq) {\n return {\n error:\n \"Disk Size with this combination would be less than 1Gi, please try another combination\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n }; // Cannot allocate this volume size\n }\n\n return {\n error: \"\",\n nodes,\n persistentVolumes: numberPersistentVolumes,\n disks: volumesPerServer,\n pvSize: persistentVolumeSize,\n };\n};\n\n// Erasure Code Parity Calc\nexport const erasureCodeCalc = (\n parityValidValues: string[],\n totalDisks: number,\n pvSize: number,\n totalNodes: number\n): IErasureCodeCalc => {\n // Parity Values is empty\n if (parityValidValues.length < 1) {\n return {\n error: 1,\n defaultEC: \"\",\n erasureCodeSet: 0,\n maxEC: \"\",\n rawCapacity: \"0\",\n storageFactors: [],\n };\n }\n\n const totalStorage = totalDisks * pvSize;\n const maxEC = parityValidValues[0];\n const maxParityNumber = parseInt(maxEC.split(\":\")[1], 10);\n\n const erasureStripeSet = maxParityNumber * 2; // ESS is calculated by multiplying maximum parity by two.\n\n const storageFactors: IStorageFactors[] = parityValidValues.map(\n (currentParity) => {\n const parityNumber = parseInt(currentParity.split(\":\")[1], 10);\n const storageFactor =\n erasureStripeSet / (erasureStripeSet - parityNumber);\n\n const maxCapacity = Math.floor(totalStorage / storageFactor);\n const maxTolerations =\n totalDisks - Math.floor(totalDisks / storageFactor);\n return {\n erasureCode: currentParity,\n storageFactor,\n maxCapacity: maxCapacity.toString(10),\n maxFailureTolerations: maxTolerations,\n };\n }\n );\n\n let defaultEC = maxEC;\n\n const fourVar = parityValidValues.find((element) => element === \"EC:4\");\n\n if (totalDisks >= 8 && totalNodes > 16 && fourVar) {\n defaultEC = \"EC:4\";\n }\n\n return {\n error: 0,\n storageFactors,\n maxEC,\n rawCapacity: totalStorage.toString(10),\n erasureCodeSet: erasureStripeSet,\n defaultEC,\n };\n};\n\n// Pool Name Generator\nexport const generatePoolName = (pools: IPool[]) => {\n const poolCounter = pools.length;\n\n return `pool-${poolCounter}`;\n};\n\n// seconds / minutes /hours / Days / Years calculator\nexport const niceDays = (secondsValue: string, timeVariant: string = \"s\") => {\n let seconds = parseFloat(secondsValue);\n\n switch (timeVariant) {\n case \"ns\":\n seconds = Math.floor(seconds * 0.000000001);\n break;\n case \"ms\":\n seconds = Math.floor(seconds * 0.001);\n break;\n default:\n }\n\n const days = Math.floor(seconds / (3600 * 24));\n\n seconds -= days * 3600 * 24;\n const hours = Math.floor(seconds / 3600);\n seconds -= hours * 3600;\n const minutes = Math.floor(seconds / 60);\n seconds -= minutes * 60;\n\n if (days > 365) {\n const years = days / 365;\n return `${years} year${Math.floor(years) === 1 ? \"\" : \"s\"}`;\n }\n\n if (days > 30) {\n const months = Math.floor(days / 30);\n const diffDays = days - months * 30;\n\n return `${months} month${Math.floor(months) === 1 ? \"\" : \"s\"} ${\n diffDays > 0 ? `${diffDays} day${diffDays > 1 ? \"s\" : \"\"}` : \"\"\n }`;\n }\n\n if (days >= 7 && days <= 30) {\n const weeks = Math.floor(days / 7);\n\n return `${Math.floor(weeks)} week${weeks === 1 ? \"\" : \"s\"}`;\n }\n\n if (days >= 1 && days <= 6) {\n return `${days} day${days > 1 ? \"s\" : \"\"}`;\n }\n\n return `${hours >= 1 ? `${hours} hour${hours > 1 ? \"s\" : \"\"}` : \"\"} ${\n minutes >= 1 && hours === 0\n ? `${minutes} minute${minutes > 1 ? \"s\" : \"\"}`\n : \"\"\n } ${\n seconds >= 1 && minutes === 0 && hours === 0\n ? `${seconds} second${seconds > 1 ? \"s\" : \"\"}`\n : \"\"\n }`;\n};\n\nexport const getTimeFromTimestamp = (\n timestamp: string,\n fullDate: boolean = false\n) => {\n const dateObject = new Date(parseInt(timestamp) * 1000);\n\n if (fullDate) {\n return `${dateObject.getFullYear()}-${String(\n dateObject.getMonth() + 1\n ).padStart(2, \"0\")}-${String(dateObject.getDay()).padStart(\n 2,\n \"0\"\n )} ${dateObject.getHours()}:${String(dateObject.getMinutes()).padStart(\n 2,\n \"0\"\n )}:${String(dateObject.getSeconds()).padStart(2, \"0\")}`;\n }\n return `${dateObject.getHours()}:${String(dateObject.getMinutes()).padStart(\n 2,\n \"0\"\n )}`;\n};\n\nexport const calculateBytes = (\n x: string,\n showDecimals = false,\n roundFloor = true\n) => {\n const bytes = parseInt(x, 10);\n\n if (bytes === 0) {\n return { total: 0, unit: k8sCalcUnits[0] };\n }\n\n // Gi : GiB\n const k = 1024;\n\n // Get unit for measure\n const i = Math.floor(Math.log(bytes) / Math.log(k));\n\n const fractionDigits = showDecimals ? 0 : 1;\n\n const bytesUnit = bytes / Math.pow(k, i);\n\n const roundedUnit = roundFloor ? Math.floor(bytesUnit) : bytesUnit;\n\n // Get Unit parsed\n const unitParsed = parseFloat(roundedUnit.toFixed(fractionDigits));\n const finalUnit = k8sCalcUnits[i];\n\n return { total: unitParsed, unit: finalUnit };\n};\n\nexport const nsToSeconds = (nanoseconds: number) => {\n const conversion = nanoseconds * 0.000000001;\n const round = Math.round((conversion + Number.EPSILON) * 10000) / 10000;\n\n return `${round} s`;\n};\n\nexport const textToRGBColor = (text: string) => {\n const splitText = text.split(\"\");\n\n const hashVl = splitText.reduce((acc, currItem) => {\n return acc + currItem.charCodeAt(0) + ((acc << 5) - acc);\n }, 0);\n\n const hashColored = ((hashVl * 100) & 0x00ffffff).toString(16).toUpperCase();\n\n return `#${hashColored.padStart(6, \"0\")}`;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport request from \"superagent\";\nimport get from \"lodash/get\";\nimport { clearSession } from \"../utils\";\n\nexport class API {\n invoke(method: string, url: string, data?: object) {\n return request(method, url)\n .send(data)\n .then((res) => res.body)\n .catch((err) => {\n // if we get unauthorized, kick out the user\n if (err.status === 401) {\n clearSession();\n // Refresh the whole page to ensure cache is clear\n // and we dont end on an infinite loop\n window.location.href = \"/login\";\n return;\n }\n return this.onError(err);\n });\n }\n\n onError(err: any) {\n if (err.status) {\n const errMessage = get(\n err.response,\n \"body.message\",\n err.status.toString()\n );\n\n const throwMessage =\n errMessage.charAt(0).toUpperCase() + errMessage.slice(1);\n\n return Promise.reject(throwMessage);\n } else {\n clearSession();\n window.location.href = \"/login\";\n }\n }\n}\n\nconst api = new API();\nexport default api;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport request from \"superagent\";\nimport { connect } from \"react-redux\";\nimport ErrorIcon from \"@material-ui/icons/Error\";\nimport Button from \"@material-ui/core/Button\";\nimport TextField from \"@material-ui/core/TextField\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Typography from \"@material-ui/core/Typography\";\nimport {\n CircularProgress,\n LinearProgress,\n Paper,\n TextFieldProps,\n} from \"@material-ui/core\";\nimport {\n createStyles,\n makeStyles,\n Theme,\n withStyles,\n} from \"@material-ui/core/styles\";\nimport { SystemState } from \"../../types\";\nimport { userLoggedIn } from \"../../actions\";\nimport api from \"../../common/api\";\nimport { ILoginDetails, loginStrategyType } from \"./types\";\nimport history from \"../../history\";\nimport { OutlinedInputProps } from \"@material-ui/core/OutlinedInput\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n \"@global\": {\n body: {\n backgroundColor: \"#FAFAFA\",\n },\n },\n paper: {\n borderRadius: 8,\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n width: 800,\n height: 424,\n margin: \"auto\",\n position: \"absolute\",\n top: \"50%\",\n left: \"50%\",\n marginLeft: -400,\n marginTop: -212,\n \"&.MuiPaper-root\": {\n borderRadius: 8,\n },\n },\n avatar: {\n margin: theme.spacing(1),\n backgroundColor: theme.palette.secondary.main,\n },\n form: {\n width: \"100%\", // Fix IE 11 issue.\n },\n submit: {\n margin: \"30px 0px 16px\",\n height: 40,\n boxShadow: \"none\",\n padding: \"16px 30px\",\n },\n errorBlock: {\n backgroundColor: \"#C72C48\",\n width: 800,\n height: 64,\n display: \"flex\",\n justifyContent: \"center\",\n alignItems: \"center\",\n position: \"absolute\",\n left: \"50%\",\n top: \"50%\",\n marginLeft: -400,\n marginTop: -290,\n color: \"#fff\",\n fontWeight: 700,\n fontSize: 14,\n borderRadius: 8,\n padding: 10,\n boxSizing: \"border-box\",\n },\n mainContainer: {\n position: \"relative\",\n height: 424,\n },\n theOcean: {\n borderTopLeftRadius: 8,\n borderBottomLeftRadius: 8,\n background:\n \"transparent linear-gradient(to bottom, #073052 0%,#05122b 100%); 0% 0% no-repeat padding-box;\",\n },\n oceanBg: {\n backgroundImage: \"url(/images/BG_Illustration.svg)\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"bottom left\",\n height: \"100%\",\n width: 324,\n },\n theLogin: {\n padding: \"40px 45px 20px 45px\",\n },\n loadingLoginStrategy: {\n textAlign: \"center\",\n },\n headerTitle: {\n marginBottom: 10,\n },\n submitContainer: {\n textAlign: \"right\",\n },\n disclaimer: {\n fontSize: 12,\n marginTop: 30,\n },\n jwtInput: {\n marginTop: 45,\n },\n linearPredef: {\n height: 10,\n },\n errorIconStyle: {\n marginRight: 3,\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n disabled: {\n \"&.MuiInput-underline::before\": {\n borderColor: \"#eaeaea\",\n borderBottomStyle: \"solid\",\n },\n },\n })\n);\n\nfunction LoginField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst mapState = (state: SystemState) => ({\n loggedIn: state.loggedIn,\n});\n\nconst connector = connect(mapState, { userLoggedIn });\n\n// The inferred type will look like:\n// {isOn: boolean, toggleOn: () => void}\n\ninterface ILoginProps {\n userLoggedIn: typeof userLoggedIn;\n classes: any;\n}\n\ninterface LoginStrategyRoutes {\n [key: string]: string;\n}\n\ninterface LoginStrategyPayload {\n [key: string]: any;\n}\n\nconst Login = ({ classes, userLoggedIn }: ILoginProps) => {\n const [accessKey, setAccessKey] = useState(\"\");\n const [jwt, setJwt] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [error, setError] = useState(\"\");\n const [loginStrategy, setLoginStrategy] = useState({\n loginStrategy: loginStrategyType.unknown,\n redirect: \"\",\n });\n const [loginSending, setLoginSending] = useState(false);\n\n const loginStrategyEndpoints: LoginStrategyRoutes = {\n form: \"/api/v1/login\",\n \"service-account\": \"/api/v1/login/operator\",\n };\n const loginStrategyPayload: LoginStrategyPayload = {\n form: { accessKey, secretKey },\n \"service-account\": { jwt },\n };\n\n const fetchConfiguration = () => {\n api\n .invoke(\"GET\", \"/api/v1/login\")\n .then((loginDetails: ILoginDetails) => {\n setLoginStrategy(loginDetails);\n setError(\"\");\n if (\n loginDetails.loginStrategy === \"redirect\" &&\n loginDetails.redirect !== \"\"\n ) {\n //location.href = loginDetails.redirect;\n }\n })\n .catch((err: any) => {\n setError(err);\n });\n };\n\n const formSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n setLoginSending(true);\n request\n .post(\n loginStrategyEndpoints[loginStrategy.loginStrategy] || \"/api/v1/login\"\n )\n .send(loginStrategyPayload[loginStrategy.loginStrategy])\n .then((res: any) => {\n const bodyResponse = res.body;\n if (bodyResponse.error) {\n setLoginSending(false);\n // throw will be moved to catch block once bad login returns 403\n throw bodyResponse.error;\n }\n })\n .then(() => {\n // We set the state in redux\n userLoggedIn(true);\n if (loginStrategy.loginStrategy === loginStrategyType.form) {\n localStorage.setItem(\"userLoggedIn\", btoa(accessKey));\n }\n\n history.push(\"/\");\n })\n .catch((err) => {\n setLoginSending(false);\n setError(err.message);\n });\n };\n\n useEffect(() => {\n fetchConfiguration();\n }, []);\n\n let loginComponent = null;\n\n switch (loginStrategy.loginStrategy) {\n case loginStrategyType.form: {\n loginComponent = (\n \n \n Console Login\n \n
\n \n \n ) =>\n setAccessKey(e.target.value)\n }\n label=\"Enter Access Key\"\n name=\"accessKey\"\n autoComplete=\"username\"\n disabled={loginSending}\n />\n \n \n ) =>\n setSecretKey(e.target.value)\n }\n name=\"secretKey\"\n label=\"Enter Secret Key\"\n type=\"password\"\n id=\"secretKey\"\n autoComplete=\"current-password\"\n disabled={loginSending}\n />\n \n \n \n \n Login\n \n \n \n {loginSending && }\n \n \n Don't have an access key?\n
\n
\n Contact your administrator to have one made\n
\n
\n
\n );\n break;\n }\n case loginStrategyType.redirect: {\n loginComponent = (\n \n \n Welcome\n \n \n Login with SSO\n \n \n );\n break;\n }\n case loginStrategyType.serviceAccount: {\n loginComponent = (\n \n \n Operator Login\n \n
\n \n \n ) =>\n setJwt(e.target.value)\n }\n label=\"JWT\"\n name=\"jwt\"\n autoComplete=\"off\"\n disabled={loginSending}\n />\n \n \n \n \n Login\n \n \n \n {loginSending && }\n \n \n Don't have an access key?\n
\n Contact your administrator to have one made\n
\n
\n
\n );\n break;\n }\n default:\n loginComponent = (\n \n );\n }\n\n return (\n \n {error !== \"\" && (\n
\n {\" \"}\n {error}\n
\n )}\n \n \n \n
\n \n \n {loginComponent}\n \n \n \n \n );\n};\n\nexport default connector(withStyles(styles)(Login));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// This object contains variables that will be used across form components.\n\nexport const fieldBasic = {\n inputLabel: {\n fontWeight: 600,\n marginRight: 10,\n fontSize: 15,\n color: \"#000\",\n textAlign: \"left\" as const,\n overflow: \"hidden\",\n \"& span\": {\n display: \"flex\",\n alignItems: \"center\",\n },\n display: \"flex\",\n },\n fieldLabelError: {\n paddingBottom: 22,\n },\n fieldContainer: {\n marginBottom: 20,\n position: \"relative\" as const,\n maxWidth: 840,\n },\n tooltipContainer: {\n marginLeft: 5,\n display: \"flex\",\n alignItems: \"center\",\n },\n switchContainer: {\n display: \"flex\",\n maxWidth: 840,\n },\n};\n\nexport const modalBasic = {\n formScrollable: {\n maxHeight: \"calc(100vh - 300px)\" as const,\n overflowY: \"auto\" as const,\n marginBottom: 25,\n },\n formSlider: {\n marginLeft: 0,\n },\n clearButton: {\n fontFamily: \"Lato, sans-serif\",\n border: \"0\",\n backgroundColor: \"transparent\",\n color: \"#393939\",\n fontWeight: 600,\n fontSize: 14,\n marginRight: 10,\n outline: \"0\",\n padding: \"16px 25px 16px 25px\",\n cursor: \"pointer\",\n },\n floatingEnabled: {\n position: \"absolute\" as const,\n right: 58,\n zIndex: 1000,\n marginTop: -38,\n },\n configureString: {\n border: \"#EAEAEA 1px solid\",\n borderRadius: 4,\n padding: \"24px 50px\",\n overflowY: \"auto\" as const,\n height: 170,\n maxWidth: 840,\n },\n};\n\nexport const tooltipHelper = {\n tooltip: {\n fontSize: 16,\n },\n};\n\nconst checkBoxBasic = {\n width: 14,\n height: 14,\n borderRadius: 2,\n};\n\nexport const checkboxIcons = {\n unCheckedIcon: { ...checkBoxBasic, border: \"1px solid #c3c3c3\" },\n checkedIcon: {\n ...checkBoxBasic,\n border: \"1px solid #081C42\",\n backgroundColor: \"#081C42\",\n },\n};\n\nconst radioBasic = {\n width: 12,\n height: 12,\n borderRadius: \"100%\",\n \"input:disabled ~ &\": {\n border: \"1px solid #9C9C9C\",\n },\n};\n\nexport const radioIcons = {\n radioUnselectedIcon: { ...radioBasic, border: \"1px solid #000\" },\n radioSelectedIcon: {\n ...radioBasic,\n border: \"1px solid #000\",\n backgroundColor: \"#000\",\n },\n};\n\nexport const containerForHeader = (bottomSpacing: any) => ({\n container: {\n padding: \"110px 33px 0\",\n \"& h6\": {\n color: \"#777777\",\n fontSize: 14,\n },\n \"& p\": {\n \"& span:not(*[class*='smallUnit'])\": {\n fontSize: 16,\n },\n },\n },\n});\n\nexport const actionsTray = {\n label: {\n color: \"#393939\",\n fontWeight: 600,\n fontSize: 13,\n alignSelf: \"center\" as const,\n whiteSpace: \"nowrap\" as const,\n \"&:not(:first-of-type)\": {\n marginLeft: 10,\n },\n },\n timeContainers: {\n height: 40,\n },\n actionsTray: {\n display: \"flex\" as const,\n justifyContent: \"space-between\" as const,\n \"& button\": {\n flexGrow: 0,\n marginLeft: 15,\n },\n },\n};\n\nexport const searchField = {\n searchField: {\n flexGrow: 1,\n height: 40,\n background: \"#FFFFFF\",\n borderRadius: 5,\n border: \"#EAEDEE 1px solid\",\n display: \"flex\",\n justifyContent: \"center\",\n padding: \"0 16px\",\n \"& input\": {\n fontSize: 12,\n fontWeight: 700,\n color: \"#000\",\n \"&::placeholder\": {\n color: \"#393939\",\n opacity: 1,\n },\n },\n \"&:hover\": {\n borderColor: \"#000\",\n },\n },\n};\n\nexport const predefinedList = {\n prefinedContainer: {\n maxWidth: 840,\n width: \"100%\",\n },\n predefinedTitle: {\n fontSize: 16,\n fontWeight: 600,\n color: \"#000\",\n margin: \"10px 0\",\n },\n predefinedList: {\n backgroundColor: \"#eaeaea\",\n padding: \"12px 10px\",\n color: \"#393939\",\n fontSize: 12,\n fontWeight: 600,\n minHeight: 41,\n },\n innerContent: {\n width: \"100%\",\n overflowX: \"auto\" as const,\n whiteSpace: \"nowrap\" as const,\n scrollbarWidth: \"none\" as const,\n \"&::-webkit-scrollbar\": {\n display: \"none\",\n },\n },\n innerContentMultiline: {\n width: \"100%\",\n maxHeight: 100,\n overflowY: \"auto\" as const,\n scrollbarWidth: \"none\" as const,\n \"&::-webkit-scrollbar\": {\n display: \"none\",\n },\n },\n};\n\nexport const objectBrowserCommon = {\n obTitleSection: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"flex-start\",\n marginBottom: 20,\n },\n sectionTitle: {\n fontSize: 22,\n color: \"#000\",\n fontWeight: 600,\n height: 40,\n lineHeight: \"40px\",\n },\n breadcrumbs: {\n fontSize: 10,\n color: \"#000\",\n marginTop: 2,\n \"& a\": {\n textDecoration: \"none\",\n color: \"#000\",\n \"&:hover\": {\n textDecoration: \"underline\",\n },\n },\n },\n};\n\nexport const selectorsCommon = {\n multiSelectTable: {\n height: 200,\n },\n};\n\nexport const settingsCommon = {\n customTitle: {\n fontSize: 18,\n color: \"#000\",\n fontWeight: 600,\n padding: \"12px 0\",\n borderBottom: \"#eaedee 1px solid\",\n marginBottom: 10,\n margin: \"15px 38px 27px\",\n },\n settingsFormContainer: {\n height: \"calc(100vh - 421px)\",\n padding: \"15px 38px\",\n overflowY: \"auto\" as const,\n scrollbarWidth: \"none\" as const,\n \"&::-webkit-scrollbar\": {\n display: \"none\",\n },\n },\n settingsButtonContainer: {\n borderTop: \"1px solid #EAEAEA\",\n padding: \"15px 38px\",\n textAlign: \"right\" as const,\n },\n innerSettingsButtonContainer: {\n maxWidth: 840,\n textAlign: \"right\" as const,\n },\n settingsOptionsContainer: {\n height: \"calc(100vh - 244px)\",\n backgroundColor: \"#fff\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n marginTop: 15,\n },\n backButton: {\n cursor: \"pointer\",\n fontSize: 10,\n fontWeight: 600,\n color: \"#000\",\n backgroundColor: \"transparent\",\n border: 0,\n padding: 0,\n display: \"flex\",\n alignItems: \"center\",\n \"&:active, &:focus\": {\n outline: 0,\n },\n \"& svg\": {\n width: 10,\n marginRight: 4,\n },\n },\n backContainer: {\n margin: \"20px 38px 0\",\n },\n};\n\nexport const typesSelection = {\n iconContainer: {\n display: \"flex\" as const,\n flexDirection: \"row\" as const,\n maxWidth: 455,\n justifyContent: \"space-between\" as const,\n flexWrap: \"wrap\" as const,\n width: \"100%\",\n },\n nonIconContainer: {\n marginBottom: 16,\n width: 455,\n marginTop: 15,\n \"& button\": {\n marginRight: 16,\n },\n },\n pickTitle: {\n fontWeight: 600,\n color: \"#393939\",\n fontSize: 14,\n marginBottom: 16,\n },\n centerElements: {\n display: \"flex\" as const,\n flexDirection: \"column\" as const,\n alignItems: \"center\" as const,\n justifyContent: \"center\" as const,\n },\n logoButton: {\n height: \"80px\",\n },\n lambdaNotif: {\n backgroundColor: \"#fff\",\n border: \"#393939 1px solid\",\n borderRadius: 5,\n width: 101,\n height: 91,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n marginBottom: 16,\n cursor: \"pointer\",\n \"& img\": {\n maxWidth: 71,\n maxHeight: 71,\n },\n },\n};\n\nexport const logsCommon = {\n logsSubContainer: {\n height: \"calc(100vh - 230px)\",\n padding: \"15px 0\",\n },\n};\n\nexport const widgetCommon = {\n singleValueContainer: {\n position: \"relative\" as const,\n flexGrow: 1,\n width: \"100%\",\n height: \"100%\",\n border: \"#EAEAEA 1px solid\",\n borderRadius: 5,\n backgroundColor: \"#fff\",\n },\n titleContainer: {\n color: \"#393939\",\n fontWeight: 600,\n height: 15,\n textAlign: \"center\" as const,\n fontSize: 10,\n },\n contentContainer: {\n flexGrow: 2,\n justifyContent: \"center\" as const,\n alignItems: \"center\" as const,\n display: \"flex\" as const,\n position: \"absolute\" as const,\n width: \"100%\",\n height: \"calc(100% - 15px)\",\n },\n contentContainerWithLabel: {\n height: \"calc(100% - 25px)\",\n },\n legendBlock: {\n position: \"absolute\" as const,\n bottom: 5,\n display: \"flex\" as const,\n width: \"100%\",\n height: 15,\n flexWrap: \"wrap\" as const,\n overflowY: \"auto\" as const,\n },\n singleLegendContainer: {\n display: \"flex\",\n alignItems: \"center\",\n padding: \"0 10px\",\n maxWidth: \"100%\",\n },\n colorContainer: {\n width: 8,\n height: 8,\n minWidth: 8,\n borderRadius: \"100%\",\n marginRight: 5,\n },\n legendLabel: {\n fontSize: \"80%\",\n color: \"#393939\",\n whiteSpace: \"nowrap\" as const,\n overflow: \"hidden\" as const,\n textOverflow: \"ellipsis\" as const,\n },\n};\n\nexport const tooltipCommon = {\n customTooltip: {\n backgroundColor: \"rgba(255, 255, 255, 0.90)\",\n border: \"#eaeaea 1px solid\",\n borderRadius: 3,\n padding: \"5px 10px\",\n maxHeight: 300,\n overflowY: \"auto\" as const,\n },\n labelContainer: {\n display: \"flex\" as const,\n alignItems: \"center\" as const,\n },\n labelColor: {\n width: 6,\n height: 6,\n display: \"block\" as const,\n borderRadius: \"100%\",\n marginRight: 5,\n },\n itemValue: {\n fontSize: \"75%\",\n color: \"#393939\",\n },\n valueContainer: {\n fontWeight: 600,\n },\n timeStampTitle: {\n fontSize: \"80%\",\n color: \"#9c9c9c\",\n textAlign: \"center\" as const,\n marginBottom: 6,\n },\n};\n\nexport const snackBarCommon = {\n snackBar: {\n backgroundColor: \"#081F44\",\n fontWeight: 400,\n fontFamily: \"Lato, sans-serif\",\n fontSize: 14,\n padding: \"0px 20px 0px 20px;\",\n boxShadow: \"none\" as const,\n \"&.MuiPaper-root.MuiSnackbarContent-root\": {\n borderRadius: \"0px 0px 5px 5px\",\n },\n \"& div\": {\n textAlign: \"center\" as const,\n padding: \"6px 30px\",\n width: \"100%\",\n overflowX: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n },\n errorSnackBar: {\n backgroundColor: \"#C72C48\",\n color: \"#fff\",\n },\n snackBarExternal: {\n top: \"-17px\",\n position: \"absolute\" as const,\n minWidth: \"348px\",\n whiteSpace: \"nowrap\" as const,\n height: \"33px\",\n },\n snackDiv: {\n top: \"17px\",\n left: \"50%\",\n position: \"absolute\" as const,\n },\n snackBarModal: {\n top: 0,\n position: \"absolute\" as const,\n minWidth: \"348px\",\n whiteSpace: \"nowrap\" as const,\n height: \"33px\",\n maxWidth: \"calc(100% - 140px)\",\n },\n};\n\nexport const wizardCommon = {\n multiContainer: {\n display: \"flex\" as const,\n alignItems: \"center\" as const,\n justifyContent: \"flex-start\" as const,\n },\n sizeFactorContainer: {\n marginLeft: 8,\n alignSelf: \"flex-start\" as const,\n },\n headerElement: {\n position: \"sticky\" as const,\n top: 0,\n paddingTop: 5,\n marginBottom: 10,\n zIndex: 500,\n backgroundColor: \"#fff\",\n },\n tableTitle: {\n fontWeight: 700,\n width: \"30%\",\n },\n poolError: {\n color: \"#dc1f2e\",\n fontSize: \"0.75rem\",\n paddingLeft: 120,\n },\n error: {\n color: \"#dc1f2e\",\n fontSize: \"0.75rem\",\n },\n h3Section: {\n marginTop: 0,\n },\n descriptionText: {\n fontSize: 13,\n color: \"#777777\",\n },\n container: {\n padding: \"77px 0 0 0\",\n \"& h6\": {\n color: \"#777777\",\n fontSize: 14,\n },\n \"& p\": {\n \"& span:not(*[class*='smallUnit'])\": {\n fontSize: 16,\n },\n },\n },\n};\n\nexport const buttonsStyles = {\n anchorButton: {\n textDecoration: \"underline\" as const,\n textTransform: \"unset\" as const,\n fontWeight: \"normal\" as const,\n padding: 0,\n lineHeight: \"unset\" as const,\n height: \"unset\" as const,\n width: \"unset\" as const,\n textAlign: \"left\" as const,\n border: 0,\n minWidth: \"unset\" as const,\n },\n};\n\nexport const hrClass = {\n hrClass: {\n borderTop: 0,\n borderLeft: 0,\n borderRight: 0,\n borderColor: \"#999999\",\n backgroundColor: \"transparent\" as const,\n },\n};\n","import React from \"react\";\nimport Typography from \"@material-ui/core/Typography\";\nimport Link from \"@material-ui/core/Link\";\n\nexport default function Copyright() {\n return (\n \n {\"Copyright © \"}\n \n MinIO\n {\" \"}\n {new Date().getFullYear()}\n {\".\"}\n \n );\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nimport Box from \"@material-ui/core/Box\";\nimport Typography from \"@material-ui/core/Typography\";\nimport { makeStyles } from \"@material-ui/core/styles\";\nimport Container from \"@material-ui/core/Container\";\nimport Copyright from \"../common/Copyright\";\n\nconst useStyles = makeStyles((theme) => ({\n \"@global\": {\n body: {\n backgroundColor: theme.palette.common.white,\n },\n },\n paper: {\n marginTop: theme.spacing(8),\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n },\n}));\nconst NotFound: React.FC = () => {\n const classes = useStyles();\n return (\n \n \n
\n \n 404 Not Found\n \n
\n \n \n \n
\n );\n};\n\nexport default NotFound;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst CopyIcon = () => {\n return (\n \n \n ic_h_copy-new_sl\n \n \n \n \n \n \n \n );\n};\n\nexport default CopyIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\nconst CreateIcon = () => {\n return (\n \n \n \n \n \n \n \n \n );\n};\n\nexport default CreateIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst DeleteIcon = () => {\n return (\n \n \n \n \n \n );\n};\n\nexport default DeleteIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst DashboardIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default DashboardIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst BucketsIcon = () => {\n return (\n \n \n \n \n \n );\n};\n\nexport default BucketsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst UsersIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default UsersIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst ServiceAccountsIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ServiceAccountsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst GroupsIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default GroupsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst BucketsIcon = () => {\n return (\n \n \n \n \n \n );\n};\n\nexport default BucketsIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst TraceIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default TraceIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst ConfigurationsListIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ConfigurationsListIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\nconst ClustersIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default ClustersIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst WatchIcon = () => {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n};\n\nexport default WatchIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const ADD_BUCKET_OPEN = \"ADD_BUCKET_OPEN\";\nexport const ADD_BUCKET_NAME = \"ADD_BUCKET_NAME\";\nexport const ADD_BUCKET_VERSIONED = \"ADD_BUCKET_VERSIONED\";\nexport const ADD_BUCKET_LOCKING = \"ADD_BUCKET_LOCKING\";\nexport const ADD_BUCKET_QUOTA = \"ADD_BUCKET_QUOTA\";\nexport const ADD_BUCKET_QUOTA_TYPE = \"ADD_BUCKET_QUOTA_TYPE\";\nexport const ADD_BUCKET_QUOTA_SIZE = \"ADD_BUCKET_QUOTA_SIZE\";\nexport const ADD_BUCKET_QUOTA_UNIT = \"ADD_BUCKET_QUOTA_UNIT\";\nexport const ADD_BUCKET_RESET = \"ADD_BUCKET_RESET\";\nexport const ADD_BUCKET_RETENTION = \"ADD_BUCKET_RETENTION\";\nexport const ADD_BUCKET_RETENTION_MODE = \"ADD_BUCKET_RETENTION_MODE\";\nexport const ADD_BUCKET_RETENTION_UNIT = \"ADD_BUCKET_RETENTION_UNIT\";\nexport const ADD_BUCKET_RETENTION_VALIDITY = \"ADD_BUCKET_RETENTION_VALIDITY\";\nexport const BUCKET_DETAILS_SET_TAB = \"BUCKET_DETAILS/SET_TAB\";\n\ninterface AddBucketOpenAction {\n type: typeof ADD_BUCKET_OPEN;\n open: boolean;\n}\n\ninterface AddBucketNameAction {\n type: typeof ADD_BUCKET_NAME;\n name: string;\n}\n\ninterface AddBucketVersionedAction {\n type: typeof ADD_BUCKET_VERSIONED;\n versioned: boolean;\n}\n\ninterface AddBucketLockingAction {\n type: typeof ADD_BUCKET_LOCKING;\n locking: boolean;\n}\n\ninterface AddBucketQuotaAction {\n type: typeof ADD_BUCKET_QUOTA;\n quota: boolean;\n}\n\ninterface AddBucketQuotaTypeAction {\n type: typeof ADD_BUCKET_QUOTA_TYPE;\n quotaType: string;\n}\n\ninterface AddBucketQuotaSizeAction {\n type: typeof ADD_BUCKET_QUOTA_SIZE;\n quotaSize: string;\n}\n\ninterface AddBucketQuotaUnitAction {\n type: typeof ADD_BUCKET_QUOTA_UNIT;\n quotaUnit: string;\n}\ninterface AddBucketResetAction {\n type: typeof ADD_BUCKET_RESET;\n}\n\ninterface AddBucketRetentionAction {\n type: typeof ADD_BUCKET_RETENTION;\n retention: boolean;\n}\n\ninterface AddBucketRetentionModeAction {\n type: typeof ADD_BUCKET_RETENTION_MODE;\n retentionMode: string;\n}\n\ninterface AddBucketRetentionUnitAction {\n type: typeof ADD_BUCKET_RETENTION_UNIT;\n retentionUnit: string;\n}\ninterface AddBucketRetentionValidityAction {\n type: typeof ADD_BUCKET_RETENTION_VALIDITY;\n retentionValidity: number;\n}\n\ninterface SetBucketDetailsTab {\n type: typeof BUCKET_DETAILS_SET_TAB;\n tab: string;\n}\n\nexport type BucketActionTypes =\n | AddBucketOpenAction\n | AddBucketNameAction\n | AddBucketVersionedAction\n | AddBucketLockingAction\n | AddBucketQuotaAction\n | AddBucketQuotaTypeAction\n | AddBucketQuotaSizeAction\n | AddBucketQuotaUnitAction\n | AddBucketResetAction\n | AddBucketRetentionAction\n | AddBucketRetentionModeAction\n | AddBucketRetentionUnitAction\n | AddBucketRetentionValidityAction\n | SetBucketDetailsTab;\n\nexport function addBucketOpen(open: boolean) {\n return {\n type: ADD_BUCKET_OPEN,\n open: open,\n };\n}\nexport function addBucketName(name: string) {\n return {\n type: ADD_BUCKET_NAME,\n name: name,\n };\n}\n\nexport function addBucketVersioning(versioned: boolean) {\n return {\n type: ADD_BUCKET_VERSIONED,\n versioned: versioned,\n };\n}\n\nexport function addBucketEnableObjectLocking(locking: boolean) {\n return {\n type: ADD_BUCKET_LOCKING,\n locking: locking,\n };\n}\n\nexport function addBucketQuota(quota: boolean) {\n return {\n type: ADD_BUCKET_QUOTA,\n quota: quota,\n };\n}\n\nexport function addBucketQuotaType(quotaType: string) {\n return {\n type: ADD_BUCKET_QUOTA_TYPE,\n quotaType: quotaType,\n };\n}\n\nexport function addBucketQuotaSize(quotaSize: string) {\n return {\n type: ADD_BUCKET_QUOTA_SIZE,\n quotaSize: quotaSize,\n };\n}\n\nexport function addBucketQuotaUnit(quotaUnit: string) {\n return {\n type: ADD_BUCKET_QUOTA_UNIT,\n quotaUnit: quotaUnit,\n };\n}\n\nexport function addBucketReset() {\n return {\n type: ADD_BUCKET_RESET,\n };\n}\n\nexport function addBucketRetention(retention: boolean) {\n return {\n type: ADD_BUCKET_RETENTION,\n retention: retention,\n };\n}\n\nexport function addBucketRetentionMode(mode: string) {\n return {\n type: ADD_BUCKET_RETENTION_MODE,\n retentionMode: mode,\n };\n}\n\nexport function addBucketRetentionUnit(unit: string) {\n return {\n type: ADD_BUCKET_RETENTION_UNIT,\n retentionUnit: unit,\n };\n}\n\nexport function addBucketRetentionValidity(validity: number) {\n return {\n type: ADD_BUCKET_RETENTION_VALIDITY,\n retentionValidity: validity,\n };\n}\n\nexport function setBucketDetailsTab(tab: string) {\n return {\n type: BUCKET_DETAILS_SET_TAB,\n tab,\n };\n}\n","export interface IIcon {\n active: boolean;\n}\n\nexport const unSelected = \"#081C42\";\nexport const selected = \"#081C42\";\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst ViewIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default ViewIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst PencilIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default PencilIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst ShareIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n \n );\n};\n\nexport default ShareIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DeleteIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default DeleteIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DescriptionIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default DescriptionIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst CloudIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default CloudIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst ConsoleIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default ConsoleIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DeleteIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n \n );\n};\n\nexport default DeleteIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst DescriptionIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default DescriptionIcon;\n","import React from \"react\";\nimport { IIcon, selected, unSelected } from \"./common\";\n\nconst FormatDriveIcon = ({ active = false }: IIcon) => {\n return (\n \n \n \n );\n};\n\nexport default FormatDriveIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport isString from \"lodash/isString\";\nimport { Link } from \"react-router-dom\";\nimport { createStyles, withStyles } from \"@material-ui/core/styles\";\nimport { IconButton } from \"@material-ui/core\";\nimport ViewIcon from \"./TableActionIcons/ViewIcon\";\nimport PencilIcon from \"./TableActionIcons/PencilIcon\";\nimport ShareIcon from \"./TableActionIcons/ShareIcon\";\nimport DeleteIcon from \"./TableActionIcons/DeleteIcon\";\nimport DescriptionIcon from \"./TableActionIcons/DescriptionIcon\";\nimport CloudIcon from \"./TableActionIcons/CloudIcon\";\nimport ConsoleIcon from \"./TableActionIcons/ConsoleIcon\";\nimport DownloadIcon from \"./TableActionIcons/DownloadIcon\";\nimport DisableIcon from \"./TableActionIcons/DisableIcon\";\nimport FormatDriveIcon from \"./TableActionIcons/FormatDriveIcon\";\n\nconst styles = () =>\n createStyles({\n spacing: {\n margin: \"0 8px\",\n },\n buttonDisabled: {\n \"&.MuiButtonBase-root.Mui-disabled\": {\n cursor: \"not-allowed\",\n filter: \"grayscale(100%)\",\n opacity: \"30%\",\n },\n },\n });\n\ninterface IActionButton {\n type: string;\n onClick?: (id: string) => any;\n to?: string;\n valueToSend: any;\n selected: boolean;\n sendOnlyId?: boolean;\n idField: string;\n disabled: boolean;\n classes: any;\n}\n\nconst defineIcon = (type: string, selected: boolean) => {\n switch (type) {\n case \"view\":\n return ;\n case \"edit\":\n return ;\n case \"delete\":\n return ;\n case \"description\":\n return ;\n case \"share\":\n return ;\n case \"cloud\":\n return ;\n case \"console\":\n return ;\n case \"download\":\n return ;\n case \"disable\":\n return ;\n case \"format\":\n return ;\n }\n\n return null;\n};\n\nconst TableActionButton = ({\n type,\n onClick,\n valueToSend,\n idField,\n selected,\n to,\n sendOnlyId = false,\n disabled = false,\n classes,\n}: IActionButton) => {\n const valueClick = sendOnlyId ? valueToSend[idField] : valueToSend;\n\n const buttonElement = (\n {\n e.stopPropagation();\n if (!disabled) {\n onClick(valueClick);\n } else {\n e.preventDefault();\n }\n }\n : () => null\n }\n className={`${classes.spacing} ${disabled ? classes.buttonDisabled : \"\"}`}\n disabled={disabled}\n >\n {defineIcon(type, selected)}\n \n );\n\n if (onClick) {\n return buttonElement;\n }\n\n if (isString(to)) {\n if (!disabled) {\n return (\n {\n e.stopPropagation();\n }}\n >\n {buttonElement}\n \n );\n }\n\n return buttonElement;\n }\n\n return null;\n};\n\nexport default withStyles(styles)(TableActionButton);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\nconst HelpIcon = (props: any) => {\n return (\n \n \n \n \n );\n};\n\nexport default HelpIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport { Checkbox, Grid, InputLabel, Tooltip } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n checkboxIcons,\n fieldBasic,\n tooltipHelper,\n} from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface CheckBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n index?: number;\n checked: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n ...checkboxIcons,\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n margin: \"15px 0\",\n marginBottom: 0,\n flexBasis: \"initial\",\n },\n });\n\nconst CheckboxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n tooltip = \"\",\n classes,\n}: CheckBoxProps) => {\n return (\n \n \n
\n }\n icon={}\n disabled={disabled}\n />\n
\n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n
\n
\n );\n};\n\nexport default withStyles(styles)(CheckboxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useState } from \"react\";\nimport get from \"lodash/get\";\nimport isString from \"lodash/isString\";\nimport {\n Checkbox,\n Grid,\n IconButton,\n LinearProgress,\n Paper,\n Popover,\n Typography,\n} from \"@material-ui/core\";\nimport { AutoSizer, Column, InfiniteLoader, Table } from \"react-virtualized\";\nimport { createStyles, withStyles } from \"@material-ui/core/styles\";\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\nimport ViewColumnIcon from \"@material-ui/icons/ViewColumn\";\nimport ArrowDropDownIcon from \"@material-ui/icons/ArrowDropDown\";\nimport ArrowDropUpIcon from \"@material-ui/icons/ArrowDropUp\";\nimport TableActionButton from \"./TableActionButton\";\nimport history from \"../../../../history\";\nimport {\n checkboxIcons,\n radioIcons,\n} from \"../FormComponents/common/styleLibrary\";\nimport CheckboxWrapper from \"../FormComponents/CheckboxWrapper/CheckboxWrapper\";\n\n//Interfaces for table Items\n\ninterface ItemActions {\n type: string;\n to?: string;\n sendOnlyId?: boolean;\n disableButtonFunction?: (itemValue: any) => boolean;\n showLoaderFunction?: (itemValue: any) => boolean;\n\n onClick?(valueToSend: any): any;\n}\n\ninterface IColumns {\n label: string;\n elementKey: string;\n renderFunction?: (input: any) => any;\n renderFullObject?: boolean;\n globalClass?: any;\n rowClass?: any;\n width?: number;\n headerTextAlign?: string;\n contentTextAlign?: string;\n enableSort?: boolean;\n}\n\ninterface IInfiniteScrollConfig {\n loadMoreRecords: (indexElements: {\n startIndex: number;\n stopIndex: number;\n }) => Promise;\n recordsCount: number;\n}\n\ninterface ISortConfig {\n triggerSort: (val: any) => any;\n currentSort: string;\n currentDirection: \"ASC\" | \"DESC\" | undefined;\n}\n\ninterface TableWrapperProps {\n itemActions?: ItemActions[] | null;\n columns: IColumns[];\n onSelect?: (e: React.ChangeEvent) => any;\n idField: string;\n isLoading: boolean;\n loadingMessage?: React.ReactNode;\n records: any[];\n classes: any;\n entityName: string;\n selectedItems?: string[];\n radioSelection?: boolean;\n customEmptyMessage?: string;\n customPaperHeight?: string;\n noBackground?: boolean;\n columnsSelector?: boolean;\n textSelectable?: boolean;\n columnsShown?: string[];\n onColumnChange?: (column: string, state: boolean) => any;\n autoScrollToBottom?: boolean;\n infiniteScrollConfig?: IInfiniteScrollConfig;\n sortConfig?: ISortConfig;\n}\n\nconst borderColor = \"#9c9c9c80\";\n\nconst rowText = {\n fontWeight: 400,\n fontSize: 14,\n borderColor: borderColor,\n borderWidth: \"0.5px\",\n height: 40,\n transitionDuration: \"0.3s\",\n padding: \"initial\",\n paddingRight: 6,\n paddingLeft: 6,\n};\n\nconst styles = () =>\n createStyles({\n dialogContainer: {\n padding: \"12px 26px 22px\",\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n padding: \"19px 38px\",\n boxShadow: \"none\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n minHeight: 200,\n overflowY: \"scroll\",\n position: \"relative\",\n \"&::-webkit-scrollbar\": {\n width: 3,\n height: 3,\n },\n },\n noBackground: {\n backgroundColor: \"transparent\",\n border: 0,\n },\n defaultPaperHeight: {\n height: \"calc(100vh - 205px)\",\n },\n allTableSettings: {\n \"& .MuiTableCell-sizeSmall:last-child\": {\n paddingRight: \"initial\",\n },\n \"& .MuiTableCell-body.MuiTableCell-sizeSmall:last-child\": {\n paddingRight: 6,\n },\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: 700,\n fontSize: 14,\n borderColor: \"#39393980\",\n borderWidth: \"0.5px\",\n padding: \"6px 0 10px\",\n },\n },\n },\n rowUnselected: {\n ...rowText,\n color: \"#393939\",\n },\n rowSelected: {\n ...rowText,\n color: \"#081C42\",\n fontWeight: 600,\n },\n paginatorContainer: {\n display: \"flex\",\n justifyContent: \"flex-end\",\n padding: \"5px 38px\",\n },\n checkBoxHeader: {\n width: 50,\n textAlign: \"left\",\n paddingRight: 10,\n \"&.MuiTableCell-paddingCheckbox\": {\n paddingBottom: 4,\n paddingLeft: 0,\n },\n },\n actionsContainer: {\n width: 150,\n borderColor: borderColor,\n },\n paginatorComponent: {\n borderBottom: 0,\n },\n checkBoxRow: {\n borderColor: borderColor,\n padding: \"0 10px 0 0\",\n },\n loadingBox: {\n paddingTop: \"100px\",\n paddingBottom: \"100px\",\n },\n overlayColumnSelection: {\n position: \"absolute\",\n right: 0,\n top: 0,\n },\n popoverContainer: {\n position: \"relative\",\n },\n popoverContent: {\n maxHeight: 250,\n overflowY: \"auto\",\n padding: \"0 10px 10px\",\n },\n shownColumnsLabel: {\n color: \"#9c9c9c\",\n fontSize: 12,\n padding: 10,\n borderBottom: \"#eaeaea 1px solid\",\n width: \"100%\",\n },\n \"@global\": {\n \".rowLine\": {\n borderBottom: `1px solid ${borderColor}`,\n height: 40,\n color: \"#393939\",\n fontSize: 14,\n transitionDuration: 0.3,\n \"&:focus\": {\n outline: \"initial\",\n },\n \"&:hover:not(.ReactVirtualized__Table__headerRow)\": {\n userSelect: \"none\",\n backgroundColor: \"#ececec\",\n fontWeight: 600,\n \"&.canClick\": {\n cursor: \"pointer\",\n },\n \"&.canSelectText\": {\n userSelect: \"text\",\n },\n },\n \"& .selected\": {\n color: \"#081C42\",\n fontWeight: 600,\n },\n },\n \".headerItem\": {\n userSelect: \"none\",\n fontWeight: 700,\n fontSize: 14,\n fontStyle: \"initial\",\n display: \"flex\",\n alignItems: \"center\",\n outline: \"none\",\n },\n \".ReactVirtualized__Table__headerRow\": {\n fontWeight: 700,\n fontSize: 14,\n borderColor: \"#39393980\",\n textTransform: \"initial\",\n },\n \".optionsAlignment\": {\n textAlign: \"center\",\n },\n \".text-center\": {\n textAlign: \"center\",\n },\n \".text-right\": {\n textAlign: \"right\",\n },\n \".progress-enabled\": {\n paddingTop: 3,\n display: \"inline-block\",\n margin: \"0 10px\",\n position: \"relative\",\n width: 18,\n height: 18,\n },\n \".progress-enabled > .MuiCircularProgress-root\": {\n position: \"absolute\",\n left: 0,\n top: 3,\n },\n },\n ...checkboxIcons,\n ...radioIcons,\n });\n\nconst selectWidth = 45;\n\n// Function to render elements in table\nconst subRenderFunction = (\n rowData: any,\n column: IColumns,\n isSelected: boolean\n) => {\n const itemElement = isString(rowData)\n ? rowData\n : get(rowData, column.elementKey, null); // If the element is just a string, we render it as it is\n const renderConst = column.renderFullObject ? rowData : itemElement;\n\n const renderElement = column.renderFunction\n ? column.renderFunction(renderConst)\n : renderConst; // If render function is set, we send the value to the function.\n\n return (\n \n {renderElement}\n \n );\n};\n\n// Function to calculate common column width for elements with no with size\nconst calculateColumnRest = (\n columns: IColumns[],\n containerWidth: number,\n actionsWidth: number,\n hasSelect: boolean,\n hasActions: boolean,\n columnsSelector: boolean,\n columnsShown: string[]\n) => {\n let colsItems = [...columns];\n\n if (columnsSelector) {\n colsItems = columns.filter((column) =>\n columnsShown.includes(column.elementKey)\n );\n }\n\n let initialValue = containerWidth;\n\n if (hasSelect) {\n initialValue -= selectWidth;\n }\n\n if (hasActions) {\n initialValue -= actionsWidth;\n }\n\n let freeSpacing = colsItems.reduce((total, currValue) => {\n return currValue.width ? total - currValue.width : total;\n }, initialValue);\n\n return freeSpacing / colsItems.filter((el) => !el.width).length;\n};\n\n// Function that renders Columns in table\nconst generateColumnsMap = (\n columns: IColumns[],\n containerWidth: number,\n actionsWidth: number,\n hasSelect: boolean,\n hasActions: boolean,\n selectedItems: string[],\n idField: string,\n columnsSelector: boolean,\n columnsShown: string[],\n sortColumn: string,\n sortDirection: \"ASC\" | \"DESC\" | undefined\n) => {\n const commonRestWidth = calculateColumnRest(\n columns,\n containerWidth,\n actionsWidth,\n hasSelect,\n hasActions,\n columnsSelector,\n columnsShown\n );\n return columns.map((column: IColumns, index: number) => {\n if (columnsSelector && !columnsShown.includes(column.elementKey)) {\n return null;\n }\n\n const disableSort = column.enableSort ? !column.enableSort : true;\n\n return (\n (\n \n {sortColumn === column.elementKey && (\n \n {sortDirection === \"ASC\" ? (\n \n ) : (\n \n )}\n \n )}\n {column.label}\n \n )}\n className={\n column.contentTextAlign ? `text-${column.contentTextAlign}` : \"\"\n }\n cellRenderer={({ rowData }) => {\n const isSelected = selectedItems\n ? selectedItems.includes(\n isString(rowData) ? rowData : rowData[idField]\n )\n : false;\n return subRenderFunction(rowData, column, isSelected);\n }}\n width={column.width || commonRestWidth}\n disableSort={disableSort}\n defaultSortDirection={\"ASC\"}\n />\n );\n });\n};\n\n// Function to render the action buttons\nconst elementActions = (\n actions: ItemActions[],\n valueToSend: any,\n selected: boolean,\n idField: string\n) => {\n return actions.map((action: ItemActions, index: number) => {\n if (action.type === \"view\") {\n return null;\n }\n\n const vlSend =\n typeof valueToSend === \"string\" ? valueToSend : valueToSend[idField];\n\n let disabled = false;\n\n if (action.disableButtonFunction) {\n if (action.disableButtonFunction(vlSend)) {\n disabled = true;\n }\n }\n\n if (action.showLoaderFunction) {\n if (action.showLoaderFunction(vlSend)) {\n return (\n
\n \n
\n );\n }\n }\n\n return (\n \n );\n });\n};\n\n// Function to calculate the options column width according elements inside\nconst calculateOptionsSize = (containerWidth: number, totalOptions: number) => {\n const minContainerSize = 80;\n const sizeOptions = totalOptions * 45;\n\n if (sizeOptions < minContainerSize) {\n return minContainerSize;\n }\n\n if (sizeOptions > containerWidth) {\n return containerWidth;\n }\n\n return sizeOptions;\n};\n\n// Main function to render the Table Wrapper\nconst TableWrapper = ({\n itemActions,\n columns,\n onSelect,\n records,\n isLoading,\n loadingMessage = Loading...,\n entityName,\n selectedItems,\n idField,\n classes,\n radioSelection = false,\n customEmptyMessage = \"\",\n customPaperHeight = \"\",\n noBackground = false,\n columnsSelector = false,\n textSelectable = false,\n columnsShown = [],\n onColumnChange = (column: string, state: boolean) => {},\n infiniteScrollConfig,\n sortConfig,\n autoScrollToBottom = false,\n}: TableWrapperProps) => {\n const [columnSelectorOpen, setColumnSelectorOpen] = useState(false);\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const findView = itemActions\n ? itemActions.find((el) => el.type === \"view\")\n : null;\n\n const clickAction = (rowItem: any) => {\n if (findView) {\n const valueClick = findView.sendOnlyId ? rowItem[idField] : rowItem;\n if (findView.to) {\n history.push(`${findView.to}/${valueClick}`);\n return;\n }\n\n if (findView.onClick) {\n findView.onClick(valueClick);\n }\n }\n };\n\n const openColumnsSelector = (event: { currentTarget: any }) => {\n setColumnSelectorOpen(!columnSelectorOpen);\n setAnchorEl(event.currentTarget);\n };\n\n const closeColumnSelector = () => {\n setColumnSelectorOpen(false);\n setAnchorEl(null);\n };\n\n const columnsSelection = (columns: IColumns[]) => {\n return (\n \n \n \n \n \n
Shown Columns
\n
\n {columns.map((column: IColumns) => {\n return (\n {\n onColumnChange(column.elementKey, e.target.checked);\n }}\n id={`chbox-${column.label}`}\n name={`chbox-${column.label}`}\n value={column.label}\n />\n );\n })}\n
\n \n
\n );\n };\n\n return (\n \n \n {isLoading && (\n \n \n {loadingMessage}\n \n \n \n \n \n )}\n {columnsSelector && !isLoading && records.length > 0 && (\n
\n {columnsSelection(columns)}\n
\n )}\n {records && !isLoading && records.length > 0 ? (\n !!records[index]}\n loadMoreRows={\n infiniteScrollConfig\n ? infiniteScrollConfig.loadMoreRecords\n : () => new Promise(() => true)\n }\n rowCount={\n infiniteScrollConfig\n ? infiniteScrollConfig.recordsCount\n : records.length\n }\n >\n {({ onRowsRendered, registerChild }) => (\n \n {({ width, height }: any) => {\n const optionsWidth = calculateOptionsSize(\n width,\n itemActions\n ? itemActions.filter((el) => el.type !== \"view\").length\n : 0\n );\n const hasSelect: boolean = !!(onSelect && selectedItems);\n const hasOptions: boolean = !!(\n (itemActions && itemActions.length > 1) ||\n (itemActions &&\n itemActions.length === 1 &&\n itemActions[0].type !== \"view\")\n );\n return (\n (\n \n {customEmptyMessage !== \"\"\n ? customEmptyMessage\n : `There are no ${entityName} yet.`}\n \n )}\n overscanRowCount={10}\n rowHeight={40}\n width={width}\n rowCount={records.length}\n rowGetter={({ index }) => records[index]}\n onRowClick={({ rowData }) => {\n clickAction(rowData);\n }}\n rowClassName={`rowLine ${findView ? \"canClick\" : \"\"} ${\n !findView && textSelectable ? \"canSelectText\" : \"\"\n }`}\n onRowsRendered={onRowsRendered}\n sort={sortConfig ? sortConfig.triggerSort : undefined}\n sortBy={sortConfig ? sortConfig.currentSort : undefined}\n sortDirection={\n sortConfig ? sortConfig.currentDirection : undefined\n }\n scrollToIndex={\n autoScrollToBottom ? records.length - 1 : -1\n }\n >\n {hasSelect && (\n Select}\n dataKey={idField}\n width={selectWidth}\n cellRenderer={({ rowData }) => {\n const isSelected = selectedItems\n ? selectedItems.includes(\n isString(rowData) ? rowData : rowData[idField]\n )\n : false;\n\n return (\n {\n e.stopPropagation();\n }}\n checkedIcon={\n \n }\n icon={\n \n }\n />\n );\n }}\n />\n )}\n {generateColumnsMap(\n columns,\n width,\n optionsWidth,\n hasSelect,\n hasOptions,\n selectedItems || [],\n idField,\n columnsSelector,\n columnsShown,\n sortConfig ? sortConfig.currentSort : \"\",\n sortConfig ? sortConfig.currentDirection : undefined\n )}\n {hasOptions && (\n Options}\n dataKey={idField}\n width={optionsWidth}\n headerClassName=\"optionsAlignment\"\n className=\"optionsAlignment\"\n cellRenderer={({ rowData }) => {\n const isSelected = selectedItems\n ? selectedItems.includes(\n isString(rowData) ? rowData : rowData[idField]\n )\n : false;\n return elementActions(\n itemActions || [],\n rowData,\n isSelected,\n idField\n );\n }}\n />\n )}\n \n );\n }}\n \n )}\n \n ) : (\n \n {!isLoading && (\n
\n {customEmptyMessage !== \"\"\n ? customEmptyMessage\n : `There are no ${entityName} yet.`}\n
\n )}\n
\n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(TableWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport Snackbar from \"@material-ui/core/Snackbar\";\nimport { Dialog, DialogContent, DialogTitle } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { snackBarCommon } from \"../FormComponents/common/styleLibrary\";\nimport { AppState } from \"../../../../store\";\nimport { snackBarMessage } from \"../../../../types\";\nimport { setModalSnackMessage } from \"../../../../actions\";\n\ninterface IModalProps {\n classes: any;\n onClose: () => void;\n modalOpen: boolean;\n title: string;\n children: any;\n wideLimit?: boolean;\n modalSnackMessage?: snackBarMessage;\n noContentPadding?: boolean;\n setModalSnackMessage: typeof setModalSnackMessage;\n}\n\nconst baseCloseLine = {\n content: '\" \"',\n borderLeft: \"2px solid #9C9C9C\",\n height: 33,\n width: 1,\n position: \"absolute\",\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n dialogContainer: {\n padding: \"8px 15px 22px\",\n },\n closeContainer: {\n textAlign: \"right\",\n },\n closeButton: {\n width: 45,\n height: 45,\n padding: 0,\n backgroundColor: \"initial\",\n \"&:hover\": {\n backgroundColor: \"initial\",\n },\n \"&:active\": {\n backgroundColor: \"initial\",\n },\n },\n modalCloseIcon: {\n fontSize: 35,\n color: \"#9C9C9C\",\n fontWeight: 300,\n \"&:hover\": {\n color: \"#9C9C9C\",\n },\n },\n closeIcon: {\n \"&::before\": {\n ...baseCloseLine,\n transform: \"rotate(45deg)\",\n },\n \"&::after\": {\n ...baseCloseLine,\n transform: \"rotate(-45deg)\",\n },\n \"&:hover::before, &:hover::after\": {\n borderColor: \"#9C9C9C\",\n },\n width: 24,\n height: 24,\n display: \"block\",\n position: \"relative\",\n },\n titleClass: {\n padding: \"0px 50px 12px\",\n \"& h2\": {\n fontWeight: 600,\n color: \"#000\",\n fontSize: 22,\n },\n },\n modalContent: {\n padding: \"0 50px\",\n },\n customDialogSize: {\n width: \"100%\",\n maxWidth: 765,\n },\n ...snackBarCommon,\n });\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n classes,\n wideLimit = true,\n modalSnackMessage,\n noContentPadding,\n setModalSnackMessage,\n}: IModalProps) => {\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n setOpenSnackbar(true);\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n setModalSnackMessage(\"\");\n };\n\n const customSize = wideLimit\n ? {\n classes: {\n paper: classes.customDialogSize,\n },\n }\n : { maxWidth: \"md\" as const, fullWidth: true };\n\n return (\n \n
\n {\n closeSnackBar();\n }}\n message={modalSnackMessage ? modalSnackMessage.message : \"\"}\n ContentProps={{\n className: `${classes.snackBar} ${\n modalSnackMessage && modalSnackMessage.type === \"error\"\n ? classes.errorSnackBar\n : \"\"\n }`,\n }}\n autoHideDuration={\n modalSnackMessage && modalSnackMessage.type === \"error\"\n ? 10000\n : 5000\n }\n />\n
\n \n \n \n
\n \n {title}\n \n \n {children}\n \n
\n \n );\n};\n\nconst mapState = (state: AppState) => ({\n modalSnackMessage: state.system.modalSnackBar,\n});\n\nconst connector = connect(mapState, {\n setModalSnackMessage,\n});\n\nexport default withStyles(styles)(connector(ModalWrapper));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport {\n Grid,\n IconButton,\n InputLabel,\n TextField,\n TextFieldProps,\n Tooltip,\n} from \"@material-ui/core\";\nimport { OutlinedInputProps } from \"@material-ui/core/OutlinedInput\";\nimport {\n createStyles,\n makeStyles,\n Theme,\n withStyles,\n} from \"@material-ui/core/styles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface InputBoxProps {\n label: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n multiline?: boolean;\n type?: string;\n tooltip?: string;\n autoComplete?: string;\n index?: number;\n error?: string;\n required?: boolean;\n placeholder?: string;\n min?: string;\n max?: string;\n overlayIcon?: any;\n overlayAction?: () => void;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n textBoxContainer: {\n flexGrow: 1,\n },\n textBoxWithIcon: {\n position: \"relative\",\n paddingRight: 25,\n },\n errorState: {\n color: \"#b53b4b\",\n fontSize: 14,\n position: \"absolute\",\n top: 7,\n right: 7,\n },\n overlayAction: {\n position: \"absolute\",\n right: 0,\n top: 15,\n \"& svg\": {\n maxWidth: 15,\n maxHeight: 15,\n },\n },\n });\n\nconst inputStyles = makeStyles((theme: Theme) =>\n createStyles({\n root: {\n borderRadius: 0,\n \"&::before\": {\n borderColor: \"#9c9c9c\",\n },\n },\n disabled: {\n \"&.MuiInput-underline::before\": {\n borderColor: \"#eaeaea\",\n borderBottomStyle: \"solid\",\n },\n },\n input: {\n padding: \"15px 30px 10px 5px\",\n color: \"#393939\",\n fontSize: 13,\n fontWeight: 600,\n \"&:placeholder\": {\n color: \"#393939\",\n opacity: 1,\n },\n },\n error: {\n color: \"#b53b4b\",\n },\n })\n);\n\nfunction InputField(props: TextFieldProps) {\n const classes = inputStyles();\n\n return (\n }\n {...props}\n />\n );\n}\n\nconst InputBoxWrapper = ({\n label,\n onChange,\n value,\n id,\n name,\n type = \"text\",\n autoComplete = \"off\",\n disabled = false,\n multiline = false,\n tooltip = \"\",\n index = 0,\n error = \"\",\n required = false,\n placeholder = \"\",\n min,\n max,\n overlayIcon = null,\n overlayAction,\n classes,\n}: InputBoxProps) => {\n let inputProps: any = { \"data-index\": index };\n\n if (type === \"number\" && min) {\n inputProps[\"min\"] = min;\n }\n\n if (type === \"number\" && max) {\n inputProps[\"max\"] = max;\n }\n\n return (\n \n \n {label !== \"\" && (\n \n \n {label}\n {required ? \"*\" : \"\"}\n \n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n\n
\n \n
\n {overlayIcon && (\n
\n {\n overlayAction();\n }\n : () => null\n }\n size={\"small\"}\n disableFocusRipple={false}\n disableRipple={false}\n disableTouchRipple={false}\n >\n {overlayIcon}\n \n
\n )}\n \n
\n );\n};\n\nexport default withStyles(styles)(InputBoxWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport {\n FormControl,\n InputLabel,\n MenuItem,\n Select,\n InputBase,\n Tooltip,\n} from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { fieldBasic, tooltipHelper } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface selectorTypes {\n label: string;\n value: string;\n}\n\ninterface SelectProps {\n options: selectorTypes[];\n value: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n onChange: (\n e: React.ChangeEvent<{ name?: string | undefined; value: unknown }>\n ) => void;\n disabled?: boolean;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n lineHeight: 1,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n },\n input: {\n position: \"relative\",\n color: \"#393939\",\n fontSize: 13,\n fontWeight: 600,\n padding: \"15px 20px 10px 10px\",\n borderBottom: \"1px solid #9c9c9c\",\n display: \"flex\",\n alignItems: \"center\",\n \"&:hover\": {\n borderColor: \"#393939\",\n },\n \"&:focus\": {\n backgroundColor: \"#fff\",\n },\n },\n })\n)(InputBase);\n\nconst SelectWrapper = ({\n classes,\n id,\n name,\n onChange,\n options,\n label,\n tooltip = \"\",\n value,\n disabled = false,\n}: SelectProps) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n \n }\n disabled={disabled}\n >\n {options.map((option) => (\n \n {option.label}\n \n ))}\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(SelectWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@material-ui/core/Grid\";\nimport RadioGroup from \"@material-ui/core/RadioGroup\";\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\nimport Radio, { RadioProps } from \"@material-ui/core/Radio\";\nimport { InputLabel, Tooltip } from \"@material-ui/core\";\nimport {\n createStyles,\n Theme,\n withStyles,\n makeStyles,\n} from \"@material-ui/core/styles\";\nimport { fieldBasic, radioIcons, tooltipHelper } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\nexport interface SelectorTypes {\n label: string;\n value: string;\n}\n\ninterface RadioGroupProps {\n selectorOptions: SelectorTypes[];\n currentSelection: string;\n label: string;\n id: string;\n name: string;\n tooltip?: string;\n disableOptions?: boolean;\n onChange: (e: React.ChangeEvent) => void;\n classes: any;\n displayInColumn?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...fieldBasic,\n ...tooltipHelper,\n radioBoxContainer: {},\n fieldContainer: {\n ...fieldBasic.fieldContainer,\n display: \"flex\",\n justifyContent: \"space-between\",\n borderBottom: \"#9c9c9c 1px solid\",\n paddingBottom: 10,\n marginTop: 11,\n },\n optionLabel: {\n \"&.Mui-disabled\": {\n \"& .MuiFormControlLabel-label\": {\n color: \"#9c9c9c\",\n },\n },\n \"&:last-child\": {\n marginRight: 0,\n },\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#000\",\n },\n },\n checkedOption: {\n \"& .MuiFormControlLabel-label\": {\n fontSize: 12,\n color: \"#000\",\n fontWeight: 700,\n },\n },\n });\n\nconst radioStyles = makeStyles({\n root: {\n \"&:hover\": {\n backgroundColor: \"transparent\",\n },\n },\n ...radioIcons,\n});\n\nconst RadioButton = (props: RadioProps) => {\n const classes = radioStyles();\n\n return (\n }\n icon={}\n {...props}\n />\n );\n};\n\nexport const RadioGroupSelector = ({\n selectorOptions = [],\n currentSelection,\n label,\n id,\n name,\n onChange,\n tooltip = \"\",\n disableOptions = false,\n classes,\n displayInColumn = false,\n}: RadioGroupProps) => {\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n\n
\n \n {selectorOptions.map((selectorOption) => {\n return (\n }\n label={selectorOption.label}\n disabled={disableOptions}\n className={clsx(classes.optionLabel, {\n [classes.checkedOption]:\n selectorOption.value === currentSelection,\n })}\n />\n );\n })}\n \n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(RadioGroupSelector);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { InputLabel, Switch, Tooltip, Typography } from \"@material-ui/core\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { actionsTray, fieldBasic } from \"../common/styleLibrary\";\nimport HelpIcon from \"../../../../../icons/HelpIcon\";\n\ninterface IFormSwitch {\n label?: string;\n classes: any;\n onChange: (e: React.ChangeEvent) => void;\n value: string | boolean;\n id: string;\n name: string;\n disabled?: boolean;\n tooltip?: string;\n description?: string;\n index?: number;\n indicatorLabels?: string[];\n checked: boolean;\n switchOnly?: boolean;\n containerClass?: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n paddingTop: 15,\n boxShadow: \"none\",\n },\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n wrapCell: {\n maxWidth: \"200px\",\n whiteSpace: \"normal\",\n wordWrap: \"break-word\",\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n noFound: {\n textAlign: \"center\",\n padding: \"10px 0\",\n },\n tableContainer: {\n maxHeight: 200,\n },\n stickyHeader: {\n backgroundColor: \"#fff\",\n },\n actionsTitle: {\n fontWeight: 600,\n color: \"#081C42\",\n fontSize: 16,\n alignSelf: \"center\",\n },\n tableBlock: {\n marginTop: 15,\n },\n filterField: {\n width: 375,\n fontWeight: 600,\n \"& .input\": {\n \"&::placeholder\": {\n fontWeight: 600,\n color: \"#081C42\",\n },\n },\n },\n divContainer: {\n borderBottom: \"#9c9c9c 1px solid\",\n paddingBottom: 14,\n marginBottom: 20,\n maxWidth: 840,\n },\n wrapperContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n maxWidth: 840,\n },\n indicatorLabel: {\n fontSize: 12,\n fontWeight: 600,\n color: \"#081C42\",\n margin: \"0 8px 0 10px\",\n },\n fieldDescription: {\n marginTop: 4,\n color: \"#999999\",\n },\n ...actionsTray,\n ...fieldBasic,\n });\n\nconst StyledSwitch = withStyles({\n root: {\n alignItems: \"flex-start\",\n height: 18,\n padding: \"0 12px\",\n display: \"flex\",\n position: \"relative\",\n },\n switchBase: {\n color: \"#fff\",\n padding: 0,\n top: \"initial\",\n \"&$checked\": {\n color: \"#fff\",\n },\n \"&$checked + $track\": {\n backgroundColor: \"#081C42\",\n opacity: 1,\n height: 15,\n },\n \"&:hover\": {\n backgroundColor: \"#fff\",\n },\n },\n checked: {},\n track: {\n height: 15,\n backgroundColor: \"#9C9C9C\",\n border: \"#081C42 1px solid\",\n opacity: 1,\n padding: 0,\n marginTop: 1.5,\n \"&$checked\": {\n backgroundColor: \"#081C42\",\n },\n },\n thumb: {\n backgroundColor: \"#fff\",\n border: \"#081C42 1px solid\",\n boxShadow: \"none\",\n width: 18,\n height: 18,\n padding: 0,\n marginLeft: 10,\n },\n})(Switch);\n\nconst FormSwitchWrapper = ({\n label = \"\",\n onChange,\n value,\n id,\n name,\n checked = false,\n disabled = false,\n switchOnly = false,\n tooltip = \"\",\n description = \"\",\n indicatorLabels = [],\n containerClass = \"\",\n classes,\n}: IFormSwitch) => {\n const switchComponent = (\n \n
\n \n {indicatorLabels.length === 2 && (\n \n {checked ? indicatorLabels[0] : indicatorLabels[1]}\n \n )}\n
\n
\n );\n\n if (switchOnly) {\n return switchComponent;\n }\n\n return (\n
\n \n {label !== \"\" && (\n \n {label}\n {tooltip !== \"\" && (\n
\n \n
\n \n
\n
\n
\n )}\n
\n )}\n {switchComponent}\n
\n {description !== \"\" && (\n \n \n {description}\n \n \n )}\n
\n );\n};\n\nexport default withStyles(styles)(FormSwitchWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { Button, LinearProgress, Typography } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../Common/FormComponents/common/styleLibrary\";\nimport api from \"../../../../common/api\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport RadioGroupSelector from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport { factorForDropdown, getBytes } from \"../../../../common/utils\";\nimport { AppState } from \"../../../../store\";\nimport { connect } from \"react-redux\";\nimport {\n addBucketEnableObjectLocking,\n addBucketName,\n addBucketQuota,\n addBucketQuotaSize,\n addBucketQuotaType,\n addBucketQuotaUnit,\n addBucketRetention,\n addBucketRetentionMode,\n addBucketRetentionUnit,\n addBucketRetentionValidity,\n addBucketVersioning,\n} from \"../actions\";\nimport { useDebounce } from \"use-debounce\";\nimport { MakeBucketRequest } from \"../types\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { setModalErrorSnackMessage } from \"../../../../actions\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n multiContainer: {\n display: \"flex\",\n alignItems: \"center\" as const,\n justifyContent: \"flex-start\" as const,\n },\n quotaSizeContainer: {\n flexGrow: 1,\n },\n sizeFactorContainer: {\n flexGrow: 0,\n maxWidth: 80,\n marginLeft: 8,\n alignSelf: \"flex-start\" as const,\n },\n ...modalBasic,\n });\n\ninterface IAddBucketProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (refresh: boolean) => void;\n addBucketName: typeof addBucketName;\n addBucketVersioned: typeof addBucketVersioning;\n enableObjectLocking: typeof addBucketEnableObjectLocking;\n addBucketQuota: typeof addBucketQuota;\n addBucketQuotaType: typeof addBucketQuotaType;\n addBucketQuotaSize: typeof addBucketQuotaSize;\n addBucketQuotaUnit: typeof addBucketQuotaUnit;\n addBucketRetention: typeof addBucketRetention;\n addBucketRetentionMode: typeof addBucketRetentionMode;\n addBucketRetentionUnit: typeof addBucketRetentionUnit;\n addBucketRetentionValidity: typeof addBucketRetentionValidity;\n setModalError: typeof setModalErrorSnackMessage;\n bucketName: string;\n versioningEnabled: boolean;\n lockingEnabled: boolean;\n quotaEnabled: boolean;\n quotaType: string;\n quotaSize: string;\n quotaUnit: string;\n retentionEnabled: boolean;\n retentionMode: string;\n retentionUnit: string;\n retentionValidity: number;\n}\n\nconst AddBucket = ({\n classes,\n open,\n closeModalAndRefresh,\n addBucketName,\n addBucketVersioned,\n enableObjectLocking,\n addBucketQuota,\n addBucketQuotaType,\n addBucketQuotaSize,\n addBucketQuotaUnit,\n addBucketRetention,\n addBucketRetentionMode,\n addBucketRetentionUnit,\n addBucketRetentionValidity,\n setModalError,\n bucketName,\n versioningEnabled,\n lockingEnabled,\n quotaEnabled,\n quotaType,\n quotaSize,\n quotaUnit,\n retentionEnabled,\n retentionMode,\n retentionUnit,\n retentionValidity,\n}: IAddBucketProps) => {\n const [addLoading, setAddLoading] = useState(false);\n const [sendEnabled, setSendEnabled] = useState(false);\n const [lockingFieldDisabled, setLockingFieldDisabled] =\n useState(false);\n\n const addRecord = (event: React.FormEvent) => {\n event.preventDefault();\n if (addLoading) {\n return;\n }\n setAddLoading(true);\n\n let request: MakeBucketRequest = {\n name: bucketName,\n versioning: versioningEnabled,\n locking: lockingEnabled,\n };\n\n if (quotaEnabled) {\n const amount = getBytes(quotaSize, quotaUnit, false);\n request.quota = {\n enabled: true,\n quota_type: quotaType,\n amount: parseInt(amount),\n };\n }\n\n if (retentionEnabled) {\n request.retention = {\n mode: retentionMode,\n unit: retentionUnit,\n validity: retentionValidity,\n };\n }\n\n api\n .invoke(\"POST\", \"/api/v1/buckets\", request)\n .then((res) => {\n setAddLoading(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n setAddLoading(false);\n setModalError(err);\n });\n\n resetForm();\n };\n\n const [value] = useDebounce(bucketName, 1000);\n\n useEffect(() => {\n addBucketName(value);\n }, [value, addBucketName]);\n\n const resetForm = () => {\n addBucketName(\"\");\n addBucketVersioned(false);\n enableObjectLocking(false);\n addBucketQuota(false);\n addBucketQuotaType(\"hard\");\n addBucketQuotaSize(\"1\");\n addBucketQuotaUnit(\"TiB\");\n addBucketRetention(false);\n addBucketRetentionMode(\"compliance\");\n addBucketRetentionUnit(\"days\");\n addBucketRetentionValidity(1);\n };\n\n useEffect(() => {\n let valid = false;\n\n if (bucketName.trim() !== \"\") {\n valid = true;\n }\n\n if (quotaEnabled && valid) {\n if (quotaSize.trim() === \"\" || parseInt(quotaSize) === 0) {\n valid = false;\n }\n }\n\n if (!versioningEnabled || !retentionEnabled) {\n addBucketRetention(false);\n addBucketRetentionMode(\"compliance\");\n addBucketRetentionUnit(\"days\");\n addBucketRetentionValidity(1);\n }\n\n if (retentionEnabled) {\n // if retention is enabled, then objec locking should be enabled as well\n enableObjectLocking(true);\n setLockingFieldDisabled(true);\n } else {\n setLockingFieldDisabled(false);\n }\n\n if (\n retentionEnabled &&\n (Number.isNaN(retentionValidity) || retentionValidity < 1)\n ) {\n valid = false;\n }\n\n setSendEnabled(valid);\n }, [\n bucketName,\n retentionEnabled,\n lockingEnabled,\n quotaType,\n quotaSize,\n quotaUnit,\n quotaEnabled,\n addBucketRetention,\n addBucketRetentionMode,\n addBucketRetentionUnit,\n addBucketRetentionValidity,\n retentionValidity,\n versioningEnabled,\n enableObjectLocking,\n ]);\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n ) => {\n addRecord(e);\n }}\n >\n \n \n \n ) => {\n addBucketName(event.target.value);\n }}\n label=\"Bucket Name\"\n value={bucketName}\n />\n \n \n \n Features\n \n
\n
\n \n ) => {\n addBucketVersioned(event.target.checked);\n }}\n description={\n \"Allows to keep multiple versions of the same object under the same key.\"\n }\n label={\"Versioning\"}\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n \n ) => {\n enableObjectLocking(event.target.checked);\n }}\n label={\"Object Locking\"}\n description={\n \"Required to support retention and legal hold. Can only be enabled at bucket creation.\"\n }\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n \n ) => {\n addBucketQuota(event.target.checked);\n }}\n label={\"Quota\"}\n description={\"Limit the amount of data in the bucket.\"}\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n {quotaEnabled && (\n \n \n ) => {\n addBucketQuotaType(e.target.value as string);\n }}\n selectorOptions={[\n { value: \"hard\", label: \"Hard\" },\n { value: \"fifo\", label: \"FIFO\" },\n ]}\n />\n \n \n
\n
\n ) => {\n addBucketQuotaSize(e.target.value);\n }}\n label=\"Quota\"\n value={quotaSize}\n required\n min=\"1\"\n />\n
\n
\n \n ) => {\n addBucketQuotaUnit(e.target.value as string);\n }}\n options={factorForDropdown()}\n />\n
\n
\n
\n
\n )}\n {versioningEnabled && (\n \n ) => {\n addBucketRetention(event.target.checked);\n }}\n label={\"Retention\"}\n description={\n \"Impose rules to prevent object deletion for a period of time.\"\n }\n indicatorLabels={[\"On\", \"Off\"]}\n />\n \n )}\n {retentionEnabled && (\n \n \n ) => {\n addBucketRetentionMode(e.target.value as string);\n }}\n selectorOptions={[\n { value: \"compliance\", label: \"Compliance\" },\n { value: \"governance\", label: \"Governance\" },\n ]}\n />\n \n \n ) => {\n addBucketRetentionUnit(e.target.value as string);\n }}\n selectorOptions={[\n { value: \"days\", label: \"Days\" },\n { value: \"years\", label: \"Years\" },\n ]}\n />\n \n \n ) => {\n addBucketRetentionValidity(e.target.valueAsNumber);\n }}\n label=\"Retention Validity\"\n value={String(retentionValidity)}\n required\n min=\"1\"\n />\n \n \n )}\n
\n \n \n Clear\n \n \n Save\n \n \n {addLoading && (\n \n \n \n )}\n
\n \n \n );\n};\n\nconst mapState = (state: AppState) => ({\n addBucketModalOpen: state.buckets.open,\n bucketName: state.buckets.addBucketName,\n versioningEnabled: state.buckets.addBucketVersioningEnabled,\n lockingEnabled: state.buckets.addBucketLockingEnabled,\n quotaEnabled: state.buckets.addBucketQuotaEnabled,\n quotaType: state.buckets.addBucketQuotaType,\n quotaSize: state.buckets.addBucketQuotaSize,\n quotaUnit: state.buckets.addBucketQuotaUnit,\n retentionEnabled: state.buckets.addBucketRetentionEnabled,\n retentionMode: state.buckets.addBucketRetentionMode,\n retentionUnit: state.buckets.addBucketRetentionUnit,\n retentionValidity: state.buckets.addBucketRetentionValidity,\n});\n\nconst connector = connect(mapState, {\n addBucketName: addBucketName,\n addBucketVersioned: addBucketVersioning,\n enableObjectLocking: addBucketEnableObjectLocking,\n addBucketQuota: addBucketQuota,\n addBucketQuotaType: addBucketQuotaType,\n addBucketQuotaSize: addBucketQuotaSize,\n addBucketQuotaUnit: addBucketQuotaUnit,\n addBucketRetention: addBucketRetention,\n addBucketRetentionMode: addBucketRetentionMode,\n addBucketRetentionUnit: addBucketRetentionUnit,\n addBucketRetentionValidity: addBucketRetentionValidity,\n setModalError: setModalErrorSnackMessage,\n});\n\nexport default connector(withStyles(styles)(AddBucket));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { BucketList } from \"../types\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport api from \"../../../../common/api\";\n\ninterface IDeleteBucketProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedBucket: string;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst DeleteBucket = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n setErrorSnackMessage,\n}: IDeleteBucketProps) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const removeRecord = () => {\n if (!deleteLoading) {\n setDeleteLoading(true);\n\n api\n .invoke(\"DELETE\", `/api/v1/buckets/${selectedBucket}`, {\n name: selectedBucket,\n })\n .then((res: BucketList) => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n setDeleteLoading(false);\n setErrorSnackMessage(err);\n });\n }\n };\n\n return (\n {\n closeDeleteModalAndRefresh(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n Delete Bucket\n \n {deleteLoading && }\n \n Are you sure you want to delete bucket {selectedBucket}?
\n A bucket can only be deleted if it's empty.\n
\n
\n \n {\n closeDeleteModalAndRefresh(false);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n {\n removeRecord();\n }}\n color=\"secondary\"\n autoFocus\n >\n Delete\n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(DeleteBucket);\n","import React from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Typography from \"@material-ui/core/Typography\";\n\ninterface IPageHeader {\n classes: any;\n label: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerContainer: {\n position: \"absolute\",\n width: \"100%\",\n height: 77,\n display: \"flex\",\n backgroundColor: \"#fff\",\n borderBottom: \"#E3E3E3 1px solid\",\n left: 0,\n },\n label: {\n display: \"flex\",\n justifyContent: \"flex-start\",\n alignItems: \"center\",\n },\n labelStyle: {\n color: \"#000\",\n fontSize: 18,\n fontWeight: 700,\n marginLeft: 55,\n marginTop: 8,\n },\n });\n\nconst PageHeader = ({ classes, label }: IPageHeader) => {\n return (\n \n \n \n {label}\n \n \n \n );\n};\n\nexport default withStyles(styles)(PageHeader);\n","import React, { Fragment } from \"react\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { predefinedList } from \"../common/styleLibrary\";\n\ninterface IPredefinedList {\n classes: any;\n label?: string;\n content: any;\n multiLine?: boolean;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...predefinedList,\n });\n\nconst PredefinedList = ({\n classes,\n label = \"\",\n content,\n multiLine = false,\n}: IPredefinedList) => {\n return (\n \n \n {label !== \"\" && (\n \n {label}\n \n )}\n \n \n {content}\n \n \n \n \n );\n};\n\nexport default withStyles(styles)(PredefinedList);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { IWizardButton, IWizardPage } from \"./types\";\nimport { Button, LinearProgress } from \"@material-ui/core\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizardStepContainer: {\n display: \"flex\",\n flexDirection: \"column\",\n },\n wizardComponent: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 435px)\",\n maxWidth: 840,\n width: \"100%\",\n },\n wizardModal: {\n overflowY: \"auto\",\n marginBottom: 10,\n height: \"calc(100vh - 515px)\",\n },\n buttonsContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"flex-start\" as const,\n padding: \"10px 0\",\n borderTop: \"#EAEAEA 1px solid\",\n \"& button\": {\n marginLeft: 10,\n },\n \"&.forModal\": {\n paddingBottom: 0,\n },\n },\n buttonInnerContainer: {\n maxWidth: 840,\n width: \"100%\",\n textAlign: \"right\" as const,\n },\n });\n\nconst WizardPage = ({\n classes,\n page,\n pageChange,\n loadingStep,\n forModal,\n}: IWizardPage) => {\n const buttonAction = (btn: IWizardButton) => {\n switch (btn.type) {\n case \"next\":\n pageChange(\"++\");\n break;\n case \"back\":\n pageChange(\"--\");\n break;\n case \"to\":\n pageChange(btn.toPage || 0);\n break;\n case \"custom\":\n default:\n }\n\n if (btn.action) {\n btn.action(pageChange);\n }\n };\n\n return (\n
\n
\n {page.componentRender}\n
\n {loadingStep && (\n
\n \n
\n )}\n \n
\n {page.buttons.map((btn) => {\n return (\n {\n buttonAction(btn);\n }}\n disabled={!btn.enabled}\n key={`button-${page.label}-${btn.label}`}\n >\n {btn.label}\n \n );\n })}\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(WizardPage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, Fragment } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { IWizardMain } from \"./types\";\nimport WizardPage from \"./WizardPage\";\nimport { Grid } from \"@material-ui/core\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n wizardMain: {\n display: \"flex\",\n width: \"100%\",\n height: \"100%\",\n flexGrow: 1,\n },\n wizFromContainer: {\n height: \"calc(100vh - 365px)\",\n minHeight: 450,\n padding: \"0 30px\",\n },\n wizFromModal: {\n position: \"relative\",\n },\n wizardSteps: {\n minWidth: 180,\n marginRight: 10,\n borderRight: \"#eaeaea 1px solid\",\n display: \"flex\",\n flexGrow: 1,\n flexDirection: \"column\",\n height: \"100%\",\n \"& ul\": {\n padding: \"0 15px 0 40px\",\n marginTop: 0,\n\n \"& li\": {\n listStyle: \"lower-roman\",\n marginBottom: 12,\n },\n },\n },\n modalWizardSteps: {\n padding: 5,\n borderBottom: \"#eaeaea 1px solid\",\n \"& ul\": {\n padding: 0,\n marginTop: 0,\n display: \"flex\",\n justifyContent: \"space-evenly\",\n\n \"& li\": {\n listStyle: \"lower-roman\",\n \"&::marker\": {\n paddingLeft: 15,\n },\n },\n },\n },\n buttonList: {\n backgroundColor: \"transparent\",\n border: \"none\",\n cursor: \"pointer\",\n \"&:not(:disabled):hover\": {\n textDecoration: \"underline\",\n },\n \"&:selected, &:active, &:focus, &:focus:active\": {\n border: \"none\",\n outline: 0,\n boxShadow: \"none\",\n },\n },\n paddedContentGrid: {\n padding: \"0 10px\",\n },\n stepsLabel: {\n fontSize: 20,\n color: \"#393939\",\n fontWeight: 600,\n margin: \"15px 12px\",\n \"&.stepsModalTitle\": {\n textAlign: \"center\",\n width: \"100%\",\n marginTop: 0,\n marginBottom: 10,\n },\n },\n stepsMasterContainer: {\n position: \"sticky\",\n top: 0,\n backgroundColor: \"#FFFFFF\",\n width: \"100%\",\n maxHeight: 90,\n },\n });\n\nconst GenericWizard = ({\n classes,\n wizardSteps,\n loadingStep,\n forModal,\n}: IWizardMain) => {\n const [currentStep, setCurrentStep] = useState(0);\n\n const pageChange = (toElement: string | number) => {\n const lastPage = wizardSteps.length - 1;\n\n if (toElement === \"++\") {\n let nextPage = currentStep + 1;\n\n if (nextPage > lastPage) {\n nextPage = lastPage;\n }\n\n setCurrentStep(nextPage);\n }\n\n if (toElement === \"--\") {\n let prevPage = currentStep - 1;\n\n if (prevPage < 0) {\n prevPage = 0;\n }\n\n setCurrentStep(prevPage);\n }\n\n if (typeof toElement === \"number\") {\n let pg = toElement;\n if (toElement < 0) {\n pg = 0;\n }\n\n if (toElement > lastPage) {\n pg = lastPage;\n }\n\n setCurrentStep(pg);\n }\n };\n\n if (wizardSteps.length === 0) {\n return null;\n }\n\n const stepsList = () => {\n return (\n
    \n {wizardSteps.map((step, index) => {\n return (\n
  • \n pageChange(index)}\n disabled={index > currentStep}\n className={classes.buttonList}\n >\n {step.label}\n \n
  • \n );\n })}\n
\n );\n };\n\n return (\n \n {forModal ? (\n \n
\n
Steps
\n
{stepsList()}
\n
\n
\n ) : (\n \n \n
\n Steps\n {stepsList()}\n
\n
\n
\n )}\n\n \n \n
\n
\n );\n};\n\nexport default withStyles(styles)(GenericWizard);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect, Fragment } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Tooltip } from \"@material-ui/core\";\nimport get from \"lodash/get\";\nimport Grid from \"@material-ui/core/Grid\";\nimport ErrorOutlineIcon from \"@material-ui/icons/ErrorOutline\";\nimport CheckCircleOutlineIcon from \"@material-ui/icons/CheckCircleOutline\";\nimport {\n modalBasic,\n wizardCommon,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../actions\";\nimport { BulkReplicationResponse, BulkReplicationItem } from \"../types\";\nimport InputBoxWrapper from \"../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport PredefinedList from \"../../Common/FormComponents/PredefinedList/PredefinedList\";\nimport api from \"../../../../common/api\";\nimport GenericWizard from \"../../Common/GenericWizard/GenericWizard\";\nimport FormSwitchWrapper from \"../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport SelectWrapper from \"../../Common/FormComponents/SelectWrapper/SelectWrapper\";\nimport { SelectorTypes } from \"../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport { getBytes, k8sfactorForDropdown } from \"../../../../common/utils\";\n\ninterface IBulkReplicationModal {\n open: boolean;\n closeModalAndRefresh: (clearSelection: boolean) => any;\n classes: any;\n buckets: string[];\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n remoteBucketList: {\n display: \"grid\",\n gridTemplateColumns: \"auto auto 45px\",\n alignItems: \"center\",\n justifyContent: \"stretch\",\n },\n errorIcon: {\n color: \"#C72C48\",\n },\n successIcon: {\n color: \"#42C91A\",\n },\n hide: {\n opacity: 0,\n transitionDuration: \"0.3s\",\n },\n ...modalBasic,\n ...wizardCommon,\n });\n\nconst AddBulkReplicationModal = ({\n open,\n closeModalAndRefresh,\n classes,\n buckets,\n setModalErrorSnackMessage,\n}: IBulkReplicationModal) => {\n const [bucketsToAlter, setBucketsToAlter] = useState([]);\n const [addLoading, setAddLoading] = useState(false);\n const [externalLoading, setExternalLoading] = useState(false);\n const [accessKey, setAccessKey] = useState(\"\");\n const [secretKey, setSecretKey] = useState(\"\");\n const [targetURL, setTargetURL] = useState(\"\");\n const [region, setRegion] = useState(\"\");\n const [useTLS, setUseTLS] = useState(true);\n const [replicationMode, setReplicationMode] = useState(\"async\");\n const [bandwidthScalar, setBandwidthScalar] = useState(\"100\");\n const [bandwidthUnit, setBandwidthUnit] = useState(\"Gi\");\n const [healthCheck, setHealthCheck] = useState(\"60\");\n const [relationBuckets, setRelationBuckets] = useState([]);\n const [remoteBucketsOpts, setRemoteBucketOpts] = useState([]);\n const [responseItem, setResponseItem] = useState([]);\n\n const optionsForBucketsDrop: SelectorTypes[] = remoteBucketsOpts.map(\n (remoteBucketName: string) => {\n return {\n label: remoteBucketName,\n value: remoteBucketName,\n };\n }\n );\n\n useEffect(() => {\n if (relationBuckets.length === 0) {\n const bucketsAlter: string[] = [];\n const relationBucketsAlter: string[] = [];\n\n buckets.forEach((item: string) => {\n bucketsAlter.push(item);\n relationBucketsAlter.push(\"\");\n });\n\n setRelationBuckets(relationBucketsAlter);\n setBucketsToAlter(bucketsAlter);\n }\n }, [buckets, relationBuckets.length]);\n\n const addRecord = () => {\n setAddLoading(true);\n const replicate = bucketsToAlter.map((bucketName, index) => {\n return {\n originBucket: bucketName,\n destinationBucket: relationBuckets[index],\n };\n });\n\n const endURL = `${useTLS ? \"https://\" : \"http://\"}${targetURL}`;\n const hc = parseInt(healthCheck);\n\n const remoteBucketsInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: endURL,\n region: region,\n bucketsRelation: replicate,\n syncMode: replicationMode,\n bandwidth:\n replicationMode === \"async\"\n ? parseInt(getBytes(bandwidthScalar, bandwidthUnit, true))\n : 0,\n healthCheckPeriod: hc,\n };\n\n api\n .invoke(\"POST\", \"/api/v1/buckets-replication\", remoteBucketsInfo)\n .then((response: BulkReplicationResponse) => {\n setAddLoading(false);\n\n const states = response.replicationState;\n setResponseItem(states);\n\n const filterErrors = states.filter(\n (itm) => itm.errorString && itm.errorString !== \"\"\n );\n\n if (filterErrors.length === 0) {\n closeModalAndRefresh(true);\n } else {\n setTimeout(() => {\n removeSuccessItems(states);\n }, 500);\n }\n })\n .catch((err) => {\n setAddLoading(false);\n setModalErrorSnackMessage(err);\n });\n };\n\n const retrieveRemoteBuckets = (\n wizardPageJump: (page: number | string) => void\n ) => {\n const remoteConnectInfo = {\n accessKey: accessKey,\n secretKey: secretKey,\n targetURL: targetURL,\n useTLS,\n };\n setExternalLoading(true);\n\n api\n .invoke(\"POST\", \"api/v1/list-external-buckets\", remoteConnectInfo)\n .then((dataReturn) => {\n const buckets = get(dataReturn, \"buckets\", []);\n\n if (buckets && buckets.length > 0) {\n const arrayReplaceBuckets = buckets.map((element: any) => {\n return element.name;\n });\n\n setRemoteBucketOpts(arrayReplaceBuckets);\n }\n\n wizardPageJump(\"++\");\n setExternalLoading(false);\n })\n .catch((err) => {\n setExternalLoading(false);\n setModalErrorSnackMessage(err);\n });\n };\n\n const stateOfItem = (initialBucket: string) => {\n if (responseItem.length > 0) {\n const bucketResponse = responseItem.find(\n (item) => item.originBucket === initialBucket\n );\n\n if (bucketResponse) {\n const errString = get(bucketResponse, \"errorString\", \"\");\n\n if (errString) {\n return errString;\n }\n\n return \"\";\n }\n }\n return \"n/a\";\n };\n\n const LogoToShow = ({ errString }: { errString: string }) => {\n switch (errString) {\n case \"\":\n return (\n
\n \n
\n );\n case \"n/a\":\n return null;\n default:\n if (errString) {\n return (\n
\n \n \n \n
\n );\n }\n }\n return null;\n };\n\n const updateItem = (indexItem: number, value: string) => {\n const updatedList = [...relationBuckets];\n updatedList[indexItem] = value;\n setRelationBuckets(updatedList);\n };\n\n const itemDisplayBulk = (indexItem: number) => {\n if (remoteBucketsOpts.length > 0) {\n return (\n \n ) => {\n updateItem(indexItem, e.target.value as string);\n }}\n options={optionsForBucketsDrop}\n disabled={addLoading}\n />\n \n );\n }\n return (\n \n ) => {\n updateItem(indexItem, event.target.value);\n }}\n value={relationBuckets[indexItem]}\n disabled={addLoading}\n />\n \n );\n };\n\n const removeSuccessItems = (responseItem: BulkReplicationItem[]) => {\n let newBucketsToAlter = [...bucketsToAlter];\n let newRelationBuckets = [...relationBuckets];\n\n responseItem.forEach((successElement) => {\n const errorString = get(successElement, \"errorString\", \"\");\n\n if (!errorString || errorString === \"\") {\n const indexToRemove = newBucketsToAlter.indexOf(\n successElement.originBucket\n );\n\n newBucketsToAlter.splice(indexToRemove, 1);\n newRelationBuckets.splice(indexToRemove, 1);\n }\n });\n\n setBucketsToAlter(newBucketsToAlter);\n setRelationBuckets(newRelationBuckets);\n };\n\n return (\n {\n closeModalAndRefresh(false);\n }}\n title=\"Set Multiple Bucket Replication\"\n >\n \n \n \n \n

Remote Endpoint Configuration

\n \n Please avoid the use of root credentials for this feature\n \n
\n
\n \n ) => {\n setAccessKey(e.target.value);\n }}\n label=\"Access Key\"\n value={accessKey}\n />\n \n \n ) => {\n setSecretKey(e.target.value);\n }}\n label=\"Secret Key\"\n value={secretKey}\n />\n \n \n ) => {\n setTargetURL(e.target.value);\n }}\n placeholder=\"play.min.io:9000\"\n label=\"Target URL\"\n value={targetURL}\n />\n \n \n {\n setUseTLS(e.target.checked);\n }}\n value=\"yes\"\n />\n \n \n ) => {\n setRegion(e.target.value);\n }}\n label=\"Region\"\n value={region}\n />\n \n \n ) => {\n setReplicationMode(e.target.value as string);\n }}\n label=\"Replication Mode\"\n value={replicationMode}\n options={[\n { label: \"Asynchronous\", value: \"async\" },\n { label: \"Synchronous\", value: \"sync\" },\n ]}\n />\n \n {replicationMode === \"async\" && (\n \n
\n
\n \n ) => {\n setBandwidthScalar(e.target.value as string);\n }}\n label=\"Bandwidth\"\n value={bandwidthScalar}\n min=\"0\"\n />\n
\n
\n \n ) => {\n setBandwidthUnit(e.target.value as string);\n }}\n options={k8sfactorForDropdown()}\n />\n
\n
\n
\n )}\n \n ) => {\n setHealthCheck(e.target.value as string);\n }}\n label=\"Health Check Duration\"\n value={healthCheck}\n />\n \n \n ),\n buttons: [\n {\n type: \"custom\",\n label: \"Next\",\n enabled: !externalLoading,\n action: retrieveRemoteBuckets,\n },\n ],\n },\n {\n label: \"Buckets Assignation\",\n componentRender: (\n \n

Remote Buckets Assignation

\n \n Please select / type the desired remote bucket were you want\n the local data to be replicated.\n \n
\n {bucketsToAlter.map((bucketName: string, index: number) => {\n const errorItem = stateOfItem(bucketName);\n return (\n \n
\n {bucketName}\n
\n
\n {itemDisplayBulk(index)}\n
\n
\n {responseItem.length > 0 && (\n \n )}\n
\n \n );\n })}\n
\n
\n ),\n buttons: [\n {\n type: \"back\",\n label: \"Back\",\n enabled: true,\n },\n {\n type: \"next\",\n label: \"Create\",\n enabled: !addLoading,\n action: addRecord,\n },\n ],\n },\n ]}\n forModal\n />\n \n );\n};\n\nconst connector = connect(null, {\n setModalErrorSnackMessage,\n});\n\nexport default withStyles(styles)(connector(AddBulkReplicationModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState, Fragment } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Button } from \"@material-ui/core\";\nimport Grid from \"@material-ui/core/Grid\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport FileCopyIcon from \"@material-ui/icons/FileCopy\";\nimport Moment from \"react-moment\";\nimport { Bucket, BucketList, HasPermissionResponse } from \"../types\";\nimport { CreateIcon } from \"../../../../icons\";\nimport { niceBytes } from \"../../../../common/utils\";\nimport { AppState } from \"../../../../store\";\nimport { addBucketOpen, addBucketReset } from \"../actions\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport api from \"../../../../common/api\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport AddBucket from \"./AddBucket\";\nimport DeleteBucket from \"./DeleteBucket\";\nimport PageHeader from \"../../Common/PageHeader/PageHeader\";\nimport BulkReplicationModal from \"./BulkReplicationModal\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IListBucketsProps {\n classes: any;\n addBucketOpen: typeof addBucketOpen;\n addBucketModalOpen: boolean;\n addBucketReset: typeof addBucketReset;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst ListBuckets = ({\n classes,\n addBucketOpen,\n addBucketModalOpen,\n addBucketReset,\n setErrorSnackMessage,\n}: IListBucketsProps) => {\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(true);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [selectedBucket, setSelectedBucket] = useState(\"\");\n const [filterBuckets, setFilterBuckets] = useState(\"\");\n const [loadingPerms, setLoadingPerms] = useState(true);\n const [canCreateBucket, setCanCreateBucket] = useState(false);\n const [selectedBuckets, setSelectedBuckets] = useState([]);\n const [replicationModalOpen, setReplicationModalOpen] =\n useState(false);\n\n // check the permissions for creating bucket\n useEffect(() => {\n if (loadingPerms) {\n api\n .invoke(\"POST\", `/api/v1/has-permission`, {\n actions: [\n {\n id: \"createBucket\",\n action: \"s3:CreateBucket\",\n },\n ],\n })\n .then((res: HasPermissionResponse) => {\n setLoadingPerms(false);\n if (!res.permissions) {\n return;\n }\n const actions = res.permissions ? res.permissions : [];\n\n let canCreate = actions.find((s) => s.id === \"createBucket\");\n if (canCreate && canCreate.can) {\n setCanCreateBucket(true);\n } else {\n setCanCreateBucket(false);\n }\n\n setLoadingPerms(false);\n })\n .catch((err: any) => {\n setLoadingPerms(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loadingPerms, setErrorSnackMessage]);\n\n useEffect(() => {\n if (loading) {\n const fetchRecords = () => {\n setLoading(true);\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n setLoading(false);\n setRecords(res.buckets || []);\n })\n .catch((err: any) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n };\n fetchRecords();\n }\n }, [loading, setErrorSnackMessage]);\n\n const closeAddModalAndRefresh = (refresh: boolean) => {\n addBucketOpen(false);\n addBucketReset();\n\n if (refresh) {\n setLoading(true);\n setSelectedBuckets([]);\n }\n };\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n if (refresh) {\n setLoading(true);\n setSelectedBuckets([]);\n }\n };\n\n const confirmDeleteBucket = (bucket: string) => {\n setDeleteOpen(true);\n setSelectedBucket(bucket);\n };\n\n const tableActions = [\n { type: \"view\", to: `/buckets`, sendOnlyId: true },\n { type: \"delete\", onClick: confirmDeleteBucket, sendOnlyId: true },\n ];\n\n const displayParsedDate = (date: string) => {\n return {date};\n };\n\n const filteredRecords = records.filter((b: Bucket) => {\n if (filterBuckets === \"\") {\n return true;\n } else {\n if (b.name.indexOf(filterBuckets) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n const selectListBuckets = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedBuckets]; // We clone the selectedBuckets array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedBucketsList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n setSelectedBuckets(elements);\n\n return elements;\n };\n\n const closeBulkReplicationModal = (unselectAll: boolean) => {\n setReplicationModalOpen(false);\n\n if (unselectAll) {\n setSelectedBuckets([]);\n }\n };\n\n return (\n \n {addBucketModalOpen && (\n \n )}\n {deleteOpen && (\n {\n closeDeleteModalAndRefresh(refresh);\n }}\n />\n )}\n {replicationModalOpen && (\n \n )}\n \n \n \n \n {\n setFilterBuckets(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n }\n onClick={() => {\n setReplicationModalOpen(true);\n }}\n disabled={selectedBuckets.length === 0}\n >\n Set Replication\n \n {canCreateBucket && (\n }\n onClick={() => {\n addBucketOpen(true);\n }}\n >\n Create Bucket\n \n )}\n \n \n
\n
\n \n \n \n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n addBucketModalOpen: state.buckets.open,\n});\n\nconst connector = connect(mapState, {\n addBucketOpen,\n addBucketReset,\n setErrorSnackMessage,\n});\n\nexport default connector(withStyles(styles)(ListBuckets));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\n\ninterface TabPanelProps {\n children?: React.ReactNode;\n index: any;\n value: any;\n}\n\nexport const TabPanel = (props: TabPanelProps) => {\n const { children, value, index, ...other } = props;\n\n return (\n
\n );\n};\n\nexport default withStyles(styles)(SubnetLicenseTenant);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n actionsTray,\n buttonsStyles,\n containerForHeader,\n hrClass,\n modalBasic,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport Grid from \"@material-ui/core/Grid\";\nimport {\n Button,\n IconButton,\n Menu,\n MenuItem,\n TextField,\n} from \"@material-ui/core\";\nimport Tabs from \"@material-ui/core/Tabs\";\nimport Tab from \"@material-ui/core/Tab\";\nimport { CreateIcon } from \"../../../../icons\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport Paper from \"@material-ui/core/Paper\";\nimport { niceBytes, niceDays } from \"../../../../common/utils\";\nimport AddPoolModal from \"./AddPoolModal\";\nimport AddBucket from \"../../Buckets/ListBuckets/AddBucket\";\nimport ReplicationSetup from \"./ReplicationSetup\";\nimport api from \"../../../../common/api\";\nimport { IPodListElement, IPool, ITenant } from \"../ListTenants/types\";\nimport PageHeader from \"../../Common/PageHeader/PageHeader\";\nimport UsageBarWrapper from \"../../Common/UsageBarWrapper/UsageBarWrapper\";\nimport UpdateTenantModal from \"./UpdateTenantModal\";\nimport { LicenseInfo } from \"../../License/types\";\nimport { Link } from \"react-router-dom\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport MoreVertIcon from \"@material-ui/icons/MoreVert\";\nimport TenantYAML from \"./TenantYAML\";\nimport SubnetLicenseTenant from \"./SubnetLicenseTenant\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\n\ninterface ITenantDetailsProps {\n classes: any;\n match: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\ninterface ITenantUsage {\n used: string;\n disk_used: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n multiContainer: {\n display: \"flex\",\n alignItems: \"center\" as const,\n justifyContent: \"flex-start\" as const,\n },\n sizeFactorContainer: {\n marginLeft: 8,\n },\n containerHeader: {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n paperContainer: {\n padding: \"15px 15px 15px 50px\",\n },\n infoGrid: {\n display: \"grid\",\n gridTemplateColumns: \"auto auto auto auto\",\n gridGap: 8,\n \"& div\": {\n display: \"flex\",\n alignItems: \"center\",\n },\n \"& div:nth-child(odd)\": {\n justifyContent: \"flex-end\",\n fontWeight: 700,\n },\n \"& div:nth-child(2n)\": {\n paddingRight: 35,\n },\n },\n masterActions: {\n width: \"25%\",\n minWidth: \"120px\",\n \"& div\": {\n margin: \"5px 0px\",\n },\n },\n updateButton: {\n backgroundColor: \"transparent\",\n border: 0,\n padding: \"0 6px\",\n cursor: \"pointer\",\n \"&:focus, &:active\": {\n outline: \"none\",\n },\n \"& svg\": {\n height: 12,\n },\n },\n poolLabel: {\n color: \"#666666\",\n },\n titleCol: {\n fontWeight: \"bold\",\n },\n breadcrumLink: {\n textDecoration: \"none\",\n color: \"black\",\n },\n ...modalBasic,\n ...actionsTray,\n ...buttonsStyles,\n ...searchField,\n ...hrClass,\n actionsTray: {\n ...actionsTray.actionsTray,\n padding: \"15px 0 0\",\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst TenantDetails = ({\n classes,\n match,\n setErrorSnackMessage,\n}: ITenantDetailsProps) => {\n const [selectedTab, setSelectedTab] = useState(0);\n const [capacity, setCapacity] = useState(0);\n const [poolCount, setPoolCount] = useState(0);\n const [pools, setPools] = useState([]);\n const [pods, setPods] = useState([]);\n const [instances, setInstances] = useState(0);\n const [volumes, setVolumes] = useState(0);\n const [addPoolOpen, setAddPool] = useState(false);\n const [addBucketOpen, setAddBucketOpen] = useState(false);\n const [addReplicationOpen, setAddReplicationOpen] = useState(false);\n const [tenant, setTenant] = useState(null);\n const [loadingUsage, setLoadingUsage] = useState(true);\n const [usageError, setUsageError] = useState(\"\");\n const [usage, setUsage] = useState(0);\n const [updateMinioVersion, setUpdateMinioVersion] = useState(false);\n const [yamlScreenOpen, setYamlScreenOpen] = useState(false);\n const [licenseInfo, setLicenseInfo] = useState();\n const [loadingLicenseInfo, setLoadingLicenseInfo] = useState(true);\n const [loadingActivateProduct, setLoadingActivateProduct] =\n useState(false);\n const [logEnabled, setLogEnabled] = useState(false);\n const [monitoringEnabled, setMonitoringEnabled] = useState(false);\n const [encryptionEnabled, setEncryptionEnabled] = useState(false);\n const [adEnabled, setAdEnabled] = useState(false);\n const [oicEnabled, setOicEnabled] = useState(false);\n\n const tenantName = match.params[\"tenantName\"];\n const tenantNamespace = match.params[\"tenantNamespace\"];\n\n const onClosePoolAndRefresh = (reload: boolean) => {\n setAddPool(false);\n\n if (reload) {\n loadInfo();\n loadUsage();\n }\n };\n\n const closeBucketsAndRefresh = () => {\n setAddBucketOpen(false);\n };\n\n const closeReplicationAndRefresh = (reload: boolean) => {\n setAddReplicationOpen(false);\n\n if (reload) {\n loadInfo();\n loadUsage();\n }\n };\n\n const activateProduct = (namespace: string, tenant: string) => {\n if (loadingActivateProduct) {\n return;\n }\n setLoadingActivateProduct(true);\n api\n .invoke(\n \"POST\",\n `/api/v1/subscription/namespaces/${namespace}/tenants/${tenant}/activate`,\n {}\n )\n .then(() => {\n setLoadingActivateProduct(false);\n loadInfo();\n })\n .catch((err) => {\n setLoadingActivateProduct(false);\n setErrorSnackMessage(err);\n });\n };\n\n const loadInfo = () => {\n api\n .invoke(\n \"GET\",\n `/api/v1/namespaces/${tenantNamespace}/tenants/${tenantName}`\n )\n .then((res: ITenant) => {\n const resPools = !res.pools ? [] : res.pools;\n\n let totalInstances = 0;\n let totalVolumes = 0;\n let poolNamedIndex = 0;\n for (let pool of resPools) {\n const cap =\n pool.volumes_per_server *\n pool.servers *\n pool.volume_configuration.size;\n pool.label = `pool-${poolNamedIndex}`;\n if (pool.name === undefined || pool.name === \"\") {\n pool.name = pool.label;\n }\n pool.capacity = niceBytes(cap + \"\");\n pool.volumes = pool.servers * pool.volumes_per_server;\n totalInstances += pool.servers;\n totalVolumes += pool.volumes;\n poolNamedIndex += 1;\n }\n setCapacity(res.total_size || 0);\n setPoolCount(resPools.length);\n setVolumes(totalVolumes);\n setInstances(totalInstances);\n\n setPools(resPools);\n\n setLogEnabled(res.logEnabled);\n setMonitoringEnabled(res.monitoringEnabled);\n setEncryptionEnabled(res.encryptionEnabled);\n setAdEnabled(res.idpAdEnabled);\n setOicEnabled(res.idpOicEnabled);\n\n setTenant(res);\n })\n .catch((err) => {\n setErrorSnackMessage(err);\n });\n };\n\n const loadUsage = () => {\n api\n .invoke(\n \"GET\",\n `/api/v1/namespaces/${tenantNamespace}/tenants/${tenantName}/usage`\n )\n .then((result: ITenantUsage) => {\n const usage = get(result, \"disk_used\", \"0\");\n setUsage(parseInt(usage));\n setUsageError(\"\");\n setLoadingUsage(false);\n })\n .catch((err) => {\n setUsageError(err);\n setUsage(0);\n setLoadingUsage(false);\n });\n };\n\n const loadPods = () => {\n api\n .invoke(\n \"GET\",\n `/api/v1/namespaces/${tenantNamespace}/tenants/${tenantName}/pods`\n )\n .then((result: IPodListElement[]) => {\n for (let i = 0; i < result.length; i++) {\n let currentTime = new Date().getSeconds();\n result[i].time = niceDays(\n (currentTime - parseInt(result[i].timeCreated)).toString()\n );\n }\n setPods(result);\n })\n .catch((err) => {\n setErrorSnackMessage(\"Error loading pods\");\n });\n };\n\n const fetchLicenseInfo = () => {\n setLoadingLicenseInfo(true);\n api\n .invoke(\"GET\", `/api/v1/subscription/info`)\n .then((res: LicenseInfo) => {\n setLicenseInfo(res);\n setLoadingLicenseInfo(false);\n })\n .catch((err: any) => {\n setLoadingLicenseInfo(false);\n });\n };\n\n useEffect(() => {\n loadInfo();\n loadUsage();\n fetchLicenseInfo();\n loadPods();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const [anchorEl, setAnchorEl] = React.useState(null);\n\n const handleTenantMenu = (event: any) => {\n setAnchorEl(event.currentTarget);\n };\n\n const editYaml = () => {\n setAnchorEl(null);\n setYamlScreenOpen(true);\n };\n\n const closeYAMLModalAndRefresh = () => {\n setYamlScreenOpen(false);\n loadInfo();\n };\n\n return (\n \n {addPoolOpen && tenant !== null && (\n \n )}\n {addBucketOpen && (\n \n )}\n {addReplicationOpen && (\n \n )}\n {updateMinioVersion && (\n {\n setUpdateMinioVersion(false);\n }}\n idTenant={tenantName}\n namespace={tenantNamespace}\n />\n )}\n {yamlScreenOpen && (\n \n )}\n \n \n Tenant\n \n {` > ${match.params[\"tenantName\"]}`}\n \n \n \n \n \n Edit YAML\n \n \n \n }\n />\n \n \n \n {\n setSelectedTab(newValue);\n }}\n aria-label=\"tenant-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n \n \n \n \n \n \n {selectedTab === 0 && (\n \n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {tenant?.endpoints && (\n \n \n \n \n \n \n )}\n \n \n \n \n
\n

Details

\n
\n
Capacity:{niceBytes(capacity.toString(10))}MinIO:\n {\n setUpdateMinioVersion(true);\n }}\n >\n {tenant ? tenant.image : \"\"}\n \n
Clusters:{poolCount}Console:\n {\n setUpdateMinioVersion(true);\n }}\n >\n {tenant ? tenant.console_image : \"\"}\n \n
Instances:{instances}Volumes:{volumes}
Endpoint:\n \n {tenant?.endpoints.minio}\n \n Console:\n \n {tenant?.endpoints.console}\n \n
State:{tenant?.currentState}
\n
\n \n \n \n
\n
\n
\n
\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {adEnabled ||\n (!adEnabled && !oicEnabled && (\n \n \n \n \n ))}\n {oicEnabled ||\n (!oicEnabled && !adEnabled && (\n \n \n \n \n ))}\n \n
\n

Features

\n
\n
Logs:\n \n {logEnabled ? \"Enabled\" : \"Disabled\"}\n \n Monitoring:\n \n {monitoringEnabled ? \"Enabled\" : \"Disabled\"}\n \n
Encryption:\n \n {encryptionEnabled ? \"Enabled\" : \"Disabled\"}\n \n
\n Active Directory:\n \n \n {adEnabled ? \"Enabled\" : \"Disabled\"}\n \n OpenID:\n \n {oicEnabled ? \"Enabled\" : \"Disabled\"}\n \n
\n
\n
\n
\n
\n )}\n {selectedTab === 1 && (\n \n \n {\n // setFilter(event.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n }\n onClick={() => {\n setAddPool(true);\n }}\n >\n Expand Tenant\n \n \n \n
\n
\n\n \n {\n console.log(element);\n },\n sendOnlyId: true,\n },\n ]}\n columns={[\n { label: \"Name\", elementKey: \"name\" },\n { label: \"Capacity\", elementKey: \"capacity\" },\n { label: \"# of Instances\", elementKey: \"servers\" },\n { label: \"# of Drives\", elementKey: \"volumes\" },\n ]}\n isLoading={false}\n records={pools}\n entityName=\"Servers\"\n idField=\"name\"\n />\n \n
\n )}\n {selectedTab === 2 && (\n \n
\n {\n return input != null ? input : 0;\n },\n },\n { label: \"Node\", elementKey: \"node\" },\n ]}\n isLoading={false}\n records={pods}\n entityName=\"Servers\"\n idField=\"name\"\n />\n
\n )}\n {selectedTab === 3 && (\n \n
\n \n \n \n \n \n
\n )}\n
\n
\n
\n );\n};\n\nconst connector = connect(null, {\n setErrorSnackMessage,\n});\n\nexport default withStyles(styles)(connector(TenantDetails));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const OBJECT_BROWSER_ADD_ROUTE = \"OBJECT_BROWSER/ADD_ROUTE\";\nexport const OBJECT_BROWSER_RESET_ROUTES_LIST =\n \"OBJECT_BROWSER/RESET_ROUTES_LIST\";\nexport const OBJECT_BROWSER_REMOVE_ROUTE_LEVEL =\n \"OBJECT_BROWSER/REMOVE_ROUTE_LEVEL\";\nexport const OBJECT_BROWSER_SET_ALL_ROUTES = \"OBJECT_BROWSER/SET_ALL_ROUTES\";\nexport const OBJECT_BROWSER_CREATE_FOLDER = \"OBJECT_BROWSER/CREATE_FOLDER\";\nexport const OBJECT_BROWSER_SET_LAST_AS_FILE =\n \"OBJECT_BROWSER/SET_LAST_AS_FILE\";\nexport const OBJECT_BROWSER_DOWNLOAD_FILE_LOADER =\n \"OBJECT_BROWSER/DOWNLOAD_FILE_LOADER\";\nexport const OBJECT_BROWSER_DOWNLOADED_FILE = \"OBJECT_BROWSER/DOWNLOADED_FILE\";\n\ninterface AddRouteAction {\n type: typeof OBJECT_BROWSER_ADD_ROUTE;\n route: string;\n label: string;\n routeType: string;\n}\n\ninterface ResetRoutesList {\n type: typeof OBJECT_BROWSER_RESET_ROUTES_LIST;\n reset: boolean;\n}\n\ninterface RemoveRouteLevel {\n type: typeof OBJECT_BROWSER_REMOVE_ROUTE_LEVEL;\n toRoute: string;\n}\n\ninterface SetAllRoutes {\n type: typeof OBJECT_BROWSER_SET_ALL_ROUTES;\n currentRoute: string;\n}\n\ninterface CreateFolder {\n type: typeof OBJECT_BROWSER_CREATE_FOLDER;\n newRoute: string;\n}\n\ninterface SetLastAsFile {\n type: typeof OBJECT_BROWSER_SET_LAST_AS_FILE;\n}\n\ninterface SetFileDownload {\n type: typeof OBJECT_BROWSER_DOWNLOAD_FILE_LOADER;\n path: string;\n}\n\ninterface FileDownloaded {\n type: typeof OBJECT_BROWSER_DOWNLOADED_FILE;\n path: string;\n}\n\nexport type ObjectBrowserActionTypes =\n | AddRouteAction\n | ResetRoutesList\n | RemoveRouteLevel\n | SetAllRoutes\n | CreateFolder\n | SetLastAsFile\n | SetFileDownload\n | FileDownloaded;\n\nexport const addRoute = (route: string, label: string, routeType: string) => {\n return {\n type: OBJECT_BROWSER_ADD_ROUTE,\n route,\n label,\n routeType,\n };\n};\n\nexport const resetRoutesList = (reset: boolean) => {\n return {\n type: OBJECT_BROWSER_RESET_ROUTES_LIST,\n reset,\n };\n};\n\nexport const removeRouteLevel = (toRoute: string) => {\n return {\n type: OBJECT_BROWSER_REMOVE_ROUTE_LEVEL,\n toRoute,\n };\n};\n\nexport const setAllRoutes = (currentRoute: string) => {\n return {\n type: OBJECT_BROWSER_SET_ALL_ROUTES,\n currentRoute,\n };\n};\n\nexport const createFolder = (newRoute: string) => {\n return {\n type: OBJECT_BROWSER_CREATE_FOLDER,\n newRoute,\n };\n};\n\nexport const setLastAsFile = () => {\n return {\n type: OBJECT_BROWSER_SET_LAST_AS_FILE,\n };\n};\n\nexport const fileIsBeingPrepared = (path: string) => {\n return {\n type: OBJECT_BROWSER_DOWNLOAD_FILE_LOADER,\n path,\n };\n};\n\nexport const fileDownloadStarted = (path: string) => {\n return {\n type: OBJECT_BROWSER_DOWNLOADED_FILE,\n path,\n };\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport get from \"lodash/get\";\nimport Grid from \"@material-ui/core/Grid\";\nimport { connect } from \"react-redux\";\nimport { withStyles } from \"@material-ui/core\";\nimport { createStyles, Theme } from \"@material-ui/core/styles\";\nimport { removeRouteLevel } from \"./actions\";\nimport { ObjectBrowserState, Route } from \"./reducers\";\nimport { objectBrowserCommon } from \"../Common/FormComponents/common/styleLibrary\";\nimport { Link } from \"react-router-dom\";\n\ninterface ObjectBrowserReducer {\n objectBrowser: ObjectBrowserState;\n}\n\ninterface IObjectBrowser {\n classes: any;\n objectsList: Route[];\n removeRouteLevel: (path: string) => any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n ...objectBrowserCommon,\n });\n\nconst BrowserBreadcrumbs = ({\n classes,\n objectsList,\n removeRouteLevel,\n}: IObjectBrowser) => {\n const listBreadcrumbs = objectsList.map((objectItem, index) => {\n return (\n \n {\n removeRouteLevel(objectItem.route);\n }}\n >\n {objectItem.label}\n \n {index < objectsList.length - 1 && / }\n \n );\n });\n\n return (\n \n \n
\n {objectsList && objectsList.length > 0\n ? objectsList.slice(-1)[0].label\n : \"\"}\n
\n
\n \n {listBreadcrumbs}\n \n
\n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n objectsList: get(objectBrowser, \"routesList\", []),\n});\n\nconst mapDispatchToProps = {\n removeRouteLevel,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default connector(withStyles(styles)(BrowserBreadcrumbs));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect, Fragment } from \"react\";\nimport { withRouter } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport { Button, IconButton } from \"@material-ui/core\";\nimport { CreateIcon } from \"../../../icons\";\nimport { niceBytes } from \"../../../common/utils\";\nimport { Bucket, BucketList, HasPermissionResponse } from \"../Buckets/types\";\nimport {\n actionsTray,\n objectBrowserCommon,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { addRoute, resetRoutesList } from \"./actions\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport BrowserBreadcrumbs from \"./BrowserBreadcrumbs\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport AddBucket from \"../Buckets/ListBuckets/AddBucket\";\nimport api from \"../../../common/api\";\nimport RefreshIcon from \"@material-ui/icons/Refresh\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n usedSpaceCol: {\n width: 150,\n textAlign: \"right\",\n },\n subTitleLabel: {\n alignItems: \"center\",\n display: \"flex\",\n },\n bucketName: {\n display: \"flex\",\n alignItems: \"center\",\n },\n iconBucket: {\n backgroundImage: \"url(/images/ob_bucket_clear.svg)\",\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n width: 16,\n height: 40,\n marginRight: 10,\n },\n \"@global\": {\n \".rowLine:hover .iconBucketElm\": {\n backgroundImage: \"url(/images/ob_bucket_filled.svg)\",\n },\n },\n browsePaper: {\n height: \"calc(100vh - 280px)\",\n },\n ...actionsTray,\n ...searchField,\n ...objectBrowserCommon,\n });\n\ninterface IBrowseBucketsProps {\n classes: any;\n addRoute: (path: string, label: string, type: string) => any;\n resetRoutesList: (doVar: boolean) => any;\n displayErrorMessage: typeof setErrorSnackMessage;\n match: any;\n}\n\nconst BrowseBuckets = ({\n classes,\n match,\n addRoute,\n resetRoutesList,\n displayErrorMessage,\n}: IBrowseBucketsProps) => {\n const [loading, setLoading] = useState(true);\n const [records, setRecords] = useState([]);\n const [addScreenOpen, setAddScreenOpen] = useState(false);\n const [filterBuckets, setFilterBuckets] = useState(\"\");\n const [loadingPerms, setLoadingPerms] = useState(true);\n const [canCreateBucket, setCanCreateBucket] = useState(false);\n\n // check the permissions for creating bucket\n useEffect(() => {\n if (loadingPerms) {\n api\n .invoke(\"POST\", `/api/v1/has-permission`, {\n actions: [\n {\n id: \"createBucket\",\n action: \"s3:CreateBucket\",\n },\n ],\n })\n .then((res: HasPermissionResponse) => {\n const canCreate = res.permissions\n .filter((s) => s.id === \"createBucket\")\n .pop();\n if (canCreate && canCreate.can) {\n setCanCreateBucket(true);\n } else {\n setCanCreateBucket(false);\n }\n\n setLoadingPerms(false);\n // setRecords(res.buckets || []);\n })\n .catch((err: any) => {\n setLoadingPerms(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loadingPerms]);\n\n useEffect(() => {\n resetRoutesList(true);\n }, [match, resetRoutesList]);\n\n useEffect(() => {\n if (loading) {\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n setLoading(false);\n setRecords(res.buckets || []);\n })\n .catch((err: any) => {\n setLoading(false);\n displayErrorMessage(err);\n });\n }\n }, [loading, displayErrorMessage]);\n\n const closeAddModalAndRefresh = (refresh: boolean) => {\n setAddScreenOpen(false);\n\n if (refresh) {\n setLoading(true);\n }\n };\n\n const filteredRecords = records.filter((b: Bucket) => {\n if (filterBuckets === \"\") {\n return true;\n }\n return b.name.indexOf(filterBuckets) >= 0;\n });\n\n const handleViewChange = (idElement: string) => {\n const currentPath = get(match, \"url\", \"/object-browser\");\n const newPath = `${currentPath}/${idElement}`;\n\n addRoute(newPath, idElement, \"path\");\n };\n\n const renderBucket = (bucketName: string) => {\n return (\n
\n
\n {bucketName}\n
\n );\n };\n\n return (\n \n {addScreenOpen && (\n \n )}\n \n \n
\n \n
\n
\n \n {\n setFilterBuckets(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n {\n setLoading(true);\n }}\n >\n \n \n {canCreateBucket && (\n
\n }\n onClick={() => {\n setAddScreenOpen(true);\n }}\n >\n Create Bucket\n \n
\n )}\n
\n \n
\n
\n \n \n \n
\n
\n );\n};\n\nconst mapDispatchToProps = {\n addRoute,\n resetRoutesList,\n displayErrorMessage: setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withRouter(connector(withStyles(styles)(BrowseBuckets)));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Grid } from \"@material-ui/core\";\nimport BrowseBuckets from \"./BrowseBuckets\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\n\ninterface IObjectBrowserProps {\n match: any;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n watchList: {\n background: \"white\",\n maxHeight: \"400\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4\",\n padding: \"0\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0\",\n padding: \"0\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n actionsTray: {\n textAlign: \"right\",\n \"& button\": {\n marginLeft: 10,\n },\n },\n inputField: {\n background: \"#FFFFFF\",\n padding: 12,\n borderRadius: 5,\n marginLeft: 10,\n boxShadow: \"0px 3px 6px #00000012\",\n },\n fieldContainer: {\n background: \"#FFFFFF\",\n padding: 0,\n borderRadius: 5,\n marginLeft: 10,\n textAlign: \"left\",\n minWidth: \"206\",\n boxShadow: \"0px 3px 6px #00000012\",\n },\n lastElementWPadding: {\n paddingRight: \"78\",\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst ObjectBrowser = ({ match, classes }: IObjectBrowserProps) => {\n const pathIn = get(match, \"url\", \"\");\n\n return (\n \n \n \n \n {pathIn === \"/object-browser\" && }\n \n \n \n );\n};\n\nexport default withStyles(styles)(ObjectBrowser);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { setErrorSnackMessage } from \"../../../../../../actions\";\nimport api from \"../../../../../../common/api\";\n\ninterface IDeleteObjectProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n setErrorSnackMessage,\n}: IDeleteObjectProps) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const removeRecord = () => {\n if (deleteLoading) {\n return;\n }\n let recursive = false;\n if (selectedObject.endsWith(\"/\")) {\n recursive = true;\n }\n setDeleteLoading(true);\n api\n .invoke(\n \"DELETE\",\n `/api/v1/buckets/${selectedBucket}/objects?path=${selectedObject}&recursive=${recursive}`\n )\n .then(() => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n setDeleteLoading(false);\n setErrorSnackMessage(err);\n });\n };\n\n return (\n {\n closeDeleteModalAndRefresh(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n Delete\n \n {deleteLoading && }\n \n Are you sure you want to delete: {selectedObject}?{\" \"}\n \n \n \n {\n closeDeleteModalAndRefresh(false);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n {\n removeRecord();\n }}\n color=\"secondary\"\n disabled={deleteLoading}\n >\n Delete\n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(DeleteObject);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { Button, Grid } from \"@material-ui/core\";\nimport InputBoxWrapper from \"../../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { connect } from \"react-redux\";\nimport { createFolder } from \"../../../../ObjectBrowser/actions\";\n\ninterface ICreateFolder {\n classes: any;\n modalOpen: boolean;\n folderName: string;\n createFolder: (newFolder: string) => any;\n onClose: () => any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n pathLabel: {\n marginTop: 0,\n marginBottom: 32,\n },\n ...modalBasic,\n });\n\nconst CreateFolderModal = ({\n modalOpen,\n folderName,\n onClose,\n createFolder,\n classes,\n}: ICreateFolder) => {\n const [pathUrl, setPathUrl] = useState(\"\");\n\n const resetForm = () => {\n setPathUrl(\"\");\n };\n\n const createProcess = () => {\n createFolder(pathUrl);\n onClose();\n };\n\n const folderTruncated = folderName.split(\"/\").slice(2).join(\"/\");\n\n return (\n \n \n \n

\n Current Path: {folderTruncated}/\n

\n \n {\n setPathUrl(e.target.value);\n }}\n />\n \n \n \n Clear\n \n \n Save\n \n \n
\n
\n
\n );\n};\n\nconst mapDispatchToProps = {\n createFolder,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(withStyles(styles)(CreateFolderModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { SvgIcon } from \"@material-ui/core\";\n\nconst UploadFile = () => {\n return (\n \n \n \n \n \n \n \n \n );\n};\n\nexport default UploadFile;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { isNullOrUndefined } from \"util\";\n\nexport const download = (\n bucketName: string,\n objectPath: string,\n versionID: any,\n callBack?: (objIdentifier: string) => void,\n includeVersionInCallback?: boolean\n) => {\n const anchor = document.createElement(\"a\");\n document.body.appendChild(anchor);\n const xhr = new XMLHttpRequest();\n const allPathData = objectPath.split(\"/\");\n const objectName = allPathData[allPathData.length - 1];\n\n let path = `/api/v1/buckets/${bucketName}/objects/download?prefix=${objectPath}`;\n if (!isNullOrUndefined(versionID) && versionID !== \"null\") {\n path = path.concat(`&version_id=${versionID}`);\n }\n\n xhr.open(\"GET\", path, true);\n xhr.responseType = \"blob\";\n\n xhr.onload = function (e) {\n if (this.status === 200) {\n const blob = new Blob([this.response], {\n type: \"octet/stream\",\n });\n const blobUrl = window.URL.createObjectURL(blob);\n\n anchor.href = blobUrl;\n anchor.download = objectName;\n\n anchor.click();\n window.URL.revokeObjectURL(blobUrl);\n anchor.remove();\n\n if (callBack) {\n callBack(\n `${bucketName}/${objectPath}${\n includeVersionInCallback ? `-${versionID}` : \"\"\n }`\n );\n }\n }\n };\n xhr.send();\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport { BucketObject, BucketObjectsList } from \"./types\";\nimport api from \"../../../../../../common/api\";\nimport TableWrapper from \"../../../../Common/TableWrapper/TableWrapper\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport DeleteObject from \"./DeleteObject\";\n\nimport {\n actionsTray,\n containerForHeader,\n objectBrowserCommon,\n searchField,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport PageHeader from \"../../../../Common/PageHeader/PageHeader\";\nimport { Button, IconButton, Input, Typography } from \"@material-ui/core\";\nimport * as reactMoment from \"react-moment\";\nimport { CreateIcon } from \"../../../../../../icons\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport get from \"lodash/get\";\nimport { withRouter } from \"react-router-dom\";\nimport {\n addRoute,\n setAllRoutes,\n setLastAsFile,\n fileIsBeingPrepared,\n fileDownloadStarted,\n} from \"../../../../ObjectBrowser/actions\";\nimport { connect } from \"react-redux\";\nimport {\n ObjectBrowserReducer,\n Route,\n} from \"../../../../ObjectBrowser/reducers\";\nimport CreateFolderModal from \"./CreateFolderModal\";\nimport UploadFile from \"../../../../../../icons/UploadFile\";\nimport { download } from \"../utils\";\nimport {\n setLoadingProgress,\n setSnackBarMessage,\n setErrorSnackMessage,\n} from \"../../../../../../actions\";\nimport RefreshIcon from \"@material-ui/icons/Refresh\";\n\nconst commonIcon = {\n backgroundRepeat: \"no-repeat\",\n backgroundPosition: \"center center\",\n width: 16,\n minWidth: 16,\n height: 40,\n marginRight: 10,\n};\n\nconst styles = (theme: Theme) =>\n createStyles({\n seeMore: {\n marginTop: theme.spacing(3),\n },\n paper: {\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n\n addSideBar: {\n width: \"320px\",\n padding: \"20px\",\n },\n tableToolbar: {\n paddingLeft: theme.spacing(2),\n paddingRight: theme.spacing(0),\n },\n minTableHeader: {\n color: \"#393939\",\n \"& tr\": {\n \"& th\": {\n fontWeight: \"bold\",\n },\n },\n },\n fileName: {\n display: \"flex\",\n alignItems: \"center\",\n },\n fileNameText: {\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n },\n iconFolder: {\n backgroundImage: \"url(/images/ob_folder_clear.svg)\",\n ...commonIcon,\n },\n iconFile: {\n backgroundImage: \"url(/images/ob_file_clear.svg)\",\n ...commonIcon,\n },\n buttonsContainer: {\n \"& .MuiButtonBase-root\": {\n marginLeft: 10,\n },\n },\n browsePaper: {\n height: \"calc(100vh - 280px)\",\n },\n \"@global\": {\n \".rowLine:hover .iconFileElm\": {\n backgroundImage: \"url(/images/ob_file_filled.svg)\",\n },\n \".rowLine:hover .iconFolderElm\": {\n backgroundImage: \"url(/images/ob_folder_filled.svg)\",\n },\n },\n listButton: {\n marginLeft: \"10px\",\n },\n ...actionsTray,\n ...searchField,\n ...objectBrowserCommon,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IListObjectsProps {\n classes: any;\n match: any;\n addRoute: (param1: string, param2: string, param3: string) => any;\n setAllRoutes: (path: string) => any;\n routesList: Route[];\n downloadingFiles: string[];\n setLastAsFile: () => any;\n setLoadingProgress: typeof setLoadingProgress;\n setSnackBarMessage: typeof setSnackBarMessage;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n fileIsBeingPrepared: typeof fileIsBeingPrepared;\n fileDownloadStarted: typeof fileDownloadStarted;\n}\n\nfunction useInterval(callback: any, delay: number) {\n const savedCallback = useRef(null);\n\n // Remember the latest callback.\n useEffect(() => {\n savedCallback.current = callback;\n }, [callback]);\n\n // Set up the interval.\n useEffect(() => {\n function tick() {\n if (savedCallback !== undefined && savedCallback.current) {\n savedCallback.current();\n }\n }\n if (delay !== null) {\n let id = setInterval(tick, delay);\n return () => clearInterval(id);\n }\n }, [delay]);\n}\n\nconst defLoading = Loading...;\n\nconst ListObjects = ({\n classes,\n match,\n addRoute,\n setAllRoutes,\n routesList,\n downloadingFiles,\n setLastAsFile,\n setLoadingProgress,\n setSnackBarMessage,\n setErrorSnackMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n}: IListObjectsProps) => {\n const [records, setRecords] = useState([]);\n const [loading, setLoading] = useState(true);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [createFolderOpen, setCreateFolderOpen] = useState(false);\n const [selectedObject, setSelectedObject] = useState(\"\");\n const [selectedBucket, setSelectedBucket] = useState(\"\");\n const [filterObjects, setFilterObjects] = useState(\"\");\n const [loadingStartTime, setLoadingStartTime] = useState(0);\n const [loadingMessage, setLoadingMessage] =\n useState(defLoading);\n\n const updateMessage = () => {\n let timeDelta = Date.now() - loadingStartTime;\n\n if (timeDelta / 1000 >= 6) {\n setLoadingMessage(\n \n \n This operation is taking longer than expected... (\n {Math.ceil(timeDelta / 1000)}s)\n \n \n );\n } else if (timeDelta / 1000 >= 3) {\n setLoadingMessage(\n \n This operation is taking longer than expected...\n \n );\n }\n };\n\n useInterval(() => {\n // Your custom logic here\n if (loading) {\n updateMessage();\n }\n }, 1000);\n\n useEffect(() => {\n const bucketName = match.params[\"bucket\"];\n const internalPaths = match.params[0];\n\n const verifyIfIsFile = () => {\n const bucketName = match.params[\"bucket\"];\n const internalPaths = match.params[0];\n\n api\n .invoke(\n \"GET\",\n `/api/v1/buckets/${bucketName}/objects?prefix=${internalPaths}`\n )\n .then((res: BucketObjectsList) => {\n //It is a file since it has elements in the object, setting file flag and waiting for component mount\n if (res.objects !== null) {\n setLastAsFile();\n } else {\n // It is a folder, we remove loader\n setLoading(false);\n }\n })\n .catch((err: any) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n };\n\n if (loading) {\n let extraPath = \"\";\n if (internalPaths) {\n extraPath = `?prefix=${internalPaths}/`;\n }\n\n let currentTimestamp = Date.now() + 0;\n setLoadingStartTime(currentTimestamp);\n setLoadingMessage(defLoading);\n\n api\n .invoke(\"GET\", `/api/v1/buckets/${bucketName}/objects${extraPath}`)\n .then((res: BucketObjectsList) => {\n setSelectedBucket(bucketName);\n\n const records: BucketObject[] = res.objects || [];\n const folders: BucketObject[] = [];\n const files: BucketObject[] = [];\n\n records.forEach((record) => {\n // this is a folder\n if (record.name.endsWith(\"/\")) {\n folders.push(record);\n } else {\n // this is a file\n files.push(record);\n }\n });\n\n const recordsInElement = [...folders, ...files];\n\n setRecords(recordsInElement);\n // In case no objects were retrieved, We check if item is a file\n if (!res.objects && extraPath !== \"\") {\n verifyIfIsFile();\n return;\n }\n setLoading(false);\n })\n .catch((err: any) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loading, match, setLastAsFile, setErrorSnackMessage]);\n\n useEffect(() => {\n const url = get(match, \"url\", \"/object-browser\");\n if (url !== routesList[routesList.length - 1].route) {\n setAllRoutes(url);\n }\n }, [match, routesList, setAllRoutes]);\n\n useEffect(() => {\n setLoading(true);\n }, [routesList, setLoading]);\n\n const closeDeleteModalAndRefresh = (refresh: boolean) => {\n setDeleteOpen(false);\n\n if (refresh) {\n setSnackBarMessage(`Object '${selectedObject}' deleted successfully.`);\n setLoading(true);\n }\n };\n\n const closeAddFolderModal = () => {\n setCreateFolderOpen(false);\n };\n\n const upload = (e: any, bucketName: string, path: string) => {\n if (\n e === null ||\n e === undefined ||\n e.target === null ||\n e.target === undefined\n ) {\n return;\n }\n e.preventDefault();\n let files = e.target.files;\n let uploadUrl = `/api/v1/buckets/${bucketName}/objects/upload`;\n if (path !== \"\") {\n uploadUrl = `${uploadUrl}?prefix=${path}`;\n }\n let xhr = new XMLHttpRequest();\n const areMultipleFiles = files.length > 1 ? true : false;\n const errorMessage = `An error occurred while uploading the file${\n areMultipleFiles ? \"s\" : \"\"\n }.`;\n const okMessage = `Object${\n areMultipleFiles ? \"s\" : ``\n } uploaded successfully.`;\n\n xhr.open(\"POST\", uploadUrl, true);\n\n xhr.withCredentials = false;\n xhr.onload = function (event) {\n if (\n xhr.status === 401 ||\n xhr.status === 403 ||\n xhr.status === 400 ||\n xhr.status === 500\n ) {\n setSnackBarMessage(errorMessage);\n }\n if (xhr.status === 200) {\n setSnackBarMessage(okMessage);\n }\n };\n\n xhr.upload.addEventListener(\"error\", (event) => {\n setSnackBarMessage(errorMessage);\n });\n\n xhr.upload.addEventListener(\"progress\", (event) => {\n setLoadingProgress(Math.floor((event.loaded * 100) / event.total));\n });\n\n xhr.onerror = () => {\n setSnackBarMessage(errorMessage);\n };\n xhr.onloadend = () => {\n setLoading(true);\n setLoadingProgress(100);\n };\n\n const formData = new FormData();\n\n for (let file of files) {\n const fileName = file.name;\n const blobFile = new Blob([file]);\n formData.append(fileName, blobFile);\n }\n\n xhr.send(formData);\n e.target.value = null;\n };\n\n const displayParsedDate = (object: BucketObject) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n return {object.last_modified};\n };\n\n const displayNiceBytes = (object: BucketObject) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n return niceBytes(String(object.size));\n };\n\n const confirmDeleteObject = (object: string) => {\n setDeleteOpen(true);\n setSelectedObject(object);\n };\n\n const removeDownloadAnimation = (path: string) => {\n fileDownloadStarted(path);\n };\n\n const downloadObject = (object: BucketObject) => {\n fileIsBeingPrepared(`${selectedBucket}/${object.name}`);\n if (object.size > 104857600) {\n // If file is bigger than 100MB we show a notification\n setSnackBarMessage(\n \"Download process started, it may take a few moments to complete\"\n );\n }\n\n download(\n selectedBucket,\n object.name,\n object.version_id,\n removeDownloadAnimation\n );\n };\n\n const openPath = (idElement: string) => {\n const currentPath = get(match, \"url\", \"/object-browser\");\n\n // Element is a folder, we redirect to it\n if (idElement.endsWith(\"/\")) {\n const idElementClean = idElement\n .substr(0, idElement.length - 1)\n .split(\"/\");\n const lastIndex = idElementClean.length - 1;\n const newPath = `${currentPath}/${idElementClean[lastIndex]}`;\n\n addRoute(newPath, idElementClean[lastIndex], \"path\");\n return;\n }\n // Element is a file. we open details here\n const pathInArray = idElement.split(\"/\");\n const fileName = pathInArray[pathInArray.length - 1];\n const newPath = `${currentPath}/${fileName}`;\n\n addRoute(newPath, fileName, \"file\");\n return;\n };\n\n const uploadObject = (e: any): void => {\n // Handle of deeper routes.\n const currentPath = routesList[routesList.length - 1].route;\n const splitPaths = currentPath\n .split(\"/\")\n .filter((item) => item.trim() !== \"\");\n\n let path = \"\";\n\n if (splitPaths.length > 2) {\n path = `${splitPaths.slice(2).join(\"/\")}/`;\n }\n\n upload(e, selectedBucket, path);\n };\n\n const tableActions = [\n { type: \"view\", onClick: openPath, sendOnlyId: true },\n {\n type: \"download\",\n onClick: downloadObject,\n showLoaderFunction: (item: string) =>\n downloadingFiles.includes(`${match.params[\"bucket\"]}/${item}`),\n },\n { type: \"delete\", onClick: confirmDeleteObject, sendOnlyId: true },\n ];\n\n const displayName = (element: string) => {\n let elementString = element;\n let icon = `${classes.iconFile} iconFileElm`;\n // Element is a folder\n if (element.endsWith(\"/\")) {\n icon = `${classes.iconFolder} iconFolderElm`;\n elementString = element.substr(0, element.length - 1);\n }\n\n const splitItem = elementString.split(\"/\");\n\n return (\n
\n
\n \n {splitItem[splitItem.length - 1]}\n \n
\n );\n };\n\n const filteredRecords = records.filter((b: BucketObject) => {\n if (filterObjects === \"\") {\n return true;\n } else {\n if (b.name.indexOf(filterObjects) >= 0) {\n return true;\n } else {\n return false;\n }\n }\n });\n\n return (\n \n {deleteOpen && (\n \n )}\n {createFolderOpen && (\n \n )}\n \n \n \n \n
\n \n
\n
\n \n {\n setFilterObjects(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n {\n setLoading(true);\n }}\n >\n \n \n }\n component=\"label\"\n onClick={() => {\n setCreateFolderOpen(true);\n }}\n className={classes.listButton}\n >\n Create Folder\n \n }\n component=\"label\"\n className={classes.listButton}\n >\n File\n uploadObject(e)}\n id=\"file-input\"\n style={{ display: \"none\" }}\n />\n \n \n \n
\n
\n \n \n \n
\n
\n
\n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n routesList: get(objectBrowser, \"routesList\", []),\n downloadingFiles: get(objectBrowser, \"downloadingFiles\", []),\n});\n\nconst mapDispatchToProps = {\n addRoute,\n setAllRoutes,\n setLastAsFile,\n setLoadingProgress,\n setSnackBarMessage,\n setErrorSnackMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default withRouter(connector(withStyles(styles)(ListObjects)));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Button from \"@material-ui/core/Button\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { CopyIcon } from \"../../../../../../icons\";\nimport { IFileInfo } from \"./types\";\nimport {\n setModalErrorSnackMessage,\n setModalSnackMessage,\n} from \"../../../../../../actions\";\nimport api from \"../../../../../../common/api\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\nimport PredefinedList from \"../../../../Common/FormComponents/PredefinedList/PredefinedList\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n copyButtonContainer: {\n paddingLeft: 16,\n },\n modalContent: {\n paddingBottom: 53,\n },\n ...modalBasic,\n });\n\ninterface IShareFileProps {\n classes: any;\n open: boolean;\n bucketName: string;\n dataObject: IFileInfo;\n closeModalAndRefresh: () => void;\n setModalSnackMessage: typeof setModalSnackMessage;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst ShareFile = ({\n classes,\n open,\n closeModalAndRefresh,\n bucketName,\n dataObject,\n setModalSnackMessage,\n setModalErrorSnackMessage,\n}: IShareFileProps) => {\n const [shareURL, setShareURL] = useState(\"\");\n const [isLoadingFile, setIsLoadingFile] = useState(false);\n const [selectedDate, setSelectedDate] = useState(\"\");\n const [dateValid, setDateValid] = useState(true);\n\n const dateChanged = (newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n };\n\n useEffect(() => {\n if (dateValid) {\n setIsLoadingFile(true);\n setShareURL(\"\");\n\n const slDate = new Date(`${selectedDate}T23:59:59`);\n const currDate = new Date();\n\n const diffDate = slDate.getTime() - currDate.getTime();\n\n if (diffDate < 0) {\n setModalErrorSnackMessage(\n \"Selected date must be greater than current time.\"\n );\n setShareURL(\"\");\n setIsLoadingFile(false);\n\n return;\n }\n\n if (diffDate > 604800000) {\n setModalErrorSnackMessage(\n \"You can share a file only for less than 7 days.\"\n );\n setShareURL(\"\");\n setIsLoadingFile(false);\n\n return;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/buckets/${bucketName}/objects/share?prefix=${\n dataObject.name\n }&version_id=${dataObject.version_id}${\n selectedDate !== \"\" ? `&expires=${diffDate}ms` : \"\"\n }`\n )\n .then((res: string) => {\n setShareURL(res);\n setIsLoadingFile(false);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setShareURL(\"\");\n setIsLoadingFile(false);\n });\n return;\n }\n }, [\n dataObject,\n selectedDate,\n bucketName,\n dateValid,\n setShareURL,\n setModalErrorSnackMessage,\n ]);\n\n return (\n \n {\n closeModalAndRefresh();\n }}\n >\n \n \n \n \n \n \n \n \n \n \n }\n onClick={() => {\n setModalSnackMessage(\"Share URL Copied to clipboard\");\n }}\n disabled={shareURL === \"\" || isLoadingFile}\n >\n Copy\n \n \n \n \n \n \n \n );\n};\n\nconst connector = connect(null, {\n setModalSnackMessage,\n setModalErrorSnackMessage,\n});\n\nexport default withStyles(styles)(connector(ShareFile));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\n\nconst ShareIcon = () => {\n return (\n \n \n \n \n \n \n );\n};\n\nexport default ShareIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\n\nconst DownloadIcon = () => {\n return (\n \n \n \n \n \n \n );\n};\n\nexport default DownloadIcon;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useRef, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Button from \"@material-ui/core/Button\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IFileInfo } from \"./types\";\nimport { setModalErrorSnackMessage } from \"../../../../../../actions\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport FormSwitchWrapper from \"../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport RadioGroupSelector from \"../../../../Common/FormComponents/RadioGroupSelector/RadioGroupSelector\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\nimport api from \"../../../../../../common/api\";\nimport { twoDigitDate } from \"../../../../Common/FormComponents/DateSelector/utils\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n objectName: {\n fontSize: 18,\n fontWeight: 700,\n marginBottom: 40,\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n ...modalBasic,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (updateInfo: boolean) => void;\n objectName: string;\n bucketName: string;\n objectInfo: IFileInfo;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\ninterface IRefObject {\n resetDate: () => void;\n}\n\nconst SetRetention = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n objectInfo,\n bucketName,\n setModalErrorSnackMessage,\n}: ISetRetentionProps) => {\n const [statusEnabled, setStatusEnabled] = useState(true);\n const [type, setType] = useState(\"\");\n const [date, setDate] = useState(\"\");\n const [isDateValid, setIsDateValid] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const [alreadyConfigured, setAlreadyConfigured] = useState(false);\n\n useEffect(() => {\n if (objectInfo.retention_mode) {\n setType(objectInfo.retention_mode.toLowerCase());\n setAlreadyConfigured(true);\n }\n // get retention_until_date if defined\n if (objectInfo.retention_until_date) {\n const valueDate = new Date(objectInfo.retention_until_date);\n if (valueDate.toString() !== \"Invalid Date\") {\n const year = valueDate.getFullYear();\n const month = twoDigitDate(valueDate.getMonth() + 1);\n const day = valueDate.getDate();\n if (!isNaN(day) && month !== \"NaN\" && !isNaN(year)) {\n setDate(`${year}-${month}-${day}`);\n }\n }\n setAlreadyConfigured(true);\n }\n }, [objectInfo]);\n\n const dateElement = useRef(null);\n\n const dateFieldDisabled = () => {\n return !(statusEnabled && (type === \"governance\" || type === \"compliance\"));\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n const resetForm = () => {\n setStatusEnabled(false);\n setType(\"\");\n if (dateElement.current) {\n dateElement.current.resetDate();\n }\n };\n\n const addRetention = (\n selectedObject: string,\n versionId: string | null,\n expireDate: string\n ) => {\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/retention?prefix=${selectedObject}&version_id=${versionId}`,\n {\n expires: expireDate,\n mode: type,\n }\n )\n .then((res: any) => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSaving(false);\n });\n };\n\n const disableRetention = (\n selectedObject: string,\n versionId: string | null\n ) => {\n api\n .invoke(\n \"DELETE\",\n `/api/v1/buckets/${bucketName}/objects/retention?prefix=${selectedObject}&version_id=${versionId}`\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSaving(false);\n });\n };\n\n const saveNewRetentionPolicy = () => {\n setIsSaving(true);\n const selectedObject = objectInfo.name;\n const versionId = objectInfo.version_id;\n\n const expireDate =\n !statusEnabled && type === \"governance\" ? \"\" : `${date}T23:59:59Z`;\n\n if (!statusEnabled && type === \"governance\") {\n disableRetention(selectedObject, versionId);\n\n return;\n }\n\n addRetention(selectedObject, versionId, expireDate);\n };\n\n const showSwitcher =\n alreadyConfigured && (type === \"governance\" || type === \"\");\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n \n {objectName}\n \n ) => {\n onSubmit(e);\n }}\n >\n {showSwitcher && (\n \n ) => {\n setStatusEnabled(!statusEnabled);\n }}\n label={\"Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n />\n \n )}\n \n {\n setType(e.target.value);\n }}\n selectorOptions={[\n { label: \"Governance\", value: \"governance\" },\n { label: \"Compliance\", value: \"compliance\" },\n ]}\n />\n \n \n {\n setIsDateValid(isValid);\n if (isValid) {\n setDate(date);\n }\n }}\n />\n \n \n \n Reset\n \n \n Save\n \n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(SetRetention));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { Button, Grid } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../../../actions\";\nimport InputBoxWrapper from \"../../../../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport api from \"../../../../../../common/api\";\n\ninterface ITagModal {\n modalOpen: boolean;\n currentTags: any;\n bucketName: string;\n versionId: string | null;\n onCloseAndUpdate: (refresh: boolean) => void;\n selectedObject: string;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n pathLabel: {\n marginTop: 0,\n marginBottom: 32,\n },\n ...modalBasic,\n });\n\nconst AddTagModal = ({\n modalOpen,\n currentTags,\n selectedObject,\n onCloseAndUpdate,\n bucketName,\n versionId,\n setModalErrorSnackMessage,\n classes,\n}: ITagModal) => {\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n\n const resetForm = () => {\n setNewLabel(\"\");\n setNewKey(\"\");\n };\n\n const addTagProcess = () => {\n setIsSending(true);\n const newTag: any = {};\n\n newTag[newKey] = newLabel;\n const newTagList = { ...currentTags, ...newTag };\n\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/tags?prefix=${selectedObject}&version_id=${versionId}`,\n { tags: newTagList }\n )\n .then((res: any) => {\n setIsSending(false);\n onCloseAndUpdate(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSending(false);\n });\n };\n\n return (\n \n {\n onCloseAndUpdate(false);\n }}\n >\n \n

\n Selected Object: {selectedObject}\n

\n \n {\n setNewKey(e.target.value);\n }}\n />\n \n \n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n Clear\n \n \n Save\n \n \n
\n \n
\n );\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(AddTagModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setErrorSnackMessage } from \"../../../../../../actions\";\nimport api from \"../../../../../../common/api\";\n\ninterface IDeleteTagModal {\n deleteOpen: boolean;\n currentTags: any;\n bucketName: string;\n versionId: string | null;\n selectedTag: string[];\n onCloseAndUpdate: (refresh: boolean) => void;\n selectedObject: string;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n buttonContainer: {\n textAlign: \"right\",\n },\n pathLabel: {\n marginTop: 0,\n marginBottom: 32,\n },\n ...modalBasic,\n });\n\nconst DeleteTagModal = ({\n deleteOpen,\n currentTags,\n selectedObject,\n selectedTag,\n onCloseAndUpdate,\n bucketName,\n versionId,\n setErrorSnackMessage,\n classes,\n}: IDeleteTagModal) => {\n const [deleteLoading, setDeleteSending] = useState(false);\n const [tagKey, tagLabel] = selectedTag;\n\n const removeTagProcess = () => {\n setDeleteSending(true);\n const cleanObject = { ...currentTags };\n delete cleanObject[tagKey];\n\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/tags?prefix=${selectedObject}&version_id=${versionId}`,\n { tags: cleanObject }\n )\n .then((res: any) => {\n setDeleteSending(false);\n onCloseAndUpdate(true);\n })\n .catch((error) => {\n setErrorSnackMessage(error);\n setDeleteSending(false);\n });\n };\n\n return (\n {\n onCloseAndUpdate(false);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n Delete Tag\n \n {deleteLoading && }\n \n Are you sure you want to delete the tag{\" \"}\n \n {tagKey} : {tagLabel}\n {\" \"}\n from {selectedObject}?\n \n \n \n {\n onCloseAndUpdate(false);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(DeleteTagModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport get from \"lodash/get\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Button from \"@material-ui/core/Button\";\nimport { modalBasic } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../../../actions\";\nimport { IFileInfo } from \"./types\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport FormSwitchWrapper from \"../../../../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport api from \"../../../../../../common/api\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n objectName: {\n fontSize: 18,\n fontWeight: 700,\n marginBottom: 40,\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n ...modalBasic,\n });\n\ninterface ISetRetentionProps {\n classes: any;\n open: boolean;\n closeModalAndRefresh: (reload: boolean) => void;\n objectName: string;\n bucketName: string;\n actualInfo: IFileInfo;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst SetLegalHoldModal = ({\n classes,\n open,\n closeModalAndRefresh,\n objectName,\n bucketName,\n actualInfo,\n setModalErrorSnackMessage,\n}: ISetRetentionProps) => {\n const [legalHoldEnabled, setLegalHoldEnabled] = useState(false);\n const [isSaving, setIsSaving] = useState(false);\n const versionId = actualInfo.version_id;\n\n useEffect(() => {\n const status = get(actualInfo, \"legal_hold_status\", \"OFF\");\n setLegalHoldEnabled(status === \"ON\");\n }, [actualInfo]);\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n setIsSaving(true);\n\n api\n .invoke(\n \"PUT\",\n `/api/v1/buckets/${bucketName}/objects/legalhold?prefix=${objectName}&version_id=${versionId}`,\n { status: legalHoldEnabled ? \"enabled\" : \"disabled\" }\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((error) => {\n setModalErrorSnackMessage(error);\n setIsSaving(false);\n });\n };\n\n const resetForm = () => {\n setLegalHoldEnabled(false);\n };\n\n return (\n {\n resetForm();\n closeModalAndRefresh(false);\n }}\n >\n \n {objectName}\n \n ) => {\n onSubmit(e);\n }}\n >\n \n ) => {\n setLegalHoldEnabled(!legalHoldEnabled);\n }}\n label={\"Legal Hold Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n tooltip={\n \"To enable this feature you need to enable versioning on the bucket before creation\"\n }\n />\n \n \n \n Reset\n \n \n Save\n \n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(SetLegalHoldModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport * as reactMoment from \"react-moment\";\nimport clsx from \"clsx\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Chip from \"@material-ui/core/Chip\";\nimport TextField from \"@material-ui/core/TextField\";\nimport IconButton from \"@material-ui/core/IconButton\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport AddIcon from \"@material-ui/icons/Add\";\nimport CloseIcon from \"@material-ui/icons/Close\";\nimport ShareFile from \"./ShareFile\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IFileInfo } from \"./types\";\nimport {\n removeRouteLevel,\n fileIsBeingPrepared,\n fileDownloadStarted,\n} from \"../../../../ObjectBrowser/actions\";\nimport {\n ObjectBrowserReducer,\n Route,\n} from \"../../../../ObjectBrowser/reducers\";\nimport { download } from \"../utils\";\nimport history from \"../../../../../../history\";\nimport api from \"../../../../../../common/api\";\nimport PageHeader from \"../../../../Common/PageHeader/PageHeader\";\nimport ShareIcon from \"../../../../../../icons/ShareIcon\";\nimport DownloadIcon from \"../../../../../../icons/DownloadIcon\";\nimport DeleteIcon from \"../../../../../../icons/DeleteIcon\";\nimport TableWrapper from \"../../../../Common/TableWrapper/TableWrapper\";\nimport PencilIcon from \"../../../../Common/TableWrapper/TableActionIcons/PencilIcon\";\nimport SetRetention from \"./SetRetention\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport DeleteObject from \"../ListObjects/DeleteObject\";\nimport AddTagModal from \"./AddTagModal\";\nimport DeleteTagModal from \"./DeleteTagModal\";\nimport SetLegalHoldModal from \"./SetLegalHoldModal\";\nimport {\n setSnackBarMessage,\n setErrorSnackMessage,\n} from \"../../../../../../actions\";\nimport { CircularProgress } from \"@material-ui/core\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n objectNameContainer: {\n marginBottom: 8,\n },\n objectPathContainer: {\n marginBottom: 26,\n fontSize: 10,\n },\n objectPathLink: {\n \"&:visited\": {\n color: \"#000\",\n },\n },\n objectName: {\n fontSize: 24,\n },\n propertiesContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n marginBottom: 15,\n },\n propertiesItem: {\n display: \"flex\",\n flexDirection: \"row\",\n marginRight: 21,\n },\n propertiesItemBold: {\n fontWeight: 700,\n },\n propertiesValue: {\n marginLeft: 8,\n textTransform: \"capitalize\",\n },\n propertiesIcon: {\n marginLeft: 5,\n },\n actionsIconContainer: {\n marginLeft: 12,\n },\n actionsIcon: {\n height: 16,\n width: 16,\n \"& .MuiSvgIcon-root\": {\n height: 16,\n },\n },\n tagsContainer: {\n display: \"flex\",\n flexDirection: \"row\",\n alignItems: \"center\",\n marginBottom: 15,\n },\n tagText: {\n marginRight: 13,\n },\n tag: {\n marginRight: 6,\n fontSize: 10,\n fontWeight: 700,\n \"&.MuiChip-sizeSmall\": {\n height: 18,\n },\n \"& .MuiSvgIcon-root\": {\n height: 10,\n width: 10,\n },\n },\n search: {\n marginBottom: 8,\n \"&.MuiFormControl-root\": {\n marginRight: 0,\n },\n },\n \"@global\": {\n \".progressDetails\": {\n paddingTop: 3,\n display: \"inline-block\",\n position: \"relative\",\n width: 18,\n height: 18,\n },\n \".progressDetails > .MuiCircularProgress-root\": {\n position: \"absolute\",\n left: 0,\n top: 3,\n },\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IObjectDetailsProps {\n classes: any;\n routesList: Route[];\n downloadingFiles: string[];\n removeRouteLevel: (newRoute: string) => any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n setSnackBarMessage: typeof setSnackBarMessage;\n fileIsBeingPrepared: typeof fileIsBeingPrepared;\n fileDownloadStarted: typeof fileDownloadStarted;\n}\n\nconst emptyFile: IFileInfo = {\n is_latest: true,\n last_modified: \"\",\n legal_hold_status: \"\",\n name: \"\",\n retention_mode: \"\",\n retention_until_date: \"\",\n size: \"0\",\n tags: {},\n version_id: null,\n};\n\nconst ObjectDetails = ({\n classes,\n routesList,\n downloadingFiles,\n removeRouteLevel,\n setErrorSnackMessage,\n setSnackBarMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n}: IObjectDetailsProps) => {\n const [loadObjectData, setLoadObjectData] = useState(true);\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [retentionModalOpen, setRetentionModalOpen] = useState(false);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [deleteTagModalOpen, setDeleteTagModalOpen] = useState(false);\n const [selectedTag, setSelectedTag] = useState([\"\", \"\"]);\n const [legalholdOpen, setLegalholdOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(emptyFile);\n const [versions, setVersions] = useState([]);\n const [filterVersion, setFilterVersion] = useState(\"\");\n const [deleteOpen, setDeleteOpen] = useState(false);\n\n const currentItem = routesList[routesList.length - 1];\n const allPathData = currentItem.route.split(\"/\");\n const objectName = allPathData[allPathData.length - 1];\n const bucketName = allPathData[2];\n const pathInBucket = allPathData.slice(3).join(\"/\");\n\n useEffect(() => {\n if (loadObjectData) {\n api\n .invoke(\n \"GET\",\n `/api/v1/buckets/${bucketName}/objects?prefix=${pathInBucket}&with_versions=true`\n )\n .then((res: IFileInfo[]) => {\n const result = get(res, \"objects\", []);\n setActualInfo(\n result.find((el: IFileInfo) => el.is_latest) || emptyFile\n );\n setVersions(result.filter((el: IFileInfo) => !el.is_latest));\n setLoadObjectData(false);\n })\n .catch((error) => {\n setErrorSnackMessage(error);\n setLoadObjectData(false);\n });\n }\n }, [loadObjectData, bucketName, pathInBucket, setErrorSnackMessage]);\n\n let tagKeys: string[] = [];\n\n if (actualInfo.tags) {\n tagKeys = Object.keys(actualInfo.tags);\n }\n\n const openRetentionModal = () => {\n setRetentionModalOpen(true);\n };\n\n const closeRetentionModal = (updateInfo: boolean) => {\n setRetentionModalOpen(false);\n if (updateInfo) {\n setLoadObjectData(true);\n }\n };\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setShareFileModalOpen(false);\n };\n\n const deleteTag = (tagKey: string, tagLabel: string) => {\n setSelectedTag([tagKey, tagLabel]);\n setDeleteTagModalOpen(true);\n };\n\n const removeDownloadAnimation = (path: string) => {\n fileDownloadStarted(path);\n };\n\n const downloadObject = (object: IFileInfo, includeVersion?: boolean) => {\n fileIsBeingPrepared(\n `${bucketName}/${object.name}${\n includeVersion ? `-${object.version_id}` : \"\"\n }`\n );\n if (object.size && parseInt(object.size) > 104857600) {\n // If file is bigger than 100MB we show a notification\n setSnackBarMessage(\n \"Download process started, it may take a few moments to complete\"\n );\n }\n download(\n bucketName,\n pathInBucket,\n object.version_id,\n removeDownloadAnimation,\n includeVersion\n );\n };\n\n const tableActions = [\n { type: \"share\", onClick: shareObject, sendOnlyId: true },\n {\n type: \"download\",\n onClick: (item: IFileInfo) => {\n downloadObject(item, true);\n },\n showLoaderFunction: (version: string) => {\n return downloadingFiles.includes(\n `${bucketName}/${objectName}-${version}`\n );\n },\n },\n ];\n\n const filteredRecords = versions.filter((version) => {\n if (version.version_id) {\n return version.version_id.includes(filterVersion);\n }\n return false;\n });\n\n const displayParsedDate = (date: string) => {\n return {date};\n };\n\n const closeDeleteModal = (redirectBack: boolean) => {\n setDeleteOpen(false);\n\n if (redirectBack) {\n const newPath = allPathData.slice(0, -1).join(\"/\");\n\n removeRouteLevel(newPath);\n history.push(newPath);\n }\n };\n\n const closeAddTagModal = (reloadObjectData: boolean) => {\n setTagModalOpen(false);\n\n if (reloadObjectData) {\n setLoadObjectData(true);\n }\n };\n\n const closeLegalholdModal = (reload: boolean) => {\n setLegalholdOpen(false);\n\n if (reload) {\n setLoadObjectData(true);\n }\n };\n\n const closeDeleteTagModal = (reloadObjectData: boolean) => {\n setDeleteTagModalOpen(false);\n\n if (reloadObjectData) {\n setLoadObjectData(true);\n }\n };\n\n return (\n \n \n {shareFileModalOpen && (\n \n )}\n {retentionModalOpen && (\n \n )}\n {deleteOpen && (\n \n )}\n {tagModalOpen && (\n \n )}\n {deleteTagModalOpen && (\n \n )}\n {legalholdOpen && (\n \n )}\n \n \n \n
\n \n
\n
\n
\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n \n
\n
\n \n Legal Hold:\n \n \n {actualInfo.legal_hold_status\n ? actualInfo.legal_hold_status.toLowerCase()\n : \"Off\"}\n \n
\n
\n {\n setLegalholdOpen(true);\n }}\n >\n \n \n
\n
\n
\n
\n \n Retention:\n \n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"Undefined\"}\n \n
\n
\n {\n openRetentionModal();\n }}\n >\n \n \n
\n
\n
\n )}\n
\n
File Actions:
\n
\n {\n shareObject();\n }}\n >\n \n \n
\n
\n {downloadingFiles.includes(\n `${bucketName}/${actualInfo.name}`\n ) ? (\n
\n \n
\n ) : (\n {\n downloadObject(actualInfo);\n }}\n >\n \n \n )}\n
\n
\n {\n setDeleteOpen(true);\n }}\n >\n \n \n
\n
\n
\n \n
Tags:
\n {tagKeys &&\n tagKeys.map((tagKey, index) => {\n const tag = get(actualInfo, `tags.${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n }\n onDelete={() => {\n deleteTag(tagKey, tag);\n }}\n />\n );\n }\n return null;\n })}\n }\n clickable\n size=\"small\"\n label=\"Add tag\"\n color=\"primary\"\n variant=\"outlined\"\n onClick={() => {\n setTagModalOpen(true);\n }}\n />\n
\n\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n {\n setFilterVersion(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n )}\n \n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n \n )}\n \n
\n
\n
\n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n downloadingFiles: get(objectBrowser, \"downloadingFiles\", []),\n});\n\nconst mapDispatchToProps = {\n removeRouteLevel,\n setErrorSnackMessage,\n fileIsBeingPrepared,\n fileDownloadStarted,\n setSnackBarMessage,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default connector(withStyles(styles)(ObjectDetails));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect } from \"react\";\nimport ListObjects from \"./ListObjects\";\nimport ObjectDetails from \"../ObjectDetails/ObjectDetails\";\nimport get from \"lodash/get\";\nimport { setAllRoutes } from \"../../../../ObjectBrowser/actions\";\nimport { connect } from \"react-redux\";\nimport { withRouter } from \"react-router-dom\";\nimport { ObjectBrowserState, Route } from \"../../../../ObjectBrowser/reducers\";\n\ninterface ObjectBrowserReducer {\n objectBrowser: ObjectBrowserState;\n}\n\ninterface ObjectRoutingProps {\n routesList: Route[];\n setAllRoutes: (path: string) => any;\n match: any;\n}\n\nconst ObjectRouting = ({\n routesList,\n match,\n setAllRoutes,\n}: ObjectRoutingProps) => {\n const currentItem = routesList[routesList.length - 1];\n\n useEffect(() => {\n const url = get(match, \"url\", \"/object-browser\");\n\n if (url !== routesList[routesList.length - 1].route) {\n setAllRoutes(url);\n }\n }, [match, routesList, setAllRoutes]);\n\n return currentItem.type === \"path\" ? (\n \n ) : (\n \n );\n};\n\nconst mapStateToProps = ({ objectBrowser }: ObjectBrowserReducer) => ({\n routesList: get(objectBrowser, \"routesList\", []),\n});\n\nconst mapDispatchToProps = {\n setAllRoutes,\n};\n\nconst connector = connect(mapStateToProps, mapDispatchToProps);\n\nexport default withRouter(connector(ObjectRouting));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const planDetails = [\n {\n id: 0,\n title: \"Community\",\n price: \"Open Source\",\n capacityMin: \"\",\n },\n {\n id: 1,\n title: \"Standard\",\n price: \"$10/TB/month\",\n capacityMax: \"Up to 10PB. No additional charges for capacity over 10PB\",\n capacityMin: \"\",\n },\n {\n id: 2,\n title: \"Enterprise\",\n price: \"$20/TB/month\",\n capacityMax: \"Up to 5PB. No additional charges for capacity over 5PB\",\n capacityMin: \"\",\n },\n];\n\nexport const planItems = [\n {\n id: 0,\n field: \"License\",\n community: \"GNU AGPL v3\",\n communityDetail: \"\",\n standard: \"Commercial License\",\n standardDetail: \"\",\n enterprise: \"Commercial License\",\n enterpriseDetail: \"\",\n },\n {\n id: 1,\n field: \"Software Release\",\n community: \"Update to latest\",\n standard: \"1 Year Long Term Support\",\n enterprise: \"5 Years Long Term Support\",\n },\n {\n id: 2,\n field: \"SLA\",\n community: \"No SLA\",\n standard: \"<24 hours\",\n enterprise: \"<1 hour\",\n },\n {\n id: 3,\n field: \"Support\",\n community: \"Community:\",\n communityDetail: \"Public Slack Channel + Github Issues\",\n standard: \"24x7 L4 direct engineering\",\n standardDetail: \"Support via SUBNET\",\n enterprise: \"24x7 L4 direct engineering\",\n enterpriseDetail: \"Support via SUBNET\",\n },\n {\n id: 4,\n field: \"Security Updates & Critical Bugs\",\n community: \"Self Update\",\n standard: \"Guided Update\",\n enterprise: \"Guided Update\",\n },\n {\n id: 5,\n field: \"Panic Button\",\n community: \"N/A\",\n standard: \"1 per year\",\n enterprise: \"Unlimited\",\n },\n {\n id: 6,\n field: \"Annual Architecture Review\",\n community: \"N/A\",\n standard: \"Yes\",\n enterprise: \"Yes\",\n },\n {\n id: 7,\n field: \"Annual Performance Review\",\n community: \"N/A\",\n standard: \"Yes\",\n enterprise: \"Yes\",\n },\n {\n id: 8,\n field: \"Indemnification\",\n community: \"N/A\",\n standard: \"N/A\",\n enterprise: \"Yes\",\n },\n {\n id: 9,\n field: \"Security + Policy Review\",\n community: \"N/A\",\n standard: \"N/A\",\n enterprise: \"Yes\",\n },\n];\n\nexport const planButtons = [\n {\n id: 0,\n text: \"Join Slack\",\n text2: \"\",\n link: \"https://slack.min.io\",\n plan: \"community\",\n },\n {\n id: 1,\n text: \"Subscribe\",\n text2: \"Upgrade\",\n link: \"https://subnet.min.io/subscription\",\n plan: \"standard\",\n },\n {\n id: 2,\n text: \"Subscribe\",\n text2: \"Upgrade\",\n link: \"https://subnet.min.io/subscription\",\n plan: \"enterprise\",\n },\n];\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { LinearProgress, TextField } from \"@material-ui/core\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Typography from \"@material-ui/core/Typography\";\nimport Button from \"@material-ui/core/Button\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport { SubscriptionActivateRequest } from \"../Buckets/types\";\nimport { setModalErrorSnackMessage } from \"../../../actions\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport api from \"../../../common/api\";\nimport PersonOutlineOutlinedIcon from \"@material-ui/icons/PersonOutlineOutlined\";\nimport LockOutlinedIcon from \"@material-ui/icons/LockOutlined\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n errorBlock: {\n color: \"red\",\n },\n subnetLicenseKey: {\n padding: \"10px 10px 10px 0px\",\n borderRight: \"1px solid rgba(0, 0, 0, 0.12)\",\n opacity: 0.5,\n \"&:hover\": { opacity: 1 },\n },\n subnetLoginForm: {\n padding: \"10px 0px 10px 10px\",\n opacity: 0.5,\n \"&:hover\": { opacity: 1 },\n },\n licenseKeyField: {},\n pageTitle: {\n marginBottom: 20,\n },\n button: {\n textTransform: \"none\",\n fontSize: 15,\n fontWeight: 700,\n background:\n \"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box\",\n color: \"#fff\",\n },\n buttonSignup: {\n textTransform: \"none\",\n fontSize: 15,\n fontWeight: 700,\n marginLeft: 15,\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IActivationModal {\n classes: any;\n open: boolean;\n closeModal: () => void;\n setModalErrorSnackMessage: typeof setModalErrorSnackMessage;\n}\n\nconst ActivationModal = ({\n classes,\n open,\n closeModal,\n setModalErrorSnackMessage,\n}: IActivationModal) => {\n const [license, setLicense] = useState(\"\");\n const [subnetPassword, setSubnetPassword] = useState(\"\");\n const [subnetEmail, setSubnetEmail] = useState(\"\");\n const [loading, setLoading] = useState(false);\n\n const activateProduct = () => {\n if (loading) {\n return;\n }\n setLoading(true);\n let request: SubscriptionActivateRequest = {\n license: license,\n email: subnetEmail,\n password: subnetPassword,\n };\n api\n .invoke(\"POST\", \"/api/v1/subscription/validate\", request)\n .then(() => {\n setLoading(false);\n setLicense(\"\");\n setSubnetPassword(\"\");\n setSubnetEmail(\"\");\n closeModal();\n })\n .catch((err) => {\n setLoading(false);\n setLicense(\"\");\n setSubnetPassword(\"\");\n setSubnetEmail(\"\");\n setModalErrorSnackMessage(err);\n });\n };\n\n return open ? (\n {\n setLicense(\"\");\n setSubnetPassword(\"\");\n setSubnetEmail(\"\");\n closeModal();\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n \n \n \n Activate SUBNET License\n \n \n \n \n \n Enter your license key here\n \n \n ) =>\n setLicense(event.target.value)\n }\n fullWidth\n className={classes.licenseKeyField}\n variant=\"outlined\"\n />\n
\n
\n activateProduct()}\n disabled={loading || license.trim().length === 0}\n >\n Activate\n \n
\n \n \n \n }\n id=\"subnet-email\"\n name=\"subnet-email\"\n onChange={(event: React.ChangeEvent) => {\n setSubnetEmail(event.target.value);\n }}\n placeholder=\"email\"\n label=\"\"\n type=\"text\"\n value={subnetEmail}\n />\n \n \n }\n id=\"subnet-password\"\n name=\"subnet-password\"\n onChange={(event: React.ChangeEvent) => {\n setSubnetPassword(event.target.value);\n }}\n placeholder=\"password\"\n label=\"\"\n type=\"password\"\n value={subnetPassword}\n />\n \n \n activateProduct()}\n disabled={\n loading ||\n subnetEmail.trim().length === 0 ||\n subnetPassword.trim().length === 0\n }\n variant=\"contained\"\n >\n Activate\n \n {\n e.preventDefault();\n window.open(\"https://min.io/pricing\", \"_blank\");\n }}\n variant=\"outlined\"\n >\n Sign Up\n \n \n \n \n
\n {loading && (\n \n \n \n )}\n \n ) : null;\n};\n\nconst mapDispatchToProps = {\n setModalErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(ActivationModal));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport clsx from \"clsx\";\nimport Grid from \"@material-ui/core/Grid\";\nimport Paper from \"@material-ui/core/Paper\";\nimport Button from \"@material-ui/core/Button\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Typography from \"@material-ui/core/Typography\";\nimport CheckCircleIcon from \"@material-ui/icons/CheckCircle\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport { planDetails, planItems, planButtons } from \"./utils\";\nimport ActivationModal from \"./ActivationModal\";\nimport api from \"../../../common/api\";\nimport { LicenseInfo } from \"./types\";\nimport { CircularProgress, LinearProgress } from \"@material-ui/core\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { niceBytes } from \"../../../common/utils\";\nimport Moment from \"react-moment\";\n\nconst mapState = (state: AppState) => ({\n operatorMode: state.system.operatorMode,\n});\n\nconst connector = connect(mapState, null);\n\nconst styles = (theme: Theme) =>\n createStyles({\n pageTitle: {\n fontSize: 18,\n marginBottom: 20,\n },\n paper: {\n padding: \"20px 52px 20px 28px\",\n },\n licenseContainer: {\n position: \"relative\",\n padding: \"20px 52px 0px 28px\",\n background: \"#032F51\",\n boxShadow: \"0px 3px 7px #00000014\",\n \"& h2\": {\n color: \"#FFF\",\n marginBottom: 67,\n },\n \"& a\": {\n textDecoration: \"none\",\n },\n \"& h3\": {\n color: \"#FFFFFF\",\n marginBottom: \"30px\",\n fontWeight: \"bold\",\n },\n \"& h6\": {\n color: \"#FFFFFF !important\",\n },\n },\n tableContainer: {\n marginLeft: 28,\n },\n detailsContainer: {\n textAlign: \"center\",\n paddingBottom: 12,\n borderRadius: \"3px 3px 0 0\",\n marginLeft: 8,\n maxWidth: \"calc(25% - 8px)\",\n },\n detailsContainerBorder: {\n border: \"1px solid #e2e2e2\",\n borderBottom: 0,\n borderRadius: \"4px 4px 0px 0px\",\n },\n detailsContainerBorderHighlighted: {\n border: \"1px solid #B5B5B5\",\n borderBottom: 0,\n },\n detailsTitle: {\n fontSize: 19,\n fontWeight: 700,\n marginBottom: 26,\n paddingTop: 18,\n },\n activePlanHeader: {\n fontWeight: 700,\n background: \"#D5DDE5\",\n borderRadius: \"3px 3px 0px 0px\",\n color: \"#121212\",\n padding: 8,\n borderTop: \"1px solid #D5DDE5\",\n marginTop: -2,\n },\n planHeader: {\n background: \"#FFFFFF\",\n borderRadius: \"3px 3px 0px 0px\",\n padding: 8,\n borderTop: \"1px solid #D5DDE5\",\n },\n detailsPrice: {\n fontSize: 13,\n fontWeight: 700,\n marginBottom: 8,\n },\n detailsCapacityMax: {\n minHeight: 28,\n fontSize: 10,\n fontWeight: 700,\n marginBottom: 12,\n padding: \"0% 15%\",\n },\n detailsCapacityMin: {\n fontSize: 10,\n },\n itemContainer: {\n height: 36,\n },\n itemContainerDetail: {\n height: 48,\n },\n item: {\n height: \"100%\",\n borderLeft: \"1px solid #e2e2e2\",\n borderRight: \"1px solid #e2e2e2\",\n textAlign: \"center\",\n fontSize: 10,\n fontWeight: 700,\n display: \"flex\",\n alignItems: \"center\",\n alignContent: \"center\",\n marginLeft: 8,\n maxWidth: \"calc(25% - 8px)\",\n borderTop: \"1px solid #e5e5e5\",\n },\n itemFirst: {\n borderLeft: 0,\n borderRight: 0,\n },\n itemHighlighted: {\n borderLeft: \"1px solid #B5B5B5\",\n borderRight: \"1px solid #B5B5B5\",\n },\n field: {\n textAlign: \"left\",\n fontWeight: 400,\n fontSize: 12,\n },\n checkIcon: {\n height: 12,\n color:\n \"transparent linear-gradient(90deg, #073052 0%, #081c42 100%) 0% 0% no-repeat padding-box\",\n },\n buttonContainer: {\n paddingTop: 8,\n paddingBottom: 24,\n height: \"100%\",\n display: \"flex\",\n justifyContent: \"center\",\n borderRadius: \"0 0 3px 3px\",\n border: \"1px solid #e2e2e2\",\n borderTop: 0,\n marginLeft: 8,\n maxWidth: \"calc(25% - 8px)\",\n },\n buttonContainerBlank: {\n border: 0,\n },\n buttonContainerHighlighted: {\n border: \"1px solid #B5B5B5\",\n borderTop: 0,\n },\n button: {\n textTransform: \"none\",\n fontSize: 15,\n fontWeight: 700,\n },\n licenseButton: {\n float: \"right\",\n marginTop: 25,\n marginRight: 25,\n },\n openSourcePolicy: {\n color: \"#1C5A8D\",\n fontWeight: \"bold\",\n },\n activateLink: {\n color: \"#1C5A8D\",\n fontWeight: \"bold\",\n clear: \"both\",\n background: \"none\",\n border: \"none\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n },\n subnetRefreshLicenseLink: {\n color: \"#1C5A8D\",\n fontWeight: \"bold\",\n clear: \"both\",\n background: \"none\",\n border: \"none\",\n textDecoration: \"underline\",\n cursor: \"pointer\",\n fontSize: 13,\n },\n fullWidth: {\n width: \"100%\",\n height: \"100%\",\n },\n midWidth: {\n width: \"70%\",\n float: \"left\",\n height: \"100%\",\n },\n smallWidth: {\n width: \"30%\",\n float: \"right\",\n height: \"100%\",\n borderRadius: \"0px 3px 0px 0px !important\",\n },\n licenseInfo: { color: \"#FFFFFF\", position: \"relative\" },\n licenseInfoTitle: {\n textTransform: \"none\",\n color: \"#BFBFBF\",\n fontSize: 11,\n },\n licenseInfoValue: {\n textTransform: \"none\",\n fontSize: 14,\n fontWeight: \"bold\",\n },\n licenseDescription: {\n background: \"#032F51\",\n padding: \"30px 30px\",\n borderTop: \"1px solid #e2e5e4\",\n borderLeft: \"1px solid #e2e5e4\",\n borderRight: \"1px solid #e2e5e4\",\n bottom: 0,\n left: \"5%\",\n right: \"5%\",\n position: \"absolute\",\n },\n currentPlanBG: {\n background: \"#022A4A 0% 0% no-repeat padding-box\",\n color: \"#FFFFFF\",\n borderTop: \"1px solid #52687d\",\n },\n currentPlanButton: {\n background: \"#FFFFFF\",\n color: \"#022A4A\",\n \"&:hover\": {\n background: \"#FFFFFF\",\n },\n },\n planItemsPadding: {\n padding: \"23px 33px\",\n },\n subnetSubTitle: {\n fontSize: 12,\n },\n verifiedIcon: {\n width: 96,\n position: \"absolute\",\n right: 0,\n bottom: 29,\n },\n loadingLoginStrategy: {\n textAlign: \"center\",\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface ILicenseProps {\n classes: any;\n operatorMode: boolean;\n}\n\nconst License = ({ classes, operatorMode }: ILicenseProps) => {\n const closeModalAndFetchLicenseInfo = () => {\n setActivateProductModal(false);\n fetchLicenseInfo();\n };\n const fetchLicenseInfo = () => {\n setLoadingLicenseInfo(true);\n api\n .invoke(\"GET\", `/api/v1/subscription/info`)\n .then((res: LicenseInfo) => {\n if (res) {\n if (res.plan === \"STANDARD\") {\n setCurrentPlanID(1);\n } else if (res.plan === \"ENTERPRISE\") {\n setCurrentPlanID(2);\n } else {\n setCurrentPlanID(1);\n }\n setLicenseInfo(res);\n }\n setLoadingLicenseInfo(false);\n })\n .catch((err: any) => {\n setLoadingLicenseInfo(false);\n });\n };\n const refreshLicense = () => {\n setLoadingRefreshLicense(true);\n api\n .invoke(\"POST\", `/api/v1/subscription/refresh`, {})\n .then((res: LicenseInfo) => {\n if (res) {\n if (res.plan === \"STANDARD\") {\n setCurrentPlanID(1);\n } else if (res.plan === \"ENTERPRISE\") {\n setCurrentPlanID(2);\n } else {\n setCurrentPlanID(1);\n }\n setLicenseInfo(res);\n }\n setLoadingRefreshLicense(false);\n })\n .catch((err: any) => {\n setLoadingRefreshLicense(false);\n });\n };\n\n const [activateProductModal, setActivateProductModal] =\n useState(false);\n\n const [licenseInfo, setLicenseInfo] = useState();\n const [currentPlanID, setCurrentPlanID] = useState(0);\n const [loadingLicenseInfo, setLoadingLicenseInfo] = useState(true);\n const [loadingRefreshLicense, setLoadingRefreshLicense] =\n useState(false);\n\n useEffect(() => {\n fetchLicenseInfo();\n }, []);\n\n if (loadingLicenseInfo) {\n return (\n \n \n \n );\n }\n return (\n \n \n \n \n \n \n {licenseInfo ? (\n \n \n \n \n License\n \n \n Commercial License\n \n \n Organization\n \n \n {licenseInfo.organization}\n \n \n Registered Capacity\n \n \n {niceBytes(\n (licenseInfo.storage_capacity * 1099511627776) // 1 Terabyte = 1099511627776 Bytes\n .toString(10)\n )}\n \n \n Expiry Date\n \n \n \n {licenseInfo.expires_at}\n \n \n \n \n \n Subscription Plan\n \n \n {licenseInfo.plan}\n \n \n Requester\n \n \n {licenseInfo.email}\n \n \n \n \n \n ) : (\n \n \"agpl\"\n \n GNU Affero General Public License\n \n \n
\n Version 3\n \n The GNU Affero General Public License is a free,\n copyleft license for software and other kinds of works,\n specifically designed to ensure cooperation with the\n Community in the case of network server software.\n \n
\n \n
\n )}\n \n \n {licenseInfo ? (\n \n {\" \"}\n \n Login to MinIO SUBNET !\n \n \n It combines a commercial license with a support experience\n unlike any other.\n \n
\n \n Login to SUBNET\n \n {operatorMode && (\n \n {\" \"}\n
\n
\n {\n e.preventDefault();\n refreshLicense();\n }}\n >\n Refresh Licence\n \n {loadingRefreshLicense && (\n \n )}\n
\n )}\n
\n ) : (\n \n \n Choosing between GNU AGPL v3 and Commercial License\n \n \n If you are building proprietary applications, you may want\n to choose the commercial license included as part of the\n Standard and Enterprise subscription plans. Applications\n must otherwise comply with all the GNU AGPLv3 License &\n Trademark obligations. Follow the links below to learn more\n about the compliance policy.\n \n
\n \n Open Source Policy Compliance\n \n
\n
\n \n Trademark Policy\n \n
\n )}\n
\n
\n \n \n \n {operatorMode ? (\n closeModalAndFetchLicenseInfo()}\n />\n ) : null}\n \n \n \n {planDetails.map((details: any) => {\n let currentPlan =\n (!licenseInfo && details.title === \"Community\") ||\n (licenseInfo &&\n licenseInfo.plan.toLowerCase() ===\n details.title.toLowerCase());\n return (\n \n \n {currentPlan ? \"Current Plan\" : \"\\u00A0\"}\n \n \n {details.title}\n \n \n {details.price}\n \n \n {details.capacityMax || \"\"}\n \n \n );\n })}\n \n {planItems.map((item: any) => {\n return (\n \n \n {item.field}\n \n \n \n {item.community === \"N/A\" ? (\n \"\"\n ) : item.community === \"Yes\" ? (\n \n ) : (\n item.community\n )}\n \n {item.communityDetail !== undefined && (\n \n {item.communityDetail}\n \n )}\n
\n \n \n {item.standard === \"N/A\" ? (\n \"\"\n ) : item.standard === \"Yes\" ? (\n \n ) : (\n item.standard\n )}\n \n \n \n \n {item.enterprise === \"N/A\" ? (\n \"\"\n ) : item.enterprise === \"Yes\" ? (\n \n ) : (\n item.enterprise\n )}\n \n \n \n );\n })}\n \n \n {planButtons.map((button: any, index: any) => {\n return (\n \n \n {\n e.preventDefault();\n window.open(\n `${button.link}/?ref=${\n operatorMode ? \"op\" : \"con\"\n }`,\n \"_blank\"\n );\n }}\n >\n {currentPlanID !== index && index > 0\n ? button.text2\n : button.text}\n \n \n {operatorMode &&\n button.text === \"Subscribe\" &&\n !(\n licenseInfo &&\n licenseInfo.plan.toLowerCase() ===\n button.plan.toLowerCase()\n ) && (\n \n {\n e.preventDefault();\n setActivateProductModal(true);\n }}\n >\n Activate\n \n \n )}\n \n );\n })}\n \n \n \n \n \n \n
\n
\n );\n};\n\nexport default connector(withStyles(styles)(License));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { TraceMessage } from \"./types\";\n\nexport const TRACE_MESSAGE_RECEIVED = \"TRACE_MESSAGE_RECEIVED\";\nexport const TRACE_RESET_MESSAGES = \"TRACE_RESET_MESSAGES\";\n\ninterface TraceMessageReceivedAction {\n type: typeof TRACE_MESSAGE_RECEIVED;\n message: TraceMessage;\n}\n\ninterface TraceResetMessagesAction {\n type: typeof TRACE_RESET_MESSAGES;\n}\n\nexport type TraceActionTypes =\n | TraceMessageReceivedAction\n | TraceResetMessagesAction;\n\nexport function traceMessageReceived(message: TraceMessage) {\n return {\n type: TRACE_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function traceResetMessages() {\n return {\n type: TRACE_RESET_MESSAGES,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\n// Close codes for websockets defined in RFC 6455\nexport const WSCloseNormalClosure = 1000;\nexport const WSCloseCloseGoingAway = 1001;\nexport const WSCloseAbnormalClosure = 1006;\nexport const WSClosePolicyViolation = 1008;\nexport const WSCloseInternalServerErr = 1011;\n\nexport const wsProtocol = (protocol: string): string => {\n let wsProtocol = \"ws\";\n if (protocol === \"https:\") {\n wsProtocol = \"wss\";\n }\n return wsProtocol;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect } from \"react\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { traceMessageReceived, traceResetMessages } from \"./actions\";\nimport { TraceMessage } from \"./types\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { niceBytes, timeFromDate } from \"../../../common/utils\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport { Grid } from \"@material-ui/core\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport moment from \"moment/moment\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n logList: {\n background: \"white\",\n height: \"400px\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4px\",\n padding: \"0px\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0px\",\n padding: \"0px\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n sizeItem: {\n width: 150,\n },\n timeItem: {\n width: 100,\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface ITrace {\n classes: any;\n traceMessageReceived: typeof traceMessageReceived;\n traceResetMessages: typeof traceResetMessages;\n messages: TraceMessage[];\n namespace: string;\n tenant: string;\n}\n\nconst Trace = ({\n classes,\n traceMessageReceived,\n traceResetMessages,\n messages,\n}: ITrace) => {\n useEffect(() => {\n traceResetMessages();\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n const c = new W3CWebSocket(`${wsProt}://${url.hostname}:${port}/ws/trace`);\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: TraceMessage = JSON.parse(message.data.toString());\n m.ptime = moment(m.time, \"YYYY-MM-DD HH:mm:s.SSSS +0000 UTC\").toDate();\n m.key = Math.random();\n traceMessageReceived(m);\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n };\n return () => {\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n };\n }\n }, [traceMessageReceived, traceResetMessages]);\n\n return (\n \n \n \n \n {\n const timeParse = new Date(time);\n return timeFromDate(timeParse);\n },\n globalClass: classes.timeItem,\n },\n { label: \"Name\", elementKey: \"api\" },\n {\n label: \"Status\",\n elementKey: \"\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.statusCode} ${fullElement.statusMsg}`,\n renderFullObject: true,\n },\n {\n label: \"Location\",\n elementKey: \"configuration_id\",\n renderFunction: (fullElement: TraceMessage) =>\n `${fullElement.host} ${fullElement.client}`,\n renderFullObject: true,\n },\n {\n label: \"Load Time\",\n elementKey: \"callStats.duration\",\n globalClass: classes.timeItem,\n },\n {\n label: \"Upload\",\n elementKey: \"callStats.rx\",\n renderFunction: niceBytes,\n globalClass: classes.sizeItem,\n },\n {\n label: \"Download\",\n elementKey: \"callStats.tx\",\n renderFunction: niceBytes,\n globalClass: classes.sizeItem,\n },\n ]}\n isLoading={false}\n records={messages}\n entityName=\"Traces\"\n idField=\"api\"\n customEmptyMessage=\"There are no traced Elements yet\"\n autoScrollToBottom\n />\n \n \n \n );\n};\n\nconst mapState = (state: AppState) => ({\n messages: state.trace.messages,\n});\n\nconst connector = connect(mapState, {\n traceMessageReceived: traceMessageReceived,\n traceResetMessages: traceResetMessages,\n});\n\nexport default connector(withStyles(styles)(Trace));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { LogMessage } from \"./types\";\n\nexport const LOG_MESSAGE_RECEIVED = \"LOG_MESSAGE_RECEIVED\";\nexport const LOG_RESET_MESSAGES = \"LOG_RESET_MESSAGES\";\n\ninterface LogMessageReceivedAction {\n type: typeof LOG_MESSAGE_RECEIVED;\n message: LogMessage;\n}\n\ninterface LogResetMessagesAction {\n type: typeof LOG_RESET_MESSAGES;\n}\n\nexport type LogActionTypes = LogMessageReceivedAction | LogResetMessagesAction;\n\nexport function logMessageReceived(message: LogMessage) {\n return {\n type: LOG_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function logResetMessages() {\n return {\n type: LOG_RESET_MESSAGES,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { connect } from \"react-redux\";\nimport { Grid } from \"@material-ui/core\";\nimport TextField from \"@material-ui/core/TextField\";\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport moment from \"moment/moment\";\nimport { AppState } from \"../../../../store\";\nimport { logMessageReceived, logResetMessages } from \"../actions\";\nimport { LogMessage } from \"../types\";\nimport { timeFromDate } from \"../../../../common/utils\";\nimport { wsProtocol } from \"../../../../utils/wsUtils\";\nimport {\n actionsTray,\n logsCommon,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n logList: {\n background: \"#fff\",\n minHeight: 400,\n height: \"calc(100vh - 304px)\",\n overflow: \"auto\",\n fontSize: 13,\n padding: \"25px 45px 0\",\n border: \"1px solid #EAEDEE\",\n borderRadius: 4,\n },\n tab: {\n paddingLeft: 25,\n },\n logerror: {\n color: \"#A52A2A\",\n },\n logerror_tab: {\n color: \"#A52A2A\",\n paddingLeft: 25,\n },\n ansidefault: {\n color: \"#000\",\n },\n highlight: {\n \"& span\": {\n backgroundColor: \"#082F5238\",\n },\n },\n ...actionsTray,\n ...searchField,\n ...logsCommon,\n });\n\ninterface ILogs {\n classes: any;\n logMessageReceived: typeof logMessageReceived;\n logResetMessages: typeof logResetMessages;\n messages: LogMessage[];\n}\n\nconst ErrorLogs = ({\n classes,\n logMessageReceived,\n logResetMessages,\n messages,\n}: ILogs) => {\n const [highlight, setHighlight] = useState(\"\");\n\n useEffect(() => {\n logResetMessages();\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/console`\n );\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n // console.log(message.data.toString())\n // FORMAT: 00:35:17 UTC 01/01/2021\n let m: LogMessage = JSON.parse(message.data.toString());\n m.time = moment(m.time, \"HH:mm:s UTC MM/DD/YYYY\").toDate();\n m.key = Math.random();\n logMessageReceived(m);\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n };\n return () => {\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n };\n }\n }, [logMessageReceived, logResetMessages]);\n\n const renderError = (logElement: LogMessage) => {\n let errorElems = [];\n if (logElement.error !== null && logElement.error !== undefined) {\n if (logElement.api && logElement.api.name) {\n const errorText = `API: ${logElement.api.name}`;\n\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n\n errorElems.push(\n \n
\n {errorText}\n
\n );\n }\n if (logElement.time) {\n const errorText = `Time: ${timeFromDate(logElement.time)}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n
\n );\n }\n if (logElement.deploymentid) {\n const errorText = `DeploymentID: ${logElement.deploymentid}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.requestID) {\n const errorText = `RequestID: ${logElement.requestID}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.remotehost) {\n const errorText = `RemoteHost: ${logElement.remotehost}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.host) {\n const errorText = `Host: ${logElement.host}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.userAgent) {\n const errorText = `UserAgent: ${logElement.userAgent}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.error.message) {\n const errorText = `Error: ${logElement.error.message}`;\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n if (logElement.error.source) {\n // for all sources add padding\n for (let s in logElement.error.source) {\n const errorText = logElement.error.source[s];\n const highlightedLine =\n highlight !== \"\"\n ? errorText.toLowerCase().includes(highlight.toLowerCase())\n : false;\n errorElems.push(\n \n {errorText}\n \n );\n }\n }\n }\n return errorElems;\n };\n\n const renderLog = (logElement: LogMessage) => {\n let logMessage = logElement.ConsoleMsg;\n // remove any non ascii characters, exclude any control codes\n logMessage = logMessage.replace(/([^\\x20-\\x7F])/g, \"\");\n\n // regex for terminal colors like e.g. `[31;4m `\n const tColorRegex = /((\\[[0-9;]+m))/g;\n\n // get substring if there was a match for to split what\n // is going to be colored and what not, here we add color\n // only to the first match.\n let substr = logMessage.replace(tColorRegex, \"\");\n\n // in case highlight is set, we select the line that contains the requested string\n let highlightedLine =\n highlight !== \"\"\n ? logMessage.toLowerCase().includes(highlight.toLowerCase())\n : false;\n\n // if starts with multiple spaces add padding\n if (substr.startsWith(\" \")) {\n return (\n \n {substr}\n \n );\n } else if (logElement.error !== null && logElement.error !== undefined) {\n // list error message and all sources and error elems\n return renderError(logElement);\n } else {\n // for all remaining set default class\n return (\n \n {substr}\n \n );\n }\n };\n\n const renderLines = messages.map((m) => {\n return renderLog(m);\n });\n\n return (\n \n \n \n {\n setHighlight(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n startAdornment: (\n \n \n \n ),\n }}\n />\n \n \n
\n
\n \n
{renderLines}
\n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n messages: state.logs.messages,\n});\n\nconst connector = connect(mapState, {\n logMessageReceived: logMessageReceived,\n logResetMessages: logResetMessages,\n});\n\nexport default withStyles(styles)(connector(ErrorLogs));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport TextField from \"@material-ui/core/TextField\";\nimport { searchField } from \"../common/styleLibrary\";\n\ninterface IFilterInputWrapper {\n classes: any;\n value: string;\n onChange: (txtVar: string) => any;\n label: string;\n placeholder?: string;\n id: string;\n name: string;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n searchField: {\n ...searchField.searchField,\n height: 30,\n padding: 0,\n \"& input\": {\n padding: \"0 12px\",\n height: 28,\n fontSize: 12,\n fontWeight: 600,\n color: \"#393939\",\n },\n \"&.isDisabled\": {\n \"&:hover\": {\n borderColor: \"#EAEDEE\",\n },\n },\n \"& input.Mui-disabled\": {\n backgroundColor: \"#EAEAEA\",\n },\n },\n labelStyle: {\n color: \"#393939\",\n fontSize: 12,\n marginBottom: 4,\n },\n buttonKit: {\n display: \"flex\",\n alignItems: \"center\",\n },\n toggleButton: {\n marginRight: 10,\n },\n fieldContainer: {\n flexGrow: 1,\n margin: \"0 15px\",\n },\n });\n\nconst FilterInputWrapper = ({\n classes,\n label,\n onChange,\n value,\n placeholder = \"\",\n id,\n name,\n}: IFilterInputWrapper) => {\n return (\n \n
\n
{label}
\n
\n {\n onChange(val.target.value);\n }}\n InputProps={{\n disableUnderline: true,\n }}\n className={classes.searchField}\n value={value}\n />\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(FilterInputWrapper);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect, useCallback } from \"react\";\nimport { connect } from \"react-redux\";\nimport get from \"lodash/get\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Button, Grid } from \"@material-ui/core\";\nimport { ArrowDropUp } from \"@material-ui/icons\";\nimport ArrowDropDownIcon from \"@material-ui/icons/ArrowDropDown\";\nimport {\n actionsTray,\n containerForHeader,\n logsCommon,\n searchField,\n} from \"../../Common/FormComponents/common/styleLibrary\";\nimport { IReqInfoSearchResults, ISearchResponse } from \"./types\";\nimport { niceBytes, nsToSeconds } from \"../../../../common/utils\";\nimport { setErrorSnackMessage } from \"../../../../actions\";\nimport api from \"../../../../common/api\";\nimport TableWrapper from \"../../Common/TableWrapper/TableWrapper\";\nimport FilterInputWrapper from \"../../Common/FormComponents/FilterInputWrapper/FilterInputWrapper\";\nimport DateTimePickerWrapper from \"../../Common/FormComponents/DateTimePickerWrapper/DateTimePickerWrapper\";\n\ninterface ILogSearchProps {\n classes: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n inputBar: {\n flexGrow: 1,\n marginLeft: 15,\n },\n advancedLabel: {\n display: \"flex\",\n alignItems: \"center\",\n color: \"#091C42\",\n border: 0,\n backgroundColor: \"transparent\",\n cursor: \"pointer\",\n \"&:focus, &:active\": {\n outline: \"none\",\n },\n },\n advancedLabelContainer: {\n marginTop: 10,\n },\n getInformationContainer: {\n textAlign: \"right\",\n },\n orderButton: {\n width: 93,\n },\n recordsLabel: {\n alignSelf: \"center\",\n marginLeft: 15,\n },\n blockCollapsed: {\n height: 0,\n overflowY: \"hidden\",\n transitionDuration: \"0.3s\",\n },\n filterOpen: {\n height: 200,\n marginBottom: 12,\n },\n endLineAction: {\n marginBottom: 15,\n },\n filtersContainer: {\n display: \"flex\",\n justifyContent: \"space-between\",\n marginBottom: 12,\n },\n innerContainer: {\n backgroundColor: \"#fff\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n padding: 10,\n marginBottom: 15,\n },\n noticeLabel: {\n marginLeft: 15,\n marginBottom: 15,\n fontSize: 12,\n color: \"#9C9C9C\",\n },\n\n tableFOpen: {\n height: \"calc(100vh - 561px)\",\n },\n tableFClosed: {\n height: \"calc(100vh - 349px)\",\n },\n \"@global\": {\n \".overrideMargin\": {\n marginLeft: 0,\n },\n },\n ...searchField,\n ...actionsTray,\n ...logsCommon,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst LogsSearchMain = ({ classes, setErrorSnackMessage }: ILogSearchProps) => {\n const [loading, setLoading] = useState(true);\n const [timeStart, setTimeStart] = useState(null);\n const [timeEnd, setTimeEnd] = useState(null);\n const [filterOpen, setFilterOpen] = useState(false);\n const [records, setRecords] = useState([]);\n const [bucket, setBucket] = useState(\"\");\n const [apiName, setApiName] = useState(\"\");\n const [userAgent, setUserAgent] = useState(\"\");\n const [object, setObject] = useState(\"\");\n const [requestID, setRequestID] = useState(\"\");\n const [responseStatus, setResponseStatus] = useState(\"\");\n const [sortOrder, setSortOrder] =\n useState<\"ASC\" | \"DESC\" | undefined>(\"DESC\");\n const [columnsShown, setColumnsShown] = useState([\n \"time\",\n \"api_name\",\n \"bucket\",\n \"object\",\n \"remote_host\",\n \"request_id\",\n \"user_agent\",\n \"response_status\",\n ]);\n const [nextPage, setNextPage] = useState(0);\n const [alreadyFetching, setAlreadyFetching] = useState(false);\n\n let recordsResp: any = null;\n\n const fetchRecords = useCallback(() => {\n if (!alreadyFetching) {\n setAlreadyFetching(true);\n let queryParams = `${bucket !== \"\" ? `&fp=bucket:${bucket}` : \"\"}${\n object !== \"\" ? `&fp=object:${object}` : \"\"\n }${apiName !== \"\" ? `&fp=api_name:${apiName}` : \"\"}${\n requestID !== \"\" ? `&fp=request_id:${requestID}` : \"\"\n }${userAgent !== \"\" ? `&fp=user_agent:${userAgent}` : \"\"}${\n responseStatus !== \"\" ? `&fp=response_status:${responseStatus}` : \"\"\n }`;\n\n queryParams = queryParams.trim();\n\n if (queryParams.endsWith(\",\")) {\n queryParams = queryParams.slice(0, -1);\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/logs/search?q=reqinfo${\n queryParams !== \"\" ? `${queryParams}` : \"\"\n }&pageSize=100&pageNo=${nextPage}&order=${\n sortOrder === \"DESC\" ? \"timeDesc\" : \"timeAsc\"\n }${\n timeStart !== null ? `&timeStart=${timeStart.toISOString()}` : \"\"\n }${timeEnd !== null ? `&timeEnd=${timeEnd.toISOString()}` : \"\"}`\n )\n .then((res: ISearchResponse) => {\n const fetchedResults = res.results || [];\n const newResultSet = [...records, ...fetchedResults];\n\n setLoading(false);\n setAlreadyFetching(false);\n setRecords(newResultSet);\n setNextPage(nextPage + 1);\n\n if (recordsResp !== null) {\n recordsResp();\n }\n })\n .catch((err: any) => {\n setLoading(false);\n setAlreadyFetching(false);\n setErrorSnackMessage(err);\n });\n }\n }, [\n bucket,\n object,\n apiName,\n requestID,\n userAgent,\n responseStatus,\n nextPage,\n sortOrder,\n timeStart,\n timeEnd,\n alreadyFetching,\n records,\n recordsResp,\n setErrorSnackMessage,\n ]);\n\n useEffect(() => {\n if (loading) {\n setRecords([]);\n fetchRecords();\n }\n }, [loading, sortOrder, fetchRecords]);\n\n const triggerLoad = () => {\n setNextPage(0);\n setLoading(true);\n };\n\n const selectColumn = (colName: string, active: boolean) => {\n let newArray = [...columnsShown];\n\n if (!active) {\n newArray = columnsShown.filter((element) => element !== colName);\n } else {\n if (!newArray.includes(colName)) {\n newArray.push(colName);\n }\n }\n setColumnsShown(newArray);\n };\n\n const sortChange = (sortData: any) => {\n const newSortDirection = get(sortData, \"sortDirection\", \"DESC\");\n setSortOrder(newSortDirection);\n setNextPage(0);\n setLoading(true);\n };\n\n const loadMoreRecords = (_: { startIndex: number; stopIndex: number }) => {\n fetchRecords();\n return new Promise((resolve) => {\n recordsResp = resolve;\n });\n };\n\n return (\n \n \n \n Start Time\n \n End Time\n \n \n \n \n
\n
\n Enable your preferred options to get filtered records.\n
\n You can use '*' to match any character, '.' to signify a single\n character or '\\' to scape an special character (E.g. mybucket-*)\n
\n
\n \n \n \n
\n
\n \n \n \n
\n
\n \n
\n \n
\n {\n setFilterOpen(!filterOpen);\n }}\n >\n Advanced Filters{\" \"}\n {filterOpen ? : }\n \n
\n \n Get Information\n \n \n \n (\n \n \n {element.response_status_code} ({element.response_status})\n \n \n ),\n renderFullObject: true,\n },\n {\n label: \"Request Content Length\",\n elementKey: \"request_content_length\",\n renderFunction: niceBytes,\n },\n {\n label: \"Response Content Length\",\n elementKey: \"response_content_length\",\n renderFunction: niceBytes,\n },\n {\n label: \"Time to Response NS\",\n elementKey: \"time_to_response_ns\",\n renderFunction: nsToSeconds,\n contentTextAlign: \"right\",\n },\n ]}\n isLoading={loading}\n records={records}\n entityName=\"Logs\"\n customEmptyMessage={\"There is no information with this criteria\"}\n idField=\"request_id\"\n columnsSelector\n columnsShown={columnsShown}\n onColumnChange={selectColumn}\n customPaperHeight={\n filterOpen ? classes.tableFOpen : classes.tableFClosed\n }\n sortConfig={{\n currentSort: \"time\",\n currentDirection: sortOrder,\n triggerSort: sortChange,\n }}\n infiniteScrollConfig={{\n recordsCount: 1000000,\n loadMoreRecords: loadMoreRecords,\n }}\n textSelectable\n />\n \n \n
\n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(LogsSearchMain));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport { Grid, LinearProgress } from \"@material-ui/core\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport Tab from \"@material-ui/core/Tab\";\nimport Tabs from \"@material-ui/core/Tabs\";\nimport { containerForHeader } from \"../Common/FormComponents/common/styleLibrary\";\nimport ErrorLogs from \"./ErrorLogs/ErrorLogs\";\nimport LogsSearchMain from \"./LogSearch/LogsSearchMain\";\nimport api from \"../../../common/api\";\n\ninterface ILogsMainProps {\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst LogsMain = ({ classes }: ILogsMainProps) => {\n const [currentTab, setCurrentTab] = useState(0);\n const [loading, setLoading] = useState(true);\n const [showLogSearch, setShowLogSearch] = useState(false);\n\n useEffect(() => {\n api\n .invoke(\"GET\", `/api/v1/logs/search?q=reqinfo&pageSize=10&pageNo=0`)\n .then(() => {\n setShowLogSearch(true);\n setLoading(false);\n })\n .catch((err: any) => {\n setLoading(false);\n console.info(\"Log Search API not available.\");\n });\n }, [loading]);\n\n return (\n \n \n \n \n {!loading ? (\n \n \n All Logs\n \n , newValue: number) => {\n setCurrentTab(newValue);\n }}\n indicatorColor=\"primary\"\n textColor=\"primary\"\n aria-label=\"cluster-tabs\"\n variant=\"scrollable\"\n scrollButtons=\"auto\"\n >\n \n {showLogSearch && }\n \n \n {currentTab === 0 && (\n \n \n \n )}\n {currentTab === 1 && showLogSearch && (\n \n \n \n )}\n \n \n ) : (\n \n )}\n \n \n \n );\n};\n\nexport default withStyles(styles)(LogsMain);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { HorizontalBar } from \"react-chartjs-2\";\nimport React, { useEffect, useState } from \"react\";\nimport { Button, Grid, TextField, InputBase } from \"@material-ui/core\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport api from \"../../../common/api\";\nimport { FormControl, MenuItem, Select } from \"@material-ui/core\";\nimport { BucketList, Bucket } from \"../Watch/types\";\nimport { HealStatus, colorH } from \"./types\";\nimport { niceBytes } from \"../../../common/utils\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport CheckboxWrapper from \"../Common/FormComponents/CheckboxWrapper/CheckboxWrapper\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n watchList: {\n background: \"white\",\n maxHeight: \"400\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4\",\n padding: \"0\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0\",\n padding: \"0\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n graphContainer: {\n backgroundColor: \"#fff\",\n border: \"#EAEDEE 1px solid\",\n borderRadius: 3,\n padding: \"19px 38px\",\n },\n scanInfo: {\n marginTop: 20,\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n },\n scanData: {\n fontSize: 13,\n },\n inlineCheckboxes: {\n display: \"flex\",\n justifyContent: \"flex-start\",\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\ninterface IHeal {\n classes: any;\n}\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n width: 450,\n lineHeight: \"50px\",\n marginRight: 15,\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n \"& .MuiSelect-select:focus\": {\n backgroundColor: \"transparent\",\n },\n },\n input: {\n height: 50,\n fontSize: 13,\n lineHeight: \"50px\",\n width: 450,\n },\n })\n)(InputBase);\n\nconst Heal = ({ classes }: IHeal) => {\n const [start, setStart] = useState(false);\n const [bucketName, setBucketName] = useState(\"\");\n const [bucketList, setBucketList] = useState([]);\n const [prefix, setPrefix] = useState(\"\");\n const [recursive, setRecursive] = useState(false);\n const [forceStart, setForceStart] = useState(false);\n const [forceStop, setForceStop] = useState(false);\n // healStatus states\n const [hStatus, setHStatus] = useState({\n beforeHeal: [0, 0, 0, 0],\n afterHeal: [0, 0, 0, 0],\n objectsHealed: 0,\n objectsScanned: 0,\n healDuration: 0,\n sizeScanned: \"\",\n });\n\n const fetchBucketList = () => {\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n let buckets: Bucket[] = [];\n if (res.buckets !== null) {\n buckets = res.buckets;\n }\n setBucketList(buckets);\n })\n .catch((err: any) => {\n console.log(err);\n });\n };\n\n useEffect(() => {\n fetchBucketList();\n }, []);\n\n // forceStart and forceStop need to be mutually exclusive\n useEffect(() => {\n if (forceStart === true) {\n setForceStop(false);\n }\n }, [forceStart]);\n\n useEffect(() => {\n if (forceStop === true) {\n setForceStart(false);\n }\n }, [forceStop]);\n\n const colorHealthArr = (color: colorH) => {\n return [color.Green, color.Yellow, color.Red, color.Grey];\n };\n\n useEffect(() => {\n // begin watch if bucketName in bucketList and start pressed\n if (start) {\n // values stored here to update chart\n const cB: colorH = { Green: 0, Yellow: 0, Red: 0, Grey: 0 };\n const cA: colorH = { Green: 0, Yellow: 0, Red: 0, Grey: 0 };\n\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/heal/${bucketName}?prefix=${prefix}&recursive=${recursive}&force-start=${forceStart}&force-stop=${forceStop}`\n );\n\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: HealStatus = JSON.parse(message.data.toString());\n // Store percentage per health color\n for (const [key, value] of Object.entries(m.healthAfterCols)) {\n cA[key] = (value * 100) / m.itemsScanned;\n }\n for (const [key, value] of Object.entries(m.healthBeforeCols)) {\n cB[key] = (value * 100) / m.itemsScanned;\n }\n setHStatus({\n beforeHeal: colorHealthArr(cB),\n afterHeal: colorHealthArr(cA),\n objectsHealed: m.objectsHealed,\n objectsScanned: m.objectsScanned,\n healDuration: m.healDuration,\n sizeScanned: niceBytes(m.bytesScanned.toString()),\n });\n };\n c.onclose = () => {\n setStart(false);\n console.log(\"connection closed by server\");\n };\n return () => {\n // close websocket on useEffect cleanup\n c.close(1000);\n console.log(\"closing websockets\");\n };\n }\n }\n }, [start, bucketName, forceStart, forceStop, prefix, recursive]);\n\n let data = {\n labels: [\"Green\", \"Yellow\", \"Red\", \"Grey\"],\n datasets: [\n {\n label: \"After Healing\",\n data: hStatus.afterHeal,\n backgroundColor: \"rgba(0, 0, 255, 0.2)\",\n borderColor: \"rgba(54, 162, 235, 1)\",\n borderWidth: 1,\n },\n {\n label: \"Before Healing\",\n data: hStatus.beforeHeal,\n backgroundColor: \"rgba(153, 102, 255, 0.2)\",\n borderColor: \"rgba(153, 102, 255, 1)\",\n borderWidth: 1,\n },\n ],\n };\n const bucketNames = bucketList.map((bucketName) => ({\n label: bucketName.name,\n value: bucketName.name,\n }));\n return (\n \n \n \n \n \n \n {\n setBucketName(e.target.value as string);\n }}\n className={classes.searchField}\n input={}\n displayEmpty\n >\n \n Select Bucket\n \n {bucketNames.map((option) => (\n \n {option.label}\n \n ))}\n \n \n {\n setPrefix(e.target.value);\n }}\n />\n setStart(true)}\n >\n Start\n \n \n \n {\n setRecursive(e.target.checked);\n }}\n disabled={false}\n label=\"Recursive\"\n />\n {\n setForceStart(e.target.checked);\n }}\n disabled={false}\n label=\"Force Start\"\n />\n {\n setForceStop(e.target.checked);\n }}\n disabled={false}\n label=\"Force Stop\"\n />\n \n \n
\n
\n \n \n \n
\n Size scanned: {hStatus.sizeScanned}\n
\n
\n Objects healed: {hStatus.objectsHealed} /{\" \"}\n {hStatus.objectsScanned}\n
\n
\n Healing time: {hStatus.healDuration}s\n
\n
\n
\n
\n
\n
\n );\n};\n\nexport default withStyles(styles)(Heal);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { EventInfo } from \"./types\";\n\nexport const WATCH_MESSAGE_RECEIVED = \"WATCH_MESSAGE_RECEIVED\";\nexport const WATCH_RESET_MESSAGES = \"WATCH_RESET_MESSAGES\";\n\ninterface WatchMessageReceivedAction {\n type: typeof WATCH_MESSAGE_RECEIVED;\n message: EventInfo;\n}\n\ninterface WatchResetMessagesAction {\n type: typeof WATCH_RESET_MESSAGES;\n}\n\nexport type WatchActionTypes =\n | WatchMessageReceivedAction\n | WatchResetMessagesAction;\n\nexport function watchMessageReceived(message: EventInfo) {\n return {\n type: WATCH_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function watchResetMessages() {\n return {\n type: WATCH_RESET_MESSAGES,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { useEffect, useState } from \"react\";\nimport { Button, Grid, TextField, InputBase } from \"@material-ui/core\";\nimport { IMessageEvent, w3cwebsocket as W3CWebSocket } from \"websocket\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { watchMessageReceived, watchResetMessages } from \"./actions\";\nimport { EventInfo, BucketList, Bucket } from \"./types\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { niceBytes, timeFromDate } from \"../../../common/utils\";\nimport { wsProtocol } from \"../../../utils/wsUtils\";\nimport api from \"../../../common/api\";\nimport { FormControl, MenuItem, Select } from \"@material-ui/core\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n watchList: {\n background: \"white\",\n height: \"400px\",\n overflow: \"auto\",\n \"& ul\": {\n margin: \"4px\",\n padding: \"0px\",\n },\n \"& ul li\": {\n listStyle: \"none\",\n margin: \"0px\",\n padding: \"0px\",\n borderBottom: \"1px solid #dedede\",\n },\n },\n searchPrefix: {\n flexGrow: 1,\n marginLeft: 15,\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst SelectStyled = withStyles((theme: Theme) =>\n createStyles({\n root: {\n width: 450,\n lineHeight: \"50px\",\n \"label + &\": {\n marginTop: theme.spacing(3),\n },\n \"& .MuiSelect-select:focus\": {\n backgroundColor: \"transparent\",\n },\n },\n input: {\n height: 50,\n fontSize: 13,\n lineHeight: \"50px\",\n width: 450,\n },\n })\n)(InputBase);\n\ninterface IWatch {\n classes: any;\n watchMessageReceived: typeof watchMessageReceived;\n watchResetMessages: typeof watchResetMessages;\n messages: EventInfo[];\n}\n\nconst Watch = ({\n classes,\n watchMessageReceived,\n watchResetMessages,\n messages,\n}: IWatch) => {\n const [start, setStart] = useState(false);\n const [bucketName, setBucketName] = useState(\"Select Bucket\");\n const [prefix, setPrefix] = useState(\"\");\n const [suffix, setSuffix] = useState(\"\");\n const [bucketList, setBucketList] = useState([]);\n\n const fetchBucketList = () => {\n api\n .invoke(\"GET\", `/api/v1/buckets`)\n .then((res: BucketList) => {\n let buckets: Bucket[] = [];\n if (res.buckets !== null) {\n buckets = res.buckets;\n }\n setBucketList(buckets);\n })\n .catch((err: any) => {\n console.log(err);\n });\n };\n useEffect(() => {\n fetchBucketList();\n }, []);\n\n useEffect(() => {\n watchResetMessages();\n // begin watch if bucketName in bucketList and start pressed\n if (start && bucketList.some((bucket) => bucket.name === bucketName)) {\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/watch/${bucketName}?prefix=${prefix}&suffix=${suffix}`\n );\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: EventInfo = JSON.parse(message.data.toString());\n m.Time = new Date(m.Time.toString());\n m.key = Math.random();\n watchMessageReceived(m);\n };\n c.onclose = () => {\n clearInterval(interval);\n console.log(\"connection closed by server\");\n // reset start status\n setStart(false);\n };\n return () => {\n // close websocket on useEffect cleanup\n c.close(1000);\n clearInterval(interval);\n console.log(\"closing websockets\");\n };\n }\n } else {\n // reset start status\n setStart(false);\n }\n }, [\n watchMessageReceived,\n start,\n bucketList,\n bucketName,\n prefix,\n suffix,\n watchResetMessages,\n ]);\n\n const bucketNames = bucketList.map((bucketName) => ({\n label: bucketName.name,\n value: bucketName.name,\n }));\n\n return (\n \n \n \n \n \n \n {\n setBucketName(e.target.value as string);\n }}\n className={classes.searchField}\n disabled={start}\n input={}\n >\n \n Select Bucket\n \n {bucketNames.map((option) => (\n \n {option.label}\n \n ))}\n \n \n {\n setPrefix(e.target.value);\n }}\n />\n {\n setSuffix(e.target.value);\n }}\n />\n setStart(true)}\n >\n Start\n \n \n \n
\n
\n \n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n messages: state.watch.messages,\n});\n\nconst connector = connect(mapState, {\n watchMessageReceived: watchMessageReceived,\n watchResetMessages: watchResetMessages,\n});\n\nexport default connector(withStyles(styles)(Watch));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { HealthInfoMessage } from \"./types\";\n\nexport const HEALTH_INFO_MESSAGE_RECEIVED = \"HEALTH_INFO_MESSAGE_RECEIVED\";\nexport const HEALTH_INFO_RESET_MESSAGE = \"HEALTH_INFO_RESET_MESSAGE\";\n\ninterface HealthInfoMessageReceivedAction {\n type: typeof HEALTH_INFO_MESSAGE_RECEIVED;\n message: HealthInfoMessage;\n}\n\ninterface HealthInfoResetMessagesAction {\n type: typeof HEALTH_INFO_RESET_MESSAGE;\n}\n\nexport type HealthInfoActionTypes =\n | HealthInfoMessageReceivedAction\n | HealthInfoResetMessagesAction;\n\nexport function healthInfoMessageReceived(message: HealthInfoMessage) {\n return {\n type: HEALTH_INFO_MESSAGE_RECEIVED,\n message: message,\n };\n}\n\nexport function healthInfoResetMessage() {\n return {\n type: HEALTH_INFO_RESET_MESSAGE,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const DiagStatError = \"error\";\nexport const DiagStatSuccess = \"success\";\nexport const DiagStatInProgress = \"inProgress\";\nexport interface HealthInfoMessage {\n timestamp: Date;\n error: string;\n perf: perfInfo;\n minio: minioHealthInfo;\n sys: sysHealthInfo;\n}\n\nexport interface perfInfo {\n drives: serverDrivesInfo[];\n net: serverNetHealthInfo[];\n net_parallel: serverNetHealthInfo;\n error: string;\n}\n\nexport interface serverDrivesInfo {\n addr: string;\n serial: drivePerfInfo[];\n parallel: drivePerfInfo[];\n error: string;\n}\n\nexport interface drivePerfInfo {\n endpoint: string;\n latency: diskLatency;\n throughput: diskThroughput;\n error: string;\n}\nexport interface diskLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\n\nexport interface diskThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface serverNetHealthInfo {\n addr: string;\n net: netPerfInfo[];\n error: string;\n}\n\nexport interface netPerfInfo {\n remote: string;\n latency: netLatency;\n throughput: netThroughput;\n error: string;\n}\n\nexport interface netLatency {\n avg_secs: number;\n percentile50_secs: number;\n percentile90_secs: number;\n percentile99_secs: number;\n min_secs: number;\n max_secs: number;\n}\nexport interface netThroughput {\n avg_bytes_per_sec: number;\n percentile50_bytes_per_sec: number;\n percentile90_bytes_per_sec: number;\n percentile99_bytes_per_sec: number;\n min_bytes_per_sec: number;\n max_bytes_per_sec: number;\n}\n\nexport interface minioHealthInfo {\n info: infoMessage;\n config: any;\n error: string;\n}\n\nexport interface infoMessage {\n mode: string;\n domain: string[];\n region: string;\n sqsARN: string[];\n deploymentID: string;\n buckets: buckets;\n objects: objects;\n usage: usage;\n services: services;\n backend: any;\n servers: serverProperties[];\n}\n\nexport interface buckets {\n count: number;\n}\n\nexport interface objects {\n count: number;\n}\n\nexport interface usage {\n size: number;\n}\n\nexport interface services {\n vault: vault;\n ldap: ldap;\n logger: Map[];\n audit: Map[];\n notifications: Map[]>;\n}\n\nexport interface vault {\n status: string;\n encrypt: string;\n decrypt: string;\n}\n\nexport interface ldap {\n status: string;\n}\n\nexport interface status {\n status: string;\n}\n\nexport interface serverProperties {\n state: string;\n endpoint: string;\n uptime: number;\n version: string;\n commitID: string;\n network: Map;\n drives: disk[];\n}\n\nexport interface disk {\n endpoint: string;\n rootDisk: boolean;\n path: string;\n healing: boolean;\n state: string;\n uuid: string;\n model: string;\n totalspace: number;\n usedspace: number;\n availspace: number;\n readthroughput: number;\n writethroughput: number;\n readlatency: number;\n writelatency: number;\n utilization: number;\n}\n\nexport interface sysHealthInfo {\n cpus: serverCpuInfo[];\n drives: serverDiskHwInfo[];\n osinfos: serverOsInfo[];\n meminfos: serverMemInfo[];\n procinfos: serverProcInfo[];\n error: string;\n}\n\nexport interface serverCpuInfo {\n addr: string;\n cpu: cpuInfoStat[];\n time: cpuTimeStat[];\n error: string;\n}\n\nexport interface cpuInfoStat {\n cpu: number;\n vendorId: string;\n family: string;\n model: string;\n stepping: number;\n physicalId: string;\n coreId: string;\n cores: number;\n modelName: string;\n mhz: number;\n cacheSize: number;\n flags: string[];\n microcode: string;\n}\n\nexport interface cpuTimeStat {\n cpu: string;\n user: number;\n system: number;\n idle: number;\n nice: number;\n iowait: number;\n irq: number;\n softirq: number;\n steal: number;\n guest: number;\n guestNice: number;\n}\n\nexport interface serverDiskHwInfo {\n addr: string;\n usages: diskUsageStat[];\n partitions: partitionStat[];\n counters: Map;\n error: string;\n}\n\nexport interface diskUsageStat {\n path: string;\n fstype: string;\n total: number;\n free: number;\n used: number;\n usedPercent: number;\n inodesTotal: number;\n inodesUsed: number;\n inodesFree: number;\n inodesUsedPercent: number;\n}\n\nexport interface partitionStat {\n device: string;\n mountpoint: string;\n fstype: string;\n opts: string;\n smartInfo: smartInfo;\n}\n\nexport interface smartInfo {\n device: string;\n scsi: scsiInfo;\n nvme: nvmeInfo;\n ata: ataInfo;\n error: string;\n}\n\nexport interface scsiInfo {\n scsiCapacityBytes: number;\n scsiModeSenseBuf: string;\n scsirespLen: number;\n scsiBdLen: number;\n scsiOffset: number;\n sciRpm: number;\n}\n\nexport interface nvmeInfo {\n serialNum: string;\n vendorId: string;\n firmwareVersion: string;\n modelNum: string;\n spareAvailable: string;\n spareThreshold: string;\n temperature: string;\n criticalWarning: string;\n maxDataTransferPages: number;\n controllerBusyTime: number;\n powerOnHours: number;\n powerCycles: number;\n unsafeShutdowns: number;\n mediaAndDataIntgerityErrors: number;\n dataUnitsReadBytes: number;\n dataUnitsWrittenBytes: number;\n hostReadCommands: number;\n hostWriteCommands: number;\n}\n\nexport interface ataInfo {\n scsiLuWWNDeviceID: string;\n serialNum: string;\n modelNum: string;\n firmwareRevision: string;\n RotationRate: string;\n MajorVersion: string;\n MinorVersion: string;\n smartSupportAvailable: boolean;\n smartSupportEnabled: boolean;\n smartErrorLog: string;\n transport: string;\n}\n\nexport interface diskIOCountersStat {\n readCount: number;\n mergedReadCount: number;\n DriteCount: number;\n mergedWriteCount: number;\n readBytes: number;\n writeBytes: number;\n readTime: number;\n writeTime: number;\n iopsInProgress: number;\n ioTime: number;\n weightedIO: number;\n name: string;\n serialNumber: string;\n label: string;\n}\n\nexport interface serverOsInfo {\n addr: string;\n info: infoStat;\n sensors: temperatureStat[];\n users: userStat[];\n error: string;\n}\n\nexport interface infoStat {\n hostname: string;\n uptime: number;\n bootTime: number;\n procs: number;\n os: string;\n platform: string;\n platformFamily: string;\n platformVersion: string;\n kernelVersion: string;\n kernelArch: string;\n virtualizationSystem: string;\n virtualizationRole: string;\n hostid: string;\n}\n\nexport interface temperatureStat {\n sensorKey: string;\n sensorTemperature: number;\n}\n\nexport interface userStat {\n user: string;\n terminal: string;\n host: string;\n started: number;\n}\n\nexport interface serverMemInfo {\n addr: string;\n swap: swapMemoryStat;\n virtualmem: virtualMemoryStat;\n error: string;\n}\n\nexport interface swapMemoryStat {\n total: number;\n used: number;\n free: number;\n usedPercent: number;\n sin: number;\n sout: number;\n pgin: number;\n pgout: number;\n pgfault: number;\n pgmajfault: number;\n}\n\nexport interface virtualMemoryStat {\n total: number;\n available: number;\n used: number;\n usedPercent: number;\n free: number;\n active: number;\n inactive: number;\n wired: number;\n laundry: number;\n buffers: number;\n cached: number;\n writeback: number;\n dirty: number;\n writebacktmp: number;\n shared: number;\n slab: number;\n sreclaimable: number;\n sunreclaim: number;\n pagetables: number;\n swapcached: number;\n commitlimit: number;\n committedas: number;\n hightotal: number;\n highfree: number;\n lowtotal: number;\n lowfree: number;\n swaptotal: number;\n swapfree: number;\n mapped: number;\n vmalloctotal: number;\n vmallocused: number;\n vmallocchunk: number;\n hugepagestotal: number;\n hugepagesfree: number;\n hugepagesize: number;\n}\n\nexport interface serverProcInfo {\n addr: string;\n processes: sysProcess[];\n error: string;\n}\n\nexport interface sysProcess {\n pid: number;\n background: boolean;\n cpupercent: number;\n children: number[];\n cmd: string;\n connections: nethwConnectionStat[];\n createtime: number;\n cwd: string;\n exe: string;\n gids: number[];\n iocounters: processIOCountersStat;\n isrunning: boolean;\n meminfo: memoryInfoStat;\n memmaps: any[];\n mempercent: number;\n name: string;\n netiocounters: nethwIOCounterStat[];\n nice: number;\n numctxswitches: processNmCtxSwitchesStat;\n numfds: number;\n numthreads: number;\n pagefaults: processPageFaultsStat;\n parent: number;\n ppid: number;\n rlimit: processRLimitStat[];\n status: string;\n tgid: number;\n cputimes: cpuTimeStat;\n uids: number[];\n username: string;\n}\n\nexport interface nethwConnectionStat {\n fd: number;\n family: number;\n type: number;\n localaddr: netAddr;\n remoteaddr: netAddr;\n status: string;\n uids: number[];\n pid: number;\n}\n\nexport interface netAddr {\n ip: string;\n port: number;\n}\n\nexport interface processIOCountersStat {\n readCount: number;\n writeCount: number;\n readBytes: number;\n writeBytes: number;\n}\n\nexport interface memoryInfoStat {\n rss: number;\n vms: number;\n hwm: number;\n data: number;\n stack: number;\n locked: number;\n swap: number;\n}\n\nexport interface nethwIOCounterStat {\n name: string;\n bytesSent: number;\n bytesRecv: number;\n packetsSent: number;\n packetsRecv: number;\n errin: number;\n errout: number;\n dropin: number;\n dropout: number;\n fifoin: number;\n fifoout: number;\n}\n\nexport interface processNmCtxSwitchesStat {\n voluntary: number;\n involuntary: number;\n}\n\nexport interface processPageFaultsStat {\n minorFaults: number;\n majorFaults: number;\n childMinorFaults: number;\n childMajorFaults: number;\n}\n\nexport interface processRLimitStat {\n resource: number;\n soft: number;\n hard: number;\n used: number;\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport React, { useState, useEffect } from \"react\";\nimport {\n IMessageEvent,\n w3cwebsocket as W3CWebSocket,\n ICloseEvent,\n} from \"websocket\";\nimport { AppState } from \"../../../store\";\nimport { connect } from \"react-redux\";\nimport { healthInfoMessageReceived, healthInfoResetMessage } from \"./actions\";\nimport {\n HealthInfoMessage,\n DiagStatInProgress,\n DiagStatSuccess,\n DiagStatError,\n} from \"./types\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n wsProtocol,\n WSCloseInternalServerErr,\n WSClosePolicyViolation,\n WSCloseAbnormalClosure,\n} from \"../../../utils/wsUtils\";\nimport {\n actionsTray,\n containerForHeader,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { Grid, Button } from \"@material-ui/core\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport { setSnackBarMessage, setServerDiagStat } from \"../../../actions\";\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\n\nconst styles = (theme: Theme) =>\n createStyles({\n logList: {\n background: \"#fff\",\n minHeight: 400,\n height: \"calc(100vh - 270px)\",\n overflow: \"auto\",\n fontSize: 13,\n padding: \"25px 45px\",\n border: \"1px solid #EAEDEE\",\n borderRadius: 4,\n },\n loading: {\n paddingTop: 8,\n paddingLeft: 40,\n },\n buttons: {\n justifyContent: \"flex-start\",\n gap: 20,\n },\n ...actionsTray,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst download = (filename: string, text: string) => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n \"data:text/plain;charset=utf-8,\" + encodeURIComponent(text)\n );\n element.setAttribute(\"download\", filename);\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n};\n\ninterface IHealthInfo {\n classes: any;\n healthInfoMessageReceived: typeof healthInfoMessageReceived;\n healthInfoResetMessage: typeof healthInfoResetMessage;\n message: HealthInfoMessage;\n namespace: string;\n tenant: string;\n setSnackBarMessage: typeof setSnackBarMessage;\n setServerDiagStat: typeof setServerDiagStat;\n serverDiagnosticStatus: string;\n}\n\nconst HealthInfo = ({\n classes,\n healthInfoMessageReceived,\n healthInfoResetMessage,\n message,\n setSnackBarMessage,\n setServerDiagStat,\n serverDiagnosticStatus,\n}: IHealthInfo) => {\n const [startDiagnostic, setStartDiagnostic] = useState(false);\n const [downloadDisabled, setDownloadDisabled] = useState(true);\n\n useEffect(() => {\n if (\n serverDiagnosticStatus === DiagStatSuccess &&\n message !== ({} as HealthInfoMessage)\n ) {\n // Allow download of diagnostics file only when\n // it succeded fetching all the results and info is not empty.\n setDownloadDisabled(false);\n }\n if (serverDiagnosticStatus === DiagStatInProgress) {\n // Disable Start Diagnotic and Disable Download buttons\n // if a Diagnosis is in progress.\n setDownloadDisabled(true);\n }\n setStartDiagnostic(false);\n }, [serverDiagnosticStatus, message]);\n\n useEffect(() => {\n if (startDiagnostic) {\n healthInfoResetMessage();\n const url = new URL(window.location.toString());\n const isDev = process.env.NODE_ENV === \"development\";\n const port = isDev ? \"9090\" : url.port;\n\n const wsProt = wsProtocol(url.protocol);\n\n const c = new W3CWebSocket(\n `${wsProt}://${url.hostname}:${port}/ws/health-info?deadline=1h`\n );\n\n let interval: any | null = null;\n if (c !== null) {\n c.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n c.send(\"ok\");\n interval = setInterval(() => {\n c.send(\"ok\");\n }, 10 * 1000);\n setSnackBarMessage(\n \"Diagnostic started. Please do not refresh page during diagnosis.\"\n );\n setServerDiagStat(DiagStatInProgress);\n };\n c.onmessage = (message: IMessageEvent) => {\n let m: HealthInfoMessage = JSON.parse(message.data.toString());\n m.timestamp = new Date(m.timestamp.toString());\n healthInfoMessageReceived(m);\n };\n c.onerror = (error: Error) => {\n console.log(\"error closing websocket:\", error.message);\n c.close(1000);\n clearInterval(interval);\n setServerDiagStat(DiagStatError);\n };\n c.onclose = (event: ICloseEvent) => {\n clearInterval(interval);\n if (\n event.code === WSCloseInternalServerErr ||\n event.code === WSClosePolicyViolation ||\n event.code === WSCloseAbnormalClosure\n ) {\n // handle close with error\n console.log(\"connection closed by server with code:\", event.code);\n setSnackBarMessage(\n \"An error occurred while getting Diagnostic file.\"\n );\n setServerDiagStat(DiagStatError);\n } else {\n console.log(\"connection closed by server\");\n setSnackBarMessage(\"Diagnostic file is ready to be downloaded.\");\n setServerDiagStat(DiagStatSuccess);\n }\n };\n }\n } else {\n // reset start status\n setStartDiagnostic(false);\n }\n }, [\n healthInfoMessageReceived,\n healthInfoResetMessage,\n startDiagnostic,\n setSnackBarMessage,\n setServerDiagStat,\n ]);\n\n return (\n \n \n\n \n \n \n \n setStartDiagnostic(true)}\n >\n Start Diagnostic\n \n \n \n {serverDiagnosticStatus === DiagStatInProgress ? (\n
\n \n
\n ) : (\n {\n download(\n \"diagnostic.json\",\n JSON.stringify(message, null, 2)\n );\n }}\n disabled={downloadDisabled}\n >\n Download\n \n )}\n
\n
\n
\n
\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n message: state.healthInfo.message,\n serverDiagnosticStatus: state.system.serverDiagnosticStatus,\n});\n\nconst connector = connect(mapState, {\n healthInfoMessageReceived: healthInfoMessageReceived,\n healthInfoResetMessage: healthInfoResetMessage,\n setSnackBarMessage,\n setServerDiagStat,\n});\n\nexport default connector(withStyles(styles)(HealthInfo));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Grid, InputAdornment, TextField } from \"@material-ui/core\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport { IPVCsResponse, IStoragePVCs } from \"./types\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport api from \"../../../common/api\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\n\ninterface IStorageVolumesProps {\n classes: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n breadcrumLink: {\n textDecoration: \"none\",\n color: \"black\",\n },\n tableWrapper: {\n height: \"calc(100vh - 267px)\",\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst StorageVolumes = ({\n classes,\n setErrorSnackMessage,\n}: IStorageVolumesProps) => {\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n if (loading) {\n api\n .invoke(\"GET\", `/api/v1/list-pvcs`)\n .then((res: IPVCsResponse) => {\n let volumes = get(res, \"pvcs\", []);\n setRecords(volumes ? volumes : []);\n setLoading(false);\n })\n .catch((err) => {\n setLoading(false);\n setErrorSnackMessage(err);\n });\n }\n }, [loading, setErrorSnackMessage]);\n\n const filteredRecords: IStoragePVCs[] = records.filter((elementItem) =>\n elementItem.name.includes(filter)\n );\n\n return (\n \n \n \n \n \n ),\n }}\n onChange={(e) => {\n setFilter(e.target.value);\n }}\n />\n \n \n
\n
\n \n \n \n
\n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(StorageVolumes));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nexport const DIRECT_CSI_SELECT_DRIVE = \"DIRECT_CSI/SELECT_DRIVE\";\n\nexport interface IDirectCSIDrives {\n joinName: string;\n drive: string;\n capacity: string;\n allocated: string;\n volumes: number;\n node: string;\n status: \"Available\" | \"Unavailable\" | \"InUse\" | \"Ready\" | \"Terminating\";\n}\n\nexport interface IDirectCSIVolumes {\n volume: string;\n capacity: string;\n node: string;\n drive: string;\n}\n\nexport interface IDrivesResponse {\n drives: IDirectCSIDrives[];\n}\n\nexport interface IVolumesResponse {\n volumes: IDirectCSIVolumes[];\n}\n\nexport interface IDirectCSIFormatResult {\n formatIssuesList: IDirectCSIFormatResItem[];\n}\n\nexport interface IDirectCSIFormatResItem {\n node: string;\n drive: string;\n error: string;\n}\n\ninterface SelectDrive {\n type: typeof DIRECT_CSI_SELECT_DRIVE;\n driveName: string;\n}\n\nexport interface IDirectCSIState {\n selectedDrive: string;\n}\n\nexport type DirectCSITypes = SelectDrive;\n","// This file is part of MinIO Kubernetes Cloud\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState } from \"react\";\nimport { connect } from \"react-redux\";\nimport {\n Button,\n Dialog,\n DialogActions,\n DialogContent,\n DialogContentText,\n DialogTitle,\n Grid,\n LinearProgress,\n} from \"@material-ui/core\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport api from \"../../../common/api\";\nimport InputBoxWrapper from \"../Common/FormComponents/InputBoxWrapper/InputBoxWrapper\";\nimport PredefinedList from \"../Common/FormComponents/PredefinedList/PredefinedList\";\nimport FormSwitchWrapper from \"../Common/FormComponents/FormSwitchWrapper/FormSwitchWrapper\";\nimport { IDirectCSIFormatResItem, IDirectCSIFormatResult } from \"./types\";\n\ninterface IFormatAllDrivesProps {\n closeFormatModalAndRefresh: (\n refresh: boolean,\n formatIssuesList: IDirectCSIFormatResItem[]\n ) => void;\n deleteOpen: boolean;\n allDrives: boolean;\n drivesToFormat: string[];\n setErrorSnackMessage: typeof setErrorSnackMessage;\n}\n\nconst FormatDrives = ({\n closeFormatModalAndRefresh,\n deleteOpen,\n allDrives,\n drivesToFormat,\n setErrorSnackMessage,\n}: IFormatAllDrivesProps) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [formatAll, setFormatAll] = useState(\"\");\n const [force, setForce] = useState(false);\n\n const removeRecord = () => {\n if (deleteLoading) {\n return;\n }\n setDeleteLoading(true);\n api\n .invoke(\"POST\", `/api/v1/direct-csi/drives/format`, {\n drives: drivesToFormat,\n force,\n })\n .then((res: IDirectCSIFormatResult) => {\n setDeleteLoading(false);\n closeFormatModalAndRefresh(true, res.formatIssuesList);\n })\n .catch((err) => {\n setDeleteLoading(false);\n setErrorSnackMessage(err);\n });\n };\n return (\n {\n closeFormatModalAndRefresh(false, []);\n }}\n aria-labelledby=\"alert-dialog-title\"\n aria-describedby=\"alert-dialog-description\"\n >\n \n Format {allDrives ? \"All \" : \"\"}Drives\n \n \n \n {!allDrives && (\n \n 1 ? \"s\" : \"\"}`}\n content={drivesToFormat.join(\", \")}\n />\n
\n
\n )}\n \n ) => {\n setForce(event.target.checked);\n }}\n label={\"Force Format\"}\n indicatorLabels={[\"Yes\", \"No\"]}\n />\n \n Are you sure you want to format{\" \"}\n {allDrives ? All : \"the selected\"} drive\n {drivesToFormat.length > 1 || allDrives ? \"s\" : \"\"}?.\n
\n
\n \n All information contained will be erased and cannot be recovered\n \n
\n
\n To continue please type YES, PROCEED in the box.\n \n ) => {\n setFormatAll(event.target.value);\n }}\n label=\"\"\n value={formatAll}\n />\n \n
\n
\n {deleteLoading && }\n \n {\n closeFormatModalAndRefresh(false, []);\n }}\n color=\"primary\"\n disabled={deleteLoading}\n >\n Cancel\n \n \n Format Drive{drivesToFormat.length > 1 || allDrives ? \"s\" : \"\"}\n \n \n \n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default connector(FormatDrives);\n","// This file is part of MinIO Kubernetes Cloud\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n Button,\n createStyles,\n Grid,\n Theme,\n withStyles,\n} from \"@material-ui/core\";\nimport React from \"react\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport { IDirectCSIFormatResItem } from \"./types\";\n\ninterface IFormatErrorsProps {\n open: boolean;\n onCloseFormatErrorsList: () => void;\n errorsList: IDirectCSIFormatResItem[];\n classes: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n warningBlock: {\n color: \"red\",\n },\n buttonContainer: {\n textAlign: \"right\",\n },\n errorsList: {\n height: \"calc(100vh - 280px)\",\n },\n });\n\nconst download = (filename: string, text: string) => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n \"data:application/json;charset=utf-8,\" + encodeURIComponent(text)\n );\n console.log(filename);\n element.setAttribute(\"download\", filename);\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n};\n\nconst FormatErrorsResult = ({\n open,\n onCloseFormatErrorsList,\n errorsList,\n classes,\n}: IFormatErrorsProps) => {\n return (\n \n \n \n There were some issues trying to format the selected CSI Drives,\n please fix the issues and try again.\n
\n \n
\n \n {\n download(\"csiFormatErrors.json\", JSON.stringify([...errorsList]));\n }}\n color=\"primary\"\n >\n Download\n \n \n \n
\n \n );\n};\n\nexport default withStyles(styles)(FormatErrorsResult);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport { connect } from \"react-redux\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport {\n Button,\n Grid,\n InputAdornment,\n TextField,\n IconButton,\n} from \"@material-ui/core\";\nimport get from \"lodash/get\";\nimport SearchIcon from \"@material-ui/icons/Search\";\nimport GroupIcon from \"@material-ui/icons/Group\";\nimport RefreshIcon from \"@material-ui/icons/Refresh\";\nimport { CreateIcon } from \"../../../icons\";\nimport { setErrorSnackMessage } from \"../../../actions\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport {\n IDirectCSIDrives,\n IDirectCSIFormatResItem,\n IDrivesResponse,\n} from \"./types\";\nimport { niceBytes } from \"../../../common/utils\";\nimport { selectDrive } from \"./actions\";\nimport api from \"../../../common/api\";\nimport TableWrapper from \"../Common/TableWrapper/TableWrapper\";\nimport FormatDrives from \"./FormatDrives\";\nimport FormatErrorsResult from \"./FormatErrorsResult\";\n\ninterface IDirectCSIMain {\n classes: any;\n setErrorSnackMessage: typeof setErrorSnackMessage;\n selectDrive: typeof selectDrive;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n tableWrapper: {\n height: \"calc(100vh - 275px)\",\n },\n notAvailableNotice: {\n border: \"#EAEDEE 1px solid\",\n backgroundColor: \"#FFF\",\n display: \"flex\",\n padding: \"19px 38px\",\n overflow: \"auto\",\n position: \"relative\",\n boxShadow: \"none\",\n minHeight: 200,\n overflowY: \"scroll\",\n borderRadius: 3,\n flexDirection: \"column\",\n alignItems: \"center\",\n justifyContent: \"center\",\n height: \"calc(100vh - 275px)\",\n fontSize: 18,\n fontWeight: 600,\n textAlign: \"center\",\n },\n linkItem: {\n display: \"default\",\n color: \"#072F51\",\n textDecoration: \"none\",\n \"&:hover\": {\n textDecoration: \"underline\",\n color: \"#000\",\n },\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst DirectCSIMain = ({\n classes,\n selectDrive,\n setErrorSnackMessage,\n}: IDirectCSIMain) => {\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n const [checkedDrives, setCheckedDrives] = useState([]);\n const [loading, setLoading] = useState(true);\n const [formatOpen, setFormatOpen] = useState(false);\n const [formatAll, setFormatAll] = useState(false);\n const [formatErrorsResult, setFormatErrorsResult] = useState<\n IDirectCSIFormatResItem[]\n >([]);\n const [formatErrorsOpen, setFormatErrorsOpen] = useState(false);\n const [drivesToFormat, setDrivesToFormat] = useState([]);\n const [notAvailable, setNotAvailable] = useState(true);\n\n useEffect(() => {\n if (loading && !notAvailable) {\n api\n .invoke(\"GET\", \"/api/v1/direct-csi/drives\")\n .then((res: IDrivesResponse) => {\n let drives: IDirectCSIDrives[] = get(res, \"drives\", []);\n\n if (!drives) {\n drives = [];\n }\n\n drives = drives.map((item) => {\n const newItem = { ...item };\n newItem.joinName = `${newItem.node}:${newItem.drive}`;\n\n return newItem;\n });\n\n drives.sort((d1, d2) => {\n if (d1.drive > d2.drive) {\n return 1;\n }\n\n if (d1.drive < d2.drive) {\n return -1;\n }\n\n return 0;\n });\n\n setRecords(drives);\n setLoading(false);\n setNotAvailable(false);\n })\n .catch((err) => {\n setLoading(false);\n setNotAvailable(true);\n });\n }\n }, [loading, setErrorSnackMessage, notAvailable]);\n\n const formatAllDrives = () => {\n const allDrives = records.map((item) => {\n return `${item.node}:${item.drive}`;\n });\n setFormatAll(true);\n setDrivesToFormat(allDrives);\n setFormatOpen(true);\n };\n\n const formatSingleUnit = (driveID: string) => {\n const selectedUnit = [driveID];\n setDrivesToFormat(selectedUnit);\n setFormatAll(false);\n setFormatOpen(true);\n };\n\n const formatSelectedDrives = () => {\n if (checkedDrives.length > 0) {\n setDrivesToFormat(checkedDrives);\n setFormatAll(false);\n setFormatOpen(true);\n }\n };\n\n const selectionChanged = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...checkedDrives]; // We clone the checkedDrives array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedDrivesList\n elements.push(value);\n } else {\n // User has unchecked this field, we need to remove it from the list\n elements = elements.filter((element) => element !== value);\n }\n\n setCheckedDrives(elements);\n\n return elements;\n };\n\n const closeFormatModal = (\n refresh: boolean,\n errorsList: IDirectCSIFormatResItem[]\n ) => {\n setFormatOpen(false);\n if (refresh) {\n // Errors are present, we trigger the modal box to show these changes.\n if (errorsList && errorsList.length > 0) {\n setFormatErrorsResult(errorsList);\n setFormatErrorsOpen(true);\n }\n setLoading(true);\n setCheckedDrives([]);\n }\n };\n\n const tableActions = [\n {\n type: \"format\",\n onClick: formatSingleUnit,\n sendOnlyId: true,\n },\n ];\n\n const filteredRecords: IDirectCSIDrives[] = records.filter((elementItem) =>\n elementItem.drive.includes(filter)\n );\n\n return (\n \n {formatOpen && (\n \n )}\n\n {formatErrorsOpen && (\n {\n setFormatErrorsOpen(false);\n }}\n />\n )}\n\n \n \n \n \n ),\n }}\n onChange={(e) => {\n setFilter(e.target.value);\n }}\n disabled={notAvailable}\n />\n {\n setLoading(true);\n }}\n disabled={notAvailable}\n >\n \n \n }\n disabled={checkedDrives.length <= 0 || notAvailable}\n onClick={formatSelectedDrives}\n >\n Format Selected Drives\n \n }\n onClick={formatAllDrives}\n disabled={notAvailable}\n >\n Format All Drives\n \n \n\n \n
\n
\n \n {notAvailable ? (\n
\n To manage locally attached drives you need to install direct-csi,\n for more information\n
\n please follow this\n \n Link\n \n
\n ) : (\n \n )}\n
\n
\n );\n};\n\nconst mapDispatchToProps = {\n setErrorSnackMessage,\n selectDrive,\n};\n\nconst connector = connect(null, mapDispatchToProps);\n\nexport default withStyles(styles)(connector(DirectCSIMain));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { DIRECT_CSI_SELECT_DRIVE } from \"./types\";\n\nexport const selectDrive = (driveName: string) => {\n return {\n type: DIRECT_CSI_SELECT_DRIVE,\n driveName,\n };\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Grid, Tab, Tabs } from \"@material-ui/core\";\nimport { Route, Router, Switch, Redirect } from \"react-router-dom\";\nimport {\n actionsTray,\n containerForHeader,\n searchField,\n} from \"../Common/FormComponents/common/styleLibrary\";\nimport history from \"../../../history\";\nimport PageHeader from \"../Common/PageHeader/PageHeader\";\nimport StoragePVCs from \"./StoragePVCs\";\nimport DirectCSIDrives from \"../DirectCSI/DirectCSIDrives\";\n\ninterface IStorageProps {\n classes: any;\n match: any;\n}\n\nconst styles = (theme: Theme) =>\n createStyles({\n headerLabel: {\n fontSize: 22,\n fontWeight: 600,\n color: \"#000\",\n marginTop: 4,\n },\n tabsContainer: {\n marginBottom: 15,\n },\n ...actionsTray,\n ...searchField,\n ...containerForHeader(theme.spacing(4)),\n });\n\nconst routes = [\"/storage/volumes\", \"/storage/drives\"];\n\nconst Storage = ({ classes, match }: IStorageProps) => {\n const [selectedTab, setSelectedTab] = useState(0);\n\n useEffect(() => {\n const index = routes.findIndex((route) => route === match.path);\n setSelectedTab(index);\n }, [match]);\n\n const routeChange = (e: React.ChangeEvent<{}>, newValue: number) => {\n history.push(routes[newValue]);\n };\n\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n } />\n \n \n \n \n \n );\n};\n\nexport default withStyles(styles)(Storage);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { Fragment, useState, useEffect } from \"react\";\nimport clsx from \"clsx\";\nimport { createStyles, Theme, withStyles } from \"@material-ui/core/styles\";\nimport { Button, LinearProgress } from \"@material-ui/core\";\nimport CssBaseline from \"@material-ui/core/CssBaseline\";\nimport Drawer from \"@material-ui/core/Drawer\";\nimport Container from \"@material-ui/core/Container\";\nimport Snackbar from \"@material-ui/core/Snackbar\";\nimport history from \"../../history\";\nimport { Redirect, Route, Router, Switch } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { AppState } from \"../../store\";\nimport {\n serverIsLoading,\n serverNeedsRestart,\n setMenuOpen,\n setSnackBarMessage,\n} from \"../../actions\";\nimport { ISessionResponse } from \"./types\";\nimport { snackBarMessage } from \"../../types\";\nimport { snackBarCommon } from \"./Common/FormComponents/common/styleLibrary\";\nimport Buckets from \"./Buckets/Buckets\";\nimport Policies from \"./Policies/Policies\";\nimport Dashboard from \"./Dashboard/Dashboard\";\nimport Menu from \"./Menu/Menu\";\nimport api from \"../../common/api\";\nimport Account from \"./Account/Account\";\nimport Users from \"./Users/Users\";\nimport Groups from \"./Groups/Groups\";\nimport ConfigurationMain from \"./Configurations/ConfigurationMain\";\nimport WebhookPanel from \"./Configurations/ConfigurationPanels/WebhookPanel\";\nimport TenantsMain from \"./Tenants/TenantsMain\";\nimport TenantDetails from \"./Tenants/TenantDetails/TenantDetails\";\nimport ObjectBrowser from \"./ObjectBrowser/ObjectBrowser\";\nimport ObjectRouting from \"./Buckets/ListBuckets/Objects/ListObjects/ObjectRouting\";\nimport License from \"./License/License\";\nimport Trace from \"./Trace/Trace\";\nimport LogsMain from \"./Logs/LogsMain\";\nimport Heal from \"./Heal/Heal\";\nimport Watch from \"./Watch/Watch\";\nimport HealthInfo from \"./HealthInfo/HealthInfo\";\nimport Storage from \"./Storage/Storage\";\n\nconst drawerWidth = 245;\n\nconst styles = (theme: Theme) =>\n createStyles({\n root: {\n display: \"flex\",\n \"& .MuiPaper-root.MuiSnackbarContent-root\": {\n borderRadius: \"0px 0px 5px 5px\",\n boxShadow: \"none\",\n },\n },\n toolbar: {\n background: theme.palette.background.default,\n color: \"black\",\n paddingRight: 24, // keep right padding when drawer closed\n },\n toolbarIcon: {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\",\n padding: \"0 8px\",\n ...theme.mixins.toolbar,\n },\n appBar: {\n zIndex: theme.zIndex.drawer + 1,\n transition: theme.transitions.create([\"width\", \"margin\"], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen,\n }),\n },\n appBarShift: {\n marginLeft: drawerWidth,\n width: `calc(100% - ${drawerWidth}px)`,\n transition: theme.transitions.create([\"width\", \"margin\"], {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen,\n }),\n },\n menuButton: {\n marginRight: 36,\n },\n menuButtonHidden: {\n display: \"none\",\n },\n title: {\n flexGrow: 1,\n },\n drawerPaper: {\n position: \"relative\",\n whiteSpace: \"nowrap\",\n width: drawerWidth,\n transition: theme.transitions.create(\"width\", {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.enteringScreen,\n }),\n overflowX: \"hidden\",\n background:\n \"transparent linear-gradient(90deg, #073052 0%, #081C42 100%) 0% 0% no-repeat padding-box\",\n boxShadow: \"0px 3px 7px #00000014\",\n },\n drawerPaperClose: {\n overflowX: \"hidden\",\n transition: theme.transitions.create(\"width\", {\n easing: theme.transitions.easing.sharp,\n duration: theme.transitions.duration.leavingScreen,\n }),\n width: theme.spacing(7),\n [theme.breakpoints.up(\"sm\")]: {\n width: theme.spacing(9),\n },\n },\n content: {\n flexGrow: 1,\n height: \"100vh\",\n overflow: \"auto\",\n position: \"relative\",\n },\n container: {\n paddingBottom: theme.spacing(4),\n margin: 0,\n width: \"100%\",\n maxWidth: \"initial\",\n },\n paper: {\n padding: theme.spacing(2),\n display: \"flex\",\n overflow: \"auto\",\n flexDirection: \"column\",\n },\n fixedHeight: {\n minHeight: 240,\n },\n warningBar: {\n background: theme.palette.primary.main,\n color: \"white\",\n heigh: \"60px\",\n widht: \"100%\",\n lineHeight: \"60px\",\n textAlign: \"center\",\n },\n progress: {\n height: \"3px\",\n backgroundColor: \"#eaeaea\",\n },\n ...snackBarCommon,\n });\n\ninterface IConsoleProps {\n open: boolean;\n needsRestart: boolean;\n isServerLoading: boolean;\n title: string;\n classes: any;\n setMenuOpen: typeof setMenuOpen;\n serverNeedsRestart: typeof serverNeedsRestart;\n serverIsLoading: typeof serverIsLoading;\n session: ISessionResponse;\n loadingProgress: number;\n snackBarMessage: snackBarMessage;\n setSnackBarMessage: typeof setSnackBarMessage;\n}\n\nconst Console = ({\n classes,\n open,\n needsRestart,\n isServerLoading,\n serverNeedsRestart,\n serverIsLoading,\n session,\n loadingProgress,\n snackBarMessage,\n setSnackBarMessage,\n}: IConsoleProps) => {\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const restartServer = () => {\n serverIsLoading(true);\n api\n .invoke(\"POST\", \"/api/v1/service/restart\", {})\n .then((res) => {\n console.log(\"success restarting service\");\n console.log(res);\n serverIsLoading(false);\n serverNeedsRestart(false);\n })\n .catch((err) => {\n serverIsLoading(false);\n console.log(\"failure restarting service\");\n console.log(err);\n });\n };\n\n const allowedPages = session.pages.reduce(\n (result: any, item: any, index: any) => {\n result[item] = true;\n return result;\n },\n {}\n );\n const routes = [\n {\n component: Dashboard,\n path: \"/dashboard\",\n },\n {\n component: Buckets,\n path: \"/buckets\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/summary\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/events\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/replication\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/lifecycle\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access/policies\",\n },\n {\n component: Buckets,\n path: \"/buckets/:bucketName/access/users\",\n },\n {\n component: ObjectBrowser,\n path: \"/object-browser\",\n },\n {\n component: ObjectRouting,\n path: \"/object-browser/:bucket\",\n },\n {\n component: ObjectRouting,\n path: \"/object-browser/:bucket/*\",\n },\n {\n component: Watch,\n path: \"/watch\",\n },\n {\n component: Users,\n path: \"/users/:userName\",\n },\n {\n component: Users,\n path: \"/users\",\n },\n {\n component: Groups,\n path: \"/groups\",\n },\n {\n component: Policies,\n path: \"/policies/:policyName\",\n },\n {\n component: Policies,\n path: \"/policies\",\n },\n {\n component: Heal,\n path: \"/heal\",\n },\n {\n component: Trace,\n path: \"/trace\",\n },\n {\n component: LogsMain,\n path: \"/logs\",\n },\n {\n component: HealthInfo,\n path: \"/health-info\",\n },\n {\n component: ConfigurationMain,\n path: \"/settings\",\n },\n {\n component: Account,\n path: \"/account\",\n props: {\n changePassword: session.pages.includes(\"/account/change-password\"),\n },\n },\n {\n component: WebhookPanel,\n path: \"/webhook/logger\",\n },\n {\n component: WebhookPanel,\n path: \"/webhook/audit\",\n },\n {\n component: TenantsMain,\n path: \"/tenants\",\n },\n {\n component: Storage,\n path: \"/storage\",\n },\n {\n component: Storage,\n path: \"/storage/volumes\",\n },\n {\n component: Storage,\n path: \"/storage/drives\",\n },\n {\n component: TenantDetails,\n path: \"/namespaces/:tenantNamespace/tenants/:tenantName\",\n },\n {\n component: License,\n path: \"/license\",\n },\n ];\n const allowedRoutes = routes.filter((route: any) => allowedPages[route.path]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n setSnackBarMessage(\"\");\n };\n\n useEffect(() => {\n if (snackBarMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n setOpenSnackbar(true);\n }, [snackBarMessage]);\n\n return (\n \n {session.status === \"ok\" ? (\n
\n \n \n \n \n\n
\n {needsRestart && (\n
\n {isServerLoading ? (\n \n The server is restarting.\n \n \n ) : (\n \n The instance needs to be restarted for configuration changes\n to take effect.{\" \"}\n {\n restartServer();\n }}\n >\n Restart\n \n \n )}\n
\n )}\n {loadingProgress < 100 && (\n \n )}\n
\n {\n closeSnackBar();\n }}\n autoHideDuration={\n snackBarMessage.type === \"error\" ? 10000 : 5000\n }\n message={snackBarMessage.message}\n className={classes.snackBarExternal}\n ContentProps={{\n className: `${classes.snackBar} ${\n snackBarMessage.type === \"error\"\n ? classes.errorSnackBar\n : \"\"\n }`,\n }}\n />\n
\n \n \n \n {allowedRoutes.map((route: any) => (\n (\n \n )}\n />\n ))}\n {allowedRoutes.length > 0 ? (\n \n ) : null}\n \n \n \n
\n
\n ) : null}\n
\n );\n};\n\nconst mapState = (state: AppState) => ({\n open: state.system.sidebarOpen,\n needsRestart: state.system.serverNeedsRestart,\n isServerLoading: state.system.serverIsLoading,\n session: state.console.session,\n loadingProgress: state.system.loadingProgress,\n snackBarMessage: state.system.snackBar,\n});\n\nconst connector = connect(mapState, {\n setMenuOpen,\n serverNeedsRestart,\n serverIsLoading,\n setSnackBarMessage,\n});\n\nexport default withStyles(styles)(connector(Console));\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { FC, useEffect, useState } from \"react\"; // eslint-disable-line @typescript-eslint/no-unused-vars\nimport { RouteComponentProps } from \"react-router\";\nimport storage from \"local-storage-fallback\";\nimport api from \"../../common/api\";\n\nconst LoginCallback: FC = ({ location }) => {\n const [error, setError] = useState(\"\");\n const [errorDescription, setErrorDescription] = useState(\"\");\n useEffect(() => {\n const code = (location.search.match(/code=([^&]+)/) || [])[1];\n const state = (location.search.match(/state=([^&]+)/) || [])[1];\n const error = (location.search.match(/error=([^&]+)/) || [])[1];\n const errorDescription = (location.search.match(\n /error_description=([^&]+)/\n ) || [])[1];\n if (error !== undefined || errorDescription !== undefined) {\n setError(error);\n setErrorDescription(errorDescription);\n } else {\n api\n .invoke(\"POST\", \"/api/v1/login/oauth2/auth\", { code, state })\n .then((res: any) => {\n if (res && res.sessionId) {\n // store the jwt token\n storage.setItem(\"token\", res.sessionId);\n // We push to history the new URL.\n window.location.href = \"/\";\n }\n })\n .catch((res: any) => {\n window.location.href = \"/login\";\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }\n }, [location.search]);\n return error !== \"\" || errorDescription !== \"\" ? (\n
\n

IDP Error:

\n

{error}

\n

{errorDescription}

\n
\n ) : null;\n};\n\nexport default LoginCallback;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { ISessionResponse } from \"./types\";\n\nexport const SESSION_RESPONSE = \"SESSION_RESPONSE\";\n\ninterface SessionAction {\n type: typeof SESSION_RESPONSE;\n message: ISessionResponse;\n}\nexport type SessionActionTypes = SessionAction;\n\nexport function saveSessionResponse(message: ISessionResponse) {\n return {\n type: SESSION_RESPONSE,\n message: message,\n };\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React, { useEffect, useState } from \"react\";\nimport { Redirect } from \"react-router-dom\";\nimport { connect } from \"react-redux\";\nimport { AppState } from \"./store\";\nimport { consoleOperatorMode, userLoggedIn } from \"./actions\";\nimport api from \"./common/api\";\nimport { saveSessionResponse } from \"./screens/Console/actions\";\nimport { ISessionResponse } from \"./screens/Console/types\";\n\nconst mapState = (state: AppState) => ({\n loggedIn: state.system.loggedIn,\n});\n\nconst connector = connect(mapState, {\n userLoggedIn,\n consoleOperatorMode,\n saveSessionResponse,\n});\n\ninterface ProtectedRouteProps {\n loggedIn: boolean;\n Component: any;\n userLoggedIn: typeof userLoggedIn;\n consoleOperatorMode: typeof consoleOperatorMode;\n saveSessionResponse: typeof saveSessionResponse;\n}\n\nconst ProtectedRoute = ({\n Component,\n loggedIn,\n userLoggedIn,\n consoleOperatorMode,\n saveSessionResponse,\n}: ProtectedRouteProps) => {\n const [sessionLoading, setSessionLoading] = useState(true);\n useEffect(() => {\n api\n .invoke(\"GET\", `/api/v1/session`)\n .then((res: ISessionResponse) => {\n saveSessionResponse(res);\n userLoggedIn(true);\n setSessionLoading(false);\n // check for tenants presence, that indicates we are in operator mode\n if (res.operator) {\n consoleOperatorMode(true);\n document.title = \"MinIO Operator\";\n }\n })\n .catch(() => setSessionLoading(false));\n }, [saveSessionResponse, consoleOperatorMode, userLoggedIn]);\n\n // if we still trying to retrieve user session render nothing\n if (sessionLoading) {\n return null;\n }\n // redirect user to the right page based on session status\n return loggedIn ? : ;\n};\n\nexport default connector(ProtectedRoute);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport { Route, Router, Switch } from \"react-router-dom\";\nimport history from \"./history\";\nimport Login from \"./screens/LoginPage/LoginPage\";\nimport Console from \"./screens/Console/Console\";\nimport LoginCallback from \"./screens/LoginPage/LoginCallback\";\nimport { hot } from \"react-hot-loader/root\";\nimport ProtectedRoute from \"./ProtectedRoutes\";\n\nconst Routes = () => {\n return (\n \n \n \n \n \n \n \n );\n};\n\nexport default hot(Routes);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n MENU_OPEN,\n OPERATOR_MODE,\n SERVER_IS_LOADING,\n SERVER_NEEDS_RESTART,\n SystemActionTypes,\n SystemState,\n USER_LOGGED,\n SET_LOADING_PROGRESS,\n SET_SNACK_BAR_MESSAGE,\n SET_ERROR_SNACK_MESSAGE,\n SET_SERVER_DIAG_STAT,\n SET_SNACK_MODAL_MESSAGE,\n SET_MODAL_ERROR_MESSAGE,\n} from \"./types\";\n\nconst initialState: SystemState = {\n loggedIn: false,\n operatorMode: false,\n session: \"\",\n userName: \"\",\n sidebarOpen: true,\n serverNeedsRestart: false,\n serverIsLoading: false,\n loadingProgress: 100,\n snackBar: {\n message: \"\",\n type: \"message\",\n },\n modalSnackBar: {\n message: \"\",\n type: \"message\",\n },\n serverDiagnosticStatus: \"\",\n};\n\nexport function systemReducer(\n state = initialState,\n action: SystemActionTypes\n): SystemState {\n switch (action.type) {\n case USER_LOGGED:\n return {\n ...state,\n loggedIn: action.logged,\n };\n case OPERATOR_MODE:\n return {\n ...state,\n operatorMode: action.operatorMode,\n };\n case MENU_OPEN:\n return {\n ...state,\n sidebarOpen: action.open,\n };\n case SERVER_NEEDS_RESTART:\n return {\n ...state,\n serverNeedsRestart: action.needsRestart,\n };\n\n case SERVER_IS_LOADING:\n return {\n ...state,\n serverIsLoading: action.isLoading,\n };\n case SET_LOADING_PROGRESS:\n return {\n ...state,\n loadingProgress: action.loadingProgress,\n };\n case SET_SNACK_BAR_MESSAGE:\n return {\n ...state,\n snackBar: { message: action.message, type: \"message\" },\n };\n case SET_ERROR_SNACK_MESSAGE:\n return {\n ...state,\n snackBar: { message: action.message, type: \"error\" },\n };\n case SET_SNACK_MODAL_MESSAGE:\n return {\n ...state,\n modalSnackBar: { message: action.message, type: \"message\" },\n };\n case SET_MODAL_ERROR_MESSAGE:\n return {\n ...state,\n modalSnackBar: { message: action.message, type: \"error\" },\n };\n case SET_SERVER_DIAG_STAT:\n return {\n ...state,\n serverDiagnosticStatus: action.serverDiagnosticStatus,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n TRACE_MESSAGE_RECEIVED,\n TRACE_RESET_MESSAGES,\n TraceActionTypes,\n} from \"./actions\";\nimport { TraceMessage } from \"./types\";\n\nexport interface TraceState {\n messages: TraceMessage[];\n}\n\nconst initialState: TraceState = {\n messages: [],\n};\n\nexport function traceReducer(\n state = initialState,\n action: TraceActionTypes\n): TraceState {\n switch (action.type) {\n case TRACE_MESSAGE_RECEIVED:\n return {\n ...state,\n messages: [...state.messages, action.message],\n };\n case TRACE_RESET_MESSAGES:\n return {\n ...state,\n messages: [],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n LOG_MESSAGE_RECEIVED,\n LOG_RESET_MESSAGES,\n LogActionTypes,\n} from \"./actions\";\nimport { LogMessage } from \"./types\";\n\nexport interface LogState {\n messages: LogMessage[];\n}\n\nconst initialState: LogState = {\n messages: [],\n};\n\nexport function logReducer(\n state = initialState,\n action: LogActionTypes\n): LogState {\n switch (action.type) {\n case LOG_MESSAGE_RECEIVED:\n return {\n ...state,\n messages: [...state.messages, action.message],\n };\n case LOG_RESET_MESSAGES:\n return {\n ...state,\n messages: [],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n HEALTH_INFO_MESSAGE_RECEIVED,\n HEALTH_INFO_RESET_MESSAGE,\n HealthInfoActionTypes,\n} from \"./actions\";\nimport { HealthInfoMessage } from \"./types\";\n\nexport interface HealthInfoState {\n message: HealthInfoMessage;\n}\n\nconst initialState: HealthInfoState = {\n message: {} as HealthInfoMessage,\n};\n\nexport function healthInfoReducer(\n state = initialState,\n action: HealthInfoActionTypes\n): HealthInfoState {\n switch (action.type) {\n case HEALTH_INFO_MESSAGE_RECEIVED:\n return {\n ...state,\n message: action.message,\n };\n case HEALTH_INFO_RESET_MESSAGE:\n return {\n ...state,\n message: {} as HealthInfoMessage,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n WATCH_MESSAGE_RECEIVED,\n WATCH_RESET_MESSAGES,\n WatchActionTypes,\n} from \"./actions\";\nimport { EventInfo } from \"./types\";\n\nexport interface WatchState {\n messages: EventInfo[];\n}\n\nconst initialState: WatchState = {\n messages: [],\n};\n\nexport function watchReducer(\n state = initialState,\n action: WatchActionTypes\n): WatchState {\n switch (action.type) {\n case WATCH_MESSAGE_RECEIVED:\n return {\n ...state,\n messages: [...state.messages, action.message],\n };\n case WATCH_RESET_MESSAGES:\n return {\n ...state,\n messages: [],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { ISessionResponse } from \"./types\";\nimport { SessionActionTypes, SESSION_RESPONSE } from \"./actions\";\n\nexport interface ConsoleState {\n session: ISessionResponse;\n}\n\nconst initialState: ConsoleState = {\n session: {\n operator: false,\n status: \"\",\n pages: [],\n features: [],\n },\n};\n\nexport function consoleReducer(\n state = initialState,\n action: SessionActionTypes\n): ConsoleState {\n switch (action.type) {\n case SESSION_RESPONSE:\n return {\n ...state,\n session: action.message,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n ADD_BUCKET_NAME,\n ADD_BUCKET_OPEN,\n ADD_BUCKET_QUOTA,\n ADD_BUCKET_QUOTA_SIZE,\n ADD_BUCKET_QUOTA_TYPE,\n ADD_BUCKET_QUOTA_UNIT,\n ADD_BUCKET_RESET,\n ADD_BUCKET_VERSIONED,\n ADD_BUCKET_RETENTION,\n ADD_BUCKET_RETENTION_MODE,\n ADD_BUCKET_RETENTION_UNIT,\n ADD_BUCKET_RETENTION_VALIDITY,\n BucketActionTypes,\n ADD_BUCKET_LOCKING,\n BUCKET_DETAILS_SET_TAB,\n} from \"./actions\";\n\nexport interface BucketsState {\n open: boolean;\n addBucketName: string;\n addBucketVersioningEnabled: boolean;\n addBucketLockingEnabled: boolean;\n addBucketQuotaEnabled: boolean;\n addBucketQuotaType: string;\n addBucketQuotaSize: string;\n addBucketQuotaUnit: string;\n addBucketRetentionEnabled: boolean;\n addBucketRetentionMode: string;\n addBucketRetentionUnit: string;\n addBucketRetentionValidity: number;\n bucketDetails: BucketDetailsState;\n}\n\nexport interface BucketDetailsState {\n selectedTab: string;\n}\n\nconst initialState: BucketsState = {\n open: false,\n addBucketName: \"\",\n addBucketVersioningEnabled: false,\n addBucketLockingEnabled: false,\n addBucketQuotaEnabled: false,\n addBucketQuotaType: \"hard\",\n addBucketQuotaSize: \"1\",\n addBucketQuotaUnit: \"TiB\",\n addBucketRetentionEnabled: false,\n addBucketRetentionMode: \"compliance\",\n addBucketRetentionUnit: \"days\",\n addBucketRetentionValidity: 1,\n bucketDetails: {\n selectedTab: \"summary\",\n },\n};\n\nexport function bucketsReducer(\n state = initialState,\n action: BucketActionTypes\n): BucketsState {\n switch (action.type) {\n case ADD_BUCKET_OPEN:\n return {\n ...state,\n open: action.open,\n };\n case ADD_BUCKET_NAME:\n return {\n ...state,\n addBucketName: action.name,\n };\n case ADD_BUCKET_VERSIONED:\n return {\n ...state,\n addBucketVersioningEnabled: action.versioned,\n };\n case ADD_BUCKET_LOCKING:\n return {\n ...state,\n addBucketLockingEnabled: action.locking,\n };\n case ADD_BUCKET_QUOTA:\n return {\n ...state,\n addBucketQuotaEnabled: action.quota,\n };\n case ADD_BUCKET_QUOTA_TYPE:\n return {\n ...state,\n addBucketQuotaType: action.quotaType,\n };\n case ADD_BUCKET_QUOTA_SIZE:\n return {\n ...state,\n addBucketQuotaSize: action.quotaSize,\n };\n case ADD_BUCKET_QUOTA_UNIT:\n return {\n ...state,\n addBucketQuotaUnit: action.quotaUnit,\n };\n case ADD_BUCKET_RETENTION:\n return {\n ...state,\n addBucketRetentionEnabled: action.retention,\n };\n case ADD_BUCKET_RETENTION_MODE:\n return {\n ...state,\n addBucketRetentionMode: action.retentionMode,\n };\n case ADD_BUCKET_RETENTION_UNIT:\n return {\n ...state,\n addBucketRetentionUnit: action.retentionUnit,\n };\n case ADD_BUCKET_RETENTION_VALIDITY:\n return {\n ...state,\n addBucketRetentionValidity: action.retentionValidity,\n };\n case BUCKET_DETAILS_SET_TAB:\n return {\n ...state,\n bucketDetails: {\n ...state.bucketDetails,\n selectedTab: action.tab,\n },\n };\n case ADD_BUCKET_RESET:\n return {\n ...state,\n addBucketName: \"\",\n addBucketVersioningEnabled: false,\n addBucketLockingEnabled: false,\n addBucketQuotaEnabled: false,\n addBucketQuotaType: \"hard\",\n addBucketQuotaSize: \"1\",\n addBucketQuotaUnit: \"TiB\",\n addBucketRetentionEnabled: false,\n addBucketRetentionMode: \"compliance\",\n addBucketRetentionUnit: \"days\",\n addBucketRetentionValidity: 1,\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport history from \"../../../history\";\n\nimport {\n OBJECT_BROWSER_ADD_ROUTE,\n OBJECT_BROWSER_CREATE_FOLDER,\n OBJECT_BROWSER_REMOVE_ROUTE_LEVEL,\n OBJECT_BROWSER_RESET_ROUTES_LIST,\n OBJECT_BROWSER_SET_ALL_ROUTES,\n OBJECT_BROWSER_SET_LAST_AS_FILE,\n OBJECT_BROWSER_DOWNLOAD_FILE_LOADER,\n OBJECT_BROWSER_DOWNLOADED_FILE,\n ObjectBrowserActionTypes,\n} from \"./actions\";\n\nexport interface Route {\n route: string;\n label: string;\n type: string;\n}\n\nexport interface ObjectBrowserState {\n routesList: Route[];\n downloadingFiles: string[];\n}\n\nexport interface ObjectBrowserReducer {\n objectBrowser: ObjectBrowserState;\n}\n\nconst initialRoute = [\n { route: \"/object-browser\", label: \"All Buckets\", type: \"path\" },\n];\n\nconst initialState: ObjectBrowserState = {\n routesList: initialRoute,\n downloadingFiles: [],\n};\n\nexport function objectBrowserReducer(\n state = initialState,\n action: ObjectBrowserActionTypes\n): ObjectBrowserState {\n switch (action.type) {\n case OBJECT_BROWSER_ADD_ROUTE:\n const newRouteList = [\n ...state.routesList,\n { route: action.route, label: action.label, type: action.routeType },\n ];\n history.push(action.route);\n\n return { ...state, routesList: newRouteList };\n case OBJECT_BROWSER_RESET_ROUTES_LIST:\n return {\n ...state,\n routesList: [...initialRoute],\n };\n case OBJECT_BROWSER_REMOVE_ROUTE_LEVEL:\n const indexOfTopPath =\n state.routesList.findIndex(\n (element) => element.route === action.toRoute\n ) + 1;\n const newRouteLevels = state.routesList.slice(0, indexOfTopPath);\n\n return {\n ...state,\n routesList: newRouteLevels,\n };\n case OBJECT_BROWSER_SET_ALL_ROUTES:\n const splitRoutes = action.currentRoute.split(\"/\");\n const routesArray: Route[] = [];\n let initRoute = initialRoute[0].route;\n\n splitRoutes.forEach((route) => {\n if (route !== \"\" && route !== \"object-browser\") {\n initRoute = `${initRoute}/${route}`;\n\n routesArray.push({\n route: initRoute,\n label: route,\n type: \"path\",\n });\n }\n });\n\n const newSetOfRoutes = [...initialRoute, ...routesArray];\n\n return {\n ...state,\n routesList: newSetOfRoutes,\n };\n case OBJECT_BROWSER_CREATE_FOLDER:\n const newFoldersRoutes = [...state.routesList];\n let lastRoute = state.routesList[state.routesList.length - 1].route;\n\n const splitElements = action.newRoute.split(\"/\");\n\n splitElements.forEach((element) => {\n const folderTrim = element.trim();\n if (folderTrim !== \"\") {\n lastRoute = `${lastRoute}/${folderTrim}`;\n\n const newItem = { route: lastRoute, label: folderTrim, type: \"path\" };\n newFoldersRoutes.push(newItem);\n }\n });\n\n history.push(lastRoute);\n\n return {\n ...state,\n routesList: newFoldersRoutes,\n };\n case OBJECT_BROWSER_SET_LAST_AS_FILE:\n const currentList = state.routesList;\n const lastItem = currentList.slice(-1)[0];\n\n if (lastItem.type === \"path\") {\n lastItem.type = \"file\";\n }\n\n const newList = [...currentList.slice(0, -1), lastItem];\n\n return {\n ...state,\n routesList: newList,\n };\n case OBJECT_BROWSER_DOWNLOAD_FILE_LOADER:\n const actualFiles = [...state.downloadingFiles];\n\n actualFiles.push(action.path);\n\n return {\n ...state,\n downloadingFiles: [...actualFiles],\n };\n case OBJECT_BROWSER_DOWNLOADED_FILE:\n const downloadingFiles = state.downloadingFiles.filter(\n (item) => item !== action.path\n );\n\n return {\n ...state,\n downloadingFiles: [...downloadingFiles],\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\nimport has from \"lodash/has\";\nimport get from \"lodash/get\";\nimport {\n TenantsManagementTypes,\n ITenantState,\n ADD_TENANT_SET_CURRENT_PAGE,\n ADD_TENANT_SET_ADVANCED_MODE,\n ADD_TENANT_UPDATE_FIELD,\n ADD_TENANT_SET_PAGE_VALID,\n ADD_TENANT_SET_STORAGE_CLASSES_LIST,\n ADD_TENANT_ADD_MINIO_KEYPAIR,\n ADD_TENANT_DELETE_MINIO_KEYPAIR,\n ADD_TENANT_ADD_CA_KEYPAIR,\n ADD_TENANT_ADD_FILE_TO_CA_KEYPAIR,\n ADD_TENANT_DELETE_CA_KEYPAIR,\n ADD_TENANT_ADD_CONSOLE_CERT,\n ADD_TENANT_ADD_FILE_TO_MINIO_KEYPAIR,\n ADD_TENANT_ENCRYPTION_SERVER_CERT,\n ADD_TENANT_ENCRYPTION_CLIENT_CERT,\n ADD_TENANT_ENCRYPTION_VAULT_CERT,\n ADD_TENANT_ENCRYPTION_VAULT_CA,\n ADD_TENANT_ENCRYPTION_GEMALTO_CA,\n ADD_TENANT_RESET_FORM,\n} from \"./types\";\nimport { KeyPair } from \"./ListTenants/utils\";\nimport { getRandomString } from \"./utils\";\n\nconst initialState: ITenantState = {\n createTenant: {\n page: 0,\n validPages: [],\n advancedModeOn: false,\n storageClasses: [],\n limitSize: {},\n fields: {\n nameTenant: {\n tenantName: \"\",\n namespace: \"\",\n selectedStorageClass: \"\",\n },\n configure: {\n customImage: false,\n imageName: \"\",\n consoleImage: \"\",\n customDockerhub: false,\n imageRegistry: \"\",\n imageRegistryUsername: \"\",\n imageRegistryPassword: \"\",\n exposeMinIO: true,\n exposeConsole: true,\n logSearchCustom: false,\n prometheusCustom: false,\n logSearchVolumeSize: \"5\",\n logSearchSizeFactor: \"Gi\",\n logSearchImage: \"\",\n kesImage: \"\",\n logSearchPostgresImage: \"\",\n prometheusVolumeSize: \"5\",\n prometheusSizeFactor: \"Gi\",\n logSearchSelectedStorageClass: \"\",\n prometheusSelectedStorageClass: \"\",\n prometheusImage: \"\",\n },\n identityProvider: {\n idpSelection: \"Built-in\",\n accessKeys: [getRandomString(16)],\n secretKeys: [getRandomString(32)],\n openIDURL: \"\",\n openIDClientID: \"\",\n openIDSecretID: \"\",\n ADURL: \"\",\n ADSkipTLS: false,\n ADServerInsecure: false,\n ADUserNameFilter: \"\",\n ADGroupBaseDN: \"\",\n ADGroupSearchFilter: \"\",\n ADNameAttribute: \"\",\n },\n security: {\n enableAutoCert: true,\n enableCustomCerts: false,\n enableTLS: true,\n },\n encryption: {\n enableEncryption: false,\n encryptionType: \"vault\",\n gemaltoEndpoint: \"\",\n gemaltoToken: \"\",\n gemaltoDomain: \"\",\n gemaltoRetry: \"0\",\n awsEndpoint: \"\",\n awsRegion: \"\",\n awsKMSKey: \"\",\n awsAccessKey: \"\",\n awsSecretKey: \"\",\n awsToken: \"\",\n vaultEndpoint: \"\",\n vaultEngine: \"\",\n vaultNamespace: \"\",\n vaultPrefix: \"\",\n vaultAppRoleEngine: \"\",\n vaultId: \"\",\n vaultSecret: \"\",\n vaultRetry: \"0\",\n vaultPing: \"0\",\n gcpProjectID: \"\",\n gcpEndpoint: \"\",\n gcpClientEmail: \"\",\n gcpClientID: \"\",\n gcpPrivateKeyID: \"\",\n gcpPrivateKey: \"\",\n enableCustomCertsForKES: false,\n },\n tenantSize: {\n volumeSize: \"100\",\n sizeFactor: \"Gi\",\n drivesPerServer: \"1\",\n nodes: \"4\",\n memoryNode: \"2\",\n ecParity: \"\",\n ecParityChoices: [],\n cleanECChoices: [],\n maxAllocableMemo: 0,\n memorySize: {\n error: \"\",\n limit: 0,\n request: 0,\n },\n distribution: {\n error: \"\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n },\n ecParityCalc: {\n error: 0,\n defaultEC: \"\",\n erasureCodeSet: 0,\n maxEC: \"\",\n rawCapacity: \"0\",\n storageFactors: [],\n },\n limitSize: {},\n },\n affinity: {\n nodeSelectorLabels: \"\",\n podAffinity: \"default\",\n withPodAntiAffinity: true,\n },\n },\n certificates: {\n minioCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n caCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n consoleCertificate: {\n id: \"console_cert_pair\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n serverCertificate: {\n id: \"encryptionServerCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n clientCertificate: {\n id: \"encryptionClientCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCertificate: {\n id: \"encryptionVaultCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCA: {\n id: \"encryptionVaultCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n gemaltoCA: {\n id: \"encryptionGemaltoCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n },\n },\n};\n\nexport function tenantsReducer(\n state = initialState,\n action: TenantsManagementTypes\n): ITenantState {\n let newState: ITenantState = { ...state };\n\n switch (action.type) {\n case ADD_TENANT_SET_CURRENT_PAGE:\n newState.createTenant.page = action.page;\n\n return { ...newState };\n case ADD_TENANT_SET_ADVANCED_MODE:\n newState.createTenant.advancedModeOn = action.state;\n\n return { ...newState };\n case ADD_TENANT_UPDATE_FIELD:\n if (\n has(newState.createTenant.fields, `${action.pageName}.${action.field}`)\n ) {\n const originPageNameItems = get(\n newState.createTenant.fields,\n `${action.pageName}`,\n {}\n );\n\n let newValue: typeof originPageNameItems = {};\n newValue[action.field] = action.value;\n\n const joinValue = { ...originPageNameItems, ...newValue };\n\n newState.createTenant.fields[action.pageName] = { ...joinValue };\n\n return { ...newState };\n }\n return state;\n case ADD_TENANT_SET_PAGE_VALID:\n let originValidPages = state.createTenant.validPages;\n\n if (action.valid) {\n if (!originValidPages.includes(action.pageName)) {\n originValidPages.push(action.pageName);\n\n newState.createTenant.validPages = [...originValidPages];\n }\n } else {\n const newSetOfPages = originValidPages.filter(\n (elm) => elm !== action.pageName\n );\n\n newState.createTenant.validPages = [...newSetOfPages];\n }\n\n return { ...newState };\n case ADD_TENANT_SET_STORAGE_CLASSES_LIST:\n const changeCL = {\n ...state,\n createTenant: {\n ...state.createTenant,\n storageClasses: action.storageClasses,\n },\n };\n return { ...changeCL };\n case ADD_TENANT_ADD_MINIO_KEYPAIR:\n const minioCerts = [\n ...state.createTenant.certificates.minioCertificates,\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ];\n newState.createTenant.certificates.minioCertificates = [...minioCerts];\n return { ...newState };\n case ADD_TENANT_ADD_FILE_TO_MINIO_KEYPAIR:\n const minioCertificates =\n state.createTenant.certificates.minioCertificates;\n\n const NCertList = minioCertificates.map((item: KeyPair) => {\n if (item.id === action.id) {\n return {\n ...item,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n }\n return item;\n });\n newState.createTenant.certificates.minioCertificates = [...NCertList];\n return { ...newState };\n case ADD_TENANT_DELETE_MINIO_KEYPAIR:\n const minioCertsList = state.createTenant.certificates.minioCertificates;\n\n if (minioCertsList.length > 1) {\n const cleanMinioCertsList = minioCertsList.filter(\n (item: KeyPair) => item.id !== action.id\n );\n newState.createTenant.certificates.minioCertificates = [\n ...cleanMinioCertsList,\n ];\n return { ...newState };\n }\n return { ...state };\n case ADD_TENANT_ADD_CA_KEYPAIR:\n const CACerts = [\n ...state.createTenant.certificates.caCertificates,\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ];\n newState.createTenant.certificates.caCertificates = [...CACerts];\n return { ...newState };\n case ADD_TENANT_ADD_FILE_TO_CA_KEYPAIR:\n const caCertificates = state.createTenant.certificates.caCertificates;\n\n const NACList = caCertificates.map((item: KeyPair) => {\n if (item.id === action.id) {\n return {\n ...item,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n }\n return item;\n });\n newState.createTenant.certificates.caCertificates = [...NACList];\n return { ...newState };\n case ADD_TENANT_DELETE_CA_KEYPAIR:\n const CACertsList = state.createTenant.certificates.minioCertificates;\n\n if (CACertsList.length > 1) {\n const cleanMinioCertsList = CACertsList.filter(\n (item: KeyPair) => item.id !== action.id\n );\n newState.createTenant.certificates.caCertificates = [\n ...cleanMinioCertsList,\n ];\n return { ...newState };\n }\n return { ...state };\n case ADD_TENANT_ADD_CONSOLE_CERT:\n const consoleCert = state.createTenant.certificates.consoleCertificate;\n\n newState.createTenant.certificates.consoleCertificate = {\n ...consoleCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_SERVER_CERT:\n const encServerCert = state.createTenant.certificates.serverCertificate;\n\n newState.createTenant.certificates.serverCertificate = {\n ...encServerCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_CLIENT_CERT:\n const encClientCert = state.createTenant.certificates.clientCertificate;\n\n newState.createTenant.certificates.clientCertificate = {\n ...encClientCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_VAULT_CERT:\n const encVaultCert = state.createTenant.certificates.vaultCertificate;\n\n newState.createTenant.certificates.vaultCertificate = {\n ...encVaultCert,\n [action.key]: action.fileName,\n [`encoded_${action.key}`]: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_VAULT_CA:\n const encVaultCA = state.createTenant.certificates.vaultCA;\n\n newState.createTenant.certificates.vaultCA = {\n ...encVaultCA,\n cert: action.fileName,\n encoded_cert: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_ENCRYPTION_GEMALTO_CA:\n const encGemaltoCA = state.createTenant.certificates.gemaltoCA;\n\n newState.createTenant.certificates.gemaltoCA = {\n ...encGemaltoCA,\n cert: action.fileName,\n encoded_cert: action.value,\n };\n\n return { ...newState };\n case ADD_TENANT_RESET_FORM:\n return {\n ...state,\n createTenant: {\n page: 0,\n validPages: [],\n advancedModeOn: false,\n storageClasses: [],\n limitSize: {},\n fields: {\n nameTenant: {\n tenantName: \"\",\n namespace: \"\",\n selectedStorageClass: \"\",\n },\n configure: {\n customImage: false,\n imageName: \"\",\n consoleImage: \"\",\n customDockerhub: false,\n imageRegistry: \"\",\n imageRegistryUsername: \"\",\n imageRegistryPassword: \"\",\n exposeMinIO: true,\n exposeConsole: true,\n logSearchCustom: false,\n prometheusCustom: false,\n logSearchVolumeSize: \"5\",\n logSearchSizeFactor: \"Gi\",\n logSearchSelectedStorageClass: \"\",\n logSearchImage: \"\",\n kesImage: \"\",\n logSearchPostgresImage: \"\",\n prometheusVolumeSize: \"5\",\n prometheusSizeFactor: \"Gi\",\n prometheusSelectedStorageClass: \"\",\n prometheusImage: \"\",\n },\n identityProvider: {\n idpSelection: \"Built-in\",\n accessKeys: [getRandomString(16)],\n secretKeys: [getRandomString(32)],\n openIDURL: \"\",\n openIDClientID: \"\",\n openIDSecretID: \"\",\n ADURL: \"\",\n ADSkipTLS: false,\n ADServerInsecure: false,\n ADUserNameFilter: \"\",\n ADGroupBaseDN: \"\",\n ADGroupSearchFilter: \"\",\n ADNameAttribute: \"\",\n },\n security: {\n enableAutoCert: true,\n enableCustomCerts: false,\n enableTLS: true,\n },\n encryption: {\n enableEncryption: false,\n encryptionType: \"vault\",\n gemaltoEndpoint: \"\",\n gemaltoToken: \"\",\n gemaltoDomain: \"\",\n gemaltoRetry: \"0\",\n awsEndpoint: \"\",\n awsRegion: \"\",\n awsKMSKey: \"\",\n awsAccessKey: \"\",\n awsSecretKey: \"\",\n awsToken: \"\",\n vaultEndpoint: \"\",\n vaultEngine: \"\",\n vaultNamespace: \"\",\n vaultPrefix: \"\",\n vaultAppRoleEngine: \"\",\n vaultId: \"\",\n vaultSecret: \"\",\n vaultRetry: \"0\",\n vaultPing: \"0\",\n gcpProjectID: \"\",\n gcpEndpoint: \"\",\n gcpClientEmail: \"\",\n gcpClientID: \"\",\n gcpPrivateKeyID: \"\",\n gcpPrivateKey: \"\",\n enableCustomCertsForKES: false,\n },\n tenantSize: {\n volumeSize: \"100\",\n sizeFactor: \"Gi\",\n drivesPerServer: \"1\",\n nodes: \"4\",\n memoryNode: \"2\",\n ecParity: \"\",\n ecParityChoices: [],\n cleanECChoices: [],\n maxAllocableMemo: 0,\n memorySize: {\n error: \"\",\n limit: 0,\n request: 0,\n },\n distribution: {\n error: \"\",\n nodes: 0,\n persistentVolumes: 0,\n disks: 0,\n volumePerDisk: 0,\n },\n ecParityCalc: {\n error: 0,\n defaultEC: \"\",\n erasureCodeSet: 0,\n maxEC: \"\",\n rawCapacity: \"0\",\n storageFactors: [],\n },\n limitSize: {},\n },\n affinity: {\n nodeSelectorLabels: \"\",\n podAffinity: \"default\",\n withPodAntiAffinity: true,\n },\n },\n certificates: {\n minioCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n caCertificates: [\n {\n id: Date.now().toString(),\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n ],\n consoleCertificate: {\n id: \"console_cert_pair\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n serverCertificate: {\n id: \"encryptionServerCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n clientCertificate: {\n id: \"encryptionClientCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCertificate: {\n id: \"encryptionVaultCertificate\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n vaultCA: {\n id: \"encryptionVaultCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n gemaltoCA: {\n id: \"encryptionGemaltoCA\",\n key: \"\",\n cert: \"\",\n encoded_key: \"\",\n encoded_cert: \"\",\n },\n },\n },\n };\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport {\n DirectCSITypes,\n DIRECT_CSI_SELECT_DRIVE,\n IDirectCSIState,\n} from \"./types\";\n\nconst initialState: IDirectCSIState = {\n selectedDrive: \"\",\n};\n\nexport function directCSIReducer(\n state = initialState,\n action: DirectCSITypes\n): IDirectCSIState {\n switch (action.type) {\n case DIRECT_CSI_SELECT_DRIVE:\n if (action.driveName !== \"\") {\n const newState = { ...state };\n newState.selectedDrive = action.driveName;\n return newState;\n }\n return state;\n default:\n return state;\n }\n}\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport { applyMiddleware, combineReducers, compose, createStore } from \"redux\";\nimport thunk from \"redux-thunk\";\nimport { systemReducer } from \"./reducer\";\nimport { traceReducer } from \"./screens/Console/Trace/reducers\";\nimport { logReducer } from \"./screens/Console/Logs/reducers\";\nimport { healthInfoReducer } from \"./screens/Console/HealthInfo/reducers\";\nimport { watchReducer } from \"./screens/Console/Watch/reducers\";\nimport { consoleReducer } from \"./screens/Console/reducer\";\nimport { bucketsReducer } from \"./screens/Console/Buckets/reducers\";\nimport { objectBrowserReducer } from \"./screens/Console/ObjectBrowser/reducers\";\nimport { tenantsReducer } from \"./screens/Console/Tenants/reducer\";\nimport { directCSIReducer } from \"./screens/Console/DirectCSI/reducer\";\n\nconst globalReducer = combineReducers({\n system: systemReducer,\n trace: traceReducer,\n logs: logReducer,\n watch: watchReducer,\n console: consoleReducer,\n buckets: bucketsReducer,\n objectBrowser: objectBrowserReducer,\n healthInfo: healthInfoReducer,\n tenants: tenantsReducer,\n directCSI: directCSIReducer,\n});\n\ndeclare global {\n interface Window {\n __REDUX_DEVTOOLS_EXTENSION_COMPOSE__?: typeof compose;\n }\n}\n\nconst composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;\n\nexport type AppState = ReturnType;\n\nexport default function configureStore() {\n return createStore(globalReducer, composeEnhancers(applyMiddleware(thunk)));\n}\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === \"localhost\" ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === \"[::1]\" ||\n // 127.0.0.1/8 is considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\ntype Config = {\n onSuccess?: (registration: ServiceWorkerRegistration) => void;\n onUpdate?: (registration: ServiceWorkerRegistration) => void;\n};\n\nexport function register(config?: Config) {\n if (process.env.NODE_ENV === \"production\" && \"serviceWorker\" in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(\n (process as { env: { [key: string]: string } }).env.PUBLIC_URL,\n window.location.href\n );\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener(\"load\", () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n \"This web app is being served cache-first by a service \" +\n \"worker. To learn more, visit https://bit.ly/CRA-PWA\"\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl: string, config?: Config) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === \"installed\") {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n \"New content is available and will be used when all \" +\n \"tabs for this page are closed. See https://bit.ly/CRA-PWA.\"\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log(\"Content is cached for offline use.\");\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch((error) => {\n console.error(\"Error during service worker registration:\", error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl: string, config?: Config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl)\n .then((response) => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get(\"content-type\");\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf(\"javascript\") === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n \"No internet connection found. App is running in offline mode.\"\n );\n });\n}\n\nexport function unregister() {\n if (\"serviceWorker\" in navigator) {\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister();\n });\n }\n}\n","import { createMuiTheme } from \"@material-ui/core\";\n\nconst theme = createMuiTheme({\n palette: {\n primary: {\n light: \"#073052\",\n main: \"#081C42\",\n dark: \"#05122B\",\n contrastText: \"#fff\",\n },\n secondary: {\n light: \"#ff7961\",\n main: \"#f44336\",\n dark: \"#ba000d\",\n contrastText: \"#000\",\n },\n error: {\n light: \"#e03a48\",\n main: \"#dc1f2e\",\n contrastText: \"#ffffff\",\n },\n grey: {\n 100: \"#f0f0f0\",\n 200: \"#e6e6e6\",\n 300: \"#cccccc\",\n 400: \"#999999\",\n 500: \"#8c8c8c\",\n 600: \"#737373\",\n 700: \"#666666\",\n 800: \"#4d4d4d\",\n 900: \"#333333\",\n },\n background: {\n default: \"#F4F4F4\",\n },\n },\n typography: {\n fontFamily: [\"Lato\", \"sans-serif\"].join(\",\"),\n h1: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h2: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h3: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h4: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h5: {\n fontWeight: \"bold\",\n color: \"#081C42\",\n },\n h6: {\n fontWeight: \"bold\",\n color: \"#000000\",\n },\n },\n overrides: {\n MuiButton: {\n root: {\n borderRadius: 3,\n color: \"white\",\n height: 40,\n padding: \"0 20px\",\n fontSize: 14,\n fontWeight: 600,\n boxShadow: \"none\",\n \"& .MuiSvgIcon-root\": {\n maxHeight: 18,\n },\n \"&.MuiButton-contained.Mui-disabled\": {\n backgroundColor: \"#EAEDEE\",\n fontWeight: 600,\n color: \"#767676\",\n },\n \"& .MuiButton-iconSizeMedium > *:first-child\": {\n fontSize: 12,\n },\n },\n },\n },\n});\n\nexport default theme;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2021 MinIO, Inc.\n//\n// This program is free software: you can redistribute it and/or modify\n// it under the terms of the GNU Affero General Public License as published by\n// the Free Software Foundation, either version 3 of the License, or\n// (at your option) any later version.\n//\n// This program is distributed in the hope that it will be useful,\n// but WITHOUT ANY WARRANTY; without even the implied warranty of\n// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n// GNU Affero General Public License for more details.\n//\n// You should have received a copy of the GNU Affero General Public License\n// along with this program. If not, see .\n\nimport React from \"react\";\nimport ReactDOM from \"react-dom\";\nimport { Provider } from \"react-redux\";\nimport Routes from \"./Routes\";\nimport configureStore from \"./store\";\nimport * as serviceWorker from \"./serviceWorker\";\nimport { ThemeProvider, withStyles } from \"@material-ui/core/styles\";\nimport \"react-virtualized/styles.css\";\nimport \"react-grid-layout/css/styles.css\";\nimport \"react-resizable/css/styles.css\";\n\nimport \"./index.css\";\nimport theme from \"./theme/main\";\n\nconst GlobalCss = withStyles({\n // @global is handled by jss-plugin-global.\n \"@global\": {\n // You should target [class*=\"MuiButton-root\"] instead if you nest themes.\n \".MuiButton-contained\": {\n fontSize: \"14px\",\n textTransform: \"capitalize\",\n padding: \"16px 25px 16px 25px\",\n borderRadius: 3,\n },\n \".MuiButton-sizeSmall\": {\n padding: \"4px 10px\",\n fontSize: \"0.8125rem\",\n },\n \".MuiTableCell-head\": {\n borderRadius: \"3px 3px 0px 0px\",\n fontSize: 13,\n },\n \".MuiPaper-root\": {\n borderRadius: 3,\n },\n \".MuiDrawer-paperAnchorDockedLeft\": {\n borderRight: 0,\n },\n \".MuiDrawer-root\": {\n \"& .MuiPaper-root\": {\n borderRadius: 0,\n },\n },\n },\n})(() => null);\n\nReactDOM.render(\n \n \n \n {/**/}\n \n \n ,\n document.getElementById(\"root\")\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""} \ No newline at end of file diff --git a/portal-ui/src/screens/Console/Tenants/AddTenant/Steps/Configure.tsx b/portal-ui/src/screens/Console/Tenants/AddTenant/Steps/Configure.tsx index 8ed5dca39a..67862ad5c6 100644 --- a/portal-ui/src/screens/Console/Tenants/AddTenant/Steps/Configure.tsx +++ b/portal-ui/src/screens/Console/Tenants/AddTenant/Steps/Configure.tsx @@ -332,7 +332,7 @@ const Configure = ({ label="Console's Image" value={consoleImage} error={validationErrors["consoleImage"] || ""} - placeholder="E.g. minio/console:v0.7.2" + placeholder="E.g. minio/console:v0.7.4" /> diff --git a/restapi/admin_tenants_test.go b/restapi/admin_tenants_test.go index c7a65a5aa7..4aab1c18ca 100644 --- a/restapi/admin_tenants_test.go +++ b/restapi/admin_tenants_test.go @@ -1028,7 +1028,7 @@ func Test_UpdateTenantAction(t *testing.T) { }, params: admin_api.UpdateTenantParams{ Body: &models.UpdateTenantRequest{ - ConsoleImage: "minio/console:v0.7.2", + ConsoleImage: "minio/console:v0.7.4", }, }, }, diff --git a/restapi/consts.go b/restapi/consts.go index 535d0dafc0..160ed473c6 100644 --- a/restapi/consts.go +++ b/restapi/consts.go @@ -63,7 +63,7 @@ const ( // Image versions const ( KESImageVersion = "minio/kes:v0.13.4" - ConsoleImageDefaultVersion = "minio/console:v0.7.2" + ConsoleImageDefaultVersion = "minio/console:v0.7.4" ) // K8s