diff --git a/CHANGELOG.md b/CHANGELOG.md index 4b59f597b1..ae62aaf627 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,17 @@ # Changelog +## Release v1.7.1 + +Bug Fix: + +- Fixed issue that could cause a failure when attempting to view deleted files in the object browser +- Return network error when logging in and the network connection fails + +Additional Changes: + +- Added debug logging for console HTTP request (see [PR #3440](https://github.com/minio/console/pull/3440) for more detailed information) + ## Release v1.7.0 Bug Fix: diff --git a/web-app/build/asset-manifest.json b/web-app/build/asset-manifest.json index 44555d3d95..21dd436200 100644 --- a/web-app/build/asset-manifest.json +++ b/web-app/build/asset-manifest.json @@ -1,21 +1,21 @@ { "files": { "main.css": "./static/css/main.e60e4760.css", - "main.js": "./static/js/main.41754270.js", + "main.js": "./static/js/main.13652d0f.js", "static/js/5301.79001158.chunk.js": "./static/js/5301.79001158.chunk.js", "static/js/9361.ce3b326c.chunk.js": "./static/js/9361.ce3b326c.chunk.js", "static/js/843.791dd143.chunk.js": "./static/js/843.791dd143.chunk.js", "static/js/3035.ac7d86b8.chunk.js": "./static/js/3035.ac7d86b8.chunk.js", "static/js/9537.895fc3ff.chunk.js": "./static/js/9537.895fc3ff.chunk.js", "static/js/5711.9a92ab65.chunk.js": "./static/js/5711.9a92ab65.chunk.js", - "static/js/8769.58bd5ad6.chunk.js": "./static/js/8769.58bd5ad6.chunk.js", + "static/js/8769.c419bb08.chunk.js": "./static/js/8769.c419bb08.chunk.js", "static/js/2033.a7412d01.chunk.js": "./static/js/2033.a7412d01.chunk.js", "static/js/8311.0b90f115.chunk.js": "./static/js/8311.0b90f115.chunk.js", "static/js/9987.62e7e151.chunk.js": "./static/js/9987.62e7e151.chunk.js", "static/js/689.3e04559d.chunk.js": "./static/js/689.3e04559d.chunk.js", "static/js/6164.8759ced6.chunk.js": "./static/js/6164.8759ced6.chunk.js", "static/js/2372.d67d02b5.chunk.js": "./static/js/2372.d67d02b5.chunk.js", - "static/js/1324.acba4c47.chunk.js": "./static/js/1324.acba4c47.chunk.js", + "static/js/1324.71a25603.chunk.js": "./static/js/1324.71a25603.chunk.js", "static/js/5693.741d3c68.chunk.js": "./static/js/5693.741d3c68.chunk.js", "static/js/5872.62eb672b.chunk.js": "./static/js/5872.62eb672b.chunk.js", "static/js/6758.c83201ee.chunk.js": "./static/js/6758.c83201ee.chunk.js", @@ -34,7 +34,7 @@ "static/js/2138.7ef0755e.chunk.js": "./static/js/2138.7ef0755e.chunk.js", "static/js/5699.6a74f983.chunk.js": "./static/js/5699.6a74f983.chunk.js", "static/js/5153.24546201.chunk.js": "./static/js/5153.24546201.chunk.js", - "static/js/7052.50a0217e.chunk.js": "./static/js/7052.50a0217e.chunk.js", + "static/js/7052.37bcb35a.chunk.js": "./static/js/7052.37bcb35a.chunk.js", "static/js/144.45106af8.chunk.js": "./static/js/144.45106af8.chunk.js", "static/js/5978.e6638d0b.chunk.js": "./static/js/5978.e6638d0b.chunk.js", "static/js/4103.f42a2340.chunk.js": "./static/js/4103.f42a2340.chunk.js", @@ -42,9 +42,9 @@ "static/js/7601.b9b33cda.chunk.js": "./static/js/7601.b9b33cda.chunk.js", "static/js/7945.5cbf1d20.chunk.js": "./static/js/7945.5cbf1d20.chunk.js", "static/js/9619.c5f43814.chunk.js": "./static/js/9619.c5f43814.chunk.js", - "static/js/8017.04f38735.chunk.js": "./static/js/8017.04f38735.chunk.js", + "static/js/8017.3aca489e.chunk.js": "./static/js/8017.3aca489e.chunk.js", "static/js/3323.f86a698b.chunk.js": "./static/js/3323.f86a698b.chunk.js", - "static/js/5128.96ab1387.chunk.js": "./static/js/5128.96ab1387.chunk.js", + "static/js/5128.a36f1ed5.chunk.js": "./static/js/5128.a36f1ed5.chunk.js", "static/js/6140.37801ce8.chunk.js": "./static/js/6140.37801ce8.chunk.js", "static/js/696.8dec9292.chunk.js": "./static/js/696.8dec9292.chunk.js", "static/js/2166.880cc038.chunk.js": "./static/js/2166.880cc038.chunk.js", @@ -117,21 +117,21 @@ "static/media/placeholderimage.png": "./static/media/placeholderimage.077ea48bd1ef1f4a883f.png", "index.html": "./index.html", "main.e60e4760.css.map": "./static/css/main.e60e4760.css.map", - "main.41754270.js.map": "./static/js/main.41754270.js.map", + "main.13652d0f.js.map": "./static/js/main.13652d0f.js.map", "5301.79001158.chunk.js.map": "./static/js/5301.79001158.chunk.js.map", "9361.ce3b326c.chunk.js.map": "./static/js/9361.ce3b326c.chunk.js.map", "843.791dd143.chunk.js.map": "./static/js/843.791dd143.chunk.js.map", "3035.ac7d86b8.chunk.js.map": "./static/js/3035.ac7d86b8.chunk.js.map", "9537.895fc3ff.chunk.js.map": "./static/js/9537.895fc3ff.chunk.js.map", "5711.9a92ab65.chunk.js.map": "./static/js/5711.9a92ab65.chunk.js.map", - "8769.58bd5ad6.chunk.js.map": "./static/js/8769.58bd5ad6.chunk.js.map", + "8769.c419bb08.chunk.js.map": "./static/js/8769.c419bb08.chunk.js.map", "2033.a7412d01.chunk.js.map": "./static/js/2033.a7412d01.chunk.js.map", "8311.0b90f115.chunk.js.map": "./static/js/8311.0b90f115.chunk.js.map", "9987.62e7e151.chunk.js.map": "./static/js/9987.62e7e151.chunk.js.map", "689.3e04559d.chunk.js.map": "./static/js/689.3e04559d.chunk.js.map", "6164.8759ced6.chunk.js.map": "./static/js/6164.8759ced6.chunk.js.map", "2372.d67d02b5.chunk.js.map": "./static/js/2372.d67d02b5.chunk.js.map", - "1324.acba4c47.chunk.js.map": "./static/js/1324.acba4c47.chunk.js.map", + "1324.71a25603.chunk.js.map": "./static/js/1324.71a25603.chunk.js.map", "5693.741d3c68.chunk.js.map": "./static/js/5693.741d3c68.chunk.js.map", "5872.62eb672b.chunk.js.map": "./static/js/5872.62eb672b.chunk.js.map", "6758.c83201ee.chunk.js.map": "./static/js/6758.c83201ee.chunk.js.map", @@ -150,7 +150,7 @@ "2138.7ef0755e.chunk.js.map": "./static/js/2138.7ef0755e.chunk.js.map", "5699.6a74f983.chunk.js.map": "./static/js/5699.6a74f983.chunk.js.map", "5153.24546201.chunk.js.map": "./static/js/5153.24546201.chunk.js.map", - "7052.50a0217e.chunk.js.map": "./static/js/7052.50a0217e.chunk.js.map", + "7052.37bcb35a.chunk.js.map": "./static/js/7052.37bcb35a.chunk.js.map", "144.45106af8.chunk.js.map": "./static/js/144.45106af8.chunk.js.map", "5978.e6638d0b.chunk.js.map": "./static/js/5978.e6638d0b.chunk.js.map", "4103.f42a2340.chunk.js.map": "./static/js/4103.f42a2340.chunk.js.map", @@ -158,9 +158,9 @@ "7601.b9b33cda.chunk.js.map": "./static/js/7601.b9b33cda.chunk.js.map", "7945.5cbf1d20.chunk.js.map": "./static/js/7945.5cbf1d20.chunk.js.map", "9619.c5f43814.chunk.js.map": "./static/js/9619.c5f43814.chunk.js.map", - "8017.04f38735.chunk.js.map": "./static/js/8017.04f38735.chunk.js.map", + "8017.3aca489e.chunk.js.map": "./static/js/8017.3aca489e.chunk.js.map", "3323.f86a698b.chunk.js.map": "./static/js/3323.f86a698b.chunk.js.map", - "5128.96ab1387.chunk.js.map": "./static/js/5128.96ab1387.chunk.js.map", + "5128.a36f1ed5.chunk.js.map": "./static/js/5128.a36f1ed5.chunk.js.map", "6140.37801ce8.chunk.js.map": "./static/js/6140.37801ce8.chunk.js.map", "696.8dec9292.chunk.js.map": "./static/js/696.8dec9292.chunk.js.map", "2166.880cc038.chunk.js.map": "./static/js/2166.880cc038.chunk.js.map", @@ -213,6 +213,6 @@ }, "entrypoints": [ "static/css/main.e60e4760.css", - "static/js/main.41754270.js" + "static/js/main.13652d0f.js" ] } \ No newline at end of file diff --git a/web-app/build/index.html b/web-app/build/index.html index a0abff6f04..1f73d22889 100644 --- a/web-app/build/index.html +++ b/web-app/build/index.html @@ -1 +1 @@ -MinIO Console
\ No newline at end of file +MinIO Console
\ No newline at end of file diff --git a/web-app/build/static/js/1324.71a25603.chunk.js b/web-app/build/static/js/1324.71a25603.chunk.js new file mode 100644 index 0000000000..1382cdb7f5 --- /dev/null +++ b/web-app/build/static/js/1324.71a25603.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[1324,5851,4705],{94141:(e,s,t)=>{t.d(s,{A:()=>d});var l=t(65043),n=t(22166),o=t(89923),i=t(21383),r=t(64159),c=t(49555),a=t(70579);const d=e=>{let{onClose:s,modalOpen:t,title:d,children:u,wideLimit:p=!0,titleIcon:x=null,iconColor:h="default",sx:m}=e;const j=(0,i.jL)(),[g,b]=(0,l.useState)(!1),y=(0,n.d4)((e=>e.system.modalSnackBar));(0,l.useEffect)((()=>{j((0,r.h0)(""))}),[j]),(0,l.useEffect)((()=>{if(y){if(""===y.message)return void b(!1);"error"!==y.type&&b(!0)}}),[y]);let f="";return y&&(f=y.detailedErrorMsg,(""===f||f&&f.length<5)&&(f=y.message)),(0,a.jsxs)(o.ngX,{onClose:s,open:t,title:d,titleIcon:x,widthLimit:p,sx:m,iconColor:h,children:[(0,a.jsx)(c.A,{isModal:!0}),(0,a.jsx)(o.qb_,{onClose:()=>{b(!1),j((0,r.h0)(""))},open:g,message:f,mode:"inline",variant:"error"===y.type?"error":"default",autoHideDuration:"error"===y.type?10:5,condensed:!0}),u]})}},85851:(e,s,t)=>{t.r(s),t.d(s,{default:()=>u});var l=t(65043),n=t(89923),o=t(64159),i=t(21383),r=t(58661),c=t(56629),a=t(53518),d=t(70579);const u=e=>{let{selectedGroups:s,deleteOpen:t,closeDeleteModalAndRefresh:u}=e;const p=(0,i.jL)(),[x,h]=(0,l.useState)(!1);if(!s)return null;const m=s.map((e=>(0,d.jsx)("div",{children:(0,d.jsx)("b",{children:e})},e)));return(0,d.jsx)(r.A,{title:"Delete Group".concat(s.length>1?"s":""),confirmText:"Delete",isOpen:t,titleIcon:(0,d.jsx)(n.xWY,{}),isLoading:x,onConfirm:()=>{for(let e of s)h(!0),c.F.group.removeGroup(e).then((e=>{u(!0)})).catch((async e=>{const s=await e.json();p((0,o.C9)((0,a.S)(s))),u(!1)})).finally((()=>h(!1)))},onClose:()=>u(!1),confirmationContent:(0,d.jsxs)(l.Fragment,{children:["Are you sure you want to delete the following"," ",1===s.length?"":s.length," group",s.length>1?"s?":"?",m]})})}},91324:(e,s,t)=>{t.r(s),t.d(s,{default:()=>C});var l=t(65043),n=t(73216),o=t(89923),i=t(56629),r=t(53518),c=t(99161),a=t(77938),d=t(64159),u=t(21383),p=t(62560),x=t(74705),h=t(77403),m=t(22923),j=t(94141),g=t(70579);const b=e=>{let{title:s="",groupStatus:t="enabled",preSelectedUsers:n=[],selectedGroup:c="",open:a,onClose:p}=e;const x=(0,u.jL)(),[b,y]=(0,l.useState)(n);return(0,g.jsxs)(j.A,{modalOpen:a,onClose:p,title:s,titleIcon:(0,g.jsx)(o.WC,{}),children:[(0,g.jsxs)(o.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,g.jsx)(o.EmB,{label:"Selected Group",sx:{width:"100%"},children:c}),(0,g.jsx)(m.A,{selectedUsers:b,setSelectedUsers:y,editMode:!c})]}),(0,g.jsxs)(o.xA9,{item:!0,xs:12,sx:h.Uz.modalButtonBar,children:[(0,g.jsx)(o.$nd,{id:"reset-add-group-member",type:"button",variant:"regular",onClick:()=>{y(n)},label:"Reset"}),(0,g.jsx)(o.$nd,{id:"save-add-group-member",type:"button",variant:"callAction",onClick:()=>{i.F.group.updateGroup(c,{members:b,status:t}).then((()=>{p()})).catch((e=>{p(),x((0,d.Dy)((0,r.S)(e.error)))}))},label:"Save"})]})]})};var y=t(85851),f=t(64681),v=t(6681),A=t(55968),S=t(48793);const C=()=>{const e=(0,u.jL)(),s=(0,n.Zp)(),t=(0,n.g)(),[h,m]=(0,l.useState)({}),[j,C]=(0,l.useState)(!1),[P,G]=(0,l.useState)(!1),[M,U]=(0,l.useState)(!1),[k,w]=(0,l.useState)(""),[E,L]=(0,l.useState)("members"),{members:z=[],policy:D="",status:I}=h,N=z.filter((e=>e.includes(k))),R=(0,a._)(c.Ms,c.Ld,!0);(0,l.useEffect)((()=>{e((0,d.ph)("group_details"))}),[]),(0,l.useEffect)((()=>{t.groupName&&J()}),[t.groupName]);const F=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.length<=0?[]:e.split(",")}(D),B="enabled"===I,K=z.length>0?"Edit Members":"Add Members",_=(0,a._)(c.Ms,c.Oh),O=(0,a._)(c.Ms,c.Hr,!0),H=(0,a._)(c.Ms,c.QR,!0),$=(0,a._)(c.Ms,c.yv,!0);function J(){_&&i.F.group.groupInfo(t.groupName||"").then((e=>{m(e.data)})).catch((s=>{e((0,d.Dy)((0,r.S)(s.error))),m({})}))}const T=(0,g.jsxs)(o.azJ,{onMouseMove:()=>{e((0,d.ph)("groups_members"))},children:[(0,g.jsx)(o._xt,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsxs)(o.azJ,{sx:{display:"flex",gap:10},children:[(0,g.jsx)(f.A,{placeholder:"Search members",onChange:e=>{w(e)},value:k,sx:{maxWidth:280}}),(0,g.jsx)(a.R,{resource:c.Ms,scopes:c.BD,errorProps:{disabled:!0},children:(0,g.jsx)(v.A,{tooltip:O?K:(0,c.vj)(c.k1,"edit Group membership"),children:(0,g.jsx)(o.$nd,{id:"add-user-group",label:K,variant:"callAction",icon:(0,g.jsx)(o.REV,{}),onClick:()=>{G(!0)},disabled:!O})})})]}),children:"Members"}),(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(a.R,{resource:c.Ms,scopes:c.x6,errorProps:{disabled:!0},children:(0,g.jsx)(v.A,{tooltip:R?"":(0,c.vj)(c.Ld,"view User details"),children:(0,g.jsx)(o.bQt,{itemActions:[{type:"view",onClick:e=>{s("".concat(c.zZ.USERS,"/").concat(encodeURIComponent(e)))},isDisabled:!R}],columns:[{label:"Access Key"}],selectedItems:[],isLoading:!1,records:N,entityName:"Users"})})})})]}),Q=(0,g.jsxs)(l.Fragment,{children:[(0,g.jsx)(o.azJ,{onMouseMove:()=>{e((0,d.ph)("groups_policies"))},children:(0,g.jsx)(o._xt,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsx)(v.A,{tooltip:H?"Set Policies":(0,c.vj)(c.QR,"assign Policies"),children:(0,g.jsx)(o.$nd,{id:"set-policies",label:"Set Policies",variant:"callAction",icon:(0,g.jsx)(o.n$X,{}),onClick:()=>{C(!0)},disabled:!H})}),children:"Policies"})}),(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(v.A,{tooltip:$?"":(0,c.vj)(c.yv,"view Policy details"),children:(0,g.jsx)(o.bQt,{itemActions:[{type:"view",onClick:e=>{s("".concat(c.zZ.POLICIES,"/").concat(encodeURIComponent(e)))},isDisabled:!$}],columns:[{label:"Policy"}],isLoading:!1,records:F,entityName:"Policies"})})})]});return(0,g.jsxs)(l.Fragment,{children:[j?(0,g.jsx)(x.default,{open:j,selectedGroups:[t.groupName||""],selectedUser:null,closeModalAndRefresh:()=>{C(!1),J(),e((0,p.Gy)([]))}}):null,P?(0,g.jsx)(b,{selectedGroup:t.groupName,onSaveClick:()=>{},title:K,groupStatus:I,preSelectedUsers:z,open:P,onClose:()=>{G(!1),J()}}):null,M&&(0,g.jsx)(y.default,{deleteOpen:M,selectedGroups:[t.groupName||""],closeDeleteModalAndRefresh:e=>{U(!1),e&&s(c.zZ.GROUPS)}}),(0,g.jsx)(S.A,{label:(0,g.jsx)(l.Fragment,{children:(0,g.jsx)(o.EGL,{label:"Groups",onClick:()=>s(c.zZ.GROUPS)})}),actions:(0,g.jsx)(A.A,{})}),(0,g.jsxs)(o.Mxu,{children:[(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(o.lcx,{icon:(0,g.jsx)(l.Fragment,{children:(0,g.jsx)(o.YXz,{width:40})}),title:t.groupName||"",subTitle:null,bottomBorder:!0,actions:(0,g.jsxs)(o.azJ,{sx:{display:"flex",fontSize:14,alignItems:"center",gap:15},children:[(0,g.jsx)("span",{children:"Group Status:"}),(0,g.jsx)("span",{id:"group-status-label",style:{fontWeight:"bold"},children:B?"Enabled":"Disabled"}),(0,g.jsx)(v.A,{tooltip:(0,a._)(c.Ms,c.pf,!0)?"":(0,c.vj)(c.pf,"enable or disable Groups"),children:(0,g.jsx)(a.R,{resource:c.Ms,scopes:c.pf,errorProps:{disabled:!0},matchAll:!0,children:(0,g.jsx)(o.dOG,{indicatorLabels:["Enabled","Disabled"],checked:B,value:"group_enabled",id:"group-status",name:"group-status",onChange:()=>{var s;s=!B,i.F.group.updateGroup(t.groupName||"",{members:z,status:s?"enabled":"disabled"}).then((()=>{J()})).catch((s=>{e((0,d.Dy)((0,r.S)(s.error)))}))},switchOnly:!0})})}),(0,g.jsx)(v.A,{tooltip:"Delete Group",children:(0,g.jsx)(o.$nd,{id:"delete-user-group",variant:"secondary",icon:(0,g.jsx)(o.ucK,{}),onClick:()=>{U(!0)}})})]}),sx:{marginBottom:15}})}),(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(o.tUM,{options:[{tabConfig:{id:"members",label:"Members"},content:T},{tabConfig:{id:"policies",label:"Policies"},content:Q}],currentTabOrPath:E,onTabClick:L})})]})]})}},22923:(e,s,t)=>{t.d(s,{A:()=>h});var l=t(65043),n=t(33097),o=t.n(n),i=t(56629),r=t(53518),c=t(89923),a=t(8185),d=t(64159),u=t(21383),p=t(64681),x=t(70579);const h=e=>{let{selectedUsers:s,setSelectedUsers:t,editMode:n=!1}=e;const h=(0,u.jL)(),[m,j]=(0,l.useState)([]),[g,b]=(0,l.useState)(!1),[y,f]=(0,l.useState)(""),v=(0,l.useCallback)((()=>{i.F.users.listUsers().then((e=>{let s=o()(e.data,"users",[]);s||(s=[]),j(s.sort(a.LA)),b(!1)})).catch((e=>{h((0,d.Dy)((0,r.S)(e.error))),b(!1)}))}),[h]);(0,l.useEffect)((()=>{b(!0)}),[]),(0,l.useEffect)((()=>{g&&v()}),[g,v]);const A=s||[],S=m.filter((e=>e.accessKey.includes(y)));return(0,x.jsx)(c.xA9,{item:!0,xs:12,className:"inputItem",children:(0,x.jsxs)(c.azJ,{children:[g&&(0,x.jsx)(c.z21,{}),(null===m||void 0===m?void 0:m.length)>0?(0,x.jsxs)(l.Fragment,{children:[(0,x.jsx)(c.xA9,{item:!0,xs:12,className:"inputItem",children:(0,x.jsx)(p.A,{label:n?"Edit Members":"Assign Users",placeholder:"Filter Users",onChange:f,value:y})}),(0,x.jsx)(c.bQt,{columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:e=>{const s=e.target,l=s.value,n=s.checked;let o=[...A];return n?o.push(l):o=o.filter((e=>e!==l)),t(o),o},selectedItems:A,isLoading:g,records:S,entityName:"Users",idField:"accessKey",customPaperHeight:"200px"})]}):(0,x.jsx)(c.azJ,{sx:{textAlign:"center",padding:"10px 0"},children:"No Users to display"})]})})}},42967:(e,s,t)=>{t.d(s,{A:()=>x});var l=t(65043),n=t(89923),o=t(8185),i=t(64681),r=t(64159),c=t(21383),a=t(62560),d=t(22166),u=t(56629),p=t(70579);const x=e=>{let{noTitle:s=!1}=e;const t=(0,c.jL)(),[x,h]=(0,l.useState)([]),[m,j]=(0,l.useState)(!1),[g,b]=(0,l.useState)(""),y=(0,d.d4)((e=>e.createUser.selectedPolicies)),f=(0,l.useCallback)((()=>{j(!0),u.F.policies.listPolicies().then((e=>{var s;const t=null!==(s=e.data.policies)&&void 0!==s?s:[];j(!1),h(t.sort(o.Hw))})).catch((e=>{j(!1),t((0,r.Dy)(e))}))}),[t]);(0,l.useEffect)((()=>{j(!0)}),[]),(0,l.useEffect)((()=>{m&&f()}),[m,f]);const v=x.filter((e=>e.name.includes(g)));return(0,p.jsxs)(n.xA9,{item:!0,xs:12,className:"inputItem",children:[m&&(0,p.jsx)(n.z21,{}),x.length>0?(0,p.jsxs)(l.Fragment,{children:[(0,p.jsx)(n.xA9,{item:!0,xs:12,className:"inputItem",children:(0,p.jsx)(i.A,{placeholder:"Start typing to search for a Policy",onChange:e=>{b(e)},value:g,label:s?"":"Assign Policies"})}),(0,p.jsx)(n.bQt,{columns:[{label:"Policy",elementKey:"name"}],onSelect:e=>{const s=e.target,l=s.value,n=s.checked;let o=[...y];n?o.push(l):o=o.filter((e=>e!==l)),o=o.filter((e=>""!==e)),t((0,a.Gy)(o))},selectedItems:y,isLoading:m,records:v,entityName:"Policies",idField:"name",customPaperHeight:"200px"})]}):(0,p.jsx)(n.azJ,{sx:{textAlign:"center",padding:"10px 0"},children:"No Policies Available"})]})}},74705:(e,s,t)=>{t.r(s),t.d(s,{default:()=>j});var l=t(65043),n=t(33097),o=t.n(n),i=t(22166),r=t(89923),c=t(64159),a=t(21383),d=t(77403),u=t(62560),p=t(94141),x=t(42967),h=t(20649),m=t(70579);const j=e=>{let{closeModalAndRefresh:s,selectedUser:t,selectedGroups:n,open:j}=e;const g=(0,a.jL)(),[b,y]=(0,l.useState)(!1),[f,v]=(0,l.useState)([]),[A,S]=(0,l.useState)([]),C=(0,i.d4)((e=>e.createUser.selectedPolicies));(0,l.useEffect)((()=>{if(j){if(1===(null===n||void 0===n?void 0:n.length))return void(1===(null===n||void 0===n?void 0:n.length)&&h.A.invoke("GET","/api/v1/group/".concat(encodeURIComponent(n[0]))).then((e=>{const s=o()(e,"policy","");v(s.split(",")),S(s.split(",")),g((0,u.Gy)(s.split(",")))})).catch((e=>{g((0,c.Dy)(e)),y(!1)})));const e=o()(t,"policy",[]);v(e),S(e),g((0,u.Gy)(e))}}),[j,null===n||void 0===n?void 0:n.length,t]);const P=o()(t,"accessKey","");return(0,m.jsxs)(p.A,{onClose:()=>{s()},modalOpen:j,title:"Set Policies",children:[(0,m.jsxs)(r.Hbc,{withBorders:!1,containerPadding:!1,children:[(1===(null===n||void 0===n?void 0:n.length)||null!=t)&&(0,m.jsxs)(l.Fragment,{children:[(0,m.jsx)(r.EmB,{label:"Selected ".concat(null!==n?"Group":"User"),sx:{width:"100%"},children:null!==n?n[0]:P}),(0,m.jsx)(r.EmB,{label:"Current Policy",sx:{width:"100%"},children:f.join(", ")})]}),n&&(null===n||void 0===n?void 0:n.length)>1&&(0,m.jsx)(r.EmB,{label:"Selected Groups",sx:{width:"100%"},children:n.join(", ")}),(0,m.jsx)(r.xA9,{item:!0,xs:12,children:(0,m.jsx)(x.A,{selectedPolicy:A})})]}),(0,m.jsxs)(r.xA9,{item:!0,xs:12,sx:d.Uz.modalButtonBar,children:[(0,m.jsx)(r.$nd,{id:"reset",type:"button",variant:"regular",onClick:()=>{S(f),g((0,u.Gy)(f))},label:"Reset"}),(0,m.jsx)(r.$nd,{id:"save",type:"button",variant:"callAction",color:"primary",disabled:b,onClick:()=>{let e=null,l=null;null!==n?l=n:null!==t&&(e=[t.accessKey]||0),y(!0),h.A.invoke("PUT","/api/v1/set-policy-multi",{name:C,groups:l,users:e}).then((()=>{y(!1),s()})).catch((e=>{y(!1),g((0,c.Dy)(e))}))},label:"Save"})]}),b&&(0,m.jsx)(r.xA9,{item:!0,xs:12,children:(0,m.jsx)(r.z21,{})})]})}},8185:(e,s,t)=>{t.d(s,{Hw:()=>n,LA:()=>l,SO:()=>o,rY:()=>i});const l=(e,s)=>{if(e.accessKey&&s.accessKey){if(e.accessKey>s.accessKey)return 1;if(e.accessKeye.name>s.name?1:e.namee>s?1:ee.policy>s.policy?1:e.policy.\nimport React, { useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default 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 .\n\nimport React, { Fragment, useState } from \"react\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { ApiError, HttpResponse } from \"api/consoleApi\";\n\ninterface IDeleteGroup {\n selectedGroups: string[];\n deleteOpen: boolean;\n closeDeleteModalAndRefresh: any;\n}\n\nconst DeleteGroup = ({\n selectedGroups,\n deleteOpen,\n closeDeleteModalAndRefresh,\n}: IDeleteGroup) => {\n const dispatch = useAppDispatch();\n const onClose = () => closeDeleteModalAndRefresh(false);\n const [loadingDelete, setLoadingDelete] = useState(false);\n\n if (!selectedGroups) {\n return null;\n }\n const onDeleteGroups = () => {\n for (let group of selectedGroups) {\n setLoadingDelete(true);\n api.group\n .removeGroup(group)\n .then((_) => {\n closeDeleteModalAndRefresh(true);\n })\n .catch(async (res: HttpResponse) => {\n const err = (await res.json()) as ApiError;\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n closeDeleteModalAndRefresh(false);\n })\n .finally(() => setLoadingDelete(false));\n }\n };\n\n const renderGroups = selectedGroups.map((group) => (\n
\n {group}\n
\n ));\n\n return (\n 1 ? \"s\" : \"\"}`}\n confirmText={\"Delete\"}\n isOpen={deleteOpen}\n titleIcon={}\n isLoading={loadingDelete}\n onConfirm={onDeleteGroups}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the following{\" \"}\n {selectedGroups.length === 1 ? \"\" : selectedGroups.length} group\n {selectedGroups.length > 1 ? \"s?\" : \"?\"}\n {renderGroups}\n \n }\n />\n );\n};\n\nexport default DeleteGroup;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { AddMembersToGroupIcon, Button, FormLayout, Grid, ReadBox } from \"mds\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport UsersSelectors from \"./UsersSelectors\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ntype UserPickerModalProps = {\n title?: string;\n preSelectedUsers?: string[];\n selectedGroup?: string;\n open: boolean;\n onClose: () => void;\n onSaveClick: () => void;\n groupStatus?: string;\n};\n\nconst AddGroupMember = ({\n title = \"\",\n groupStatus = \"enabled\",\n preSelectedUsers = [],\n selectedGroup = \"\",\n open,\n onClose,\n}: UserPickerModalProps) => {\n const dispatch = useAppDispatch();\n const [selectedUsers, setSelectedUsers] = useState(preSelectedUsers);\n\n function addMembersToGroup() {\n return api.group\n .updateGroup(selectedGroup, {\n members: selectedUsers,\n status: groupStatus,\n })\n .then(() => {\n onClose();\n })\n .catch((err) => {\n onClose();\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n return (\n }\n >\n \n \n {selectedGroup}\n \n \n \n \n {\n setSelectedUsers(preSelectedUsers);\n }}\n label={\"Reset\"}\n />\n\n {\n addMembersToGroup();\n }}\n label={\"Save\"}\n />\n \n \n );\n};\n\nexport default AddGroupMember;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { useNavigate, useParams } from \"react-router-dom\";\nimport {\n AddIcon,\n BackLink,\n Box,\n Button,\n DataTable,\n Grid,\n GroupsIcon,\n IAMPoliciesIcon,\n PageLayout,\n ScreenTitle,\n SectionTitle,\n Switch,\n Tabs,\n TrashIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Group } from \"api/consoleApi\";\nimport {\n addUserToGroupPermissions,\n CONSOLE_UI_RESOURCE,\n createGroupPermissions,\n editGroupMembersPermissions,\n enableDisableGroupPermissions,\n getGroupPermissions,\n IAM_PAGES,\n listUsersPermissions,\n permissionTooltipHelper,\n setGroupPoliciesPermissions,\n viewPolicyPermissions,\n viewUserPermissions,\n} from \"../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport { setHelpName, setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport SetPolicy from \"../Policies/SetPolicy\";\nimport AddGroupMember from \"./AddGroupMember\";\nimport DeleteGroup from \"./DeleteGroup\";\nimport SearchBox from \"../Common/SearchBox\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport HelpMenu from \"../HelpMenu\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nconst formatPolicy = (policy: string = \"\"): string[] => {\n if (policy.length <= 0) return [];\n return policy.split(\",\");\n};\n\nconst GroupsDetails = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n const [groupDetails, setGroupDetails] = useState({});\n const [policyOpen, setPolicyOpen] = useState(false);\n const [usersOpen, setUsersOpen] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [memberFilter, setMemberFilter] = useState(\"\");\n const [currentTab, setCurrentTab] = useState(\"members\");\n\n const { members = [], policy = \"\", status: groupEnabled } = groupDetails;\n\n const filteredMembers = members.filter((elementItem) =>\n elementItem.includes(memberFilter),\n );\n\n const viewUser = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewUserPermissions,\n true,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"group_details\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (params.groupName) {\n fetchGroupInfo();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [params.groupName]);\n\n const groupPolicies = formatPolicy(policy);\n const isGroupEnabled = groupEnabled === \"enabled\";\n const memberActionText = members.length > 0 ? \"Edit Members\" : \"Add Members\";\n\n const getGroupDetails = hasPermission(\n CONSOLE_UI_RESOURCE,\n getGroupPermissions,\n );\n\n const canEditGroupMembers = hasPermission(\n CONSOLE_UI_RESOURCE,\n editGroupMembersPermissions,\n true,\n );\n\n const canSetPolicies = hasPermission(\n CONSOLE_UI_RESOURCE,\n setGroupPoliciesPermissions,\n true,\n );\n\n const canViewPolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewPolicyPermissions,\n true,\n );\n\n function fetchGroupInfo() {\n if (getGroupDetails) {\n api.group\n .groupInfo(params.groupName || \"\")\n .then((res) => {\n setGroupDetails(res.data);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setGroupDetails({});\n });\n }\n }\n\n function toggleGroupStatus(nextStatus: boolean) {\n return api.group\n .updateGroup(params.groupName || \"\", {\n members: members,\n status: nextStatus ? \"enabled\" : \"disabled\",\n })\n .then(() => {\n fetchGroupInfo();\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n const groupsTabContent = (\n {\n dispatch(setHelpName(\"groups_members\"));\n }}\n >\n \n {\n setMemberFilter(searchText);\n }}\n value={memberFilter}\n sx={{\n maxWidth: 280,\n }}\n />\n \n \n }\n onClick={() => {\n setUsersOpen(true);\n }}\n disabled={!canEditGroupMembers}\n />\n \n \n \n }\n >\n Members\n \n \n \n \n {\n navigate(\n `${IAM_PAGES.USERS}/${encodeURIComponent(userName)}`,\n );\n },\n isDisabled: !viewUser,\n },\n ]}\n columns={[{ label: \"Access Key\" }]}\n selectedItems={[]}\n isLoading={false}\n records={filteredMembers}\n entityName=\"Users\"\n />\n \n \n \n \n );\n\n const policiesTabContent = (\n \n {\n dispatch(setHelpName(\"groups_policies\"));\n }}\n >\n \n }\n onClick={() => {\n setPolicyOpen(true);\n }}\n disabled={!canSetPolicies}\n />\n \n }\n >\n Policies\n \n \n \n \n {\n navigate(\n `${IAM_PAGES.POLICIES}/${encodeURIComponent(policy)}`,\n );\n },\n isDisabled: !canViewPolicy,\n },\n ]}\n columns={[{ label: \"Policy\" }]}\n isLoading={false}\n records={groupPolicies}\n entityName=\"Policies\"\n />\n \n \n \n );\n\n return (\n \n {policyOpen ? (\n {\n setPolicyOpen(false);\n fetchGroupInfo();\n dispatch(setSelectedPolicies([]));\n }}\n />\n ) : null}\n\n {usersOpen ? (\n {}}\n title={memberActionText}\n groupStatus={groupEnabled}\n preSelectedUsers={members}\n open={usersOpen}\n onClose={() => {\n setUsersOpen(false);\n fetchGroupInfo();\n }}\n />\n ) : null}\n\n {deleteOpen && (\n {\n setDeleteOpen(false);\n if (isDelSuccess) {\n navigate(IAM_PAGES.GROUPS);\n }\n }}\n />\n )}\n \n navigate(IAM_PAGES.GROUPS)}\n />\n \n }\n actions={}\n />\n \n \n \n \n \n }\n title={params.groupName || \"\"}\n subTitle={null}\n bottomBorder\n actions={\n \n Group Status:\n \n {isGroupEnabled ? \"Enabled\" : \"Disabled\"}\n \n \n \n {\n toggleGroupStatus(!isGroupEnabled);\n }}\n switchOnly\n />\n \n \n\n \n }\n onClick={() => {\n setDeleteOpen(true);\n }}\n />\n \n \n }\n sx={{ marginBottom: 15 }}\n />\n \n\n \n \n \n \n \n );\n};\n\nexport default GroupsDetails;\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, { useCallback, useEffect, useState, Fragment } from \"react\";\nimport get from \"lodash/get\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Box, DataTable, Grid, ProgressBar } from \"mds\";\n\nimport { usersSort } from \"../../../utils/sortFunctions\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport SearchBox from \"../Common/SearchBox\";\n\ninterface IGroupsProps {\n selectedUsers: string[];\n setSelectedUsers: any;\n editMode?: boolean;\n}\n\nconst UsersSelectors = ({\n selectedUsers,\n setSelectedUsers,\n editMode = false,\n}: IGroupsProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const fetchUsers = useCallback(() => {\n api.users\n .listUsers()\n .then((res) => {\n let users = get(res.data, \"users\", []);\n\n if (!users) {\n users = [];\n }\n\n setRecords(users.sort(usersSort));\n isLoading(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n isLoading(false);\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchUsers();\n }\n }, [loading, fetchUsers]);\n\n const selUsers = !selectedUsers ? [] : selectedUsers;\n\n //Fetch Actions\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[] = [...selUsers]; // We clone the selectedGroups array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedGroupsList\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 setSelectedUsers(elements);\n\n return elements;\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.accessKey.includes(filter),\n );\n\n return (\n \n \n {loading && }\n {records?.length > 0 ? (\n \n \n \n \n \n \n ) : (\n \n No Users to display\n \n )}\n \n \n );\n};\n\nexport default UsersSelectors;\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, useCallback, useEffect, useState } from \"react\";\n\nimport { Box, DataTable, Grid, ProgressBar } from \"mds\";\nimport { policySort } from \"../../../utils/sortFunctions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"../../../api\";\n\ninterface ISelectPolicyProps {\n selectedPolicy?: string[];\n noTitle?: boolean;\n}\n\nconst PolicySelectors = ({ noTitle = false }: ISelectPolicyProps) => {\n const dispatch = useAppDispatch();\n // Local State\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const fetchPolicies = useCallback(() => {\n isLoading(true);\n\n api.policies\n .listPolicies()\n .then((res) => {\n const policies = res.data.policies ?? [];\n isLoading(false);\n setRecords(policies.sort(policySort));\n })\n .catch((err: ErrorResponseHandler) => {\n isLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchPolicies();\n }\n }, [loading, fetchPolicies]);\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[] = [...currentPolicies]; // We clone the checkedUsers array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedUsersList\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 // remove empty values\n elements = elements.filter((element) => element !== \"\");\n\n dispatch(setSelectedPolicies(elements));\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.name.includes(filter),\n );\n\n return (\n \n {loading && }\n {records.length > 0 ? (\n \n \n {\n setFilter(value);\n }}\n value={filter}\n label={!noTitle ? \"Assign Policies\" : \"\"}\n />\n \n\n \n \n ) : (\n \n No Policies Available\n \n )}\n \n );\n};\n\nexport default PolicySelectors;\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 { useSelector } from \"react-redux\";\nimport { Button, FormLayout, ReadBox, Grid, ProgressBar } from \"mds\";\n\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { User } from \"../Users/types\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport PolicySelectors from \"./PolicySelectors\";\nimport api from \"../../../common/api\";\n\ninterface ISetPolicyProps {\n closeModalAndRefresh: () => void;\n selectedUser: User | null;\n selectedGroups: string[] | null;\n open: boolean;\n}\n\nconst SetPolicy = ({\n closeModalAndRefresh,\n selectedUser,\n selectedGroups,\n open,\n}: ISetPolicyProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [loading, setLoading] = useState(false);\n const [actualPolicy, setActualPolicy] = useState([]);\n const [selectedPolicy, setSelectedPolicy] = useState([]);\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n const setPolicyAction = () => {\n let users = null;\n let groups = null;\n if (selectedGroups !== null) {\n groups = selectedGroups;\n } else {\n if (selectedUser !== null) {\n users = [selectedUser.accessKey] || [\" \"];\n }\n }\n\n setLoading(true);\n\n api\n .invoke(\"PUT\", `/api/v1/set-policy-multi`, {\n name: currentPolicies,\n groups: groups,\n users: users,\n })\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n };\n\n const fetchGroupInformation = () => {\n if (selectedGroups?.length === 1) {\n api\n .invoke(\"GET\", `/api/v1/group/${encodeURIComponent(selectedGroups[0])}`)\n .then((res: any) => {\n const groupPolicy: String = get(res, \"policy\", \"\");\n setActualPolicy(groupPolicy.split(\",\"));\n setSelectedPolicy(groupPolicy.split(\",\"));\n dispatch(setSelectedPolicies(groupPolicy.split(\",\")));\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setModalErrorSnackMessage(err));\n setLoading(false);\n });\n }\n };\n\n const resetSelection = () => {\n setSelectedPolicy(actualPolicy);\n dispatch(setSelectedPolicies(actualPolicy));\n };\n\n useEffect(() => {\n if (open) {\n if (selectedGroups?.length === 1) {\n fetchGroupInformation();\n return;\n }\n\n const userPolicy: string[] = get(selectedUser, \"policy\", []);\n setActualPolicy(userPolicy);\n setSelectedPolicy(userPolicy);\n dispatch(setSelectedPolicies(userPolicy));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, selectedGroups?.length, selectedUser]);\n\n const userName = get(selectedUser, \"accessKey\", \"\");\n\n return (\n {\n closeModalAndRefresh();\n }}\n modalOpen={open}\n title=\"Set Policies\"\n >\n \n {(selectedGroups?.length === 1 || selectedUser != null) && (\n \n \n {selectedGroups !== null ? selectedGroups[0] : userName}\n \n \n {actualPolicy.join(\", \")}\n \n \n )}\n {selectedGroups && selectedGroups?.length > 1 && (\n \n {selectedGroups.join(\", \")}\n \n )}\n \n \n \n \n \n \n \n \n {loading && (\n \n \n \n )}\n \n );\n};\n\nexport default SetPolicy;\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 { Policy, User } from \"api/consoleApi\";\n\ninterface policyDetailsInterface {\n policy: string;\n}\n\nexport const usersSort = (a: User, b: User) => {\n if (a.accessKey && b.accessKey) {\n if (a.accessKey > b.accessKey) {\n return 1;\n }\n if (a.accessKey < b.accessKey) {\n return -1;\n }\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policySort = (a: Policy, b: Policy) => {\n if (a.name! > b.name!) {\n return 1;\n }\n if (a.name! < b.name!) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const stringSort = (a: string, b: string) => {\n if (a > b) {\n return 1;\n }\n if (a < b) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policyDetailsSort = (\n a: policyDetailsInterface,\n b: policyDetailsInterface,\n) => {\n if (a.policy > b.policy) {\n return 1;\n }\n if (a.policy < b.policy) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n"],"names":["_ref","onClose","modalOpen","title","children","wideLimit","titleIcon","iconColor","sx","dispatch","useAppDispatch","openSnackbar","setOpenSnackbar","useState","modalSnackMessage","useSelector","state","system","modalSnackBar","useEffect","setModalSnackMessage","message","type","detailedErrorMsg","length","_jsxs","ModalBox","open","widthLimit","_jsx","MainError","isModal","Snackbar","closeSnackBar","mode","variant","autoHideDuration","condensed","selectedGroups","deleteOpen","closeDeleteModalAndRefresh","loadingDelete","setLoadingDelete","renderGroups","map","group","ConfirmDialog","concat","confirmText","isOpen","ConfirmDeleteIcon","isLoading","onConfirm","onDeleteGroups","api","removeGroup","then","_","catch","async","err","res","json","setErrorSnackMessage","errorToHandler","finally","confirmationContent","Fragment","groupStatus","preSelectedUsers","selectedGroup","selectedUsers","setSelectedUsers","ModalWrapper","AddMembersToGroupIcon","FormLayout","withBorders","containerPadding","ReadBox","label","width","UsersSelectors","editMode","Grid","item","xs","modalStyleUtils","modalButtonBar","Button","id","onClick","updateGroup","members","status","setModalErrorSnackMessage","error","GroupsDetails","navigate","useNavigate","params","useParams","groupDetails","setGroupDetails","policyOpen","setPolicyOpen","usersOpen","setUsersOpen","setDeleteOpen","memberFilter","setMemberFilter","currentTab","setCurrentTab","policy","groupEnabled","filteredMembers","filter","elementItem","includes","viewUser","hasPermission","CONSOLE_UI_RESOURCE","viewUserPermissions","setHelpName","groupName","fetchGroupInfo","groupPolicies","arguments","undefined","split","formatPolicy","isGroupEnabled","memberActionText","getGroupDetails","getGroupPermissions","canEditGroupMembers","editGroupMembersPermissions","canSetPolicies","setGroupPoliciesPermissions","canViewPolicy","viewPolicyPermissions","groupInfo","data","groupsTabContent","Box","onMouseMove","SectionTitle","separator","marginBottom","actions","display","gap","SearchBox","placeholder","onChange","searchText","value","maxWidth","SecureComponent","resource","scopes","addUserToGroupPermissions","errorProps","disabled","TooltipWrapper","tooltip","permissionTooltipHelper","createGroupPermissions","icon","AddIcon","listUsersPermissions","DataTable","itemActions","userName","IAM_PAGES","USERS","encodeURIComponent","isDisabled","columns","selectedItems","records","entityName","policiesTabContent","IAMPoliciesIcon","POLICIES","SetPolicy","selectedUser","closeModalAndRefresh","setSelectedPolicies","AddGroupMember","onSaveClick","DeleteGroup","isDelSuccess","GROUPS","PageHeaderWrapper","BackLink","HelpMenu","PageLayout","ScreenTitle","GroupsIcon","subTitle","bottomBorder","fontSize","alignItems","style","fontWeight","enableDisableGroupPermissions","matchAll","Switch","indicatorLabels","checked","name","nextStatus","switchOnly","TrashIcon","Tabs","options","tabConfig","content","currentTabOrPath","onTabClick","setRecords","loading","setFilter","fetchUsers","useCallback","users","listUsers","get","sort","usersSort","selUsers","filteredRecords","accessKey","className","ProgressBar","elementKey","onSelect","e","targetD","target","elements","push","element","idField","customPaperHeight","textAlign","padding","noTitle","currentPolicies","createUser","selectedPolicies","fetchPolicies","policies","listPolicies","_res$data$policies","policySort","setLoading","actualPolicy","setActualPolicy","selectedPolicy","setSelectedPolicy","invoke","groupPolicy","userPolicy","join","PolicySelectors","resetSelection","color","setPolicyAction","groups","a","b","stringSort","policyDetailsSort"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/1324.acba4c47.chunk.js b/web-app/build/static/js/1324.acba4c47.chunk.js deleted file mode 100644 index 2e829b4365..0000000000 --- a/web-app/build/static/js/1324.acba4c47.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[1324,5851,4705],{94141:(e,s,t)=>{t.d(s,{A:()=>d});var l=t(65043),n=t(22166),o=t(89923),i=t(21383),r=t(64159),c=t(49555),a=t(70579);const d=e=>{let{onClose:s,modalOpen:t,title:d,children:u,wideLimit:p=!0,titleIcon:x=null,iconColor:h="default",sx:m}=e;const j=(0,i.jL)(),[g,b]=(0,l.useState)(!1),y=(0,n.d4)((e=>e.system.modalSnackBar));(0,l.useEffect)((()=>{j((0,r.h0)(""))}),[j]),(0,l.useEffect)((()=>{if(y){if(""===y.message)return void b(!1);"error"!==y.type&&b(!0)}}),[y]);let f="";return y&&(f=y.detailedErrorMsg,(""===f||f&&f.length<5)&&(f=y.message)),(0,a.jsxs)(o.ngX,{onClose:s,open:t,title:d,titleIcon:x,widthLimit:p,sx:m,iconColor:h,children:[(0,a.jsx)(c.A,{isModal:!0}),(0,a.jsx)(o.qb_,{onClose:()=>{b(!1),j((0,r.h0)(""))},open:g,message:f,mode:"inline",variant:"error"===y.type?"error":"default",autoHideDuration:"error"===y.type?10:5,condensed:!0}),u]})}},85851:(e,s,t)=>{t.r(s),t.d(s,{default:()=>u});var l=t(65043),n=t(89923),o=t(64159),i=t(21383),r=t(58661),c=t(56629),a=t(53518),d=t(70579);const u=e=>{let{selectedGroups:s,deleteOpen:t,closeDeleteModalAndRefresh:u}=e;const p=(0,i.jL)(),[x,h]=(0,l.useState)(!1);if(!s)return null;const m=s.map((e=>(0,d.jsx)("div",{children:(0,d.jsx)("b",{children:e})},e)));return(0,d.jsx)(r.A,{title:"Delete Group".concat(s.length>1?"s":""),confirmText:"Delete",isOpen:t,titleIcon:(0,d.jsx)(n.xWY,{}),isLoading:x,onConfirm:()=>{for(let e of s)h(!0),c.F.group.removeGroup(e).then((e=>{u(!0)})).catch((async e=>{const s=await e.json();p((0,o.C9)((0,a.S)(s))),u(!1)})).finally((()=>h(!1)))},onClose:()=>u(!1),confirmationContent:(0,d.jsxs)(l.Fragment,{children:["Are you sure you want to delete the following"," ",1===s.length?"":s.length," group",s.length>1?"s?":"?",m]})})}},91324:(e,s,t)=>{t.r(s),t.d(s,{default:()=>P,formatPolicy:()=>C});var l=t(65043),n=t(73216),o=t(89923),i=t(56629),r=t(53518),c=t(99161),a=t(77938),d=t(64159),u=t(21383),p=t(62560),x=t(74705),h=t(77403),m=t(22923),j=t(94141),g=t(70579);const b=e=>{let{title:s="",groupStatus:t="enabled",preSelectedUsers:n=[],selectedGroup:c="",open:a,onClose:p}=e;const x=(0,u.jL)(),[b,y]=(0,l.useState)(n);return(0,g.jsxs)(j.A,{modalOpen:a,onClose:p,title:s,titleIcon:(0,g.jsx)(o.WC,{}),children:[(0,g.jsxs)(o.Hbc,{withBorders:!1,containerPadding:!1,children:[(0,g.jsx)(o.EmB,{label:"Selected Group",sx:{width:"100%"},children:c}),(0,g.jsx)(m.A,{selectedUsers:b,setSelectedUsers:y,editMode:!c})]}),(0,g.jsxs)(o.xA9,{item:!0,xs:12,sx:h.Uz.modalButtonBar,children:[(0,g.jsx)(o.$nd,{id:"reset-add-group-member",type:"button",variant:"regular",onClick:()=>{y(n)},label:"Reset"}),(0,g.jsx)(o.$nd,{id:"save-add-group-member",type:"button",variant:"callAction",onClick:()=>{i.F.group.updateGroup(c,{members:b,status:t}).then((()=>{p()})).catch((e=>{p(),x((0,d.Dy)((0,r.S)(e.error)))}))},label:"Save"})]})]})};var y=t(85851),f=t(64681),v=t(6681),A=t(55968),S=t(48793);const C=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"";return e.length<=0?[]:e.split(",")},P=()=>{const e=(0,u.jL)(),s=(0,n.Zp)(),t=(0,n.g)(),[h,m]=(0,l.useState)({}),[j,P]=(0,l.useState)(!1),[G,M]=(0,l.useState)(!1),[U,k]=(0,l.useState)(!1),[w,E]=(0,l.useState)(""),[L,z]=(0,l.useState)("members"),{members:D=[],policy:I="",status:N}=h,R=D.filter((e=>e.includes(w))),F=(0,a._)(c.Ms,c.Ld,!0);(0,l.useEffect)((()=>{e((0,d.ph)("group_details"))}),[]),(0,l.useEffect)((()=>{t.groupName&&T()}),[t.groupName]);const B=C(I),K="enabled"===N,_=D.length>0?"Edit Members":"Add Members",O=(0,a._)(c.Ms,c.Oh),H=(0,a._)(c.Ms,c.Hr,!0),$=(0,a._)(c.Ms,c.QR,!0),J=(0,a._)(c.Ms,c.yv,!0);function T(){O&&i.F.group.groupInfo(t.groupName||"").then((e=>{m(e.data)})).catch((s=>{e((0,d.Dy)((0,r.S)(s.error))),m({})}))}const Q=(0,g.jsxs)(o.azJ,{onMouseMove:()=>{e((0,d.ph)("groups_members"))},children:[(0,g.jsx)(o._xt,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsxs)(o.azJ,{sx:{display:"flex",gap:10},children:[(0,g.jsx)(f.A,{placeholder:"Search members",onChange:e=>{E(e)},value:w,sx:{maxWidth:280}}),(0,g.jsx)(a.R,{resource:c.Ms,scopes:c.BD,errorProps:{disabled:!0},children:(0,g.jsx)(v.A,{tooltip:H?_:(0,c.vj)(c.k1,"edit Group membership"),children:(0,g.jsx)(o.$nd,{id:"add-user-group",label:_,variant:"callAction",icon:(0,g.jsx)(o.REV,{}),onClick:()=>{M(!0)},disabled:!H})})})]}),children:"Members"}),(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(a.R,{resource:c.Ms,scopes:c.x6,errorProps:{disabled:!0},children:(0,g.jsx)(v.A,{tooltip:F?"":(0,c.vj)(c.Ld,"view User details"),children:(0,g.jsx)(o.bQt,{itemActions:[{type:"view",onClick:e=>{s("".concat(c.zZ.USERS,"/").concat(encodeURIComponent(e)))},isDisabled:!F}],columns:[{label:"Access Key"}],selectedItems:[],isLoading:!1,records:R,entityName:"Users"})})})})]}),Z=(0,g.jsxs)(l.Fragment,{children:[(0,g.jsx)(o.azJ,{onMouseMove:()=>{e((0,d.ph)("groups_policies"))},children:(0,g.jsx)(o._xt,{separator:!0,sx:{marginBottom:15},actions:(0,g.jsx)(v.A,{tooltip:$?"Set Policies":(0,c.vj)(c.QR,"assign Policies"),children:(0,g.jsx)(o.$nd,{id:"set-policies",label:"Set Policies",variant:"callAction",icon:(0,g.jsx)(o.n$X,{}),onClick:()=>{P(!0)},disabled:!$})}),children:"Policies"})}),(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(v.A,{tooltip:J?"":(0,c.vj)(c.yv,"view Policy details"),children:(0,g.jsx)(o.bQt,{itemActions:[{type:"view",onClick:e=>{s("".concat(c.zZ.POLICIES,"/").concat(encodeURIComponent(e)))},isDisabled:!J}],columns:[{label:"Policy"}],isLoading:!1,records:B,entityName:"Policies"})})})]});return(0,g.jsxs)(l.Fragment,{children:[j?(0,g.jsx)(x.default,{open:j,selectedGroups:[t.groupName||""],selectedUser:null,closeModalAndRefresh:()=>{P(!1),T(),e((0,p.Gy)([]))}}):null,G?(0,g.jsx)(b,{selectedGroup:t.groupName,onSaveClick:()=>{},title:_,groupStatus:N,preSelectedUsers:D,open:G,onClose:()=>{M(!1),T()}}):null,U&&(0,g.jsx)(y.default,{deleteOpen:U,selectedGroups:[t.groupName||""],closeDeleteModalAndRefresh:e=>{k(!1),e&&s(c.zZ.GROUPS)}}),(0,g.jsx)(S.A,{label:(0,g.jsx)(l.Fragment,{children:(0,g.jsx)(o.EGL,{label:"Groups",onClick:()=>s(c.zZ.GROUPS)})}),actions:(0,g.jsx)(A.A,{})}),(0,g.jsxs)(o.Mxu,{children:[(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(o.lcx,{icon:(0,g.jsx)(l.Fragment,{children:(0,g.jsx)(o.YXz,{width:40})}),title:t.groupName||"",subTitle:null,bottomBorder:!0,actions:(0,g.jsxs)(o.azJ,{sx:{display:"flex",fontSize:14,alignItems:"center",gap:15},children:[(0,g.jsx)("span",{children:"Group Status:"}),(0,g.jsx)("span",{id:"group-status-label",style:{fontWeight:"bold"},children:K?"Enabled":"Disabled"}),(0,g.jsx)(v.A,{tooltip:(0,a._)(c.Ms,c.pf,!0)?"":(0,c.vj)(c.pf,"enable or disable Groups"),children:(0,g.jsx)(a.R,{resource:c.Ms,scopes:c.pf,errorProps:{disabled:!0},matchAll:!0,children:(0,g.jsx)(o.dOG,{indicatorLabels:["Enabled","Disabled"],checked:K,value:"group_enabled",id:"group-status",name:"group-status",onChange:()=>{var s;s=!K,i.F.group.updateGroup(t.groupName||"",{members:D,status:s?"enabled":"disabled"}).then((()=>{T()})).catch((s=>{e((0,d.Dy)((0,r.S)(s.error)))}))},switchOnly:!0})})}),(0,g.jsx)(v.A,{tooltip:"Delete Group",children:(0,g.jsx)(o.$nd,{id:"delete-user-group",variant:"secondary",icon:(0,g.jsx)(o.ucK,{}),onClick:()=>{k(!0)}})})]}),sx:{marginBottom:15}})}),(0,g.jsx)(o.xA9,{item:!0,xs:12,children:(0,g.jsx)(o.tUM,{options:[{tabConfig:{id:"members",label:"Members"},content:Q},{tabConfig:{id:"policies",label:"Policies"},content:Z}],currentTabOrPath:L,onTabClick:z})})]})]})}},22923:(e,s,t)=>{t.d(s,{A:()=>h});var l=t(65043),n=t(33097),o=t.n(n),i=t(56629),r=t(53518),c=t(89923),a=t(8185),d=t(64159),u=t(21383),p=t(64681),x=t(70579);const h=e=>{let{selectedUsers:s,setSelectedUsers:t,editMode:n=!1}=e;const h=(0,u.jL)(),[m,j]=(0,l.useState)([]),[g,b]=(0,l.useState)(!1),[y,f]=(0,l.useState)(""),v=(0,l.useCallback)((()=>{i.F.users.listUsers().then((e=>{let s=o()(e.data,"users",[]);s||(s=[]),j(s.sort(a.LA)),b(!1)})).catch((e=>{h((0,d.Dy)((0,r.S)(e.error))),b(!1)}))}),[h]);(0,l.useEffect)((()=>{b(!0)}),[]),(0,l.useEffect)((()=>{g&&v()}),[g,v]);const A=s||[],S=m.filter((e=>e.accessKey.includes(y)));return(0,x.jsx)(c.xA9,{item:!0,xs:12,className:"inputItem",children:(0,x.jsxs)(c.azJ,{children:[g&&(0,x.jsx)(c.z21,{}),(null===m||void 0===m?void 0:m.length)>0?(0,x.jsxs)(l.Fragment,{children:[(0,x.jsx)(c.xA9,{item:!0,xs:12,className:"inputItem",children:(0,x.jsx)(p.A,{label:n?"Edit Members":"Assign Users",placeholder:"Filter Users",onChange:f,value:y})}),(0,x.jsx)(c.bQt,{columns:[{label:"Access Key",elementKey:"accessKey"}],onSelect:e=>{const s=e.target,l=s.value,n=s.checked;let o=[...A];return n?o.push(l):o=o.filter((e=>e!==l)),t(o),o},selectedItems:A,isLoading:g,records:S,entityName:"Users",idField:"accessKey",customPaperHeight:"200px"})]}):(0,x.jsx)(c.azJ,{sx:{textAlign:"center",padding:"10px 0"},children:"No Users to display"})]})})}},42967:(e,s,t)=>{t.d(s,{A:()=>x});var l=t(65043),n=t(89923),o=t(8185),i=t(64681),r=t(64159),c=t(21383),a=t(62560),d=t(22166),u=t(56629),p=t(70579);const x=e=>{let{noTitle:s=!1}=e;const t=(0,c.jL)(),[x,h]=(0,l.useState)([]),[m,j]=(0,l.useState)(!1),[g,b]=(0,l.useState)(""),y=(0,d.d4)((e=>e.createUser.selectedPolicies)),f=(0,l.useCallback)((()=>{j(!0),u.F.policies.listPolicies().then((e=>{var s;const t=null!==(s=e.data.policies)&&void 0!==s?s:[];j(!1),h(t.sort(o.Hw))})).catch((e=>{j(!1),t((0,r.Dy)(e))}))}),[t]);(0,l.useEffect)((()=>{j(!0)}),[]),(0,l.useEffect)((()=>{m&&f()}),[m,f]);const v=x.filter((e=>e.name.includes(g)));return(0,p.jsxs)(n.xA9,{item:!0,xs:12,className:"inputItem",children:[m&&(0,p.jsx)(n.z21,{}),x.length>0?(0,p.jsxs)(l.Fragment,{children:[(0,p.jsx)(n.xA9,{item:!0,xs:12,className:"inputItem",children:(0,p.jsx)(i.A,{placeholder:"Start typing to search for a Policy",onChange:e=>{b(e)},value:g,label:s?"":"Assign Policies"})}),(0,p.jsx)(n.bQt,{columns:[{label:"Policy",elementKey:"name"}],onSelect:e=>{const s=e.target,l=s.value,n=s.checked;let o=[...y];n?o.push(l):o=o.filter((e=>e!==l)),o=o.filter((e=>""!==e)),t((0,a.Gy)(o))},selectedItems:y,isLoading:m,records:v,entityName:"Policies",idField:"name",customPaperHeight:"200px"})]}):(0,p.jsx)(n.azJ,{sx:{textAlign:"center",padding:"10px 0"},children:"No Policies Available"})]})}},74705:(e,s,t)=>{t.r(s),t.d(s,{default:()=>j});var l=t(65043),n=t(33097),o=t.n(n),i=t(22166),r=t(89923),c=t(64159),a=t(21383),d=t(77403),u=t(62560),p=t(94141),x=t(42967),h=t(20649),m=t(70579);const j=e=>{let{closeModalAndRefresh:s,selectedUser:t,selectedGroups:n,open:j}=e;const g=(0,a.jL)(),[b,y]=(0,l.useState)(!1),[f,v]=(0,l.useState)([]),[A,S]=(0,l.useState)([]),C=(0,i.d4)((e=>e.createUser.selectedPolicies));(0,l.useEffect)((()=>{if(j){if(1===(null===n||void 0===n?void 0:n.length))return void(1===(null===n||void 0===n?void 0:n.length)&&h.A.invoke("GET","/api/v1/group/".concat(encodeURIComponent(n[0]))).then((e=>{const s=o()(e,"policy","");v(s.split(",")),S(s.split(",")),g((0,u.Gy)(s.split(",")))})).catch((e=>{g((0,c.Dy)(e)),y(!1)})));const e=o()(t,"policy",[]);v(e),S(e),g((0,u.Gy)(e))}}),[j,null===n||void 0===n?void 0:n.length,t]);const P=o()(t,"accessKey","");return(0,m.jsxs)(p.A,{onClose:()=>{s()},modalOpen:j,title:"Set Policies",children:[(0,m.jsxs)(r.Hbc,{withBorders:!1,containerPadding:!1,children:[(1===(null===n||void 0===n?void 0:n.length)||null!=t)&&(0,m.jsxs)(l.Fragment,{children:[(0,m.jsx)(r.EmB,{label:"Selected ".concat(null!==n?"Group":"User"),sx:{width:"100%"},children:null!==n?n[0]:P}),(0,m.jsx)(r.EmB,{label:"Current Policy",sx:{width:"100%"},children:f.join(", ")})]}),n&&(null===n||void 0===n?void 0:n.length)>1&&(0,m.jsx)(r.EmB,{label:"Selected Groups",sx:{width:"100%"},children:n.join(", ")}),(0,m.jsx)(r.xA9,{item:!0,xs:12,children:(0,m.jsx)(x.A,{selectedPolicy:A})})]}),(0,m.jsxs)(r.xA9,{item:!0,xs:12,sx:d.Uz.modalButtonBar,children:[(0,m.jsx)(r.$nd,{id:"reset",type:"button",variant:"regular",onClick:()=>{S(f),g((0,u.Gy)(f))},label:"Reset"}),(0,m.jsx)(r.$nd,{id:"save",type:"button",variant:"callAction",color:"primary",disabled:b,onClick:()=>{let e=null,l=null;null!==n?l=n:null!==t&&(e=[t.accessKey]||0),y(!0),h.A.invoke("PUT","/api/v1/set-policy-multi",{name:C,groups:l,users:e}).then((()=>{y(!1),s()})).catch((e=>{y(!1),g((0,c.Dy)(e))}))},label:"Save"})]}),b&&(0,m.jsx)(r.xA9,{item:!0,xs:12,children:(0,m.jsx)(r.z21,{})})]})}},8185:(e,s,t)=>{t.d(s,{Hw:()=>n,LA:()=>l,SO:()=>o,rY:()=>i});const l=(e,s)=>{if(e.accessKey&&s.accessKey){if(e.accessKey>s.accessKey)return 1;if(e.accessKeye.name>s.name?1:e.namee>s?1:ee.policy>s.policy?1:e.policy.\nimport React, { useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default 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 .\n\nimport React, { Fragment, useState } from \"react\";\nimport { ConfirmDeleteIcon } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { ApiError, HttpResponse } from \"api/consoleApi\";\n\ninterface IDeleteGroup {\n selectedGroups: string[];\n deleteOpen: boolean;\n closeDeleteModalAndRefresh: any;\n}\n\nconst DeleteGroup = ({\n selectedGroups,\n deleteOpen,\n closeDeleteModalAndRefresh,\n}: IDeleteGroup) => {\n const dispatch = useAppDispatch();\n const onClose = () => closeDeleteModalAndRefresh(false);\n const [loadingDelete, setLoadingDelete] = useState(false);\n\n if (!selectedGroups) {\n return null;\n }\n const onDeleteGroups = () => {\n for (let group of selectedGroups) {\n setLoadingDelete(true);\n api.group\n .removeGroup(group)\n .then((_) => {\n closeDeleteModalAndRefresh(true);\n })\n .catch(async (res: HttpResponse) => {\n const err = (await res.json()) as ApiError;\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n closeDeleteModalAndRefresh(false);\n })\n .finally(() => setLoadingDelete(false));\n }\n };\n\n const renderGroups = selectedGroups.map((group) => (\n
\n {group}\n
\n ));\n\n return (\n 1 ? \"s\" : \"\"}`}\n confirmText={\"Delete\"}\n isOpen={deleteOpen}\n titleIcon={}\n isLoading={loadingDelete}\n onConfirm={onDeleteGroups}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the following{\" \"}\n {selectedGroups.length === 1 ? \"\" : selectedGroups.length} group\n {selectedGroups.length > 1 ? \"s?\" : \"?\"}\n {renderGroups}\n \n }\n />\n );\n};\n\nexport default DeleteGroup;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { AddMembersToGroupIcon, Button, FormLayout, Grid, ReadBox } from \"mds\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport UsersSelectors from \"./UsersSelectors\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ntype UserPickerModalProps = {\n title?: string;\n preSelectedUsers?: string[];\n selectedGroup?: string;\n open: boolean;\n onClose: () => void;\n onSaveClick: () => void;\n groupStatus?: string;\n};\n\nconst AddGroupMember = ({\n title = \"\",\n groupStatus = \"enabled\",\n preSelectedUsers = [],\n selectedGroup = \"\",\n open,\n onClose,\n}: UserPickerModalProps) => {\n const dispatch = useAppDispatch();\n const [selectedUsers, setSelectedUsers] = useState(preSelectedUsers);\n\n function addMembersToGroup() {\n return api.group\n .updateGroup(selectedGroup, {\n members: selectedUsers,\n status: groupStatus,\n })\n .then(() => {\n onClose();\n })\n .catch((err) => {\n onClose();\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n return (\n }\n >\n \n \n {selectedGroup}\n \n \n \n \n {\n setSelectedUsers(preSelectedUsers);\n }}\n label={\"Reset\"}\n />\n\n {\n addMembersToGroup();\n }}\n label={\"Save\"}\n />\n \n \n );\n};\n\nexport default AddGroupMember;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { useNavigate, useParams } from \"react-router-dom\";\nimport {\n AddIcon,\n BackLink,\n Box,\n Button,\n DataTable,\n Grid,\n GroupsIcon,\n IAMPoliciesIcon,\n PageLayout,\n ScreenTitle,\n SectionTitle,\n Switch,\n Tabs,\n TrashIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Group } from \"api/consoleApi\";\nimport {\n addUserToGroupPermissions,\n CONSOLE_UI_RESOURCE,\n createGroupPermissions,\n editGroupMembersPermissions,\n enableDisableGroupPermissions,\n getGroupPermissions,\n IAM_PAGES,\n listUsersPermissions,\n permissionTooltipHelper,\n setGroupPoliciesPermissions,\n viewPolicyPermissions,\n viewUserPermissions,\n} from \"../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../common/SecureComponent\";\nimport { setHelpName, setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport SetPolicy from \"../Policies/SetPolicy\";\nimport AddGroupMember from \"./AddGroupMember\";\nimport DeleteGroup from \"./DeleteGroup\";\nimport SearchBox from \"../Common/SearchBox\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport HelpMenu from \"../HelpMenu\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\n\nexport const formatPolicy = (policy: string = \"\"): string[] => {\n if (policy.length <= 0) return [];\n return policy.split(\",\");\n};\n\nconst GroupsDetails = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n const [groupDetails, setGroupDetails] = useState({});\n const [policyOpen, setPolicyOpen] = useState(false);\n const [usersOpen, setUsersOpen] = useState(false);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [memberFilter, setMemberFilter] = useState(\"\");\n const [currentTab, setCurrentTab] = useState(\"members\");\n\n const { members = [], policy = \"\", status: groupEnabled } = groupDetails;\n\n const filteredMembers = members.filter((elementItem) =>\n elementItem.includes(memberFilter),\n );\n\n const viewUser = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewUserPermissions,\n true,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"group_details\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (params.groupName) {\n fetchGroupInfo();\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [params.groupName]);\n\n const groupPolicies = formatPolicy(policy);\n const isGroupEnabled = groupEnabled === \"enabled\";\n const memberActionText = members.length > 0 ? \"Edit Members\" : \"Add Members\";\n\n const getGroupDetails = hasPermission(\n CONSOLE_UI_RESOURCE,\n getGroupPermissions,\n );\n\n const canEditGroupMembers = hasPermission(\n CONSOLE_UI_RESOURCE,\n editGroupMembersPermissions,\n true,\n );\n\n const canSetPolicies = hasPermission(\n CONSOLE_UI_RESOURCE,\n setGroupPoliciesPermissions,\n true,\n );\n\n const canViewPolicy = hasPermission(\n CONSOLE_UI_RESOURCE,\n viewPolicyPermissions,\n true,\n );\n\n function fetchGroupInfo() {\n if (getGroupDetails) {\n api.group\n .groupInfo(params.groupName || \"\")\n .then((res) => {\n setGroupDetails(res.data);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setGroupDetails({});\n });\n }\n }\n\n function toggleGroupStatus(nextStatus: boolean) {\n return api.group\n .updateGroup(params.groupName || \"\", {\n members: members,\n status: nextStatus ? \"enabled\" : \"disabled\",\n })\n .then(() => {\n fetchGroupInfo();\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n\n const groupsTabContent = (\n {\n dispatch(setHelpName(\"groups_members\"));\n }}\n >\n \n {\n setMemberFilter(searchText);\n }}\n value={memberFilter}\n sx={{\n maxWidth: 280,\n }}\n />\n \n \n }\n onClick={() => {\n setUsersOpen(true);\n }}\n disabled={!canEditGroupMembers}\n />\n \n \n \n }\n >\n Members\n \n \n \n \n {\n navigate(\n `${IAM_PAGES.USERS}/${encodeURIComponent(userName)}`,\n );\n },\n isDisabled: !viewUser,\n },\n ]}\n columns={[{ label: \"Access Key\" }]}\n selectedItems={[]}\n isLoading={false}\n records={filteredMembers}\n entityName=\"Users\"\n />\n \n \n \n \n );\n\n const policiesTabContent = (\n \n {\n dispatch(setHelpName(\"groups_policies\"));\n }}\n >\n \n }\n onClick={() => {\n setPolicyOpen(true);\n }}\n disabled={!canSetPolicies}\n />\n \n }\n >\n Policies\n \n \n \n \n {\n navigate(\n `${IAM_PAGES.POLICIES}/${encodeURIComponent(policy)}`,\n );\n },\n isDisabled: !canViewPolicy,\n },\n ]}\n columns={[{ label: \"Policy\" }]}\n isLoading={false}\n records={groupPolicies}\n entityName=\"Policies\"\n />\n \n \n \n );\n\n return (\n \n {policyOpen ? (\n {\n setPolicyOpen(false);\n fetchGroupInfo();\n dispatch(setSelectedPolicies([]));\n }}\n />\n ) : null}\n\n {usersOpen ? (\n {}}\n title={memberActionText}\n groupStatus={groupEnabled}\n preSelectedUsers={members}\n open={usersOpen}\n onClose={() => {\n setUsersOpen(false);\n fetchGroupInfo();\n }}\n />\n ) : null}\n\n {deleteOpen && (\n {\n setDeleteOpen(false);\n if (isDelSuccess) {\n navigate(IAM_PAGES.GROUPS);\n }\n }}\n />\n )}\n \n navigate(IAM_PAGES.GROUPS)}\n />\n \n }\n actions={}\n />\n \n \n \n \n \n }\n title={params.groupName || \"\"}\n subTitle={null}\n bottomBorder\n actions={\n \n Group Status:\n \n {isGroupEnabled ? \"Enabled\" : \"Disabled\"}\n \n \n \n {\n toggleGroupStatus(!isGroupEnabled);\n }}\n switchOnly\n />\n \n \n\n \n }\n onClick={() => {\n setDeleteOpen(true);\n }}\n />\n \n \n }\n sx={{ marginBottom: 15 }}\n />\n \n\n \n \n \n \n \n );\n};\n\nexport default GroupsDetails;\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, { useCallback, useEffect, useState, Fragment } from \"react\";\nimport get from \"lodash/get\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { Box, DataTable, Grid, ProgressBar } from \"mds\";\n\nimport { usersSort } from \"../../../utils/sortFunctions\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport SearchBox from \"../Common/SearchBox\";\n\ninterface IGroupsProps {\n selectedUsers: string[];\n setSelectedUsers: any;\n editMode?: boolean;\n}\n\nconst UsersSelectors = ({\n selectedUsers,\n setSelectedUsers,\n editMode = false,\n}: IGroupsProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const fetchUsers = useCallback(() => {\n api.users\n .listUsers()\n .then((res) => {\n let users = get(res.data, \"users\", []);\n\n if (!users) {\n users = [];\n }\n\n setRecords(users.sort(usersSort));\n isLoading(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n isLoading(false);\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchUsers();\n }\n }, [loading, fetchUsers]);\n\n const selUsers = !selectedUsers ? [] : selectedUsers;\n\n //Fetch Actions\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[] = [...selUsers]; // We clone the selectedGroups array\n\n if (checked) {\n // If the user has checked this field we need to push this to selectedGroupsList\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 setSelectedUsers(elements);\n\n return elements;\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.accessKey.includes(filter),\n );\n\n return (\n \n \n {loading && }\n {records?.length > 0 ? (\n \n \n \n \n \n \n ) : (\n \n No Users to display\n \n )}\n \n \n );\n};\n\nexport default UsersSelectors;\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, useCallback, useEffect, useState } from \"react\";\n\nimport { Box, DataTable, Grid, ProgressBar } from \"mds\";\nimport { policySort } from \"../../../utils/sortFunctions\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"../../../api\";\n\ninterface ISelectPolicyProps {\n selectedPolicy?: string[];\n noTitle?: boolean;\n}\n\nconst PolicySelectors = ({ noTitle = false }: ISelectPolicyProps) => {\n const dispatch = useAppDispatch();\n // Local State\n const [records, setRecords] = useState([]);\n const [loading, isLoading] = useState(false);\n const [filter, setFilter] = useState(\"\");\n\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n\n const fetchPolicies = useCallback(() => {\n isLoading(true);\n\n api.policies\n .listPolicies()\n .then((res) => {\n const policies = res.data.policies ?? [];\n isLoading(false);\n setRecords(policies.sort(policySort));\n })\n .catch((err: ErrorResponseHandler) => {\n isLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n }, [dispatch]);\n\n //Effects\n useEffect(() => {\n isLoading(true);\n }, []);\n\n useEffect(() => {\n if (loading) {\n fetchPolicies();\n }\n }, [loading, fetchPolicies]);\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[] = [...currentPolicies]; // We clone the checkedUsers array\n\n if (checked) {\n // If the user has checked this field we need to push this to checkedUsersList\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 // remove empty values\n elements = elements.filter((element) => element !== \"\");\n\n dispatch(setSelectedPolicies(elements));\n };\n\n const filteredRecords = records.filter((elementItem) =>\n elementItem.name.includes(filter),\n );\n\n return (\n \n {loading && }\n {records.length > 0 ? (\n \n \n {\n setFilter(value);\n }}\n value={filter}\n label={!noTitle ? \"Assign Policies\" : \"\"}\n />\n \n\n \n \n ) : (\n \n No Policies Available\n \n )}\n \n );\n};\n\nexport default PolicySelectors;\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 { useSelector } from \"react-redux\";\nimport { Button, FormLayout, ReadBox, Grid, ProgressBar } from \"mds\";\n\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { setModalErrorSnackMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { User } from \"../Users/types\";\nimport { setSelectedPolicies } from \"../Users/AddUsersSlice\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\nimport PolicySelectors from \"./PolicySelectors\";\nimport api from \"../../../common/api\";\n\ninterface ISetPolicyProps {\n closeModalAndRefresh: () => void;\n selectedUser: User | null;\n selectedGroups: string[] | null;\n open: boolean;\n}\n\nconst SetPolicy = ({\n closeModalAndRefresh,\n selectedUser,\n selectedGroups,\n open,\n}: ISetPolicyProps) => {\n const dispatch = useAppDispatch();\n //Local States\n const [loading, setLoading] = useState(false);\n const [actualPolicy, setActualPolicy] = useState([]);\n const [selectedPolicy, setSelectedPolicy] = useState([]);\n const currentPolicies = useSelector(\n (state: AppState) => state.createUser.selectedPolicies,\n );\n const setPolicyAction = () => {\n let users = null;\n let groups = null;\n if (selectedGroups !== null) {\n groups = selectedGroups;\n } else {\n if (selectedUser !== null) {\n users = [selectedUser.accessKey] || [\" \"];\n }\n }\n\n setLoading(true);\n\n api\n .invoke(\"PUT\", `/api/v1/set-policy-multi`, {\n name: currentPolicies,\n groups: groups,\n users: users,\n })\n .then(() => {\n setLoading(false);\n closeModalAndRefresh();\n })\n .catch((err: ErrorResponseHandler) => {\n setLoading(false);\n dispatch(setModalErrorSnackMessage(err));\n });\n };\n\n const fetchGroupInformation = () => {\n if (selectedGroups?.length === 1) {\n api\n .invoke(\"GET\", `/api/v1/group/${encodeURIComponent(selectedGroups[0])}`)\n .then((res: any) => {\n const groupPolicy: String = get(res, \"policy\", \"\");\n setActualPolicy(groupPolicy.split(\",\"));\n setSelectedPolicy(groupPolicy.split(\",\"));\n dispatch(setSelectedPolicies(groupPolicy.split(\",\")));\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setModalErrorSnackMessage(err));\n setLoading(false);\n });\n }\n };\n\n const resetSelection = () => {\n setSelectedPolicy(actualPolicy);\n dispatch(setSelectedPolicies(actualPolicy));\n };\n\n useEffect(() => {\n if (open) {\n if (selectedGroups?.length === 1) {\n fetchGroupInformation();\n return;\n }\n\n const userPolicy: string[] = get(selectedUser, \"policy\", []);\n setActualPolicy(userPolicy);\n setSelectedPolicy(userPolicy);\n dispatch(setSelectedPolicies(userPolicy));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [open, selectedGroups?.length, selectedUser]);\n\n const userName = get(selectedUser, \"accessKey\", \"\");\n\n return (\n {\n closeModalAndRefresh();\n }}\n modalOpen={open}\n title=\"Set Policies\"\n >\n \n {(selectedGroups?.length === 1 || selectedUser != null) && (\n \n \n {selectedGroups !== null ? selectedGroups[0] : userName}\n \n \n {actualPolicy.join(\", \")}\n \n \n )}\n {selectedGroups && selectedGroups?.length > 1 && (\n \n {selectedGroups.join(\", \")}\n \n )}\n \n \n \n \n \n \n \n \n {loading && (\n \n \n \n )}\n \n );\n};\n\nexport default SetPolicy;\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 { Policy, User } from \"api/consoleApi\";\n\ninterface policyDetailsInterface {\n policy: string;\n}\n\nexport const usersSort = (a: User, b: User) => {\n if (a.accessKey && b.accessKey) {\n if (a.accessKey > b.accessKey) {\n return 1;\n }\n if (a.accessKey < b.accessKey) {\n return -1;\n }\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policySort = (a: Policy, b: Policy) => {\n if (a.name! > b.name!) {\n return 1;\n }\n if (a.name! < b.name!) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const stringSort = (a: string, b: string) => {\n if (a > b) {\n return 1;\n }\n if (a < b) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n\nexport const policyDetailsSort = (\n a: policyDetailsInterface,\n b: policyDetailsInterface,\n) => {\n if (a.policy > b.policy) {\n return 1;\n }\n if (a.policy < b.policy) {\n return -1;\n }\n // a must be equal to b\n return 0;\n};\n"],"names":["_ref","onClose","modalOpen","title","children","wideLimit","titleIcon","iconColor","sx","dispatch","useAppDispatch","openSnackbar","setOpenSnackbar","useState","modalSnackMessage","useSelector","state","system","modalSnackBar","useEffect","setModalSnackMessage","message","type","detailedErrorMsg","length","_jsxs","ModalBox","open","widthLimit","_jsx","MainError","isModal","Snackbar","closeSnackBar","mode","variant","autoHideDuration","condensed","selectedGroups","deleteOpen","closeDeleteModalAndRefresh","loadingDelete","setLoadingDelete","renderGroups","map","group","ConfirmDialog","concat","confirmText","isOpen","ConfirmDeleteIcon","isLoading","onConfirm","onDeleteGroups","api","removeGroup","then","_","catch","async","err","res","json","setErrorSnackMessage","errorToHandler","finally","confirmationContent","Fragment","groupStatus","preSelectedUsers","selectedGroup","selectedUsers","setSelectedUsers","ModalWrapper","AddMembersToGroupIcon","FormLayout","withBorders","containerPadding","ReadBox","label","width","UsersSelectors","editMode","Grid","item","xs","modalStyleUtils","modalButtonBar","Button","id","onClick","updateGroup","members","status","setModalErrorSnackMessage","error","formatPolicy","policy","arguments","undefined","split","GroupsDetails","navigate","useNavigate","params","useParams","groupDetails","setGroupDetails","policyOpen","setPolicyOpen","usersOpen","setUsersOpen","setDeleteOpen","memberFilter","setMemberFilter","currentTab","setCurrentTab","groupEnabled","filteredMembers","filter","elementItem","includes","viewUser","hasPermission","CONSOLE_UI_RESOURCE","viewUserPermissions","setHelpName","groupName","fetchGroupInfo","groupPolicies","isGroupEnabled","memberActionText","getGroupDetails","getGroupPermissions","canEditGroupMembers","editGroupMembersPermissions","canSetPolicies","setGroupPoliciesPermissions","canViewPolicy","viewPolicyPermissions","groupInfo","data","groupsTabContent","Box","onMouseMove","SectionTitle","separator","marginBottom","actions","display","gap","SearchBox","placeholder","onChange","searchText","value","maxWidth","SecureComponent","resource","scopes","addUserToGroupPermissions","errorProps","disabled","TooltipWrapper","tooltip","permissionTooltipHelper","createGroupPermissions","icon","AddIcon","listUsersPermissions","DataTable","itemActions","userName","IAM_PAGES","USERS","encodeURIComponent","isDisabled","columns","selectedItems","records","entityName","policiesTabContent","IAMPoliciesIcon","POLICIES","SetPolicy","selectedUser","closeModalAndRefresh","setSelectedPolicies","AddGroupMember","onSaveClick","DeleteGroup","isDelSuccess","GROUPS","PageHeaderWrapper","BackLink","HelpMenu","PageLayout","ScreenTitle","GroupsIcon","subTitle","bottomBorder","fontSize","alignItems","style","fontWeight","enableDisableGroupPermissions","matchAll","Switch","indicatorLabels","checked","name","nextStatus","switchOnly","TrashIcon","Tabs","options","tabConfig","content","currentTabOrPath","onTabClick","setRecords","loading","setFilter","fetchUsers","useCallback","users","listUsers","get","sort","usersSort","selUsers","filteredRecords","accessKey","className","ProgressBar","elementKey","onSelect","e","targetD","target","elements","push","element","idField","customPaperHeight","textAlign","padding","noTitle","currentPolicies","createUser","selectedPolicies","fetchPolicies","policies","listPolicies","_res$data$policies","policySort","setLoading","actualPolicy","setActualPolicy","selectedPolicy","setSelectedPolicy","invoke","groupPolicy","userPolicy","join","PolicySelectors","resetSelection","color","setPolicyAction","groups","a","b","stringSort","policyDetailsSort"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/2033.a7412d01.chunk.js.map b/web-app/build/static/js/2033.a7412d01.chunk.js.map index ee7c3be55b..9685a114c7 100644 --- a/web-app/build/static/js/2033.a7412d01.chunk.js.map +++ b/web-app/build/static/js/2033.a7412d01.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/2033.a7412d01.chunk.js","mappings":"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O,MACPuC,QAAS,4BACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QACE,mEACFC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QAAS,oDACTC,KAAM,OACNC,YAAa,yBAEf,CACET,KAAM,iBACNhC,MAAO,iBACPuC,QAAS,4CACTC,KAAM,OACNC,YAAa,wBAEf,CACET,KAAM,UACNhC,MAAO,UACPuC,QAAS,uDACTC,KAAM,SACNC,YAAa,0BAEZJ,GAEL,CAAClB,GAAa,CACZ,CACEa,KAAM,MACNM,UAAU,EACVtC,MAAO,MACPuC,QACE,sEACFC,KAAM,OAER,CACER,KAAM,WACNhC,MAAO,WACPuC,QAAS,4BACTC,KAAM,SACNC,YAAa,kBAEf,CACET,KAAM,gBACNhC,MAAO,gBACPuC,QAAS,qBACTC,KAAM,SACNC,YAAa,uBAEf,CACET,KAAM,cACNhC,MAAO,cACPuC,QAAS,6BACTC,KAAM,SACNC,YAAa,qBAEf,CACET,KAAM,YACNhC,MAAO,YACPuC,QACE,yEACFC,KAAM,UAER,CACER,KAAM,UACNhC,MAAO,UACPuC,QACE,0EACFC,KAAM,UAER,CACER,KAAM,UACNhC,MAAO,UACPuC,QACE,mEACFC,KAAM,UAER,CACER,KAAM,WACNhC,MAAO,WACPuC,QACE,yGACFC,KAAM,UAER,CACER,KAAM,eACNhC,MAAO,eACPuC,QACE,kEACFC,KAAM,UAER,CACER,KAAM,gBACNhC,MAAO,gBACPuC,QAAS,4DACTC,KAAM,SACNC,YAAa,0BAEZJ,GAEL,CAAChB,GAAc,CACb,CACEW,KAAM,UACNM,UAAU,EACVtC,MAAO,UACPuC,QAAS,+CACTC,KAAM,UACNC,YAAa,iBAEf,CACET,KAAM,MACNM,UAAU,EACVtC,MAAO,MACPuC,QAAS,wDACTC,KAAM,SACNC,YAAa,aAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,wBACTC,KAAM,SACNC,YAAa,qBAEZJ,GAEL,CAACjB,GAAa,CACZ,CACEY,KAAM,SACNM,UAAU,EACVtC,MAAO,SACPuC,QAAS,mDACTC,KAAM,MACNC,YAAa,iBAEf,CACET,KAAM,QACNM,UAAU,EACVtC,MAAO,QACPuC,QAAS,oCACTC,KAAM,SACNC,YAAa,eAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,kBAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,kBAEf,CACET,KAAM,MACNhC,MAAO,MACPuC,QAAS,uDACTC,KAAM,SACNC,YAAa,aAEf,CACET,KAAM,sBACNhC,MAAO,sBACPuC,QAAS,sDACTC,KAAM,WACNC,YAAa,6BAEf,CACET,KAAM,qBACNhC,MAAO,qBACPuC,QAAS,qDACTC,KAAM,WACNC,YAAa,+BAEZJ,GAEL,CAACf,GAAa,CACZ,CACEU,KAAM,UACNM,UAAU,EACVtC,MAAO,UACPuC,QAAS,0CACTC,KAAM,UACNC,YAAa,iBAEf,CACET,KAAM,UACNM,UAAU,EACVtC,MAAO,UACPuC,QAAS,4BACTC,KAAM,SACNC,YAAa,sBAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,uBAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,uBAEf,CACET,KAAM,QACNhC,MAAO,QACPuC,QAAS,aACTC,KAAM,SACNC,YAAa,oBAEf,CACET,KAAM,MACNhC,MAAO,MACPuC,QAAS,4BACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QACE,mEACFC,KAAM,UAER,CACER,KAAM,gBACNhC,MAAO,gBACPuC,QAAS,gEACTC,KAAM,WACNC,YAAa,uBAEf,CACET,KAAM,YACNhC,MAAO,YACPuC,QAAS,2CACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QAAS,6CACTC,KAAM,UAER,CACER,KAAM,mCACNhC,MAAO,uCACPuC,QAAS,yDACTC,KAAM,SACNC,YAAa,mCAEf,CACET,KAAM,uBACNhC,MAAO,uBACPuC,QAAS,uCACTC,KAAM,SACNC,YAAa,8BAEf,CACET,KAAM,iBACNhC,MAAO,iBACPuC,QAAS,sDACTC,KAAM,SACNC,YAAa,wBAEf,CACET,KAAM,cACNhC,MAAO,cACPuC,QAAS,iCACTC,KAAM,SACNC,YAAa,qBAEf,CACET,KAAM,aACNhC,MAAO,aACPuC,QAAS,8CACTC,KAAM,SACNC,YAAa,uBAEZJ,GAEL,CAACd,GAAsB,CACrB,CACES,KAAM,MACNM,UAAU,EACVtC,MAAO,MACPuC,QACE,oEACFC,KAAM,MACNC,YAAa,aAEf,CACET,KAAM,QACNM,UAAU,EACVtC,MAAO,QACPuC,QACE,oEACFC,KAAM,SACNC,YAAa,eAEf,CACET,KAAM,SACNM,UAAU,EACVtC,MAAO,SACPuC,QACE,gIACFC,KAAM,OACNC,YAAa,mBAEZJ,GAEL,CAACb,GAAiB,CAChB,CACEQ,KAAM,WACNM,UAAU,EACVtC,MAAO,WACPuC,QACE,kEACFC,KAAM,MACNC,YAAa,kBAEf,CACET,KAAM,aACNhC,MAAO,aACPuC,QAAS,2CACTC,KAAM,SACNC,YAAa,uBAEZJ,GAEL,CAACZ,GAAY,CACX,CACEO,KAAM,eACNM,UAAU,EACVtC,MAAO,eACPuC,QAAS,2CACTC,KAAM,UACNC,YAAa,sBAEf,CACET,KAAM,QACNM,UAAU,EACVtC,MAAO,QACPuC,QAAS,YACTC,KAAM,SACNC,YAAa,eAEf,CACET,KAAM,MACNhC,MAAO,MACPuC,QAAS,4BACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QACE,mEACFC,KAAM,aAELH,IAIDU,EAA6C,CACjDC,QAAS,iBACTC,KAAM,cACNC,MAAO,eACPC,KAAM,cACNC,KAAM,cACNC,IAAK,aACLC,MAAO,eACPC,WAAY,kBACZC,cAAe,uBACfC,MAAO,gBAGIC,EAA4BC,GAChCZ,EAAmBY,E","sources":["screens/Console/Account/NotificationEndpointTypeSelectorHelpBox.tsx","screens/Console/EventDestinations/DestinationButton.tsx","screens/Console/EventDestinations/EventTypeSelector.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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\";\n\nimport { HelpBox, LambdaNotificationsIcon, Box } from \"mds\";\n\nconst NotificationEndpointTypeSelectorHelpBox = () => {\n return (\n }\n title={\"What are Event Destinations?\"}\n help={\n \n MinIO bucket notifications allow administrators to send notifications\n to supported external services on certain object or bucket events.\n MinIO supports bucket and object-level S3 events similar to the Amazon\n S3 Event Notifications.\n \n }\n />\n );\n};\n\nexport default NotificationEndpointTypeSelectorHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { useNavigate } from \"react-router-dom\";\nimport styled from \"styled-components\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\n\ninterface IDestinationButton {\n destinationType: string;\n srcImage: string;\n title: string;\n}\n\nconst DestinationButtonBase = styled.button(({ theme }) => ({\n background: get(theme, \"boxBackground\", \"#FFF\"),\n border: `${get(theme, \"borderColor\", \"#E2E2E2\")} 1px solid`,\n borderRadius: 5,\n width: 250,\n height: 80,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"start\",\n marginBottom: 16,\n marginRight: 8,\n cursor: \"pointer\",\n overflow: \"hidden\",\n \"&:hover\": {\n backgroundColor: get(theme, \"buttons.regular.hover.background\", \"#ebebeb\"),\n },\n \"& .imageContainer\": {\n width: 80,\n \"& .logoButton\": {\n maxWidth: 46,\n maxHeight: 46,\n filter: \"drop-shadow(1px 1px 8px #fff)\",\n },\n },\n \"& .lambdaNotifTitle\": {\n color: get(theme, \"buttons.callAction.enabled.background\", \"#07193E\"),\n fontSize: 16,\n fontFamily: \"Inter,sans-serif\",\n paddingLeft: 18,\n fontWeight: \"bold\",\n },\n}));\n\nconst DestinationButton = ({\n destinationType,\n srcImage,\n title,\n}: IDestinationButton) => {\n const navigate = useNavigate();\n\n return (\n {\n navigate(`${IAM_PAGES.EVENT_DESTINATIONS_ADD}/${destinationType}`);\n }}\n >\n \n {title}\n \n {title}\n \n );\n};\n\nexport default DestinationButton;\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 } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { BackLink, Box, FormLayout, PageLayout } from \"mds\";\nimport { destinationList, DestType } from \"./utils\";\nimport { typesSelection } from \"../Common/FormComponents/common/styleLibrary\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport NotificationEndpointTypeSelectorHelpBox from \"../Account/NotificationEndpointTypeSelectorHelpBox\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport DestinationButton from \"./DestinationButton\";\n\nimport HelpMenu from \"../HelpMenu\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setHelpName } from \"../../../systemSlice\";\n\nconst withLogos = destinationList.filter((elService) => elService.logo !== \"\");\nconst database = withLogos.filter(\n (elService) => elService.category === DestType.DB,\n);\nconst queue = withLogos.filter(\n (elService) => elService.category === DestType.Queue,\n);\nconst functions = withLogos.filter(\n (elService) => elService.category === DestType.Func,\n);\n\nconst EventTypeSelector = () => {\n const navigate = useNavigate();\n const dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(setHelpName(\"notification_type_selector\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n return (\n \n \n navigate(IAM_PAGES.EVENT_DESTINATIONS)}\n />\n \n }\n actions={}\n />\n \n }>\n \n \n Queue\n \n \n {queue.map((item) => {\n return (\n \n );\n })}\n \n \n Database\n \n \n {database.map((item) => {\n return (\n \n );\n })}\n \n \n Functions\n \n \n {functions.map((item) => {\n return (\n \n );\n })}\n \n \n \n \n \n );\n};\n\nexport default EventTypeSelector;\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 { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nexport const notifyKafka = \"notify_kafka\";\nexport const notifyAmqp = \"notify_amqp\";\nexport const notifyMqtt = \"notify_mqtt\";\nexport const notifyRedis = \"notify_redis\";\nexport const notifyNats = \"notify_nats\";\nexport const notifyElasticsearch = \"notify_elasticsearch\";\nexport const notifyWebhooks = \"notify_webhook\";\nexport const notifyNsq = \"notify_nsq\";\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nconst getImgBaseURL = () => {\n return `${document.baseURI}`;\n};\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: `${getImgBaseURL()}postgres-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: `${getImgBaseURL()}kafka-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: `${getImgBaseURL()}amqp-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: `${getImgBaseURL()}mqtt-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: `${getImgBaseURL()}redis-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: `${getImgBaseURL()}nats-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: `${getImgBaseURL()}mysql-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: `${getImgBaseURL()}elasticsearch-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: `${getImgBaseURL()}webhooks-logo.svg`,\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: `${getImgBaseURL()}nsq-logo.svg`,\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from api/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["NotificationEndpointTypeSelectorHelpBox","_jsx","HelpBox","iconComponent","LambdaNotificationsIcon","title","help","Box","sx","paddingTop","children","DestinationButtonBase","styled","button","_ref","theme","background","get","border","concat","borderRadius","width","height","display","alignItems","justifyContent","marginBottom","marginRight","cursor","overflow","backgroundColor","maxWidth","maxHeight","filter","color","fontSize","fontFamily","paddingLeft","fontWeight","_ref2","destinationType","srcImage","navigate","useNavigate","_jsxs","onClick","IAM_PAGES","EVENT_DESTINATIONS_ADD","className","src","alt","withLogos","destinationList","elService","logo","database","category","DestType","DB","queue","Queue","functions","Func","EventTypeSelector","dispatch","useAppDispatch","useEffect","setHelpName","Fragment","PageHeaderWrapper","label","BackLink","EVENT_DESTINATIONS","actions","HelpMenu","PageLayout","FormLayout","helpBox","paddingBottom","typesSelection","iconContainer","map","item","DestinationButton","actionTrigger","targetTitle","notifyPostgres","notifyMysql","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationTransform","notificationElements","element","service_name","service","account_id","name","status","getImgBaseURL","document","baseURI","commonFields","required","tooltip","type","placeholder","removeEmptyFields","formFields","field","value","notificationEndpointsFields","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis","getNotificationConfigKey","serviceName"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/2033.a7412d01.chunk.js","mappings":"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AO,MACPuC,QAAS,4BACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QACE,mEACFC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QAAS,oDACTC,KAAM,OACNC,YAAa,yBAEf,CACET,KAAM,iBACNhC,MAAO,iBACPuC,QAAS,4CACTC,KAAM,OACNC,YAAa,wBAEf,CACET,KAAM,UACNhC,MAAO,UACPuC,QAAS,uDACTC,KAAM,SACNC,YAAa,0BAEZJ,GAEL,CAAClB,GAAa,CACZ,CACEa,KAAM,MACNM,UAAU,EACVtC,MAAO,MACPuC,QACE,sEACFC,KAAM,OAER,CACER,KAAM,WACNhC,MAAO,WACPuC,QAAS,4BACTC,KAAM,SACNC,YAAa,kBAEf,CACET,KAAM,gBACNhC,MAAO,gBACPuC,QAAS,qBACTC,KAAM,SACNC,YAAa,uBAEf,CACET,KAAM,cACNhC,MAAO,cACPuC,QAAS,6BACTC,KAAM,SACNC,YAAa,qBAEf,CACET,KAAM,YACNhC,MAAO,YACPuC,QACE,yEACFC,KAAM,UAER,CACER,KAAM,UACNhC,MAAO,UACPuC,QACE,0EACFC,KAAM,UAER,CACER,KAAM,UACNhC,MAAO,UACPuC,QACE,mEACFC,KAAM,UAER,CACER,KAAM,WACNhC,MAAO,WACPuC,QACE,yGACFC,KAAM,UAER,CACER,KAAM,eACNhC,MAAO,eACPuC,QACE,kEACFC,KAAM,UAER,CACER,KAAM,gBACNhC,MAAO,gBACPuC,QAAS,4DACTC,KAAM,SACNC,YAAa,0BAEZJ,GAEL,CAAChB,GAAc,CACb,CACEW,KAAM,UACNM,UAAU,EACVtC,MAAO,UACPuC,QAAS,+CACTC,KAAM,UACNC,YAAa,iBAEf,CACET,KAAM,MACNM,UAAU,EACVtC,MAAO,MACPuC,QAAS,wDACTC,KAAM,SACNC,YAAa,aAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,wBACTC,KAAM,SACNC,YAAa,qBAEZJ,GAEL,CAACjB,GAAa,CACZ,CACEY,KAAM,SACNM,UAAU,EACVtC,MAAO,SACPuC,QAAS,mDACTC,KAAM,MACNC,YAAa,iBAEf,CACET,KAAM,QACNM,UAAU,EACVtC,MAAO,QACPuC,QAAS,oCACTC,KAAM,SACNC,YAAa,eAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,kBAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,kBAEf,CACET,KAAM,MACNhC,MAAO,MACPuC,QAAS,uDACTC,KAAM,SACNC,YAAa,aAEf,CACET,KAAM,sBACNhC,MAAO,sBACPuC,QAAS,sDACTC,KAAM,WACNC,YAAa,6BAEf,CACET,KAAM,qBACNhC,MAAO,qBACPuC,QAAS,qDACTC,KAAM,WACNC,YAAa,+BAEZJ,GAEL,CAACf,GAAa,CACZ,CACEU,KAAM,UACNM,UAAU,EACVtC,MAAO,UACPuC,QAAS,0CACTC,KAAM,UACNC,YAAa,iBAEf,CACET,KAAM,UACNM,UAAU,EACVtC,MAAO,UACPuC,QAAS,4BACTC,KAAM,SACNC,YAAa,sBAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,uBAEf,CACET,KAAM,WACNhC,MAAO,WACPuC,QAAS,gBACTC,KAAM,SACNC,YAAa,uBAEf,CACET,KAAM,QACNhC,MAAO,QACPuC,QAAS,aACTC,KAAM,SACNC,YAAa,oBAEf,CACET,KAAM,MACNhC,MAAO,MACPuC,QAAS,4BACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QACE,mEACFC,KAAM,UAER,CACER,KAAM,gBACNhC,MAAO,gBACPuC,QAAS,gEACTC,KAAM,WACNC,YAAa,uBAEf,CACET,KAAM,YACNhC,MAAO,YACPuC,QAAS,2CACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QAAS,6CACTC,KAAM,UAER,CACER,KAAM,mCACNhC,MAAO,uCACPuC,QAAS,yDACTC,KAAM,SACNC,YAAa,mCAEf,CACET,KAAM,uBACNhC,MAAO,uBACPuC,QAAS,uCACTC,KAAM,SACNC,YAAa,8BAEf,CACET,KAAM,iBACNhC,MAAO,iBACPuC,QAAS,sDACTC,KAAM,SACNC,YAAa,wBAEf,CACET,KAAM,cACNhC,MAAO,cACPuC,QAAS,iCACTC,KAAM,SACNC,YAAa,qBAEf,CACET,KAAM,aACNhC,MAAO,aACPuC,QAAS,8CACTC,KAAM,SACNC,YAAa,uBAEZJ,GAEL,CAACd,GAAsB,CACrB,CACES,KAAM,MACNM,UAAU,EACVtC,MAAO,MACPuC,QACE,oEACFC,KAAM,MACNC,YAAa,aAEf,CACET,KAAM,QACNM,UAAU,EACVtC,MAAO,QACPuC,QACE,oEACFC,KAAM,SACNC,YAAa,eAEf,CACET,KAAM,SACNM,UAAU,EACVtC,MAAO,SACPuC,QACE,gIACFC,KAAM,OACNC,YAAa,mBAEZJ,GAEL,CAACb,GAAiB,CAChB,CACEQ,KAAM,WACNM,UAAU,EACVtC,MAAO,WACPuC,QACE,kEACFC,KAAM,MACNC,YAAa,kBAEf,CACET,KAAM,aACNhC,MAAO,aACPuC,QAAS,2CACTC,KAAM,SACNC,YAAa,uBAEZJ,GAEL,CAACZ,GAAY,CACX,CACEO,KAAM,eACNM,UAAU,EACVtC,MAAO,eACPuC,QAAS,2CACTC,KAAM,UACNC,YAAa,sBAEf,CACET,KAAM,QACNM,UAAU,EACVtC,MAAO,QACPuC,QAAS,YACTC,KAAM,SACNC,YAAa,eAEf,CACET,KAAM,MACNhC,MAAO,MACPuC,QAAS,4BACTC,KAAM,UAER,CACER,KAAM,kBACNhC,MAAO,kBACPuC,QACE,mEACFC,KAAM,aAELH,IAIDU,EAA6C,CACjDC,QAAS,iBACTC,KAAM,cACNC,MAAO,eACPC,KAAM,cACNC,KAAM,cACNC,IAAK,aACLC,MAAO,eACPC,WAAY,kBACZC,cAAe,uBACfC,MAAO,gBAGIC,EAA4BC,GAChCZ,EAAmBY,E","sources":["screens/Console/Account/NotificationEndpointTypeSelectorHelpBox.tsx","screens/Console/EventDestinations/DestinationButton.tsx","screens/Console/EventDestinations/EventTypeSelector.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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\";\n\nimport { HelpBox, LambdaNotificationsIcon, Box } from \"mds\";\n\nconst NotificationEndpointTypeSelectorHelpBox = () => {\n return (\n }\n title={\"What are Event Destinations?\"}\n help={\n \n MinIO bucket notifications allow administrators to send notifications\n to supported external services on certain object or bucket events.\n MinIO supports bucket and object-level S3 events similar to the Amazon\n S3 Event Notifications.\n \n }\n />\n );\n};\n\nexport default NotificationEndpointTypeSelectorHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { useNavigate } from \"react-router-dom\";\nimport styled from \"styled-components\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\n\ninterface IDestinationButton {\n destinationType: string;\n srcImage: string;\n title: string;\n}\n\nconst DestinationButtonBase = styled.button(({ theme }) => ({\n background: get(theme, \"boxBackground\", \"#FFF\"),\n border: `${get(theme, \"borderColor\", \"#E2E2E2\")} 1px solid`,\n borderRadius: 5,\n width: 250,\n height: 80,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"start\",\n marginBottom: 16,\n marginRight: 8,\n cursor: \"pointer\",\n overflow: \"hidden\",\n \"&:hover\": {\n backgroundColor: get(theme, \"buttons.regular.hover.background\", \"#ebebeb\"),\n },\n \"& .imageContainer\": {\n width: 80,\n \"& .logoButton\": {\n maxWidth: 46,\n maxHeight: 46,\n filter: \"drop-shadow(1px 1px 8px #fff)\",\n },\n },\n \"& .lambdaNotifTitle\": {\n color: get(theme, \"buttons.callAction.enabled.background\", \"#07193E\"),\n fontSize: 16,\n fontFamily: \"Inter,sans-serif\",\n paddingLeft: 18,\n fontWeight: \"bold\",\n },\n}));\n\nconst DestinationButton = ({\n destinationType,\n srcImage,\n title,\n}: IDestinationButton) => {\n const navigate = useNavigate();\n\n return (\n {\n navigate(`${IAM_PAGES.EVENT_DESTINATIONS_ADD}/${destinationType}`);\n }}\n >\n \n {title}\n \n {title}\n \n );\n};\n\nexport default DestinationButton;\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 } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { BackLink, Box, FormLayout, PageLayout } from \"mds\";\nimport { destinationList, DestType } from \"./utils\";\nimport { typesSelection } from \"../Common/FormComponents/common/styleLibrary\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport NotificationEndpointTypeSelectorHelpBox from \"../Account/NotificationEndpointTypeSelectorHelpBox\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport DestinationButton from \"./DestinationButton\";\n\nimport HelpMenu from \"../HelpMenu\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setHelpName } from \"../../../systemSlice\";\n\nconst withLogos = destinationList.filter((elService) => elService.logo !== \"\");\nconst database = withLogos.filter(\n (elService) => elService.category === DestType.DB,\n);\nconst queue = withLogos.filter(\n (elService) => elService.category === DestType.Queue,\n);\nconst functions = withLogos.filter(\n (elService) => elService.category === DestType.Func,\n);\n\nconst EventTypeSelector = () => {\n const navigate = useNavigate();\n const dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(setHelpName(\"notification_type_selector\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n return (\n \n \n navigate(IAM_PAGES.EVENT_DESTINATIONS)}\n />\n \n }\n actions={}\n />\n \n }>\n \n \n Queue\n \n \n {queue.map((item) => {\n return (\n \n );\n })}\n \n \n Database\n \n \n {database.map((item) => {\n return (\n \n );\n })}\n \n \n Functions\n \n \n {functions.map((item) => {\n return (\n \n );\n })}\n \n \n \n \n \n );\n};\n\nexport default EventTypeSelector;\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 { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nconst notifyKafka = \"notify_kafka\";\nconst notifyAmqp = \"notify_amqp\";\nconst notifyMqtt = \"notify_mqtt\";\nconst notifyRedis = \"notify_redis\";\nconst notifyNats = \"notify_nats\";\nconst notifyElasticsearch = \"notify_elasticsearch\";\nconst notifyWebhooks = \"notify_webhook\";\nconst notifyNsq = \"notify_nsq\";\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nconst getImgBaseURL = () => {\n return `${document.baseURI}`;\n};\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: `${getImgBaseURL()}postgres-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: `${getImgBaseURL()}kafka-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: `${getImgBaseURL()}amqp-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: `${getImgBaseURL()}mqtt-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: `${getImgBaseURL()}redis-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: `${getImgBaseURL()}nats-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: `${getImgBaseURL()}mysql-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: `${getImgBaseURL()}elasticsearch-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: `${getImgBaseURL()}webhooks-logo.svg`,\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: `${getImgBaseURL()}nsq-logo.svg`,\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from api/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["NotificationEndpointTypeSelectorHelpBox","_jsx","HelpBox","iconComponent","LambdaNotificationsIcon","title","help","Box","sx","paddingTop","children","DestinationButtonBase","styled","button","_ref","theme","background","get","border","concat","borderRadius","width","height","display","alignItems","justifyContent","marginBottom","marginRight","cursor","overflow","backgroundColor","maxWidth","maxHeight","filter","color","fontSize","fontFamily","paddingLeft","fontWeight","_ref2","destinationType","srcImage","navigate","useNavigate","_jsxs","onClick","IAM_PAGES","EVENT_DESTINATIONS_ADD","className","src","alt","withLogos","destinationList","elService","logo","database","category","DestType","DB","queue","Queue","functions","Func","EventTypeSelector","dispatch","useAppDispatch","useEffect","setHelpName","Fragment","PageHeaderWrapper","label","BackLink","EVENT_DESTINATIONS","actions","HelpMenu","PageLayout","FormLayout","helpBox","paddingBottom","typesSelection","iconContainer","map","item","DestinationButton","actionTrigger","targetTitle","notifyPostgres","notifyMysql","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationTransform","notificationElements","element","service_name","service","account_id","name","status","getImgBaseURL","document","baseURI","commonFields","required","tooltip","type","placeholder","removeEmptyFields","formFields","field","value","notificationEndpointsFields","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis","getNotificationConfigKey","serviceName"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/4103.f42a2340.chunk.js.map b/web-app/build/static/js/4103.f42a2340.chunk.js.map index 15c71ab5cd..d38fececce 100644 --- a/web-app/build/static/js/4103.f42a2340.chunk.js.map +++ b/web-app/build/static/js/4103.f42a2340.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/4103.f42a2340.chunk.js","mappings":"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","sources":["screens/Console/Configurations/SiteReplication/LookupStatus/LookupStatusTable.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/Utils.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/BucketEntityStatus.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/PolicyEntityStatus.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/GroupEntityStatus.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/UserEntityStatus.tsx","screens/Console/Configurations/SiteReplication/EntityReplicationLookup.tsx","screens/Console/Configurations/SiteReplication/SiteReplicationStatus.tsx","screens/Console/Dashboard/BasicDashboard/StatusCountCard.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, CircleIcon } from \"mds\";\n\nconst LookupTableBase = styled.div(({ theme }) => ({\n marginTop: 15,\n table: {\n width: \"100%\",\n borderCollapse: \"collapse\",\n \"& .feature-cell\": {\n fontWeight: 600,\n fontSize: 14,\n paddingLeft: 15,\n },\n \"& .status-cell\": {\n textAlign: \"center\",\n },\n \"& .header-cell\": {\n textAlign: \"center\",\n },\n \"& tr\": {\n height: 38,\n \"& td\": {\n borderBottom: `1px solid ${get(theme, \"borderColor\", \"#E2E2E2\")}`,\n },\n \"& th\": {\n borderBottom: `2px solid ${get(theme, \"borderColor\", \"#E2E2E2\")}`,\n },\n },\n \"& .indicator\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n \"& .min-icon\": {\n height: 15,\n width: 15,\n },\n \"&.active\": {\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.deactivated\": {\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n}));\n\nconst LookupStatusTable = ({\n matrixData = [],\n entityName = \"\",\n entityType = \"\",\n}: {\n matrixData: any;\n entityName: string;\n entityType: string;\n}) => {\n //Assumes 1st row should be a header row.\n const [header = [], ...rows] = matrixData;\n\n const tableHeader = header.map((hC: string, hcIdx: number) => {\n return (\n \n {hC}\n \n );\n });\n\n const tableRowsToRender = rows.map((r: any, rIdx: number) => {\n return (\n \n {r.map((v: any, cIdx: number) => {\n let indicator = null;\n\n if (cIdx === 0) {\n indicator = v;\n } else if (v === \"\") {\n indicator = \"\";\n }\n if (v === true) {\n indicator = (\n \n \n \n );\n } else if (v === false) {\n indicator = (\n \n \n \n );\n }\n\n return (\n \n {indicator}\n \n );\n })}\n \n );\n });\n\n return (\n \n \n Replication status for {entityType}: {entityName}.\n \n \n \n {tableHeader}\n \n {tableRowsToRender}\n
\n
\n );\n};\n\nexport default LookupStatusTable;\n","import React from \"react\";\nimport { StatsResponseType } from \"../SiteReplicationStatus\";\nimport { Box } from \"mds\";\n\nexport function syncStatus(mismatch: boolean, set: boolean): string | boolean {\n if (!set) {\n return \"\";\n }\n return !mismatch;\n}\n\nexport function isEntityNotFound(\n sites: Partial,\n lookupList: Partial,\n lookupKey: string,\n) {\n const siteKeys: string[] = Object.keys(sites);\n return siteKeys.find((sk: string) => {\n // there is no way to find the type of this ! as it is an entry in the structure itself.\n // @ts-ignore\n const result: Record = lookupList[sk] || {};\n return !result[lookupKey];\n });\n}\n\nexport const EntityNotFound = ({\n entityType,\n entityValue,\n}: {\n entityType: string;\n entityValue: string;\n}) => {\n return (\n \n {entityType}:{\" \"}\n \n {entityValue}\n {\" \"}\n not found.\n \n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype BucketEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst BucketEntityStatus = ({\n bucketStats = {},\n sites = {},\n lookupValue = \"\",\n}: BucketEntityStatusProps) => {\n const rowsForStatus = [\n \"Tags\",\n \"Policy\",\n \"Quota\",\n \"Retention\",\n \"Encryption\",\n \"Replication\",\n ];\n\n const bucketSites: Record = bucketStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n\n const notFound = isEntityNotFound(sites, bucketSites, \"HasBucket\");\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n /**\n * ----------------------------------\n * | | sit-0 | site-1 |\n * -----------------------------------\n */\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n /**\n * -------------------------------------------------\n * | Feature Name | site-0-status | site-1-status |\n * --------------------------------------------------\n */\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = bucketSites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.TagMismatch, rSite.HasTagsSet);\n sfRow.push(sbStatus);\n break;\n case 1:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicySet);\n sfRow.push(sbStatus);\n break;\n case 2:\n sbStatus = syncStatus(rSite.QuotaCfgMismatch, rSite.HasQuotaCfgSet);\n sfRow.push(sbStatus);\n break;\n case 3:\n sbStatus = syncStatus(\n rSite.OLockConfigMismatch,\n rSite.HasOLockConfigSet,\n );\n sfRow.push(sbStatus);\n break;\n case 4:\n sbStatus = syncStatus(rSite.SSEConfigMismatch, rSite.HasSSECfgSet);\n sfRow.push(sbStatus);\n break;\n case 5:\n sbStatus = syncStatus(\n rSite.ReplicationCfgMismatch,\n rSite.HasReplicationCfg,\n );\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default BucketEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype PolicyEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst PolicyEntityStatus = ({\n policyStats = {},\n sites = {},\n lookupValue = \"\",\n}: PolicyEntityStatusProps) => {\n const rowsForStatus = [\"Policy\"];\n\n const policySites: Record = policyStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n const notFound = isEntityNotFound(sites, policySites, \"HasPolicy\");\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = policySites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicy);\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default PolicyEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype GroupEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst UserEntityStatus = ({\n groupStats = {},\n sites = {},\n lookupValue = \"\",\n}: GroupEntityStatusProps) => {\n const rowsForStatus = [\"Info\", \"Policy mapping\"];\n\n const groupSites: Record = groupStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n const notFound = isEntityNotFound(sites, groupSites, \"HasGroup\");\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n /**\n * ----------------------------------\n * | | sit-0 | site-1 |\n * -----------------------------------\n */\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n /**\n * -------------------------------------------------\n * | Feature Name | site-0-status | site-1-status |\n * --------------------------------------------------\n */\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = groupSites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.GroupDescMismatch, rSite.HasGroup);\n sfRow.push(sbStatus);\n break;\n case 1:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicyMapping);\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default UserEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype PolicyEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst UserEntityStatus = ({\n userStats = {},\n sites = {},\n lookupValue = \"\",\n}: PolicyEntityStatusProps) => {\n const rowsForStatus = [\"Info\", \"Policy mapping\"];\n\n const userSites: Record = userStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n\n const notFound = isEntityNotFound(sites, userSites, \"HasUser\");\n\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = userSites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.UserInfoMismatch, rSite.HasUser);\n sfRow.push(sbStatus);\n break;\n case 1:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicyMapping);\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default UserEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n Box,\n breakPoints,\n Button,\n ClustersIcon,\n Grid,\n Loader,\n Select,\n InputBox,\n} from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport { StatsResponseType } from \"./SiteReplicationStatus\";\nimport BucketEntityStatus from \"./LookupStatus/BucketEntityStatus\";\nimport PolicyEntityStatus from \"./LookupStatus/PolicyEntityStatus\";\nimport GroupEntityStatus from \"./LookupStatus/GroupEntityStatus\";\nimport UserEntityStatus from \"./LookupStatus/UserEntityStatus\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst EntityReplicationLookup = () => {\n const [entityType, setEntityType] = useState(\"bucket\");\n const [entityValue, setEntityValue] = useState(\"\");\n\n const [stats, setStats] = useState({});\n const [statsLoaded, setStatsLoaded] = useState(false);\n\n const [isStatsLoading, invokeSiteStatsApi] = useApi(\n (res: any) => {\n setStats(res);\n setStatsLoaded(true);\n },\n (err: any) => {\n setStats({});\n setStatsLoaded(true);\n },\n );\n\n const {\n bucketStats = {},\n sites = {},\n userStats = {},\n policyStats = {},\n groupStats = {},\n } = stats || {};\n\n const getStats = (entityType: string = \"\", entityValue: string = \"\") => {\n setStatsLoaded(false);\n if (entityType && entityValue) {\n let url = `api/v1/admin/site-replication/status?buckets=false&entityType=${entityType}&entityValue=${entityValue}&groups=false&policies=false&users=false`;\n invokeSiteStatsApi(\"GET\", url);\n }\n };\n\n return (\n \n \n \n View Replication Status for a:\n \n \n {\n setEntityType(value);\n setStatsLoaded(false);\n }}\n label=\"\"\n value={entityType}\n options={[\n {\n label: \"Bucket\",\n value: \"bucket\",\n },\n {\n label: \"User\",\n value: \"user\",\n },\n {\n label: \"Group\",\n value: \"group\",\n },\n {\n label: \"Policy\",\n value: \"policy\",\n },\n ]}\n disabled={false}\n />\n \n\n \n ) => {\n setEntityValue(e.target.value);\n setStatsLoaded(false);\n }}\n placeholder={`test-${entityType}`}\n label=\"\"\n value={entityValue}\n />\n \n \n \n {\n getStats(entityType, entityValue);\n }}\n label={`View`}\n icon={}\n collapseOnSmall={false}\n disabled={!entityValue || !entityType}\n />\n \n \n \n\n {isStatsLoading ? (\n \n \n \n ) : null}\n\n {statsLoaded ? (\n \n {!isStatsLoading && entityType === \"bucket\" && entityValue ? (\n \n ) : null}\n\n {!isStatsLoading && entityType === \"user\" && entityValue ? (\n \n ) : null}\n\n {!isStatsLoading && entityType === \"group\" && entityValue ? (\n \n ) : null}\n\n {!isStatsLoading && entityType === \"policy\" && entityValue ? (\n \n ) : null}\n \n ) : null}\n \n );\n};\n\nexport default EntityReplicationLookup;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n BackLink,\n Box,\n breakPoints,\n BucketsIcon,\n Button,\n Grid,\n GroupsIcon,\n IAMPoliciesIcon,\n Loader,\n PageLayout,\n RefreshIcon,\n UsersIcon,\n SectionTitle,\n} from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport StatusCountCard from \"../../Dashboard/BasicDashboard/StatusCountCard\";\nimport EntityReplicationLookup from \"./EntityReplicationLookup\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n ApiError,\n HttpResponse,\n SiteReplicationStatusResponse,\n} from \"api/consoleApi\";\n\nexport type StatsResponseType = {\n maxBuckets?: number;\n bucketStats?: Record;\n maxGroups?: number;\n groupStats?: Record;\n maxUsers?: number;\n userStats?: Record;\n maxPolicies?: number;\n policyStats?: Record;\n sites?: Record;\n};\n\nconst SREntityStatus = ({\n maxValue = 0,\n entityStatObj = {},\n entityTextPlural = \"\",\n icon = null,\n}: {\n maxValue: number;\n entityStatObj: Record;\n entityTextPlural: string;\n icon?: React.ReactNode;\n}) => {\n const statEntityLen = Object.keys(entityStatObj || {})?.length;\n return (\n \n \n \n );\n};\n\nconst SiteReplicationStatus = () => {\n const navigate = useNavigate();\n\n const [stats, setStats] = useState({});\n const [loading, setLoading] = useState(false);\n\n const {\n maxBuckets = 0,\n bucketStats = {},\n maxGroups = 0,\n groupStats = {},\n maxUsers = 0,\n userStats = {},\n maxPolicies = 0,\n policyStats = {},\n } = stats || {};\n\n const getStats = () => {\n setLoading(true);\n api.admin\n .getSiteReplicationStatus({\n buckets: true,\n groups: true,\n policies: true,\n users: true,\n })\n .then((res: HttpResponse) => {\n setStats(res.data);\n })\n .catch((res: HttpResponse) => {\n setStats({});\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n })\n .finally(() => setLoading(false));\n };\n\n useEffect(() => {\n getStats();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(setHelpName(\"replication_status\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n navigate(IAM_PAGES.SITE_REPLICATION)}\n />\n }\n actions={}\n />\n\n \n \n \n {\n getStats();\n }}\n label={\"Refresh\"}\n icon={}\n variant={\"regular\"}\n collapseOnSmall={false}\n />\n \n \n }\n separator\n >\n Replication status from all Sites\n \n\n {!loading ? (\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 SiteReplicationStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, CircleIcon } from \"mds\";\n\nconst StatusCountBase = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n maxWidth: \"321px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n \"& .mainBox\": {\n flex: 1,\n display: \"flex\",\n padding: \"0 8px 0 8px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n padding: \"0 10px 0 10px\",\n },\n \"& .indicatorIcon\": {\n width: \"20px\",\n height: \"20px\",\n marginTop: \"8px\",\n maxWidth: \"26px\",\n \"& .min-icon\": {\n width: \"16px\",\n height: \"16px\",\n },\n },\n \"& .indicatorContainer\": {\n flex: 1,\n display: \"flex\",\n flexFlow: \"column\",\n \"& .indicatorLabel\": {\n fontSize: \"16px\",\n fontWeight: 600,\n },\n \"& .counterIndicator\": {\n display: \"flex\",\n alignItems: \"center\",\n gap: \"5px\",\n justifyContent: \"space-between\",\n paddingBottom: 0,\n fontSize: \"55px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n paddingBottom: 10,\n fontSize: \"35px\",\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n fontSize: \"45px\",\n },\n [`@media (max-width: ${breakPoints.xl}px)`]: {\n fontSize: \"50px\",\n },\n flexFlow: \"row\",\n fontWeight: 600,\n\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888D\"),\n fontSize: \"12px\",\n marginTop: \"8px\",\n },\n \"& .stat-value\": {\n textAlign: \"center\",\n height: \"50px\",\n },\n \"& .min-icon\": {\n marginRight: \"8px\",\n marginTop: \"8px\",\n height: \"10px\",\n width: \"10px\",\n },\n },\n \"& .onlineCounter\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"5px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"& .offlineCount\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"8px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n}));\n\nexport const StatusCountCard = ({\n onlineCount = 0,\n offlineCount = 0,\n icon = null,\n label = \"\",\n okStatusText = \"Online\",\n notOkStatusText = \"Offline\",\n}: {\n icon: any;\n onlineCount: number;\n offlineCount: number;\n label: string;\n okStatusText?: string;\n notOkStatusText?: string;\n}) => {\n return (\n \n \n \n {label}\n\n \n \n {onlineCount}\n \n \n
{okStatusText}
\n
\n
\n\n \n {offlineCount}\n \n {\" \"}\n
{notOkStatusText}
\n
\n
\n
\n
\n {icon}\n
\n
\n );\n};\n\nexport default StatusCountCard;\n"],"names":["LookupTableBase","styled","div","_ref","theme","marginTop","table","width","borderCollapse","fontWeight","fontSize","paddingLeft","textAlign","height","borderBottom","concat","get","display","alignItems","justifyContent","fill","_ref2","matrixData","entityName","entityType","header","rows","tableHeader","map","hC","hcIdx","_jsx","className","children","tableRowsToRender","r","rIdx","v","cIdx","indicator","Box","CircleIcon","_jsxs","sx","marginBottom","syncStatus","mismatch","set","isEntityNotFound","sites","lookupList","lookupKey","Object","keys","find","sk","EntityNotFound","entityValue","marginLeft","marginRight","bucketStats","lookupValue","rowsForStatus","bucketSites","siteKeys","resultMatrix","row","sCol","length","push","name","fi","sfRow","feature","sbStatus","si","rSite","deploymentID","TagMismatch","HasTagsSet","PolicyMismatch","HasPolicySet","QuotaCfgMismatch","HasQuotaCfgSet","OLockConfigMismatch","HasOLockConfigSet","SSEConfigMismatch","HasSSECfgSet","ReplicationCfgMismatch","HasReplicationCfg","LookupStatusTable","policyStats","policySites","HasPolicy","groupStats","groupSites","GroupDescMismatch","HasGroup","HasPolicyMapping","userStats","userSites","UserInfoMismatch","HasUser","EntityReplicationLookup","setEntityType","useState","setEntityValue","stats","setStats","statsLoaded","setStatsLoaded","isStatsLoading","invokeSiteStatsApi","useApi","res","err","gridTemplateColumns","breakPoints","sm","md","gap","flexGrow","Select","id","onChange","value","label","options","disabled","flex","InputBox","e","target","placeholder","maxWidth","TooltipWrapper","tooltip","Button","type","onClick","arguments","undefined","url","getStats","icon","ClustersIcon","collapseOnSmall","Grid","item","xs","Loader","style","BucketEntityStatus","UserEntityStatus","GroupEntityStatus","PolicyEntityStatus","SREntityStatus","_Object$keys","maxValue","entityStatObj","entityTextPlural","statEntityLen","withBorders","padding","StatusCountCard","onlineCount","offlineCount","okStatusText","notOkStatusText","SiteReplicationStatus","navigate","useNavigate","loading","setLoading","maxBuckets","maxGroups","maxUsers","maxPolicies","api","admin","getSiteReplicationStatus","buckets","groups","policies","users","then","data","catch","dispatch","setErrorSnackMessage","errorToHandler","error","finally","useEffect","useAppDispatch","setHelpName","Fragment","PageHeaderWrapper","BackLink","IAM_PAGES","SITE_REPLICATION","actions","HelpMenu","PageLayout","SectionTitle","RefreshIcon","variant","separator","BucketsIcon","UsersIcon","GroupsIcon","IAMPoliciesIcon","minHeight","StatusCountBase","fontFamily","cursor","color","flexFlow","paddingBottom","lg","xl"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/4103.f42a2340.chunk.js","mappings":"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","sources":["screens/Console/Configurations/SiteReplication/LookupStatus/LookupStatusTable.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/Utils.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/BucketEntityStatus.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/PolicyEntityStatus.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/GroupEntityStatus.tsx","screens/Console/Configurations/SiteReplication/LookupStatus/UserEntityStatus.tsx","screens/Console/Configurations/SiteReplication/EntityReplicationLookup.tsx","screens/Console/Configurations/SiteReplication/SiteReplicationStatus.tsx","screens/Console/Dashboard/BasicDashboard/StatusCountCard.tsx"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, CircleIcon } from \"mds\";\n\nconst LookupTableBase = styled.div(({ theme }) => ({\n marginTop: 15,\n table: {\n width: \"100%\",\n borderCollapse: \"collapse\",\n \"& .feature-cell\": {\n fontWeight: 600,\n fontSize: 14,\n paddingLeft: 15,\n },\n \"& .status-cell\": {\n textAlign: \"center\",\n },\n \"& .header-cell\": {\n textAlign: \"center\",\n },\n \"& tr\": {\n height: 38,\n \"& td\": {\n borderBottom: `1px solid ${get(theme, \"borderColor\", \"#E2E2E2\")}`,\n },\n \"& th\": {\n borderBottom: `2px solid ${get(theme, \"borderColor\", \"#E2E2E2\")}`,\n },\n },\n \"& .indicator\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n \"& .min-icon\": {\n height: 15,\n width: 15,\n },\n \"&.active\": {\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.deactivated\": {\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n}));\n\nconst LookupStatusTable = ({\n matrixData = [],\n entityName = \"\",\n entityType = \"\",\n}: {\n matrixData: any;\n entityName: string;\n entityType: string;\n}) => {\n //Assumes 1st row should be a header row.\n const [header = [], ...rows] = matrixData;\n\n const tableHeader = header.map((hC: string, hcIdx: number) => {\n return (\n \n {hC}\n \n );\n });\n\n const tableRowsToRender = rows.map((r: any, rIdx: number) => {\n return (\n \n {r.map((v: any, cIdx: number) => {\n let indicator = null;\n\n if (cIdx === 0) {\n indicator = v;\n } else if (v === \"\") {\n indicator = \"\";\n }\n if (v === true) {\n indicator = (\n \n \n \n );\n } else if (v === false) {\n indicator = (\n \n \n \n );\n }\n\n return (\n \n {indicator}\n \n );\n })}\n \n );\n });\n\n return (\n \n \n Replication status for {entityType}: {entityName}.\n \n \n \n {tableHeader}\n \n {tableRowsToRender}\n
\n
\n );\n};\n\nexport default LookupStatusTable;\n","import React from \"react\";\nimport { StatsResponseType } from \"../SiteReplicationStatus\";\nimport { Box } from \"mds\";\n\nexport function syncStatus(mismatch: boolean, set: boolean): string | boolean {\n if (!set) {\n return \"\";\n }\n return !mismatch;\n}\n\nexport function isEntityNotFound(\n sites: Partial,\n lookupList: Partial,\n lookupKey: string,\n) {\n const siteKeys: string[] = Object.keys(sites);\n return siteKeys.find((sk: string) => {\n // there is no way to find the type of this ! as it is an entry in the structure itself.\n // @ts-ignore\n const result: Record = lookupList[sk] || {};\n return !result[lookupKey];\n });\n}\n\nexport const EntityNotFound = ({\n entityType,\n entityValue,\n}: {\n entityType: string;\n entityValue: string;\n}) => {\n return (\n \n {entityType}:{\" \"}\n \n {entityValue}\n {\" \"}\n not found.\n \n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype BucketEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst BucketEntityStatus = ({\n bucketStats = {},\n sites = {},\n lookupValue = \"\",\n}: BucketEntityStatusProps) => {\n const rowsForStatus = [\n \"Tags\",\n \"Policy\",\n \"Quota\",\n \"Retention\",\n \"Encryption\",\n \"Replication\",\n ];\n\n const bucketSites: Record = bucketStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n\n const notFound = isEntityNotFound(sites, bucketSites, \"HasBucket\");\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n /**\n * ----------------------------------\n * | | sit-0 | site-1 |\n * -----------------------------------\n */\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n /**\n * -------------------------------------------------\n * | Feature Name | site-0-status | site-1-status |\n * --------------------------------------------------\n */\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = bucketSites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.TagMismatch, rSite.HasTagsSet);\n sfRow.push(sbStatus);\n break;\n case 1:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicySet);\n sfRow.push(sbStatus);\n break;\n case 2:\n sbStatus = syncStatus(rSite.QuotaCfgMismatch, rSite.HasQuotaCfgSet);\n sfRow.push(sbStatus);\n break;\n case 3:\n sbStatus = syncStatus(\n rSite.OLockConfigMismatch,\n rSite.HasOLockConfigSet,\n );\n sfRow.push(sbStatus);\n break;\n case 4:\n sbStatus = syncStatus(rSite.SSEConfigMismatch, rSite.HasSSECfgSet);\n sfRow.push(sbStatus);\n break;\n case 5:\n sbStatus = syncStatus(\n rSite.ReplicationCfgMismatch,\n rSite.HasReplicationCfg,\n );\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default BucketEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype PolicyEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst PolicyEntityStatus = ({\n policyStats = {},\n sites = {},\n lookupValue = \"\",\n}: PolicyEntityStatusProps) => {\n const rowsForStatus = [\"Policy\"];\n\n const policySites: Record = policyStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n const notFound = isEntityNotFound(sites, policySites, \"HasPolicy\");\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = policySites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicy);\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default PolicyEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype GroupEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst UserEntityStatus = ({\n groupStats = {},\n sites = {},\n lookupValue = \"\",\n}: GroupEntityStatusProps) => {\n const rowsForStatus = [\"Info\", \"Policy mapping\"];\n\n const groupSites: Record = groupStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n const notFound = isEntityNotFound(sites, groupSites, \"HasGroup\");\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n /**\n * ----------------------------------\n * | | sit-0 | site-1 |\n * -----------------------------------\n */\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n /**\n * -------------------------------------------------\n * | Feature Name | site-0-status | site-1-status |\n * --------------------------------------------------\n */\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = groupSites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.GroupDescMismatch, rSite.HasGroup);\n sfRow.push(sbStatus);\n break;\n case 1:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicyMapping);\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default UserEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { StatsResponseType } from \"../SiteReplicationStatus\";\nimport LookupStatusTable from \"./LookupStatusTable\";\nimport { EntityNotFound, isEntityNotFound, syncStatus } from \"./Utils\";\n\ntype PolicyEntityStatusProps = Partial & {\n lookupValue?: string;\n};\nconst UserEntityStatus = ({\n userStats = {},\n sites = {},\n lookupValue = \"\",\n}: PolicyEntityStatusProps) => {\n const rowsForStatus = [\"Info\", \"Policy mapping\"];\n\n const userSites: Record = userStats[lookupValue] || {};\n\n if (!lookupValue) return null;\n\n const siteKeys = Object.keys(sites);\n\n const notFound = isEntityNotFound(sites, userSites, \"HasUser\");\n\n const resultMatrix: any = [];\n if (notFound) {\n return ;\n } else {\n const row = [];\n for (let sCol = 0; sCol < siteKeys.length; sCol++) {\n if (sCol === 0) {\n row.push(\"\");\n }\n row.push(sites[siteKeys[sCol]].name);\n }\n resultMatrix.push(row);\n for (let fi = 0; fi < rowsForStatus.length; fi++) {\n const sfRow = [];\n const feature = rowsForStatus[fi];\n let sbStatus: string | boolean = \"\";\n\n for (let si = 0; si < siteKeys.length; si++) {\n const bucketSiteDeploymentId = sites[siteKeys[si]].deploymentID;\n\n const rSite = userSites[bucketSiteDeploymentId];\n\n if (si === 0) {\n sfRow.push(feature);\n }\n\n switch (fi) {\n case 0:\n sbStatus = syncStatus(rSite.UserInfoMismatch, rSite.HasUser);\n sfRow.push(sbStatus);\n break;\n case 1:\n sbStatus = syncStatus(rSite.PolicyMismatch, rSite.HasPolicyMapping);\n sfRow.push(sbStatus);\n break;\n }\n }\n\n resultMatrix.push(sfRow);\n }\n }\n\n return (\n \n );\n};\n\nexport default UserEntityStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n Box,\n breakPoints,\n Button,\n ClustersIcon,\n Grid,\n Loader,\n Select,\n InputBox,\n} from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport { StatsResponseType } from \"./SiteReplicationStatus\";\nimport BucketEntityStatus from \"./LookupStatus/BucketEntityStatus\";\nimport PolicyEntityStatus from \"./LookupStatus/PolicyEntityStatus\";\nimport GroupEntityStatus from \"./LookupStatus/GroupEntityStatus\";\nimport UserEntityStatus from \"./LookupStatus/UserEntityStatus\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst EntityReplicationLookup = () => {\n const [entityType, setEntityType] = useState(\"bucket\");\n const [entityValue, setEntityValue] = useState(\"\");\n\n const [stats, setStats] = useState({});\n const [statsLoaded, setStatsLoaded] = useState(false);\n\n const [isStatsLoading, invokeSiteStatsApi] = useApi(\n (res: any) => {\n setStats(res);\n setStatsLoaded(true);\n },\n (err: any) => {\n setStats({});\n setStatsLoaded(true);\n },\n );\n\n const {\n bucketStats = {},\n sites = {},\n userStats = {},\n policyStats = {},\n groupStats = {},\n } = stats || {};\n\n const getStats = (entityType: string = \"\", entityValue: string = \"\") => {\n setStatsLoaded(false);\n if (entityType && entityValue) {\n let url = `api/v1/admin/site-replication/status?buckets=false&entityType=${entityType}&entityValue=${entityValue}&groups=false&policies=false&users=false`;\n invokeSiteStatsApi(\"GET\", url);\n }\n };\n\n return (\n \n \n \n View Replication Status for a:\n \n \n {\n setEntityType(value);\n setStatsLoaded(false);\n }}\n label=\"\"\n value={entityType}\n options={[\n {\n label: \"Bucket\",\n value: \"bucket\",\n },\n {\n label: \"User\",\n value: \"user\",\n },\n {\n label: \"Group\",\n value: \"group\",\n },\n {\n label: \"Policy\",\n value: \"policy\",\n },\n ]}\n disabled={false}\n />\n \n\n \n ) => {\n setEntityValue(e.target.value);\n setStatsLoaded(false);\n }}\n placeholder={`test-${entityType}`}\n label=\"\"\n value={entityValue}\n />\n \n \n \n {\n getStats(entityType, entityValue);\n }}\n label={`View`}\n icon={}\n collapseOnSmall={false}\n disabled={!entityValue || !entityType}\n />\n \n \n \n\n {isStatsLoading ? (\n \n \n \n ) : null}\n\n {statsLoaded ? (\n \n {!isStatsLoading && entityType === \"bucket\" && entityValue ? (\n \n ) : null}\n\n {!isStatsLoading && entityType === \"user\" && entityValue ? (\n \n ) : null}\n\n {!isStatsLoading && entityType === \"group\" && entityValue ? (\n \n ) : null}\n\n {!isStatsLoading && entityType === \"policy\" && entityValue ? (\n \n ) : null}\n \n ) : null}\n \n );\n};\n\nexport default EntityReplicationLookup;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n BackLink,\n Box,\n breakPoints,\n BucketsIcon,\n Button,\n Grid,\n GroupsIcon,\n IAMPoliciesIcon,\n Loader,\n PageLayout,\n RefreshIcon,\n UsersIcon,\n SectionTitle,\n} from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport StatusCountCard from \"../../Dashboard/BasicDashboard/StatusCountCard\";\nimport EntityReplicationLookup from \"./EntityReplicationLookup\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../../HelpMenu\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n ApiError,\n HttpResponse,\n SiteReplicationStatusResponse,\n} from \"api/consoleApi\";\n\nexport type StatsResponseType = {\n maxBuckets?: number;\n bucketStats?: Record;\n maxGroups?: number;\n groupStats?: Record;\n maxUsers?: number;\n userStats?: Record;\n maxPolicies?: number;\n policyStats?: Record;\n sites?: Record;\n};\n\nconst SREntityStatus = ({\n maxValue = 0,\n entityStatObj = {},\n entityTextPlural = \"\",\n icon = null,\n}: {\n maxValue: number;\n entityStatObj: Record;\n entityTextPlural: string;\n icon?: React.ReactNode;\n}) => {\n const statEntityLen = Object.keys(entityStatObj || {})?.length;\n return (\n \n \n \n );\n};\n\nconst SiteReplicationStatus = () => {\n const navigate = useNavigate();\n\n const [stats, setStats] = useState({});\n const [loading, setLoading] = useState(false);\n\n const {\n maxBuckets = 0,\n bucketStats = {},\n maxGroups = 0,\n groupStats = {},\n maxUsers = 0,\n userStats = {},\n maxPolicies = 0,\n policyStats = {},\n } = stats || {};\n\n const getStats = () => {\n setLoading(true);\n api.admin\n .getSiteReplicationStatus({\n buckets: true,\n groups: true,\n policies: true,\n users: true,\n })\n .then((res: HttpResponse) => {\n setStats(res.data);\n })\n .catch((res: HttpResponse) => {\n setStats({});\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n })\n .finally(() => setLoading(false));\n };\n\n useEffect(() => {\n getStats();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const dispatch = useAppDispatch();\n useEffect(() => {\n dispatch(setHelpName(\"replication_status\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n navigate(IAM_PAGES.SITE_REPLICATION)}\n />\n }\n actions={}\n />\n\n \n \n \n {\n getStats();\n }}\n label={\"Refresh\"}\n icon={}\n variant={\"regular\"}\n collapseOnSmall={false}\n />\n \n \n }\n separator\n >\n Replication status from all Sites\n \n\n {!loading ? (\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 SiteReplicationStatus;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, CircleIcon } from \"mds\";\n\nconst StatusCountBase = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n maxWidth: \"321px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n \"& .mainBox\": {\n flex: 1,\n display: \"flex\",\n padding: \"0 8px 0 8px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n padding: \"0 10px 0 10px\",\n },\n \"& .indicatorIcon\": {\n width: \"20px\",\n height: \"20px\",\n marginTop: \"8px\",\n maxWidth: \"26px\",\n \"& .min-icon\": {\n width: \"16px\",\n height: \"16px\",\n },\n },\n \"& .indicatorContainer\": {\n flex: 1,\n display: \"flex\",\n flexFlow: \"column\",\n \"& .indicatorLabel\": {\n fontSize: \"16px\",\n fontWeight: 600,\n },\n \"& .counterIndicator\": {\n display: \"flex\",\n alignItems: \"center\",\n gap: \"5px\",\n justifyContent: \"space-between\",\n paddingBottom: 0,\n fontSize: \"55px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n paddingBottom: 10,\n fontSize: \"35px\",\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n fontSize: \"45px\",\n },\n [`@media (max-width: ${breakPoints.xl}px)`]: {\n fontSize: \"50px\",\n },\n flexFlow: \"row\",\n fontWeight: 600,\n\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888D\"),\n fontSize: \"12px\",\n marginTop: \"8px\",\n },\n \"& .stat-value\": {\n textAlign: \"center\",\n height: \"50px\",\n },\n \"& .min-icon\": {\n marginRight: \"8px\",\n marginTop: \"8px\",\n height: \"10px\",\n width: \"10px\",\n },\n },\n \"& .onlineCounter\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"5px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"& .offlineCount\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"8px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n}));\n\nconst StatusCountCard = ({\n onlineCount = 0,\n offlineCount = 0,\n icon = null,\n label = \"\",\n okStatusText = \"Online\",\n notOkStatusText = \"Offline\",\n}: {\n icon: any;\n onlineCount: number;\n offlineCount: number;\n label: string;\n okStatusText?: string;\n notOkStatusText?: string;\n}) => {\n return (\n \n \n \n {label}\n\n \n \n {onlineCount}\n \n \n
{okStatusText}
\n
\n
\n\n \n {offlineCount}\n \n {\" \"}\n
{notOkStatusText}
\n
\n
\n
\n
\n {icon}\n
\n
\n );\n};\n\nexport default StatusCountCard;\n"],"names":["LookupTableBase","styled","div","_ref","theme","marginTop","table","width","borderCollapse","fontWeight","fontSize","paddingLeft","textAlign","height","borderBottom","concat","get","display","alignItems","justifyContent","fill","_ref2","matrixData","entityName","entityType","header","rows","tableHeader","map","hC","hcIdx","_jsx","className","children","tableRowsToRender","r","rIdx","v","cIdx","indicator","Box","CircleIcon","_jsxs","sx","marginBottom","syncStatus","mismatch","set","isEntityNotFound","sites","lookupList","lookupKey","Object","keys","find","sk","EntityNotFound","entityValue","marginLeft","marginRight","bucketStats","lookupValue","rowsForStatus","bucketSites","siteKeys","resultMatrix","row","sCol","length","push","name","fi","sfRow","feature","sbStatus","si","rSite","deploymentID","TagMismatch","HasTagsSet","PolicyMismatch","HasPolicySet","QuotaCfgMismatch","HasQuotaCfgSet","OLockConfigMismatch","HasOLockConfigSet","SSEConfigMismatch","HasSSECfgSet","ReplicationCfgMismatch","HasReplicationCfg","LookupStatusTable","policyStats","policySites","HasPolicy","groupStats","groupSites","GroupDescMismatch","HasGroup","HasPolicyMapping","userStats","userSites","UserInfoMismatch","HasUser","EntityReplicationLookup","setEntityType","useState","setEntityValue","stats","setStats","statsLoaded","setStatsLoaded","isStatsLoading","invokeSiteStatsApi","useApi","res","err","gridTemplateColumns","breakPoints","sm","md","gap","flexGrow","Select","id","onChange","value","label","options","disabled","flex","InputBox","e","target","placeholder","maxWidth","TooltipWrapper","tooltip","Button","type","onClick","arguments","undefined","url","getStats","icon","ClustersIcon","collapseOnSmall","Grid","item","xs","Loader","style","BucketEntityStatus","UserEntityStatus","GroupEntityStatus","PolicyEntityStatus","SREntityStatus","_Object$keys","maxValue","entityStatObj","entityTextPlural","statEntityLen","withBorders","padding","StatusCountCard","onlineCount","offlineCount","okStatusText","notOkStatusText","SiteReplicationStatus","navigate","useNavigate","loading","setLoading","maxBuckets","maxGroups","maxUsers","maxPolicies","api","admin","getSiteReplicationStatus","buckets","groups","policies","users","then","data","catch","dispatch","setErrorSnackMessage","errorToHandler","error","finally","useEffect","useAppDispatch","setHelpName","Fragment","PageHeaderWrapper","BackLink","IAM_PAGES","SITE_REPLICATION","actions","HelpMenu","PageLayout","SectionTitle","RefreshIcon","variant","separator","BucketsIcon","UsersIcon","GroupsIcon","IAMPoliciesIcon","minHeight","StatusCountBase","fontFamily","cursor","color","flexFlow","paddingBottom","lg","xl"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/5128.96ab1387.chunk.js b/web-app/build/static/js/5128.96ab1387.chunk.js deleted file mode 100644 index 7806c69d1a..0000000000 --- a/web-app/build/static/js/5128.96ab1387.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[5128],{12848:(e,t,n)=>{n.d(t,{A:()=>i});var l=n(65043),a=n(33097),o=n.n(a),s=n(89923),c=n(70579);const i=e=>{let{elements:t,name:n,label:a,tooltip:i="",commonPlaceholder:r="",onChange:d,withBorder:h=!1}=e;const[u,m]=(0,l.useState)([""]),f=(0,l.createRef)();(0,l.useEffect)((()=>{if(1===u.length&&""===u[0]&&t&&""!==t){const e=t.split(",");e.push(""),m(e)}}),[t,u]),(0,l.useEffect)((()=>{if(u.length>1){const e=f.current;e&&e.scrollIntoView(!1)}}),[u,f]);const p=(0,l.useCallback)((e=>{d(e)}),[d]),x=(0,l.useRef)(!0);(0,l.useEffect)((()=>{if(x.current)return void(x.current=!1);const e=u.filter((e=>""!==e.trim())).join(",");p(e)}),[u]);const v=e=>{e.persist();let t=[...u];const n=o()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,m(t)},g=u.map(((e,t)=>(0,c.jsx)(s.cl_,{id:"".concat(n,"-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:u[t],onChange:v,index:t,placeholder:r,overlayIcon:t===u.length-1?(0,c.jsx)(s.REV,{}):null,overlayAction:()=>{(e=>{if(""!==e[e.length-1].trim()){const t=[...e];t.push(""),m(t)}})(u)}},"csv-multi-".concat(n,"-").concat(t.toString()))));return(0,c.jsx)(l.Fragment,{children:(0,c.jsxs)(s.azJ,{sx:{display:"flex"},className:"inputItem",children:[(0,c.jsxs)(s.l1Y,{sx:{alignItems:"flex-start"},children:[(0,c.jsx)("span",{children:a}),""!==i&&(0,c.jsx)(s.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,c.jsx)(s.m_M,{tooltip:i,placement:"top",children:(0,c.jsx)(s.azJ,{className:i,children:(0,c.jsx)(s.NTw,{})})})})]}),(0,c.jsxs)(s.azJ,{withBorders:h,sx:{width:"100%",overflowY:"auto",height:150,position:"relative"},children:[g,(0,c.jsx)("div",{ref:f})]})]})})}},5128:(e,t,n)=>{n.r(t),n.d(t,{default:()=>i,valueDef:()=>c});var l=n(65043),a=n(89923),o=n(12848),s=n(70579);const c=(e,t,n)=>{let l="on|off"===t?"off":"";if(n.length>0){const t=n.find((t=>t.key===e));t&&(l=t.value||"")}return l},i=e=>{let{onChange:t,fields:n,defaultVals:i,overrideEnv:r}=e;const[d,h]=(0,l.useState)([]),u=n||[],m=i||[];(0,l.useEffect)((()=>{const e=n.map((e=>({key:e.name,value:c(e.name,e.type,m)})));h(e)}),[n,i]),(0,l.useEffect)((()=>{t(d)}),[d]);const f=(e,t,n)=>{const l=[...d];t=t.trim(),l[n]={key:e,value:t},h(l)},p=(e,t)=>{const n=d[t];if(n){const t=null===r||void 0===r?void 0:r["".concat(n.key)];if(t)return(0,s.jsx)(a.EmB,{label:e.label,actionButton:(0,s.jsx)(a.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,s.jsx)(a.m_M,{tooltip:"This value is set from the ".concat(t.overrideEnv," environment variable"),placement:"left",children:(0,s.jsx)(a.D0K,{style:{width:20}})})}),sx:{width:"100%"},children:t.value})}switch(e.type){case"on|off":const l=n?n.value:"off";return(0,s.jsx)(a.dOG,{onChange:n=>{const l=n.target.checked?"on":"off";f(e.name,l,t)},id:e.name,name:e.name,label:e.label,value:"switch_on",tooltip:e.tooltip,checked:"on"===l});case"csv":return(0,s.jsx)(o.A,{elements:n?n.value:"",label:e.label,name:e.name,onChange:n=>{let l="";l=Array.isArray(n)?n.join(","):n,f(e.name,l,t)},tooltip:e.tooltip,commonPlaceholder:e.placeholder,withBorder:!0});case"comment":return(0,s.jsx)(a.hFj,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>f(e.name,n.target.value,t),placeholder:e.placeholder});default:return(0,s.jsx)(a.cl_,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>f(e.name,n.target.value,t),placeholder:e.placeholder})}};return(0,s.jsx)(a.Hbc,{withBorders:!1,containerPadding:!1,children:u.map(((e,t)=>(0,s.jsx)(l.Fragment,{children:p(e,t)},e.name)))})}}}]); -//# sourceMappingURL=5128.96ab1387.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/5128.a36f1ed5.chunk.js b/web-app/build/static/js/5128.a36f1ed5.chunk.js new file mode 100644 index 0000000000..d67affbea5 --- /dev/null +++ b/web-app/build/static/js/5128.a36f1ed5.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[5128],{12848:(e,t,n)=>{n.d(t,{A:()=>i});var l=n(65043),a=n(33097),o=n.n(a),s=n(89923),c=n(70579);const i=e=>{let{elements:t,name:n,label:a,tooltip:i="",commonPlaceholder:r="",onChange:d,withBorder:h=!1}=e;const[u,m]=(0,l.useState)([""]),f=(0,l.createRef)();(0,l.useEffect)((()=>{if(1===u.length&&""===u[0]&&t&&""!==t){const e=t.split(",");e.push(""),m(e)}}),[t,u]),(0,l.useEffect)((()=>{if(u.length>1){const e=f.current;e&&e.scrollIntoView(!1)}}),[u,f]);const p=(0,l.useCallback)((e=>{d(e)}),[d]),x=(0,l.useRef)(!0);(0,l.useEffect)((()=>{if(x.current)return void(x.current=!1);const e=u.filter((e=>""!==e.trim())).join(",");p(e)}),[u]);const v=e=>{e.persist();let t=[...u];const n=o()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,m(t)},g=u.map(((e,t)=>(0,c.jsx)(s.cl_,{id:"".concat(n,"-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:u[t],onChange:v,index:t,placeholder:r,overlayIcon:t===u.length-1?(0,c.jsx)(s.REV,{}):null,overlayAction:()=>{(e=>{if(""!==e[e.length-1].trim()){const t=[...e];t.push(""),m(t)}})(u)}},"csv-multi-".concat(n,"-").concat(t.toString()))));return(0,c.jsx)(l.Fragment,{children:(0,c.jsxs)(s.azJ,{sx:{display:"flex"},className:"inputItem",children:[(0,c.jsxs)(s.l1Y,{sx:{alignItems:"flex-start"},children:[(0,c.jsx)("span",{children:a}),""!==i&&(0,c.jsx)(s.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,c.jsx)(s.m_M,{tooltip:i,placement:"top",children:(0,c.jsx)(s.azJ,{className:i,children:(0,c.jsx)(s.NTw,{})})})})]}),(0,c.jsxs)(s.azJ,{withBorders:h,sx:{width:"100%",overflowY:"auto",height:150,position:"relative"},children:[g,(0,c.jsx)("div",{ref:f})]})]})})}},5128:(e,t,n)=>{n.r(t),n.d(t,{default:()=>i});var l=n(65043),a=n(89923),o=n(12848),s=n(70579);const c=(e,t,n)=>{let l="on|off"===t?"off":"";if(n.length>0){const t=n.find((t=>t.key===e));t&&(l=t.value||"")}return l},i=e=>{let{onChange:t,fields:n,defaultVals:i,overrideEnv:r}=e;const[d,h]=(0,l.useState)([]),u=n||[],m=i||[];(0,l.useEffect)((()=>{const e=n.map((e=>({key:e.name,value:c(e.name,e.type,m)})));h(e)}),[n,i]),(0,l.useEffect)((()=>{t(d)}),[d]);const f=(e,t,n)=>{const l=[...d];t=t.trim(),l[n]={key:e,value:t},h(l)},p=(e,t)=>{const n=d[t];if(n){const t=null===r||void 0===r?void 0:r["".concat(n.key)];if(t)return(0,s.jsx)(a.EmB,{label:e.label,actionButton:(0,s.jsx)(a.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,s.jsx)(a.m_M,{tooltip:"This value is set from the ".concat(t.overrideEnv," environment variable"),placement:"left",children:(0,s.jsx)(a.D0K,{style:{width:20}})})}),sx:{width:"100%"},children:t.value})}switch(e.type){case"on|off":const l=n?n.value:"off";return(0,s.jsx)(a.dOG,{onChange:n=>{const l=n.target.checked?"on":"off";f(e.name,l,t)},id:e.name,name:e.name,label:e.label,value:"switch_on",tooltip:e.tooltip,checked:"on"===l});case"csv":return(0,s.jsx)(o.A,{elements:n?n.value:"",label:e.label,name:e.name,onChange:n=>{let l="";l=Array.isArray(n)?n.join(","):n,f(e.name,l,t)},tooltip:e.tooltip,commonPlaceholder:e.placeholder,withBorder:!0});case"comment":return(0,s.jsx)(a.hFj,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>f(e.name,n.target.value,t),placeholder:e.placeholder});default:return(0,s.jsx)(a.cl_,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>f(e.name,n.target.value,t),placeholder:e.placeholder})}};return(0,s.jsx)(a.Hbc,{withBorders:!1,containerPadding:!1,children:u.map(((e,t)=>(0,s.jsx)(l.Fragment,{children:p(e,t)},e.name)))})}}}]); +//# sourceMappingURL=5128.a36f1ed5.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/5128.96ab1387.chunk.js.map b/web-app/build/static/js/5128.a36f1ed5.chunk.js.map similarity index 64% rename from web-app/build/static/js/5128.96ab1387.chunk.js.map rename to web-app/build/static/js/5128.a36f1ed5.chunk.js.map index 898087f3cd..1e52e24b11 100644 --- a/web-app/build/static/js/5128.96ab1387.chunk.js.map +++ b/web-app/build/static/js/5128.a36f1ed5.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/5128.96ab1387.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/CSVMultiSelector/CSVMultiSelector.tsx","screens/Console/EventDestinations/ConfTargetGeneric.tsx"],"sourcesContent":["// 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, {\n ChangeEvent,\n createRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n Fragment,\n} from \"react\";\nimport get from \"lodash/get\";\nimport { AddIcon, Box, HelpIcon, InputBox, InputLabel, Tooltip } from \"mds\";\n\ninterface ICSVMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n commonPlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst CSVMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n commonPlaceholder = \"\",\n onChange,\n withBorder = false,\n}: ICSVMultiSelector) => {\n const [currentElements, setCurrentElements] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentElements.length === 1 &&\n currentElements[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\",\");\n elementsSplit.push(\"\");\n\n setCurrentElements(elementsSplit);\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [elements, currentElements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n if (currentElements.length > 1) {\n const refScroll = bottomList.current;\n if (refScroll) {\n refScroll.scrollIntoView(false);\n }\n }\n }, [currentElements, bottomList]);\n\n const onChangeCallback = useCallback(\n (newString: string) => {\n onChange(newString);\n },\n [onChange],\n );\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n const elementsString = currentElements\n .filter((element) => element.trim() !== \"\")\n .join(\",\");\n\n onChangeCallback(elementsString);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentElements]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = (elementsUp: string[]) => {\n if (elementsUp[elementsUp.length - 1].trim() !== \"\") {\n const cpList = [...elementsUp];\n cpList.push(\"\");\n setCurrentElements(cpList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeElement = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentElements];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentElements(updatedElement);\n };\n\n const inputs = currentElements.map((element, index) => {\n return (\n : null}\n overlayAction={() => {\n addEmptyLine(currentElements);\n }}\n />\n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default CSVMultiSelector;\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 {\n CommentBox,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n ReadBox,\n Switch,\n Tooltip,\n} from \"mds\";\nimport { IElementValue, IOverrideEnv, KVField } from \"../Configurations/types\";\nimport CSVMultiSelector from \"../Common/FormComponents/CSVMultiSelector/CSVMultiSelector\";\n\ninterface IConfGenericProps {\n onChange: (newValue: IElementValue[]) => void;\n fields: KVField[];\n defaultVals?: IElementValue[];\n overrideEnv?: IOverrideEnv;\n}\n\n// Function to get defined values,\n//we make this because the backed sometimes don't return all the keys when there is an initial configuration\nexport const valueDef = (\n key: string,\n type: string,\n defaults: IElementValue[],\n) => {\n let defValue = type === \"on|off\" ? \"off\" : \"\";\n\n if (defaults.length > 0) {\n const storedConfig = defaults.find((element) => element.key === key);\n\n if (storedConfig) {\n defValue = storedConfig.value || \"\";\n }\n }\n\n return defValue;\n};\n\nconst ConfTargetGeneric = ({\n onChange,\n fields,\n defaultVals,\n overrideEnv,\n}: IConfGenericProps) => {\n const [valueHolder, setValueHolder] = useState([]);\n const fieldsElements = !fields ? [] : fields;\n const defValList = !defaultVals ? [] : defaultVals;\n\n // Effect to create all the values to hold\n useEffect(() => {\n const values: IElementValue[] = fields.map((field) => {\n const stateInsert: IElementValue = {\n key: field.name,\n value: valueDef(field.name, field.type, defValList),\n };\n return stateInsert;\n });\n\n setValueHolder(values);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fields, defaultVals]);\n\n useEffect(() => {\n onChange(valueHolder);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [valueHolder]);\n\n const setValueElement = (key: string, value: string, index: number) => {\n const valuesDup = [...valueHolder];\n value = value.trim();\n valuesDup[index] = { key, value };\n\n setValueHolder(valuesDup);\n };\n\n const fieldDefinition = (field: KVField, item: number) => {\n const holderItem = valueHolder[item];\n\n if (holderItem) {\n // Override Value with env var, we display generic string component\n const override = overrideEnv?.[`${holderItem.key}`];\n\n if (override) {\n return (\n \n \n \n \n \n }\n sx={{ width: \"100%\" }}\n >\n {override.value}\n \n );\n }\n }\n\n switch (field.type) {\n case \"on|off\":\n const value = holderItem ? holderItem.value : \"off\";\n\n return (\n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setValueElement(field.name, value, item);\n }}\n id={field.name}\n name={field.name}\n label={field.label}\n value={\"switch_on\"}\n tooltip={field.tooltip}\n checked={value === \"on\"}\n />\n );\n case \"csv\":\n return (\n {\n let valCh = \"\";\n\n if (Array.isArray(value)) {\n valCh = value.join(\",\");\n } else {\n valCh = value;\n }\n\n setValueElement(field.name, valCh, item);\n }}\n tooltip={field.tooltip}\n commonPlaceholder={field.placeholder}\n withBorder={true}\n />\n );\n case \"comment\":\n return (\n setValueElement(field.name, e.target.value, item)}\n placeholder={field.placeholder}\n />\n );\n default:\n return (\n ) =>\n setValueElement(field.name, e.target.value, item)\n }\n placeholder={field.placeholder}\n />\n );\n }\n };\n\n return (\n \n {fieldsElements.map((field, item) => (\n {fieldDefinition(field, item)}\n ))}\n \n );\n};\n\nexport default ConfTargetGeneric;\n"],"names":["_ref","elements","name","label","tooltip","commonPlaceholder","onChange","withBorder","currentElements","setCurrentElements","useState","bottomList","createRef","useEffect","length","elementsSplit","split","push","refScroll","current","scrollIntoView","onChangeCallback","useCallback","newString","firstUpdate","useRef","elementsString","filter","element","trim","join","onChangeElement","e","persist","updatedElement","index","get","target","parseInt","value","inputs","map","_jsx","InputBox","id","concat","toString","placeholder","overlayIcon","AddIcon","overlayAction","elementsUp","cpList","addEmptyLine","Fragment","children","_jsxs","Box","sx","display","className","InputLabel","alignItems","marginLeft","width","Tooltip","placement","HelpIcon","withBorders","overflowY","height","position","ref","valueDef","key","type","defaults","defValue","storedConfig","find","fields","defaultVals","overrideEnv","valueHolder","setValueHolder","fieldsElements","defValList","values","field","setValueElement","valuesDup","fieldDefinition","item","holderItem","override","ReadBox","actionButton","Grid","justifyContent","paddingRight","ConsoleIcon","style","Switch","checked","CSVMultiSelector","valCh","Array","isArray","CommentBox","FormLayout","containerPadding"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/5128.a36f1ed5.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/CSVMultiSelector/CSVMultiSelector.tsx","screens/Console/EventDestinations/ConfTargetGeneric.tsx"],"sourcesContent":["// 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, {\n ChangeEvent,\n createRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n Fragment,\n} from \"react\";\nimport get from \"lodash/get\";\nimport { AddIcon, Box, HelpIcon, InputBox, InputLabel, Tooltip } from \"mds\";\n\ninterface ICSVMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n commonPlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst CSVMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n commonPlaceholder = \"\",\n onChange,\n withBorder = false,\n}: ICSVMultiSelector) => {\n const [currentElements, setCurrentElements] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentElements.length === 1 &&\n currentElements[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\",\");\n elementsSplit.push(\"\");\n\n setCurrentElements(elementsSplit);\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [elements, currentElements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n if (currentElements.length > 1) {\n const refScroll = bottomList.current;\n if (refScroll) {\n refScroll.scrollIntoView(false);\n }\n }\n }, [currentElements, bottomList]);\n\n const onChangeCallback = useCallback(\n (newString: string) => {\n onChange(newString);\n },\n [onChange],\n );\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n const elementsString = currentElements\n .filter((element) => element.trim() !== \"\")\n .join(\",\");\n\n onChangeCallback(elementsString);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentElements]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = (elementsUp: string[]) => {\n if (elementsUp[elementsUp.length - 1].trim() !== \"\") {\n const cpList = [...elementsUp];\n cpList.push(\"\");\n setCurrentElements(cpList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeElement = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentElements];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentElements(updatedElement);\n };\n\n const inputs = currentElements.map((element, index) => {\n return (\n : null}\n overlayAction={() => {\n addEmptyLine(currentElements);\n }}\n />\n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default CSVMultiSelector;\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 {\n CommentBox,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n ReadBox,\n Switch,\n Tooltip,\n} from \"mds\";\nimport { IElementValue, IOverrideEnv, KVField } from \"../Configurations/types\";\nimport CSVMultiSelector from \"../Common/FormComponents/CSVMultiSelector/CSVMultiSelector\";\n\ninterface IConfGenericProps {\n onChange: (newValue: IElementValue[]) => void;\n fields: KVField[];\n defaultVals?: IElementValue[];\n overrideEnv?: IOverrideEnv;\n}\n\n// Function to get defined values,\n//we make this because the backed sometimes don't return all the keys when there is an initial configuration\nconst valueDef = (key: string, type: string, defaults: IElementValue[]) => {\n let defValue = type === \"on|off\" ? \"off\" : \"\";\n\n if (defaults.length > 0) {\n const storedConfig = defaults.find((element) => element.key === key);\n\n if (storedConfig) {\n defValue = storedConfig.value || \"\";\n }\n }\n\n return defValue;\n};\n\nconst ConfTargetGeneric = ({\n onChange,\n fields,\n defaultVals,\n overrideEnv,\n}: IConfGenericProps) => {\n const [valueHolder, setValueHolder] = useState([]);\n const fieldsElements = !fields ? [] : fields;\n const defValList = !defaultVals ? [] : defaultVals;\n\n // Effect to create all the values to hold\n useEffect(() => {\n const values: IElementValue[] = fields.map((field) => {\n const stateInsert: IElementValue = {\n key: field.name,\n value: valueDef(field.name, field.type, defValList),\n };\n return stateInsert;\n });\n\n setValueHolder(values);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fields, defaultVals]);\n\n useEffect(() => {\n onChange(valueHolder);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [valueHolder]);\n\n const setValueElement = (key: string, value: string, index: number) => {\n const valuesDup = [...valueHolder];\n value = value.trim();\n valuesDup[index] = { key, value };\n\n setValueHolder(valuesDup);\n };\n\n const fieldDefinition = (field: KVField, item: number) => {\n const holderItem = valueHolder[item];\n\n if (holderItem) {\n // Override Value with env var, we display generic string component\n const override = overrideEnv?.[`${holderItem.key}`];\n\n if (override) {\n return (\n \n \n \n \n \n }\n sx={{ width: \"100%\" }}\n >\n {override.value}\n \n );\n }\n }\n\n switch (field.type) {\n case \"on|off\":\n const value = holderItem ? holderItem.value : \"off\";\n\n return (\n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setValueElement(field.name, value, item);\n }}\n id={field.name}\n name={field.name}\n label={field.label}\n value={\"switch_on\"}\n tooltip={field.tooltip}\n checked={value === \"on\"}\n />\n );\n case \"csv\":\n return (\n {\n let valCh = \"\";\n\n if (Array.isArray(value)) {\n valCh = value.join(\",\");\n } else {\n valCh = value;\n }\n\n setValueElement(field.name, valCh, item);\n }}\n tooltip={field.tooltip}\n commonPlaceholder={field.placeholder}\n withBorder={true}\n />\n );\n case \"comment\":\n return (\n setValueElement(field.name, e.target.value, item)}\n placeholder={field.placeholder}\n />\n );\n default:\n return (\n ) =>\n setValueElement(field.name, e.target.value, item)\n }\n placeholder={field.placeholder}\n />\n );\n }\n };\n\n return (\n \n {fieldsElements.map((field, item) => (\n {fieldDefinition(field, item)}\n ))}\n \n );\n};\n\nexport default ConfTargetGeneric;\n"],"names":["_ref","elements","name","label","tooltip","commonPlaceholder","onChange","withBorder","currentElements","setCurrentElements","useState","bottomList","createRef","useEffect","length","elementsSplit","split","push","refScroll","current","scrollIntoView","onChangeCallback","useCallback","newString","firstUpdate","useRef","elementsString","filter","element","trim","join","onChangeElement","e","persist","updatedElement","index","get","target","parseInt","value","inputs","map","_jsx","InputBox","id","concat","toString","placeholder","overlayIcon","AddIcon","overlayAction","elementsUp","cpList","addEmptyLine","Fragment","children","_jsxs","Box","sx","display","className","InputLabel","alignItems","marginLeft","width","Tooltip","placement","HelpIcon","withBorders","overflowY","height","position","ref","valueDef","key","type","defaults","defValue","storedConfig","find","fields","defaultVals","overrideEnv","valueHolder","setValueHolder","fieldsElements","defValList","values","field","setValueElement","valuesDup","fieldDefinition","item","holderItem","override","ReadBox","actionButton","Grid","justifyContent","paddingRight","ConsoleIcon","style","Switch","checked","CSVMultiSelector","valCh","Array","isArray","CommentBox","FormLayout","containerPadding"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/7052.50a0217e.chunk.js b/web-app/build/static/js/7052.37bcb35a.chunk.js similarity index 85% rename from web-app/build/static/js/7052.50a0217e.chunk.js rename to web-app/build/static/js/7052.37bcb35a.chunk.js index c3ca2c8eb2..c6d5e7029b 100644 --- a/web-app/build/static/js/7052.50a0217e.chunk.js +++ b/web-app/build/static/js/7052.37bcb35a.chunk.js @@ -1,2 +1,2 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[7052,5128],{12848:(e,t,n)=>{n.d(t,{A:()=>s});var i=n(65043),o=n(33097),a=n.n(o),l=n(89923),r=n(70579);const s=e=>{let{elements:t,name:n,label:o,tooltip:s="",commonPlaceholder:c="",onChange:d,withBorder:u=!1}=e;const[p,m]=(0,i.useState)([""]),h=(0,i.createRef)();(0,i.useEffect)((()=>{if(1===p.length&&""===p[0]&&t&&""!==t){const e=t.split(",");e.push(""),m(e)}}),[t,p]),(0,i.useEffect)((()=>{if(p.length>1){const e=h.current;e&&e.scrollIntoView(!1)}}),[p,h]);const f=(0,i.useCallback)((e=>{d(e)}),[d]),x=(0,i.useRef)(!0);(0,i.useEffect)((()=>{if(x.current)return void(x.current=!1);const e=p.filter((e=>""!==e.trim())).join(",");f(e)}),[p]);const g=e=>{e.persist();let t=[...p];const n=a()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,m(t)},v=p.map(((e,t)=>(0,r.jsx)(l.cl_,{id:"".concat(n,"-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:p[t],onChange:g,index:t,placeholder:c,overlayIcon:t===p.length-1?(0,r.jsx)(l.REV,{}):null,overlayAction:()=>{(e=>{if(""!==e[e.length-1].trim()){const t=[...e];t.push(""),m(t)}})(p)}},"csv-multi-".concat(n,"-").concat(t.toString()))));return(0,r.jsx)(i.Fragment,{children:(0,r.jsxs)(l.azJ,{sx:{display:"flex"},className:"inputItem",children:[(0,r.jsxs)(l.l1Y,{sx:{alignItems:"flex-start"},children:[(0,r.jsx)("span",{children:o}),""!==s&&(0,r.jsx)(l.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,r.jsx)(l.m_M,{tooltip:s,placement:"top",children:(0,r.jsx)(l.azJ,{className:s,children:(0,r.jsx)(l.NTw,{})})})})]}),(0,r.jsxs)(l.azJ,{withBorders:u,sx:{width:"100%",overflowY:"auto",height:150,position:"relative"},children:[v,(0,r.jsx)("div",{ref:h})]})]})})}},94141:(e,t,n)=>{n.d(t,{A:()=>d});var i=n(65043),o=n(22166),a=n(89923),l=n(21383),r=n(64159),s=n(49555),c=n(70579);const d=e=>{let{onClose:t,modalOpen:n,title:d,children:u,wideLimit:p=!0,titleIcon:m=null,iconColor:h="default",sx:f}=e;const x=(0,l.jL)(),[g,v]=(0,i.useState)(!1),b=(0,o.d4)((e=>e.system.modalSnackBar));(0,i.useEffect)((()=>{x((0,r.h0)(""))}),[x]),(0,i.useEffect)((()=>{if(b){if(""===b.message)return void v(!1);"error"!==b.type&&v(!0)}}),[b]);let y="";return b&&(y=b.detailedErrorMsg,(""===y||y&&y.length<5)&&(y=b.message)),(0,c.jsxs)(a.ngX,{onClose:t,open:n,title:d,titleIcon:m,widthLimit:p,sx:f,iconColor:h,children:[(0,c.jsx)(s.A,{isModal:!0}),(0,c.jsx)(a.qb_,{onClose:()=>{v(!1),x((0,r.h0)(""))},open:g,message:y,mode:"inline",variant:"error"===b.type?"error":"default",autoHideDuration:"error"===b.type?10:5,condensed:!0}),u]})}},67052:(e,t,n)=>{n.r(t),n.d(t,{default:()=>F});var i=n(65043),o=n(89923),a=n(45479),l=n(73216),r=n(33097),s=n.n(r),c=n(22166),d=n(56629),u=n(53518),p=n(64159),m=n(21383),h=n(94141),f=n(77403),x=n(70579);const g=e=>{let{open:t,type:n,onCloseEndpoint:a}=e;const[l,r]=(0,i.useState)(""),[s,c]=(0,i.useState)(""),[g,v]=(0,i.useState)(""),[b,y]=(0,i.useState)(!1),[j,k]=(0,i.useState)(["name","endpoint"]),[C,_]=(0,i.useState)(["name","endpoint","auth-token"]),E=(0,m.jL)(),S=e=>{_(C.filter((t=>t!==e)))},w=(e,t)=>{j.includes(e)&&t?k(j.filter((t=>t!==e))):t||j.includes(e)||k([...j,e])};let A="Add new Webhook",T=(0,x.jsx)(o.XC7,{});switch(n){case"logger_webhook":A="New Logger Webhook",T=(0,x.jsx)(o.D0K,{});break;case"audit_webhook":A="New Audit Webhook",T=(0,x.jsx)(o.rBG,{})}return(0,x.jsx)(i.Fragment,{children:(0,x.jsxs)(h.A,{modalOpen:t,title:A,onClose:a,titleIcon:T,children:[(0,x.jsxs)(o.Hbc,{containerPadding:!1,withBorders:!1,children:[(0,x.jsx)(o.cl_,{id:"name",name:"name",onChange:e=>{S("name"),r(e.target.value),w("name",e.target.validity.valid)},error:j.includes("name")&&!C.includes("name")?"Invalid Name":"",label:"Name",value:l,pattern:"^(?=.*[a-zA-Z0-9]).{1,}$",required:!0}),(0,x.jsx)(o.cl_,{id:"endpoint",name:"endpoint",onChange:e=>{S("endpoint"),c(e.target.value),w("endpoint",e.target.validity.valid)},error:j.includes("endpoint")&&!C.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:s,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0}),(0,x.jsx)(o.cl_,{id:"auth-token",name:"auth-token",onChange:e=>{S("auth-token"),v(e.target.value)},label:"Auth Token",value:g})]}),b&&(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{marginBottom:10},children:(0,x.jsx)(o.z21,{})}),(0,x.jsxs)(o.xA9,{item:!0,xs:12,sx:f.Uz.modalButtonBar,children:[(0,x.jsx)(o.$nd,{id:"reset",type:"button",variant:"regular",disabled:b,onClick:a,label:"Cancel",sx:{marginRight:10}}),(0,x.jsx)(o.$nd,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:b||0!==j.length,label:"Save",onClick:()=>{if(b)return;if(0!==j.length)return;if(""===l.trim())return void k([...j,"name"]);if(""===s.trim())return void k([...j,"endpoint"]);y(!0);const e={key_values:[{key:"endpoint",value:s},{key:"auth_token",value:g}],arn_resource_id:l};d.F.configs.setConfig(n,e).then((e=>{y(!1),E((0,p.YR)(e.data.restart||!1)),e.data.restart||E((0,p.Hk)("Configuration saved successfully")),a(),E((0,p.TE)(!0))})).catch((e=>{y(!1),E((0,p.C9)((0,u.S)(e.error)))}))}})]})]})})};var v=n(58661);const b=e=>{let{modalOpen:t,onClose:n,selectedARN:a}=e;const[l,r]=(0,i.useState)(!1),s=(0,m.jL)();(0,i.useEffect)((()=>{l&&d.F.configs.resetConfig(a).then((()=>{r(!1),s((0,p.YR)(!0)),s((0,p.TE)(!0)),n()})).catch((e=>{r(!1),s((0,p.C9)((0,u.S)(e.error)))}))}),[l,s,n,a]);const c=!a.includes(":");let h="Are you sure you want to delete the Configured Endpoint";return c&&(h="Are you sure you want to reset the Default"),(0,x.jsx)(v.A,{title:c?"Reset Default Webhook":"Delete Webhook",confirmText:c?"Reset":"Delete",isOpen:t,isLoading:l,onConfirm:()=>{r(!0)},titleIcon:(0,x.jsx)(o.xWY,{}),onClose:n,confirmationContent:(0,x.jsxs)(i.Fragment,{children:["".concat(h," "),(0,x.jsx)("strong",{children:a}),"?"]})})},y=e=>{var t,n,l,r,s,c;let{open:g,type:v,endpointInfo:b,onCloseEndpoint:y}=e;const[j,k]=(0,i.useState)(""),[C,_]=(0,i.useState)(""),[E,S]=(0,i.useState)(""),[w,A]=(0,i.useState)("on"),[T,q]=(0,i.useState)(!1),[L,R]=(0,i.useState)([]),I=(0,m.jL)();(0,i.useEffect)((()=>{if(b){const e=b.key_values.find((e=>"endpoint"===e.key)),t=b.key_values.find((e=>"auth_token"===e.key)),n=b.key_values.find((e=>"enable"===e.key));let i=[];if(e){const t=e.value;""===t?i.push("endpoint"):_(t)}if(t){const e=t.value;""===e?i.push("auth-token"):S(e)}n&&"off"===n.value&&A(n.value),k(b.name||""),R(i)}}),[b]);const M=!j.includes(":"),B=b.key_values.filter((e=>!!e.env_override)),D=(0,a.uu)(B);let F="Edit Webhook",N=(0,x.jsx)(o.XC7,{});switch(v){case"logger_webhook":F="Edit ".concat(M?" the Default ":"","Logger Webhook"),N=(0,x.jsx)(o.D0K,{});break;case"audit_webhook":F="Edit ".concat(M?" the Default ":"","Audit Webhook"),N=(0,x.jsx)(o.rBG,{})}return B.length>0&&(F="View env variable Webhook"),(0,x.jsx)(i.Fragment,{children:(0,x.jsx)(h.A,{modalOpen:g,title:"".concat(F).concat(M?"":" - ".concat(j)),onClose:y,titleIcon:N,children:(0,x.jsx)(o.Hbc,{withBorders:!1,containerPadding:!1,children:B.length>0?(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)(o.EmB,{label:"Enabled",sx:{width:"100%"},actionButton:(0,x.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,x.jsx)(o.m_M,{tooltip:D.enable?"This value is set from the ".concat((null===(t=D.enable)||void 0===t?void 0:t.overrideEnv)||"N/A"," environment variable"):"",placement:"left",children:(0,x.jsx)(o.D0K,{style:{width:20}})})}),children:(null===(n=D.enable)||void 0===n?void 0:n.value)||"-"}),(0,x.jsx)(o.EmB,{label:"Endpoint",sx:{width:"100%"},actionButton:(0,x.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,x.jsx)(o.m_M,{tooltip:D.enable?"This value is set from the ".concat((null===(l=D.endpoint)||void 0===l?void 0:l.overrideEnv)||"N/A"," environment variable"):"",placement:"left",children:(0,x.jsx)(o.D0K,{style:{width:20}})})}),children:(null===(r=D.endpoint)||void 0===r?void 0:r.value)||"-"}),(0,x.jsx)(o.EmB,{label:"Auth Token",sx:{width:"100%"},actionButton:(0,x.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,x.jsx)(o.m_M,{tooltip:D.enable?"This value is set from the ".concat((null===(s=D.auth_token)||void 0===s?void 0:s.overrideEnv)||"N/A"," environment variable"):"",placement:"left",children:(0,x.jsx)(o.D0K,{style:{width:20}})})}),children:(null===(c=D.auth_token)||void 0===c?void 0:c.value)||"-"})]}):(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)(o.dOG,{onChange:e=>{const t=e.target.checked?"on":"off";A(t)},id:"endpoint_enabled",name:"endpoint_enabled",label:"Enabled",value:"switch_on",checked:"on"===w}),(0,x.jsx)(o.cl_,{id:"endpoint",name:"endpoint",onChange:e=>{_(e.target.value),((e,t)=>{L.includes(e)&&t?R(L.filter((t=>t!==e))):t||L.includes(e)||R([...L,e])})("endpoint",e.target.validity.valid)},error:L.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:C,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0}),(0,x.jsx)(o.cl_,{id:"auth-token",name:"auth-token",onChange:e=>{S(e.target.value)},label:"Auth Token",value:E}),T&&(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{marginBottom:10},children:(0,x.jsx)(o.z21,{})}),(0,x.jsxs)(o.xA9,{item:!0,sx:f.Uz.modalButtonBar,children:[(0,x.jsx)(o.$nd,{id:"reset",type:"button",variant:"regular",disabled:T,onClick:y,label:"Cancel"}),(0,x.jsx)(o.$nd,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:T||0!==L.length,label:"Update",onClick:()=>{if(T)return;if(0!==L.length)return;if(!C||""===C.trim())return void R([...L,"endpoint"]);q(!0);const e={key_values:[{key:"endpoint",value:C},{key:"auth_token",value:E},{key:"enable",value:w}]};d.F.configs.setConfig(j,e).then((e=>{q(!1),I((0,p.YR)(e.data.restart||!1)),e.data.restart||I((0,p.Hk)("Configuration saved successfully")),y(),I((0,p.TE)(!0))})).catch((e=>{q(!1),I((0,p.C9)((0,u.S)(e.error)))}))}})]})]})})})})},j=e=>{let{setResetConfigurationOpen:t,WebhookSettingslist:n,type:a}=e;const[l,r]=(0,i.useState)(!1),[s,c]=(0,i.useState)(!1),[d,u]=(0,i.useState)(!1),[p,m]=(0,i.useState)(""),[h,f]=(0,i.useState)(null),v=[{type:"view",onClick:e=>{e.name&&(u(!0),f(e))}},{type:"delete",onClick:e=>{e.name&&(c(!0),m(e.name))},disableButtonFunction:e=>{const t=n.find((t=>t.name===e));if(t){var i;const e=null===(i=t.key_values)||void 0===i?void 0:i.filter((e=>!!e.env_override));return!!(e&&e.length>0)}return!1}}];return(0,x.jsxs)(o.xA9,{container:!0,children:[l&&(0,x.jsx)(g,{open:l,type:a,onCloseEndpoint:()=>{r(!1)}}),s&&(0,x.jsx)(b,{modalOpen:s,onClose:()=>{c(!1),m("")},selectedARN:p,type:a}),d&&h&&(0,x.jsx)(y,{open:d,type:a,endpointInfo:h,onCloseEndpoint:()=>{u(!1),f(null)}}),(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:(0,x.jsx)(o.$nd,{id:"newWebhook",variant:"callAction",onClick:()=>{r(!0)},children:"New Endpoint"})}),(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{padding:"0 10px 10px"},children:(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)("h3",{children:"Currently Configured Endpoints"}),(0,x.jsx)(o.bQt,{columns:[{label:"Status",elementKey:"key_values",renderFunction:e=>{const t=e.find((e=>"enable"===e.key));if(null!==t&&void 0!==t&&t.env_override){const e=null!==t&&void 0!==t&&t.env_override.value&&"on"!==(null===t||void 0===t?void 0:t.env_override.value)&&null!==t&&void 0!==t&&t.env_override.value?"Disabled":"Enabled";return(0,x.jsxs)(o.xA9,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,x.jsx)(o.D0K,{style:{fill:"#052F51",width:"14px"}}),e?"Enabled":"Disabled"]})}return t&&"on"!==t.value&&t.value?(0,x.jsxs)(o.xA9,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,x.jsx)(o.lgW,{style:{fill:"#C83B51",width:14,height:14}}),"Disabled"]}):(0,x.jsxs)(o.xA9,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,x.jsx)(o.JrA,{style:{fill:"#4CCB92",width:14,height:14}}),"Enabled"]})},width:50},{label:"Name",elementKey:"name"},{label:"Endpoint",elementKey:"key_values",renderFunction:e=>{const t=e.find((e=>"endpoint"===e.key));return t?t.env_override?t.env_override.value:t.value:""}}],itemActions:v,idField:"name",isLoading:!1,records:n,entityName:"endpoints",customPaperHeight:"calc(100vh - 750px)"})]})})]})};var k=n(5128),C=n(48967);const _=e=>{let{selectedConfiguration:t,className:n=""}=e;const r=(0,m.jL)(),h=(0,l.Zp)(),{pathname:f=""}=(0,l.zy)();let g=f.substring(f.lastIndexOf("/")+1);g="settings"===g?"region":g;const[v,b]=(0,i.useState)([]),[y,_]=(0,i.useState)(!1),[E,S]=(0,i.useState)([]),[w,A]=(0,i.useState)([]),[T,q]=(0,i.useState)(!1),[L,R]=(0,i.useState)({}),I=(0,c.d4)((e=>e.system.loadingConfigurations));(0,i.useEffect)((()=>{r((0,p.TE)(!0))}),[g,r]),(0,i.useEffect)((()=>{if(I){const e=s()(t,"configuration_id",!1);if(e)return void d.F.configs.configInfo(e).then((t=>{A(t.data);let n=s()(t.data[0],"key_values",[]);const i=a.PE[e].map((e=>{const t=n.find((t=>t.key===e.name)),i=(null===t||void 0===t?void 0:t.value)||"";return{key:e.name,value:e.customValueProcess?e.customValueProcess(i):i,env_override:null===t||void 0===t?void 0:t.env_override}}));S(i),R((0,a.uu)(i)),r((0,p.TE)(!1))})).catch((e=>{r((0,p.TE)(!1)),r((0,p.C9)((0,u.S)(e.error)))}));r((0,p.TE)(!1))}}),[I,t,r]),(0,i.useEffect)((()=>{if(y){const e={key_values:(0,a.Xm)(v)};d.F.configs.setConfig(t.configuration_id,e).then((e=>{_(!1),r((0,p.YR)(e.data.restart||!1)),r((0,p.TE)(!0)),e.data.restart||r((0,p.Hk)("Configuration saved successfully"))})).catch((e=>{_(!1),r((0,p.C9)((0,u.S)(e.error)))}))}}),[y,r,t,v,h]);const M=(0,i.useCallback)((e=>{b(e)}),[b]),B=()=>{q(!0)};return(0,x.jsx)(i.Fragment,{children:(0,x.jsxs)("div",{onMouseMove:()=>{r((0,p.ph)("settings_".concat(t.configuration_label)))},children:[T&&(0,x.jsx)(C.A,{configurationName:t.configuration_id,closeResetModalAndRefresh:e=>{q(!1),r((0,p.YR)(e)),e&&r((0,p.TE)(!0))},resetOpen:T}),I?(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{textAlign:"center",paddingTop:"15px"},children:(0,x.jsx)(o.aHM,{})}):(0,x.jsx)(o.azJ,{sx:{padding:"15px",height:"100%"},children:"logger_webhook"===t.configuration_id||"audit_webhook"===t.configuration_id?(0,x.jsx)(j,{WebhookSettingslist:w,setResetConfigurationOpen:B,type:t.configuration_id}):(0,x.jsx)(i.Fragment,{children:(0,x.jsxs)("form",{noValidate:!0,onSubmit:e=>{e.preventDefault(),_(!0)},className:n,style:{height:"100%",display:"flex",flexFlow:"column"},children:[(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{display:"grid",gridTemplateColumns:"1fr",gap:"10px"},children:(0,x.jsx)(k.default,{fields:a.PE[t.configuration_id],onChange:M,defaultVals:E,overrideEnv:L})}),(0,x.jsxs)(o.xA9,{item:!0,xs:12,sx:{paddingTop:"15px ",textAlign:"right",maxHeight:"60px",display:"flex",alignItems:"center",justifyContent:"flex-end"},children:[(0,x.jsx)(o.$nd,{type:"button",id:"restore-defaults",variant:"secondary",onClick:B,label:"Restore Defaults"}),"\xa0 \xa0",(0,x.jsx)(o.$nd,{id:"save",type:"submit",variant:"callAction",disabled:y,label:"Save"})]})]})})})]})})},E=()=>{const{pathname:e=""}=(0,l.zy)(),t=e.substring(e.lastIndexOf("/")+1),n=a.Ck.find((e=>e.configuration_id===t)),i="".concat(t);return(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{height:"100%","& .identity_ldap, .api":{"& label":{minWidth:220,marginRight:0}}},children:n&&(0,x.jsx)(_,{className:"".concat(i),selectedConfiguration:n})})};var S=n(99161),w=n(48793),A=n(25448),T=n(56483),q=n(24241),L=n(6681);const R=()=>{const e=(0,c.wA)(),[t,n]=(0,A.A)((e=>{(0,T.OT)(new Blob([window.atob(e.value)]),"minio-server-config-".concat(q.c9.now().toFormat("LL-dd-yyyy-HH-mm-ss"),".conf"))}),(t=>{e((0,p.C9)(t))}));return(0,x.jsx)(L.A,{tooltip:"Warning! The resulting file will contain server configuration information in plain text",children:(0,x.jsx)(o.$nd,{id:"export-config",onClick:()=>{n("GET","api/v1/configs/export")},icon:(0,x.jsx)(o.JMY,{}),label:"Export",variant:"regular",disabled:t})})},I=()=>{const e=(0,l.Zp)(),t=(0,c.wA)(),n=(0,c.d4)((e=>e.system.serverNeedsRestart)),[a,r]=(0,i.useState)(void 0),s=(0,i.useRef)(null),[d,u]=(0,A.A)((e=>{t((0,p.YR)(!0)),r(!0)}),(e=>{t((0,p.C9)(e))}));(0,i.useEffect)((()=>{!n&&a&&e(0)}),[n,a,e]);return(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)("input",{type:"file",onChange:e=>{if(null===e||void 0===e||null===e.target.files||void 0===e.target.files)return;e.preventDefault();const[t]=e.target.files,n=new FormData,i=new Blob([t],{type:t.type});n.append("file",i,t.name),u("POST","api/v1/configs/import",n),e.target.value=""},style:{display:"none"},ref:s}),(0,x.jsx)(L.A,{tooltip:"The file must be valid and should have valid config values",children:(0,x.jsx)(o.$nd,{id:"import-config",onClick:()=>{s&&s.current&&s.current.click()},icon:(0,x.jsx)(o.s3U,{}),label:"Import",variant:"regular",disabled:d})})]})};var M=n(55968);const B=["region"],D=["cache"],F=()=>{const{pathname:e=""}=(0,l.zy)(),t=(0,m.jL)(),n=(0,l.Zp)(),[r,s]=(0,i.useState)([]),c=(0,i.useCallback)((async()=>{d.F.configs.listConfig().then((e=>{var t;if(e&&null!==e&&void 0!==e&&e.data&&null!==e&&void 0!==e&&null!==(t=e.data)&&void 0!==t&&t.configurations){var n;const t=((null===e||void 0===e||null===(n=e.data)||void 0===n?void 0:n.configurations)||[]).reduce(((e,t)=>{let{key:n=""}=t;return D.includes(n)||e.push(n),e}),[]);s(t)}})).catch((e=>{t((0,p.C9)((0,u.S)(e)))}))}),[t]);(0,i.useEffect)((()=>{c(),t((0,p.ph)("settings_Region"))}),[]);const h=a.Ck.filter((e=>{let{configuration_id:t}=e;return B.includes(t)||r.includes(t)||!r.length}));return(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)(w.A,{label:"Configuration",actions:(0,x.jsx)(M.A,{})}),(0,x.jsxs)(o.Mxu,{children:[(0,x.jsxs)(o.xA9,{item:!0,xs:12,id:"settings-container",children:[(0,x.jsx)(o.lcx,{icon:(0,x.jsx)(o.Zes,{}),title:"MinIO Configuration:",actions:(0,x.jsxs)(o.azJ,{sx:{display:"flex",gap:10},children:[(0,x.jsx)(I,{}),(0,x.jsx)(R,{})]}),sx:{marginBottom:15}}),(0,x.jsx)(o.tUM,{currentTabOrPath:e,onTabClick:e=>{n(e)},useRouteTabs:!0,options:h.map((e=>{const{configuration_id:t,configuration_label:n,icon:i}=e;return{tabConfig:{id:"settings-tab-".concat(n),label:n,value:t,icon:i,to:(o=t,"".concat(S.zZ.SETTINGS,"/").concat(o))}};var o})),routes:(0,x.jsxs)(l.BV,{children:[h.map((e=>(0,x.jsx)(l.qh,{path:"".concat(e.configuration_id),element:(0,x.jsx)(E,{})},"configItem-".concat(e.configuration_label)))),(0,x.jsx)(l.qh,{path:"/",element:(0,x.jsx)(l.C5,{to:"".concat(S.zZ.SETTINGS,"/region")})})]})})]}),(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{paddingTop:"15px"},children:(0,x.jsx)(o.lVp,{title:"Learn more about Configurations",iconComponent:(0,x.jsx)(o.Zes,{}),help:(0,x.jsxs)(i.Fragment,{children:["MinIO supports a variety of configurations ranging from encryption, compression, region, notifications, etc.",(0,x.jsx)("br",{}),(0,x.jsx)("br",{}),"You can learn more at our"," ",(0,x.jsx)("a",{href:"https://min.io/docs/minio/linux/reference/minio-mc-admin/mc-admin-config.html?ref=con#id4",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]})]})}},45479:(e,t,n)=>{n.d(t,{Ck:()=>a,PE:()=>l,Qm:()=>s,Xm:()=>r,uu:()=>c});n(65043);var i=n(89923),o=n(70579);const a=[{icon:(0,o.jsx)(i.DzZ,{}),configuration_id:"region",configuration_label:"Region"},{icon:(0,o.jsx)(i.MZJ,{}),configuration_id:"compression",configuration_label:"Compression"},{icon:(0,o.jsx)(i.loI,{}),configuration_id:"api",configuration_label:"API"},{icon:(0,o.jsx)(i.qm4,{}),configuration_id:"heal",configuration_label:"Heal"},{icon:(0,o.jsx)(i.Pq3,{}),configuration_id:"scanner",configuration_label:"Scanner"},{icon:(0,o.jsx)(i.RYV,{}),configuration_id:"etcd",configuration_label:"Etcd"},{icon:(0,o.jsx)(i.D0K,{}),configuration_id:"logger_webhook",configuration_label:"Logger Webhook"},{icon:(0,o.jsx)(i.rBG,{}),configuration_id:"audit_webhook",configuration_label:"Audit Webhook"},{icon:(0,o.jsx)(i.Dk$,{}),configuration_id:"audit_kafka",configuration_label:"Audit Kafka"}],l={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 custom notes if any"}],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}],api:[{name:"requests_max",required:!1,label:"Requests Max",tooltip:"Maximum number of concurrent requests, e.g. '1600'",type:"number",placeholder:"Enter Requests Max"},{name:"cors_allow_origin",required:!1,label:"Cors Allow Origin",tooltip:"List of origins allowed for CORS requests",type:"csv",placeholder:"Enter allowed origin e.g. https://example.com"},{name:"replication_workers",required:!1,label:"Replication Workers",tooltip:"Number of replication workers, defaults to 100",type:"number",placeholder:"Enter Replication Workers"},{name:"replication_failed_workers",required:!1,label:"Replication Failed Workers",tooltip:"Number of replication workers for recently failed replicas, defaults to 4",type:"number",placeholder:"Enter Replication Failed Workers"}],heal:[{name:"bitrotscan",required:!1,label:"Bitrot Scan",tooltip:"Perform bitrot scan on disks when checking objects during scanner",type:"on|off"},{name:"max_sleep",required:!1,label:"Max Sleep",tooltip:"Maximum sleep duration between objects to slow down heal operation, e.g. 2s",type:"duration",placeholder:"Enter Max Sleep Duration"},{name:"max_io",required:!1,label:"Max IO",tooltip:"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3",type:"number",placeholder:"Enter Max IO"}],scanner:[{name:"delay",required:!1,label:"Delay Multiplier",tooltip:"Scanner delay multiplier, defaults to '10.0'",type:"number",placeholder:"Enter Delay"},{name:"max_wait",required:!1,label:"Max Wait",tooltip:"Maximum wait time between operations, defaults to '15s'",type:"duration",placeholder:"Enter Max Wait"},{name:"cycle",required:!1,label:"Cycle",tooltip:"Time duration between scanner cycles, defaults to '1m'",type:"duration",placeholder:"Enter Cycle"}],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 custom notes if any"}],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"}],audit_kafka:[{name:"enable",required:!1,label:"Enable",tooltip:"Enable audit_kafka target",type:"on|off",customValueProcess:e=>""===e||"on"===e?"on":"off"},{name:"brokers",required:!0,label:"Brokers",type:"csv",placeholder:"Enter Kafka Broker"},{name:"topic",required:!1,label:"Topic",type:"string",placeholder:"Enter Kafka Topic",tooltip:"Kafka topic used for bucket notifications"},{name:"sasl",required:!1,label:"Use SASL",tooltip:"Enable SASL (Simple Authentication and Security Layer) authentication",type:"on|off"},{name:"sasl_username",required:!1,label:"SASL Username",type:"string",placeholder:"Enter SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_password",required:!1,label:"SASL Password",type:"password",placeholder:"Enter SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_mechanism",required:!1,label:"SASL Mechanism",type:"string",placeholder:"Enter SASL Mechanism",tooltip:"SASL authentication mechanism"},{name:"tls",required:!1,label:"Use TLS",tooltip:"Enable TLS (Transport Layer Security)",type:"on|off"},{name:"tls_skip_verify",required:!1,label:"Skip TLS Verification",tooltip:"Trust server TLS without verification",type:"on|off"},{name:"client_tls_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_tls_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"tls_client_auth",required:!1,label:"TLS Client Auth",tooltip:"ClientAuth determines the Kafka server's policy for TLS client authorization",type:"string"},{name:"version",required:!1,label:"Version",tooltip:"Specify the version of the Kafka cluster",type:"string"}]},r=e=>e.filter((e=>""!==e.value)),s=(e,t,n)=>{const i=e.target,o=i.value;let a=[...n];return i.checked?a.push(o):a=a.filter((e=>e!==o)),t(a),a},c=e=>{let t={};return e.forEach((e=>{if(e.env_override){const n={value:e.env_override.value||"",overrideEnv:e.env_override.name||""};t={...t,[e.key]:n}}})),t}},5128:(e,t,n)=>{n.r(t),n.d(t,{default:()=>s,valueDef:()=>r});var i=n(65043),o=n(89923),a=n(12848),l=n(70579);const r=(e,t,n)=>{let i="on|off"===t?"off":"";if(n.length>0){const t=n.find((t=>t.key===e));t&&(i=t.value||"")}return i},s=e=>{let{onChange:t,fields:n,defaultVals:s,overrideEnv:c}=e;const[d,u]=(0,i.useState)([]),p=n||[],m=s||[];(0,i.useEffect)((()=>{const e=n.map((e=>({key:e.name,value:r(e.name,e.type,m)})));u(e)}),[n,s]),(0,i.useEffect)((()=>{t(d)}),[d]);const h=(e,t,n)=>{const i=[...d];t=t.trim(),i[n]={key:e,value:t},u(i)},f=(e,t)=>{const n=d[t];if(n){const t=null===c||void 0===c?void 0:c["".concat(n.key)];if(t)return(0,l.jsx)(o.EmB,{label:e.label,actionButton:(0,l.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,l.jsx)(o.m_M,{tooltip:"This value is set from the ".concat(t.overrideEnv," environment variable"),placement:"left",children:(0,l.jsx)(o.D0K,{style:{width:20}})})}),sx:{width:"100%"},children:t.value})}switch(e.type){case"on|off":const i=n?n.value:"off";return(0,l.jsx)(o.dOG,{onChange:n=>{const i=n.target.checked?"on":"off";h(e.name,i,t)},id:e.name,name:e.name,label:e.label,value:"switch_on",tooltip:e.tooltip,checked:"on"===i});case"csv":return(0,l.jsx)(a.A,{elements:n?n.value:"",label:e.label,name:e.name,onChange:n=>{let i="";i=Array.isArray(n)?n.join(","):n,h(e.name,i,t)},tooltip:e.tooltip,commonPlaceholder:e.placeholder,withBorder:!0});case"comment":return(0,l.jsx)(o.hFj,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>h(e.name,n.target.value,t),placeholder:e.placeholder});default:return(0,l.jsx)(o.cl_,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>h(e.name,n.target.value,t),placeholder:e.placeholder})}};return(0,l.jsx)(o.Hbc,{withBorders:!1,containerPadding:!1,children:p.map(((e,t)=>(0,l.jsx)(i.Fragment,{children:f(e,t)},e.name)))})}},48967:(e,t,n)=>{n.d(t,{A:()=>u});var i=n(65043),o=n(56629),a=n(53518),l=n(58661),r=n(89923),s=n(64159),c=n(21383),d=n(70579);const u=e=>{let{configurationName:t,closeResetModalAndRefresh:n,resetOpen:u}=e;const p=(0,c.jL)(),[m,h]=(0,i.useState)(!1);(0,i.useEffect)((()=>{m&&o.F.configs.resetConfig(t).then((()=>{h(!1),n(!0)})).catch((e=>{h(!1),p((0,s.C9)((0,a.S)(e.error)))}))}),[n,t,m,p]);return(0,d.jsx)(l.A,{title:"Restore Defaults",confirmText:"Yes, Reset Configuration",isOpen:u,titleIcon:(0,d.jsx)(r.xWY,{}),isLoading:m,onConfirm:()=>{h(!0)},onClose:()=>{n(!1)},confirmationContent:(0,d.jsxs)(i.Fragment,{children:[m&&(0,d.jsx)(r.z21,{}),(0,d.jsxs)(i.Fragment,{children:["Are you sure you want to restore these configurations to default values?",(0,d.jsx)("br",{}),(0,d.jsx)("b",{style:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},children:"Please note that this may cause your system to not be accessible"})]})]})})}}}]); -//# sourceMappingURL=7052.50a0217e.chunk.js.map \ No newline at end of file +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[7052,5128],{12848:(e,t,n)=>{n.d(t,{A:()=>s});var i=n(65043),o=n(33097),a=n.n(o),l=n(89923),r=n(70579);const s=e=>{let{elements:t,name:n,label:o,tooltip:s="",commonPlaceholder:c="",onChange:d,withBorder:u=!1}=e;const[p,m]=(0,i.useState)([""]),h=(0,i.createRef)();(0,i.useEffect)((()=>{if(1===p.length&&""===p[0]&&t&&""!==t){const e=t.split(",");e.push(""),m(e)}}),[t,p]),(0,i.useEffect)((()=>{if(p.length>1){const e=h.current;e&&e.scrollIntoView(!1)}}),[p,h]);const f=(0,i.useCallback)((e=>{d(e)}),[d]),x=(0,i.useRef)(!0);(0,i.useEffect)((()=>{if(x.current)return void(x.current=!1);const e=p.filter((e=>""!==e.trim())).join(",");f(e)}),[p]);const g=e=>{e.persist();let t=[...p];const n=a()(e.target,"dataset.index","0");t[parseInt(n)]=e.target.value,m(t)},v=p.map(((e,t)=>(0,r.jsx)(l.cl_,{id:"".concat(n,"-").concat(t.toString()),label:"",name:"".concat(n,"-").concat(t.toString()),value:p[t],onChange:g,index:t,placeholder:c,overlayIcon:t===p.length-1?(0,r.jsx)(l.REV,{}):null,overlayAction:()=>{(e=>{if(""!==e[e.length-1].trim()){const t=[...e];t.push(""),m(t)}})(p)}},"csv-multi-".concat(n,"-").concat(t.toString()))));return(0,r.jsx)(i.Fragment,{children:(0,r.jsxs)(l.azJ,{sx:{display:"flex"},className:"inputItem",children:[(0,r.jsxs)(l.l1Y,{sx:{alignItems:"flex-start"},children:[(0,r.jsx)("span",{children:o}),""!==s&&(0,r.jsx)(l.azJ,{sx:{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},children:(0,r.jsx)(l.m_M,{tooltip:s,placement:"top",children:(0,r.jsx)(l.azJ,{className:s,children:(0,r.jsx)(l.NTw,{})})})})]}),(0,r.jsxs)(l.azJ,{withBorders:u,sx:{width:"100%",overflowY:"auto",height:150,position:"relative"},children:[v,(0,r.jsx)("div",{ref:h})]})]})})}},94141:(e,t,n)=>{n.d(t,{A:()=>d});var i=n(65043),o=n(22166),a=n(89923),l=n(21383),r=n(64159),s=n(49555),c=n(70579);const d=e=>{let{onClose:t,modalOpen:n,title:d,children:u,wideLimit:p=!0,titleIcon:m=null,iconColor:h="default",sx:f}=e;const x=(0,l.jL)(),[g,v]=(0,i.useState)(!1),b=(0,o.d4)((e=>e.system.modalSnackBar));(0,i.useEffect)((()=>{x((0,r.h0)(""))}),[x]),(0,i.useEffect)((()=>{if(b){if(""===b.message)return void v(!1);"error"!==b.type&&v(!0)}}),[b]);let y="";return b&&(y=b.detailedErrorMsg,(""===y||y&&y.length<5)&&(y=b.message)),(0,c.jsxs)(a.ngX,{onClose:t,open:n,title:d,titleIcon:m,widthLimit:p,sx:f,iconColor:h,children:[(0,c.jsx)(s.A,{isModal:!0}),(0,c.jsx)(a.qb_,{onClose:()=>{v(!1),x((0,r.h0)(""))},open:g,message:y,mode:"inline",variant:"error"===b.type?"error":"default",autoHideDuration:"error"===b.type?10:5,condensed:!0}),u]})}},67052:(e,t,n)=>{n.r(t),n.d(t,{default:()=>D});var i=n(65043),o=n(89923),a=n(45479),l=n(73216),r=n(33097),s=n.n(r),c=n(22166),d=n(56629),u=n(53518),p=n(64159),m=n(21383),h=n(94141),f=n(77403),x=n(70579);const g=e=>{let{open:t,type:n,onCloseEndpoint:a}=e;const[l,r]=(0,i.useState)(""),[s,c]=(0,i.useState)(""),[g,v]=(0,i.useState)(""),[b,y]=(0,i.useState)(!1),[j,k]=(0,i.useState)(["name","endpoint"]),[C,_]=(0,i.useState)(["name","endpoint","auth-token"]),E=(0,m.jL)(),S=e=>{_(C.filter((t=>t!==e)))},w=(e,t)=>{j.includes(e)&&t?k(j.filter((t=>t!==e))):t||j.includes(e)||k([...j,e])};let A="Add new Webhook",T=(0,x.jsx)(o.XC7,{});switch(n){case"logger_webhook":A="New Logger Webhook",T=(0,x.jsx)(o.D0K,{});break;case"audit_webhook":A="New Audit Webhook",T=(0,x.jsx)(o.rBG,{})}return(0,x.jsx)(i.Fragment,{children:(0,x.jsxs)(h.A,{modalOpen:t,title:A,onClose:a,titleIcon:T,children:[(0,x.jsxs)(o.Hbc,{containerPadding:!1,withBorders:!1,children:[(0,x.jsx)(o.cl_,{id:"name",name:"name",onChange:e=>{S("name"),r(e.target.value),w("name",e.target.validity.valid)},error:j.includes("name")&&!C.includes("name")?"Invalid Name":"",label:"Name",value:l,pattern:"^(?=.*[a-zA-Z0-9]).{1,}$",required:!0}),(0,x.jsx)(o.cl_,{id:"endpoint",name:"endpoint",onChange:e=>{S("endpoint"),c(e.target.value),w("endpoint",e.target.validity.valid)},error:j.includes("endpoint")&&!C.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:s,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0}),(0,x.jsx)(o.cl_,{id:"auth-token",name:"auth-token",onChange:e=>{S("auth-token"),v(e.target.value)},label:"Auth Token",value:g})]}),b&&(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{marginBottom:10},children:(0,x.jsx)(o.z21,{})}),(0,x.jsxs)(o.xA9,{item:!0,xs:12,sx:f.Uz.modalButtonBar,children:[(0,x.jsx)(o.$nd,{id:"reset",type:"button",variant:"regular",disabled:b,onClick:a,label:"Cancel",sx:{marginRight:10}}),(0,x.jsx)(o.$nd,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:b||0!==j.length,label:"Save",onClick:()=>{if(b)return;if(0!==j.length)return;if(""===l.trim())return void k([...j,"name"]);if(""===s.trim())return void k([...j,"endpoint"]);y(!0);const e={key_values:[{key:"endpoint",value:s},{key:"auth_token",value:g}],arn_resource_id:l};d.F.configs.setConfig(n,e).then((e=>{y(!1),E((0,p.YR)(e.data.restart||!1)),e.data.restart||E((0,p.Hk)("Configuration saved successfully")),a(),E((0,p.TE)(!0))})).catch((e=>{y(!1),E((0,p.C9)((0,u.S)(e.error)))}))}})]})]})})};var v=n(58661);const b=e=>{let{modalOpen:t,onClose:n,selectedARN:a}=e;const[l,r]=(0,i.useState)(!1),s=(0,m.jL)();(0,i.useEffect)((()=>{l&&d.F.configs.resetConfig(a).then((()=>{r(!1),s((0,p.YR)(!0)),s((0,p.TE)(!0)),n()})).catch((e=>{r(!1),s((0,p.C9)((0,u.S)(e.error)))}))}),[l,s,n,a]);const c=!a.includes(":");let h="Are you sure you want to delete the Configured Endpoint";return c&&(h="Are you sure you want to reset the Default"),(0,x.jsx)(v.A,{title:c?"Reset Default Webhook":"Delete Webhook",confirmText:c?"Reset":"Delete",isOpen:t,isLoading:l,onConfirm:()=>{r(!0)},titleIcon:(0,x.jsx)(o.xWY,{}),onClose:n,confirmationContent:(0,x.jsxs)(i.Fragment,{children:["".concat(h," "),(0,x.jsx)("strong",{children:a}),"?"]})})},y=e=>{var t,n,l,r,s,c;let{open:g,type:v,endpointInfo:b,onCloseEndpoint:y}=e;const[j,k]=(0,i.useState)(""),[C,_]=(0,i.useState)(""),[E,S]=(0,i.useState)(""),[w,A]=(0,i.useState)("on"),[T,q]=(0,i.useState)(!1),[L,R]=(0,i.useState)([]),I=(0,m.jL)();(0,i.useEffect)((()=>{if(b){const e=b.key_values.find((e=>"endpoint"===e.key)),t=b.key_values.find((e=>"auth_token"===e.key)),n=b.key_values.find((e=>"enable"===e.key));let i=[];if(e){const t=e.value;""===t?i.push("endpoint"):_(t)}if(t){const e=t.value;""===e?i.push("auth-token"):S(e)}n&&"off"===n.value&&A(n.value),k(b.name||""),R(i)}}),[b]);const M=!j.includes(":"),B=b.key_values.filter((e=>!!e.env_override)),F=(0,a.uu)(B);let D="Edit Webhook",N=(0,x.jsx)(o.XC7,{});switch(v){case"logger_webhook":D="Edit ".concat(M?" the Default ":"","Logger Webhook"),N=(0,x.jsx)(o.D0K,{});break;case"audit_webhook":D="Edit ".concat(M?" the Default ":"","Audit Webhook"),N=(0,x.jsx)(o.rBG,{})}return B.length>0&&(D="View env variable Webhook"),(0,x.jsx)(i.Fragment,{children:(0,x.jsx)(h.A,{modalOpen:g,title:"".concat(D).concat(M?"":" - ".concat(j)),onClose:y,titleIcon:N,children:(0,x.jsx)(o.Hbc,{withBorders:!1,containerPadding:!1,children:B.length>0?(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)(o.EmB,{label:"Enabled",sx:{width:"100%"},actionButton:(0,x.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,x.jsx)(o.m_M,{tooltip:F.enable?"This value is set from the ".concat((null===(t=F.enable)||void 0===t?void 0:t.overrideEnv)||"N/A"," environment variable"):"",placement:"left",children:(0,x.jsx)(o.D0K,{style:{width:20}})})}),children:(null===(n=F.enable)||void 0===n?void 0:n.value)||"-"}),(0,x.jsx)(o.EmB,{label:"Endpoint",sx:{width:"100%"},actionButton:(0,x.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,x.jsx)(o.m_M,{tooltip:F.enable?"This value is set from the ".concat((null===(l=F.endpoint)||void 0===l?void 0:l.overrideEnv)||"N/A"," environment variable"):"",placement:"left",children:(0,x.jsx)(o.D0K,{style:{width:20}})})}),children:(null===(r=F.endpoint)||void 0===r?void 0:r.value)||"-"}),(0,x.jsx)(o.EmB,{label:"Auth Token",sx:{width:"100%"},actionButton:(0,x.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,x.jsx)(o.m_M,{tooltip:F.enable?"This value is set from the ".concat((null===(s=F.auth_token)||void 0===s?void 0:s.overrideEnv)||"N/A"," environment variable"):"",placement:"left",children:(0,x.jsx)(o.D0K,{style:{width:20}})})}),children:(null===(c=F.auth_token)||void 0===c?void 0:c.value)||"-"})]}):(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)(o.dOG,{onChange:e=>{const t=e.target.checked?"on":"off";A(t)},id:"endpoint_enabled",name:"endpoint_enabled",label:"Enabled",value:"switch_on",checked:"on"===w}),(0,x.jsx)(o.cl_,{id:"endpoint",name:"endpoint",onChange:e=>{_(e.target.value),((e,t)=>{L.includes(e)&&t?R(L.filter((t=>t!==e))):t||L.includes(e)||R([...L,e])})("endpoint",e.target.validity.valid)},error:L.includes("endpoint")?"Invalid Endpoint set":"",label:"Endpoint",value:C,pattern:"^(https?):\\/\\/([a-zA-Z0-9\\-.]+)(:[0-9]+)?(\\/[a-zA-Z0-9\\-.\\/]*)?$",required:!0}),(0,x.jsx)(o.cl_,{id:"auth-token",name:"auth-token",onChange:e=>{S(e.target.value)},label:"Auth Token",value:E}),T&&(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{marginBottom:10},children:(0,x.jsx)(o.z21,{})}),(0,x.jsxs)(o.xA9,{item:!0,sx:f.Uz.modalButtonBar,children:[(0,x.jsx)(o.$nd,{id:"reset",type:"button",variant:"regular",disabled:T,onClick:y,label:"Cancel"}),(0,x.jsx)(o.$nd,{id:"save-lifecycle",type:"submit",variant:"callAction",color:"primary",disabled:T||0!==L.length,label:"Update",onClick:()=>{if(T)return;if(0!==L.length)return;if(!C||""===C.trim())return void R([...L,"endpoint"]);q(!0);const e={key_values:[{key:"endpoint",value:C},{key:"auth_token",value:E},{key:"enable",value:w}]};d.F.configs.setConfig(j,e).then((e=>{q(!1),I((0,p.YR)(e.data.restart||!1)),e.data.restart||I((0,p.Hk)("Configuration saved successfully")),y(),I((0,p.TE)(!0))})).catch((e=>{q(!1),I((0,p.C9)((0,u.S)(e.error)))}))}})]})]})})})})},j=e=>{let{setResetConfigurationOpen:t,WebhookSettingslist:n,type:a}=e;const[l,r]=(0,i.useState)(!1),[s,c]=(0,i.useState)(!1),[d,u]=(0,i.useState)(!1),[p,m]=(0,i.useState)(""),[h,f]=(0,i.useState)(null),v=[{type:"view",onClick:e=>{e.name&&(u(!0),f(e))}},{type:"delete",onClick:e=>{e.name&&(c(!0),m(e.name))},disableButtonFunction:e=>{const t=n.find((t=>t.name===e));if(t){var i;const e=null===(i=t.key_values)||void 0===i?void 0:i.filter((e=>!!e.env_override));return!!(e&&e.length>0)}return!1}}];return(0,x.jsxs)(o.xA9,{container:!0,children:[l&&(0,x.jsx)(g,{open:l,type:a,onCloseEndpoint:()=>{r(!1)}}),s&&(0,x.jsx)(b,{modalOpen:s,onClose:()=>{c(!1),m("")},selectedARN:p,type:a}),d&&h&&(0,x.jsx)(y,{open:d,type:a,endpointInfo:h,onCloseEndpoint:()=>{u(!1),f(null)}}),(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end"},children:(0,x.jsx)(o.$nd,{id:"newWebhook",variant:"callAction",onClick:()=>{r(!0)},children:"New Endpoint"})}),(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{padding:"0 10px 10px"},children:(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)("h3",{children:"Currently Configured Endpoints"}),(0,x.jsx)(o.bQt,{columns:[{label:"Status",elementKey:"key_values",renderFunction:e=>{const t=e.find((e=>"enable"===e.key));if(null!==t&&void 0!==t&&t.env_override){const e=null!==t&&void 0!==t&&t.env_override.value&&"on"!==(null===t||void 0===t?void 0:t.env_override.value)&&null!==t&&void 0!==t&&t.env_override.value?"Disabled":"Enabled";return(0,x.jsxs)(o.xA9,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,x.jsx)(o.D0K,{style:{fill:"#052F51",width:"14px"}}),e?"Enabled":"Disabled"]})}return t&&"on"!==t.value&&t.value?(0,x.jsxs)(o.xA9,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,x.jsx)(o.lgW,{style:{fill:"#C83B51",width:14,height:14}}),"Disabled"]}):(0,x.jsxs)(o.xA9,{container:!0,sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyItems:"start",fontSize:"8px"},children:[(0,x.jsx)(o.JrA,{style:{fill:"#4CCB92",width:14,height:14}}),"Enabled"]})},width:50},{label:"Name",elementKey:"name"},{label:"Endpoint",elementKey:"key_values",renderFunction:e=>{const t=e.find((e=>"endpoint"===e.key));return t?t.env_override?t.env_override.value:t.value:""}}],itemActions:v,idField:"name",isLoading:!1,records:n,entityName:"endpoints",customPaperHeight:"calc(100vh - 750px)"})]})})]})};var k=n(5128),C=n(48967);const _=e=>{let{selectedConfiguration:t,className:n=""}=e;const r=(0,m.jL)(),h=(0,l.Zp)(),{pathname:f=""}=(0,l.zy)();let g=f.substring(f.lastIndexOf("/")+1);g="settings"===g?"region":g;const[v,b]=(0,i.useState)([]),[y,_]=(0,i.useState)(!1),[E,S]=(0,i.useState)([]),[w,A]=(0,i.useState)([]),[T,q]=(0,i.useState)(!1),[L,R]=(0,i.useState)({}),I=(0,c.d4)((e=>e.system.loadingConfigurations));(0,i.useEffect)((()=>{r((0,p.TE)(!0))}),[g,r]),(0,i.useEffect)((()=>{if(I){const e=s()(t,"configuration_id",!1);if(e)return void d.F.configs.configInfo(e).then((t=>{A(t.data);let n=s()(t.data[0],"key_values",[]);const i=a.PE[e].map((e=>{const t=n.find((t=>t.key===e.name)),i=(null===t||void 0===t?void 0:t.value)||"";return{key:e.name,value:e.customValueProcess?e.customValueProcess(i):i,env_override:null===t||void 0===t?void 0:t.env_override}}));S(i),R((0,a.uu)(i)),r((0,p.TE)(!1))})).catch((e=>{r((0,p.TE)(!1)),r((0,p.C9)((0,u.S)(e.error)))}));r((0,p.TE)(!1))}}),[I,t,r]),(0,i.useEffect)((()=>{if(y){const e={key_values:(0,a.Xm)(v)};d.F.configs.setConfig(t.configuration_id,e).then((e=>{_(!1),r((0,p.YR)(e.data.restart||!1)),r((0,p.TE)(!0)),e.data.restart||r((0,p.Hk)("Configuration saved successfully"))})).catch((e=>{_(!1),r((0,p.C9)((0,u.S)(e.error)))}))}}),[y,r,t,v,h]);const M=(0,i.useCallback)((e=>{b(e)}),[b]),B=()=>{q(!0)};return(0,x.jsx)(i.Fragment,{children:(0,x.jsxs)("div",{onMouseMove:()=>{r((0,p.ph)("settings_".concat(t.configuration_label)))},children:[T&&(0,x.jsx)(C.A,{configurationName:t.configuration_id,closeResetModalAndRefresh:e=>{q(!1),r((0,p.YR)(e)),e&&r((0,p.TE)(!0))},resetOpen:T}),I?(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{textAlign:"center",paddingTop:"15px"},children:(0,x.jsx)(o.aHM,{})}):(0,x.jsx)(o.azJ,{sx:{padding:"15px",height:"100%"},children:"logger_webhook"===t.configuration_id||"audit_webhook"===t.configuration_id?(0,x.jsx)(j,{WebhookSettingslist:w,setResetConfigurationOpen:B,type:t.configuration_id}):(0,x.jsx)(i.Fragment,{children:(0,x.jsxs)("form",{noValidate:!0,onSubmit:e=>{e.preventDefault(),_(!0)},className:n,style:{height:"100%",display:"flex",flexFlow:"column"},children:[(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{display:"grid",gridTemplateColumns:"1fr",gap:"10px"},children:(0,x.jsx)(k.default,{fields:a.PE[t.configuration_id],onChange:M,defaultVals:E,overrideEnv:L})}),(0,x.jsxs)(o.xA9,{item:!0,xs:12,sx:{paddingTop:"15px ",textAlign:"right",maxHeight:"60px",display:"flex",alignItems:"center",justifyContent:"flex-end"},children:[(0,x.jsx)(o.$nd,{type:"button",id:"restore-defaults",variant:"secondary",onClick:B,label:"Restore Defaults"}),"\xa0 \xa0",(0,x.jsx)(o.$nd,{id:"save",type:"submit",variant:"callAction",disabled:y,label:"Save"})]})]})})})]})})},E=()=>{const{pathname:e=""}=(0,l.zy)(),t=e.substring(e.lastIndexOf("/")+1),n=a.Ck.find((e=>e.configuration_id===t)),i="".concat(t);return(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{height:"100%","& .identity_ldap, .api":{"& label":{minWidth:220,marginRight:0}}},children:n&&(0,x.jsx)(_,{className:"".concat(i),selectedConfiguration:n})})};var S=n(99161),w=n(48793),A=n(25448),T=n(56483),q=n(24241),L=n(6681);const R=()=>{const e=(0,c.wA)(),[t,n]=(0,A.A)((e=>{(0,T.OT)(new Blob([window.atob(e.value)]),"minio-server-config-".concat(q.c9.now().toFormat("LL-dd-yyyy-HH-mm-ss"),".conf"))}),(t=>{e((0,p.C9)(t))}));return(0,x.jsx)(L.A,{tooltip:"Warning! The resulting file will contain server configuration information in plain text",children:(0,x.jsx)(o.$nd,{id:"export-config",onClick:()=>{n("GET","api/v1/configs/export")},icon:(0,x.jsx)(o.JMY,{}),label:"Export",variant:"regular",disabled:t})})},I=()=>{const e=(0,l.Zp)(),t=(0,c.wA)(),n=(0,c.d4)((e=>e.system.serverNeedsRestart)),[a,r]=(0,i.useState)(void 0),s=(0,i.useRef)(null),[d,u]=(0,A.A)((e=>{t((0,p.YR)(!0)),r(!0)}),(e=>{t((0,p.C9)(e))}));(0,i.useEffect)((()=>{!n&&a&&e(0)}),[n,a,e]);return(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)("input",{type:"file",onChange:e=>{if(null===e||void 0===e||null===e.target.files||void 0===e.target.files)return;e.preventDefault();const[t]=e.target.files,n=new FormData,i=new Blob([t],{type:t.type});n.append("file",i,t.name),u("POST","api/v1/configs/import",n),e.target.value=""},style:{display:"none"},ref:s}),(0,x.jsx)(L.A,{tooltip:"The file must be valid and should have valid config values",children:(0,x.jsx)(o.$nd,{id:"import-config",onClick:()=>{s&&s.current&&s.current.click()},icon:(0,x.jsx)(o.s3U,{}),label:"Import",variant:"regular",disabled:d})})]})};var M=n(55968);const B=["region"],F=["cache"],D=()=>{const{pathname:e=""}=(0,l.zy)(),t=(0,m.jL)(),n=(0,l.Zp)(),[r,s]=(0,i.useState)([]),c=(0,i.useCallback)((async()=>{d.F.configs.listConfig().then((e=>{var t;if(e&&null!==e&&void 0!==e&&e.data&&null!==e&&void 0!==e&&null!==(t=e.data)&&void 0!==t&&t.configurations){var n;const t=((null===e||void 0===e||null===(n=e.data)||void 0===n?void 0:n.configurations)||[]).reduce(((e,t)=>{let{key:n=""}=t;return F.includes(n)||e.push(n),e}),[]);s(t)}})).catch((e=>{t((0,p.C9)((0,u.S)(e)))}))}),[t]);(0,i.useEffect)((()=>{c(),t((0,p.ph)("settings_Region"))}),[]);const h=a.Ck.filter((e=>{let{configuration_id:t}=e;return B.includes(t)||r.includes(t)||!r.length}));return(0,x.jsxs)(i.Fragment,{children:[(0,x.jsx)(w.A,{label:"Configuration",actions:(0,x.jsx)(M.A,{})}),(0,x.jsxs)(o.Mxu,{children:[(0,x.jsxs)(o.xA9,{item:!0,xs:12,id:"settings-container",children:[(0,x.jsx)(o.lcx,{icon:(0,x.jsx)(o.Zes,{}),title:"MinIO Configuration:",actions:(0,x.jsxs)(o.azJ,{sx:{display:"flex",gap:10},children:[(0,x.jsx)(I,{}),(0,x.jsx)(R,{})]}),sx:{marginBottom:15}}),(0,x.jsx)(o.tUM,{currentTabOrPath:e,onTabClick:e=>{n(e)},useRouteTabs:!0,options:h.map((e=>{const{configuration_id:t,configuration_label:n,icon:i}=e;return{tabConfig:{id:"settings-tab-".concat(n),label:n,value:t,icon:i,to:(o=t,"".concat(S.zZ.SETTINGS,"/").concat(o))}};var o})),routes:(0,x.jsxs)(l.BV,{children:[h.map((e=>(0,x.jsx)(l.qh,{path:"".concat(e.configuration_id),element:(0,x.jsx)(E,{})},"configItem-".concat(e.configuration_label)))),(0,x.jsx)(l.qh,{path:"/",element:(0,x.jsx)(l.C5,{to:"".concat(S.zZ.SETTINGS,"/region")})})]})})]}),(0,x.jsx)(o.xA9,{item:!0,xs:12,sx:{paddingTop:"15px"},children:(0,x.jsx)(o.lVp,{title:"Learn more about Configurations",iconComponent:(0,x.jsx)(o.Zes,{}),help:(0,x.jsxs)(i.Fragment,{children:["MinIO supports a variety of configurations ranging from encryption, compression, region, notifications, etc.",(0,x.jsx)("br",{}),(0,x.jsx)("br",{}),"You can learn more at our"," ",(0,x.jsx)("a",{href:"https://min.io/docs/minio/linux/reference/minio-mc-admin/mc-admin-config.html?ref=con#id4",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]})]})}},45479:(e,t,n)=>{n.d(t,{Ck:()=>a,PE:()=>l,Qm:()=>s,Xm:()=>r,uu:()=>c});n(65043);var i=n(89923),o=n(70579);const a=[{icon:(0,o.jsx)(i.DzZ,{}),configuration_id:"region",configuration_label:"Region"},{icon:(0,o.jsx)(i.MZJ,{}),configuration_id:"compression",configuration_label:"Compression"},{icon:(0,o.jsx)(i.loI,{}),configuration_id:"api",configuration_label:"API"},{icon:(0,o.jsx)(i.qm4,{}),configuration_id:"heal",configuration_label:"Heal"},{icon:(0,o.jsx)(i.Pq3,{}),configuration_id:"scanner",configuration_label:"Scanner"},{icon:(0,o.jsx)(i.RYV,{}),configuration_id:"etcd",configuration_label:"Etcd"},{icon:(0,o.jsx)(i.D0K,{}),configuration_id:"logger_webhook",configuration_label:"Logger Webhook"},{icon:(0,o.jsx)(i.rBG,{}),configuration_id:"audit_webhook",configuration_label:"Audit Webhook"},{icon:(0,o.jsx)(i.Dk$,{}),configuration_id:"audit_kafka",configuration_label:"Audit Kafka"}],l={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 custom notes if any"}],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}],api:[{name:"requests_max",required:!1,label:"Requests Max",tooltip:"Maximum number of concurrent requests, e.g. '1600'",type:"number",placeholder:"Enter Requests Max"},{name:"cors_allow_origin",required:!1,label:"Cors Allow Origin",tooltip:"List of origins allowed for CORS requests",type:"csv",placeholder:"Enter allowed origin e.g. https://example.com"},{name:"replication_workers",required:!1,label:"Replication Workers",tooltip:"Number of replication workers, defaults to 100",type:"number",placeholder:"Enter Replication Workers"},{name:"replication_failed_workers",required:!1,label:"Replication Failed Workers",tooltip:"Number of replication workers for recently failed replicas, defaults to 4",type:"number",placeholder:"Enter Replication Failed Workers"}],heal:[{name:"bitrotscan",required:!1,label:"Bitrot Scan",tooltip:"Perform bitrot scan on disks when checking objects during scanner",type:"on|off"},{name:"max_sleep",required:!1,label:"Max Sleep",tooltip:"Maximum sleep duration between objects to slow down heal operation, e.g. 2s",type:"duration",placeholder:"Enter Max Sleep Duration"},{name:"max_io",required:!1,label:"Max IO",tooltip:"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3",type:"number",placeholder:"Enter Max IO"}],scanner:[{name:"delay",required:!1,label:"Delay Multiplier",tooltip:"Scanner delay multiplier, defaults to '10.0'",type:"number",placeholder:"Enter Delay"},{name:"max_wait",required:!1,label:"Max Wait",tooltip:"Maximum wait time between operations, defaults to '15s'",type:"duration",placeholder:"Enter Max Wait"},{name:"cycle",required:!1,label:"Cycle",tooltip:"Time duration between scanner cycles, defaults to '1m'",type:"duration",placeholder:"Enter Cycle"}],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 custom notes if any"}],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"}],audit_kafka:[{name:"enable",required:!1,label:"Enable",tooltip:"Enable audit_kafka target",type:"on|off",customValueProcess:e=>""===e||"on"===e?"on":"off"},{name:"brokers",required:!0,label:"Brokers",type:"csv",placeholder:"Enter Kafka Broker"},{name:"topic",required:!1,label:"Topic",type:"string",placeholder:"Enter Kafka Topic",tooltip:"Kafka topic used for bucket notifications"},{name:"sasl",required:!1,label:"Use SASL",tooltip:"Enable SASL (Simple Authentication and Security Layer) authentication",type:"on|off"},{name:"sasl_username",required:!1,label:"SASL Username",type:"string",placeholder:"Enter SASL Username",tooltip:"Username for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_password",required:!1,label:"SASL Password",type:"password",placeholder:"Enter SASL Password",tooltip:"Password for SASL/PLAIN or SASL/SCRAM authentication"},{name:"sasl_mechanism",required:!1,label:"SASL Mechanism",type:"string",placeholder:"Enter SASL Mechanism",tooltip:"SASL authentication mechanism"},{name:"tls",required:!1,label:"Use TLS",tooltip:"Enable TLS (Transport Layer Security)",type:"on|off"},{name:"tls_skip_verify",required:!1,label:"Skip TLS Verification",tooltip:"Trust server TLS without verification",type:"on|off"},{name:"client_tls_cert",required:!1,label:"Client Cert",tooltip:"Client cert for mTLS authentication",type:"string",placeholder:"Enter Client Cert"},{name:"client_tls_key",required:!1,label:"Client Cert Key",tooltip:"Client cert key for mTLS authentication",type:"string",placeholder:"Enter Client Cert Key"},{name:"tls_client_auth",required:!1,label:"TLS Client Auth",tooltip:"ClientAuth determines the Kafka server's policy for TLS client authorization",type:"string"},{name:"version",required:!1,label:"Version",tooltip:"Specify the version of the Kafka cluster",type:"string"}]},r=e=>e.filter((e=>""!==e.value)),s=(e,t,n)=>{const i=e.target,o=i.value;let a=[...n];return i.checked?a.push(o):a=a.filter((e=>e!==o)),t(a),a},c=e=>{let t={};return e.forEach((e=>{if(e.env_override){const n={value:e.env_override.value||"",overrideEnv:e.env_override.name||""};t={...t,[e.key]:n}}})),t}},5128:(e,t,n)=>{n.r(t),n.d(t,{default:()=>s});var i=n(65043),o=n(89923),a=n(12848),l=n(70579);const r=(e,t,n)=>{let i="on|off"===t?"off":"";if(n.length>0){const t=n.find((t=>t.key===e));t&&(i=t.value||"")}return i},s=e=>{let{onChange:t,fields:n,defaultVals:s,overrideEnv:c}=e;const[d,u]=(0,i.useState)([]),p=n||[],m=s||[];(0,i.useEffect)((()=>{const e=n.map((e=>({key:e.name,value:r(e.name,e.type,m)})));u(e)}),[n,s]),(0,i.useEffect)((()=>{t(d)}),[d]);const h=(e,t,n)=>{const i=[...d];t=t.trim(),i[n]={key:e,value:t},u(i)},f=(e,t)=>{const n=d[t];if(n){const t=null===c||void 0===c?void 0:c["".concat(n.key)];if(t)return(0,l.jsx)(o.EmB,{label:e.label,actionButton:(0,l.jsx)(o.xA9,{item:!0,sx:{display:"flex",justifyContent:"flex-end",paddingRight:"10px"},children:(0,l.jsx)(o.m_M,{tooltip:"This value is set from the ".concat(t.overrideEnv," environment variable"),placement:"left",children:(0,l.jsx)(o.D0K,{style:{width:20}})})}),sx:{width:"100%"},children:t.value})}switch(e.type){case"on|off":const i=n?n.value:"off";return(0,l.jsx)(o.dOG,{onChange:n=>{const i=n.target.checked?"on":"off";h(e.name,i,t)},id:e.name,name:e.name,label:e.label,value:"switch_on",tooltip:e.tooltip,checked:"on"===i});case"csv":return(0,l.jsx)(a.A,{elements:n?n.value:"",label:e.label,name:e.name,onChange:n=>{let i="";i=Array.isArray(n)?n.join(","):n,h(e.name,i,t)},tooltip:e.tooltip,commonPlaceholder:e.placeholder,withBorder:!0});case"comment":return(0,l.jsx)(o.hFj,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>h(e.name,n.target.value,t),placeholder:e.placeholder});default:return(0,l.jsx)(o.cl_,{id:e.name,name:e.name,label:e.label,tooltip:e.tooltip,value:n?n.value:"",onChange:n=>h(e.name,n.target.value,t),placeholder:e.placeholder})}};return(0,l.jsx)(o.Hbc,{withBorders:!1,containerPadding:!1,children:p.map(((e,t)=>(0,l.jsx)(i.Fragment,{children:f(e,t)},e.name)))})}},48967:(e,t,n)=>{n.d(t,{A:()=>u});var i=n(65043),o=n(56629),a=n(53518),l=n(58661),r=n(89923),s=n(64159),c=n(21383),d=n(70579);const u=e=>{let{configurationName:t,closeResetModalAndRefresh:n,resetOpen:u}=e;const p=(0,c.jL)(),[m,h]=(0,i.useState)(!1);(0,i.useEffect)((()=>{m&&o.F.configs.resetConfig(t).then((()=>{h(!1),n(!0)})).catch((e=>{h(!1),p((0,s.C9)((0,a.S)(e.error)))}))}),[n,t,m,p]);return(0,d.jsx)(l.A,{title:"Restore Defaults",confirmText:"Yes, Reset Configuration",isOpen:u,titleIcon:(0,d.jsx)(r.xWY,{}),isLoading:m,onConfirm:()=>{h(!0)},onClose:()=>{n(!1)},confirmationContent:(0,d.jsxs)(i.Fragment,{children:[m&&(0,d.jsx)(r.z21,{}),(0,d.jsxs)(i.Fragment,{children:["Are you sure you want to restore these configurations to default values?",(0,d.jsx)("br",{}),(0,d.jsx)("b",{style:{maxWidth:"200px",whiteSpace:"normal",wordWrap:"break-word"},children:"Please note that this may cause your system to not be accessible"})]})]})})}}}]); +//# sourceMappingURL=7052.37bcb35a.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/7052.50a0217e.chunk.js.map b/web-app/build/static/js/7052.37bcb35a.chunk.js.map similarity index 88% rename from web-app/build/static/js/7052.50a0217e.chunk.js.map rename to web-app/build/static/js/7052.37bcb35a.chunk.js.map index ade06abb8c..d1135ad29b 100644 --- a/web-app/build/static/js/7052.50a0217e.chunk.js.map +++ b/web-app/build/static/js/7052.37bcb35a.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/7052.50a0217e.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/CSVMultiSelector/CSVMultiSelector.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/EventDestinations/WebhookSettings/AddEndpointModal.tsx","screens/Console/EventDestinations/WebhookSettings/DeleteWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/EditWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/WebhookSettings.tsx","screens/Console/EventDestinations/CustomForms/EditConfiguration.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationForm.tsx","screens/Console/Configurations/ConfigurationPanels/ExportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ImportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationOptions.tsx","screens/Console/Configurations/utils.tsx","screens/Console/EventDestinations/ConfTargetGeneric.tsx","screens/Console/EventDestinations/CustomForms/ResetConfigurationModal.tsx"],"sourcesContent":["// 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, {\n ChangeEvent,\n createRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n Fragment,\n} from \"react\";\nimport get from \"lodash/get\";\nimport { AddIcon, Box, HelpIcon, InputBox, InputLabel, Tooltip } from \"mds\";\n\ninterface ICSVMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n commonPlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst CSVMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n commonPlaceholder = \"\",\n onChange,\n withBorder = false,\n}: ICSVMultiSelector) => {\n const [currentElements, setCurrentElements] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentElements.length === 1 &&\n currentElements[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\",\");\n elementsSplit.push(\"\");\n\n setCurrentElements(elementsSplit);\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [elements, currentElements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n if (currentElements.length > 1) {\n const refScroll = bottomList.current;\n if (refScroll) {\n refScroll.scrollIntoView(false);\n }\n }\n }, [currentElements, bottomList]);\n\n const onChangeCallback = useCallback(\n (newString: string) => {\n onChange(newString);\n },\n [onChange],\n );\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n const elementsString = currentElements\n .filter((element) => element.trim() !== \"\")\n .join(\",\");\n\n onChangeCallback(elementsString);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentElements]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = (elementsUp: string[]) => {\n if (elementsUp[elementsUp.length - 1].trim() !== \"\") {\n const cpList = [...elementsUp];\n cpList.push(\"\");\n setCurrentElements(cpList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeElement = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentElements];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentElements(updatedElement);\n };\n\n const inputs = currentElements.map((element, index) => {\n return (\n : null}\n overlayAction={() => {\n addEmptyLine(currentElements);\n }}\n />\n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default CSVMultiSelector;\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 { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default ModalWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Button,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n PendingItemsIcon,\n ProgressBar,\n WebhookIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n onCloseEndpoint: () => void;\n}\n\nconst AddEndpointModal = ({ open, type, onCloseEndpoint }: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([\n \"name\",\n \"endpoint\",\n ]);\n const [initialInputs, setInitialInputs] = useState([\n \"name\",\n \"endpoint\",\n \"auth-token\",\n ]);\n\n const dispatch = useAppDispatch();\n\n const saveWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (name.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"name\"]);\n\n return;\n }\n\n if (endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n ],\n arn_resource_id: name,\n };\n\n api.configs\n .setConfig(type, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const initializeInput = (name: string) => {\n setInitialInputs(initialInputs.filter((item) => item !== name));\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n let title = \"Add new Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = \"New Logger Webhook\";\n icon = ;\n break;\n case \"audit_webhook\":\n title = \"New Audit Webhook\";\n icon = ;\n break;\n }\n\n return (\n \n \n \n ) => {\n initializeInput(\"name\");\n setName(event.target.value);\n validateInput(\"name\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"name\") && !initialInputs.includes(\"name\")\n ? \"Invalid Name\"\n : \"\"\n }\n label=\"Name\"\n value={name}\n pattern={\"^(?=.*[a-zA-Z0-9]).{1,}$\"}\n required\n />\n ) => {\n initializeInput(\"endpoint\");\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\") &&\n !initialInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n ) => {\n initializeInput(\"auth-token\");\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n \n {saving && (\n \n \n \n )}\n \n \n \n \n \n \n );\n};\n\nexport default AddEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { ConfirmDeleteIcon } from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IDeleteWebhookEndpoint {\n modalOpen: boolean;\n onClose: () => void;\n selectedARN: string;\n type: string;\n}\n\nconst DeleteWebhookEndpoint = ({\n modalOpen,\n onClose,\n selectedARN,\n}: IDeleteWebhookEndpoint) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (deleteLoading) {\n api.configs\n .resetConfig(selectedARN)\n .then(() => {\n setDeleteLoading(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(configurationIsLoading(true));\n onClose();\n })\n .catch((err) => {\n setDeleteLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [deleteLoading, dispatch, onClose, selectedARN]);\n\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n const defaultWH = !selectedARN.includes(\":\");\n\n let message = \"Are you sure you want to delete the Configured Endpoint\";\n\n // Main webhook, we just reset\n if (defaultWH) {\n message = \"Are you sure you want to reset the Default\";\n }\n\n return (\n }\n onClose={onClose}\n confirmationContent={\n \n {`${message} `}\n {selectedARN}?\n \n }\n />\n );\n};\n\nexport default DeleteWebhookEndpoint;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Button,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n PendingItemsIcon,\n ProgressBar,\n ReadBox,\n Switch,\n Tooltip,\n WebhookIcon,\n} from \"mds\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\nimport { IConfigurationSys } from \"../../Configurations/types\";\nimport { overrideFields } from \"../../Configurations/utils\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n endpointInfo: IConfigurationSys;\n onCloseEndpoint: () => void;\n}\n\nconst EditEndpointModal = ({\n open,\n type,\n endpointInfo,\n onCloseEndpoint,\n}: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [endpointState, setEndpointState] = useState(\"on\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([]);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (endpointInfo) {\n const endpointLocate = endpointInfo.key_values.find(\n (key) => key.key === \"endpoint\",\n );\n const tokenLocate = endpointInfo.key_values.find(\n (key) => key.key === \"auth_token\",\n );\n const enable = endpointInfo.key_values.find(\n (key) => key.key === \"enable\",\n );\n\n let invalidInputs: string[] = [];\n\n if (endpointLocate) {\n const endpointValue = endpointLocate.value;\n\n if (endpointValue === \"\") {\n invalidInputs.push(\"endpoint\");\n } else {\n setEndpoint(endpointValue);\n }\n }\n\n if (tokenLocate) {\n const tokenValue = tokenLocate.value;\n\n if (tokenValue === \"\") {\n invalidInputs.push(\"auth-token\");\n } else {\n setAuthToken(tokenValue);\n }\n }\n\n if (enable) {\n if (enable.value === \"off\") {\n setEndpointState(enable.value);\n }\n }\n\n setName(endpointInfo.name || \"\");\n setInvalidInput(invalidInputs);\n }\n }, [endpointInfo]);\n\n const updateWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (!endpoint || endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n {\n key: \"enable\",\n value: endpointState,\n },\n ],\n };\n\n api.configs\n .setConfig(name, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n const defaultWH = !name.includes(\":\");\n const hasOverride = endpointInfo.key_values.filter(\n (itm) => !!itm.env_override,\n );\n\n const overrideValues = overrideFields(hasOverride);\n\n let title = \"Edit Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Logger Webhook`;\n icon = ;\n break;\n case \"audit_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Audit Webhook`;\n icon = ;\n break;\n }\n\n if (hasOverride.length > 0) {\n title = \"View env variable Webhook\";\n }\n\n return (\n \n \n \n {hasOverride.length > 0 ? (\n \n \n \n \n \n \n }\n >\n {overrideValues.enable?.value || \"-\"}\n \n \n \n \n \n \n }\n >\n {overrideValues.endpoint?.value || \"-\"}\n \n \n \n \n \n \n }\n >\n {overrideValues.auth_token?.value || \"-\"}\n \n \n ) : (\n \n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setEndpointState(value);\n }}\n id={\"endpoint_enabled\"}\n name={\"endpoint_enabled\"}\n label={\"Enabled\"}\n value={\"switch_on\"}\n checked={endpointState === \"on\"}\n />\n ) => {\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n ) => {\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n {saving && (\n \n \n \n )}\n \n \n \n \n \n )}\n \n \n \n );\n};\n\nexport default EditEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { IConfigurationSys, IElementValue } from \"../../Configurations/types\";\nimport {\n Button,\n ConsoleIcon,\n DataTable,\n Grid,\n TierOfflineIcon,\n TierOnlineIcon,\n} from \"mds\";\nimport AddEndpointModal from \"./AddEndpointModal\";\nimport DeleteWebhookEndpoint from \"./DeleteWebhookEndpoint\";\nimport EditWebhookEndpoint from \"./EditWebhookEndpoint\";\nimport { Configuration } from \"api/consoleApi\";\n\ninterface WebhookSettingsProps {\n WebhookSettingslist: Configuration[];\n setResetConfigurationOpen: () => void;\n type: string;\n}\n\nconst WebhookSettings = ({\n setResetConfigurationOpen,\n WebhookSettingslist,\n type,\n}: WebhookSettingsProps) => {\n const [newEndpointOpen, setNewEndpointOpen] = useState(false);\n const [deleteWebhookOpen, setDeleteWebhookOpen] = useState(false);\n const [editWebhookOpen, setEditWebhookOpen] = useState(false);\n const [selectedARN, setSelectedARN] = useState(\"\");\n const [selectedEndpoint, setSelectedEndpoint] =\n useState(null);\n\n const renderEndpoint = (item: IElementValue[]) => {\n const endpointFilter = item.find((itm) => itm.key === \"endpoint\");\n\n if (endpointFilter) {\n if (endpointFilter.env_override) {\n return endpointFilter.env_override.value;\n }\n\n return endpointFilter.value;\n }\n\n return \"\";\n };\n\n const renderWebhookStatus = (item: IElementValue[]) => {\n const EnableFilter = item.find((itm) => itm.key === \"enable\");\n\n if (EnableFilter?.env_override) {\n const overrideEnabled =\n !EnableFilter?.env_override.value ||\n EnableFilter?.env_override.value === \"on\" ||\n !EnableFilter?.env_override.value\n ? \"Enabled\"\n : \"Disabled\";\n return (\n \n \n {overrideEnabled ? \"Enabled\" : \"Disabled\"}\n \n );\n }\n\n // If enable is not set, then enabled by default\n if (!EnableFilter || EnableFilter.value === \"on\" || !EnableFilter.value) {\n return (\n \n \n Enabled\n \n );\n }\n\n return (\n \n \n Disabled\n \n );\n };\n\n const onCloseDelete = () => {\n setDeleteWebhookOpen(false);\n setSelectedARN(\"\");\n };\n\n const onCloseEditWebhook = () => {\n setEditWebhookOpen(false);\n setSelectedEndpoint(null);\n };\n\n const actions = [\n {\n type: \"view\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setEditWebhookOpen(true);\n setSelectedEndpoint(item);\n }\n },\n },\n {\n type: \"delete\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setDeleteWebhookOpen(true);\n setSelectedARN(item.name);\n }\n },\n disableButtonFunction: (item: string) => {\n const wHook = WebhookSettingslist.find(\n (element) => element.name === item,\n );\n\n if (wHook) {\n const hasOverride = wHook.key_values?.filter(\n (itm) => !!itm.env_override,\n );\n\n // Has override values, we cannot delete.\n if (hasOverride && hasOverride.length > 0) {\n return true;\n }\n\n return false;\n }\n return false;\n },\n },\n ];\n return (\n \n {newEndpointOpen && (\n {\n setNewEndpointOpen(false);\n }}\n />\n )}\n {deleteWebhookOpen && (\n \n )}\n {editWebhookOpen && selectedEndpoint && (\n \n )}\n \n {\n setNewEndpointOpen(true);\n }}\n >\n New Endpoint\n \n \n \n \n

Currently Configured Endpoints

\n \n
\n
\n
\n );\n};\nexport default WebhookSettings;\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, useCallback, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { Box, Button, Grid, Loader } from \"mds\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { Configuration, ConfigurationKV } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n fieldsConfigurations,\n overrideFields,\n removeEmptyFields,\n} from \"../../Configurations/utils\";\nimport {\n IConfigurationElement,\n IElementValue,\n IOverrideEnv,\n KVField,\n} from \"../../Configurations/types\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport WebhookSettings from \"../WebhookSettings/WebhookSettings\";\nimport ConfTargetGeneric from \"../ConfTargetGeneric\";\nimport ResetConfigurationModal from \"./ResetConfigurationModal\";\n\ninterface IAddNotificationEndpointProps {\n selectedConfiguration: IConfigurationElement;\n className?: string;\n}\n\nconst EditConfiguration = ({\n selectedConfiguration,\n className = \"\",\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const { pathname = \"\" } = useLocation();\n\n let selConfigTab = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n selConfigTab = selConfigTab === \"settings\" ? \"region\" : selConfigTab;\n\n //Local States\n const [valuesObj, setValueObj] = useState([]);\n const [saving, setSaving] = useState(false);\n const [configValues, setConfigValues] = useState([]);\n const [configSubsysList, setConfigSubsysList] = useState([]);\n const [resetConfigurationOpen, setResetConfigurationOpen] =\n useState(false);\n const [overrideEnvs, setOverrideEnvs] = useState({});\n\n const loadingConfig = useSelector(\n (state: AppState) => state.system.loadingConfigurations,\n );\n\n useEffect(() => {\n dispatch(configurationIsLoading(true));\n }, [selConfigTab, dispatch]);\n\n useEffect(() => {\n if (loadingConfig) {\n const configId = get(selectedConfiguration, \"configuration_id\", false);\n\n if (configId) {\n api.configs\n .configInfo(configId)\n .then((res) => {\n setConfigSubsysList(res.data);\n let values: ConfigurationKV[] = get(res.data[0], \"key_values\", []);\n\n const fieldsConfig: KVField[] = fieldsConfigurations[configId];\n\n const keyVals: IElementValue[] = fieldsConfig.map((field) => {\n const includedValue = values.find(\n (element: ConfigurationKV) => element.key === field.name,\n );\n const customValue = includedValue?.value || \"\";\n\n return {\n key: field.name,\n value: field.customValueProcess\n ? field.customValueProcess(customValue)\n : customValue,\n env_override: includedValue?.env_override,\n };\n });\n\n setConfigValues(keyVals);\n setOverrideEnvs(overrideFields(keyVals));\n dispatch(configurationIsLoading(false));\n })\n .catch((err) => {\n dispatch(configurationIsLoading(false));\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n\n return;\n }\n dispatch(configurationIsLoading(false));\n }\n }, [loadingConfig, selectedConfiguration, dispatch]);\n\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesObj),\n };\n api.configs\n .setConfig(selectedConfiguration.configuration_id, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n dispatch(configurationIsLoading(true));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [saving, dispatch, selectedConfiguration, valuesObj, navigate]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueObj(newValue);\n },\n [setValueObj],\n );\n\n const continueReset = (restart: boolean) => {\n setResetConfigurationOpen(false);\n dispatch(setServerNeedsRestart(restart));\n if (restart) {\n dispatch(configurationIsLoading(true));\n }\n };\n\n const resetConfigurationMOpen = () => {\n setResetConfigurationOpen(true);\n };\n\n return (\n \n {\n dispatch(\n setHelpName(\n `settings_${selectedConfiguration.configuration_label}`,\n ),\n );\n }}\n >\n {resetConfigurationOpen && (\n \n )}\n {loadingConfig ? (\n \n \n \n ) : (\n \n {selectedConfiguration.configuration_id === \"logger_webhook\" ||\n selectedConfiguration.configuration_id === \"audit_webhook\" ? (\n \n ) : (\n \n \n \n \n \n \n \n    \n \n \n \n \n )}\n \n )}\n
\n
\n );\n};\n\nexport default EditConfiguration;\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 { useLocation } from \"react-router-dom\";\nimport { Grid } from \"mds\";\nimport { configurationElements } from \"../utils\";\nimport EditConfiguration from \"../../EventDestinations/CustomForms/EditConfiguration\";\n\nconst ConfigurationsList = () => {\n const { pathname = \"\" } = useLocation();\n\n const configName = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n\n const validActiveConfig = configurationElements.find(\n (element) => element.configuration_id === configName,\n );\n const containerClassName = `${configName}`;\n return (\n \n {validActiveConfig && (\n \n )}\n \n );\n};\n\nexport default ConfigurationsList;\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 { Button, UploadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport { performDownload } from \"../../../../common/utils\";\nimport { DateTime } from \"luxon\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useDispatch } from \"react-redux\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst ExportConfigButton = () => {\n const dispatch = useDispatch();\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n performDownload(\n new Blob([window.atob(res.value)]),\n `minio-server-config-${DateTime.now().toFormat(\n \"LL-dd-yyyy-HH-mm-ss\",\n )}.conf`,\n );\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n return (\n \n {\n invokeApi(\"GET\", `api/v1/configs/export`);\n }}\n icon={}\n label={\"Export\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n );\n};\n\nexport default ExportConfigButton;\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, useRef, useState } from \"react\";\nimport { Button, DownloadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { AppState } from \"../../../../store\";\n\nconst ImportConfigButton = () => {\n const navigate = useNavigate();\n const dispatch = useDispatch();\n\n const needsRestart = useSelector(\n (state: AppState) => state.system.serverNeedsRestart,\n );\n\n const [refreshPage, setRefreshPage] = useState(\n undefined,\n );\n const fileUpload = useRef(null);\n\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n dispatch(setServerNeedsRestart(true)); //import should refreshPage as per mc.\n setRefreshPage(true);\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n useEffect(() => {\n if (!needsRestart && refreshPage) {\n navigate(0); // refresh the page.\n }\n }, [needsRestart, refreshPage, navigate]);\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n const [fileToUpload] = e.target.files;\n\n const formData = new FormData();\n const blobFile = new Blob([fileToUpload], { type: fileToUpload.type });\n\n formData.append(\"file\", blobFile, fileToUpload.name);\n // @ts-ignore\n invokeApi(\"POST\", `api/v1/configs/import`, formData);\n\n e.target.value = \"\";\n };\n\n return (\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n }}\n icon={}\n label={\"Import\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n \n );\n};\n\nexport default ImportConfigButton;\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, useCallback, useEffect, useState } from \"react\";\nimport {\n Box,\n Grid,\n HelpBox,\n PageLayout,\n ScreenTitle,\n SettingsIcon,\n Tabs,\n} from \"mds\";\n\nimport { configurationElements } from \"../utils\";\nimport {\n Navigate,\n Route,\n Routes,\n useLocation,\n useNavigate,\n} from \"react-router-dom\";\n\nimport ConfigurationForm from \"./ConfigurationForm\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ExportConfigButton from \"./ExportConfigButton\";\nimport ImportConfigButton from \"./ImportConfigButton\";\n\nimport HelpMenu from \"../../HelpMenu\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"../../../../api\";\nimport { IElement } from \"../types\";\nimport { errorToHandler } from \"../../../../api/errors\";\n\nconst getRoutePath = (path: string) => {\n return `${IAM_PAGES.SETTINGS}/${path}`;\n};\n\n// region is not part of config subsystem list.\nconst NON_SUB_SYS_CONFIG_ITEMS = [\"region\"];\nconst IGNORED_CONFIG_SUB_SYS = [\"cache\"]; // cache config is not supported.\n\nconst ConfigurationOptions = () => {\n const { pathname = \"\" } = useLocation();\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [configSubSysList, setConfigSubSysList] = useState([]);\n const fetchConfigSubSysList = useCallback(async () => {\n api.configs\n .listConfig() // get a list of available config subsystems.\n .then((res) => {\n if (res && res?.data && res?.data?.configurations) {\n const confSubSysList = (res?.data?.configurations || []).reduce(\n (acc: string[], { key = \"\" }) => {\n if (!IGNORED_CONFIG_SUB_SYS.includes(key)) {\n acc.push(key);\n }\n return acc;\n },\n [],\n );\n\n setConfigSubSysList(confSubSysList);\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }, [dispatch]);\n\n useEffect(() => {\n fetchConfigSubSysList();\n dispatch(setHelpName(\"settings_Region\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const availableConfigSubSys = configurationElements.filter(\n ({ configuration_id }: IElement) => {\n return (\n NON_SUB_SYS_CONFIG_ITEMS.includes(configuration_id) ||\n configSubSysList.includes(configuration_id) ||\n !configSubSysList.length\n );\n },\n );\n\n return (\n \n } />\n \n \n }\n title={\"MinIO Configuration:\"}\n actions={\n \n \n \n \n }\n sx={{ marginBottom: 15 }}\n />\n {\n navigate(path);\n }}\n useRouteTabs\n options={availableConfigSubSys.map((element) => {\n const { configuration_id, configuration_label, icon } = element;\n return {\n tabConfig: {\n id: `settings-tab-${configuration_label}`,\n label: configuration_label,\n value: configuration_id,\n icon: icon,\n to: getRoutePath(configuration_id),\n },\n };\n })}\n routes={\n \n {availableConfigSubSys.map((element) => (\n }\n />\n ))}\n }\n />\n \n }\n />\n \n \n }\n help={\n \n MinIO supports a variety of configurations ranging from\n encryption, compression, region, notifications, etc.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n );\n};\n\nexport default ConfigurationOptions;\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 { IElement, IElementValue, IOverrideEnv, OverrideValue } from \"./types\";\nimport {\n CodeIcon,\n CompressIcon,\n ConsoleIcon,\n FindReplaceIcon,\n FirstAidIcon,\n KeyIcon,\n LogsIcon,\n PendingItemsIcon,\n PublicIcon,\n} from \"mds\";\n\nexport const configurationElements: IElement[] = [\n {\n icon: ,\n configuration_id: \"region\",\n configuration_label: \"Region\",\n },\n {\n icon: ,\n configuration_id: \"compression\",\n configuration_label: \"Compression\",\n },\n {\n icon: ,\n configuration_id: \"api\",\n configuration_label: \"API\",\n },\n {\n icon: ,\n configuration_id: \"heal\",\n configuration_label: \"Heal\",\n },\n {\n icon: ,\n configuration_id: \"scanner\",\n configuration_label: \"Scanner\",\n },\n {\n icon: ,\n configuration_id: \"etcd\",\n configuration_label: \"Etcd\",\n },\n {\n icon: ,\n configuration_id: \"logger_webhook\",\n configuration_label: \"Logger Webhook\",\n },\n {\n icon: ,\n configuration_id: \"audit_webhook\",\n configuration_label: \"Audit Webhook\",\n },\n {\n icon: ,\n configuration_id: \"audit_kafka\",\n configuration_label: \"Audit Kafka\",\n },\n];\n\nexport const fieldsConfigurations: any = {\n region: [\n {\n name: \"name\",\n required: true,\n label: \"Server Location\",\n tooltip: 'Name of the location of the server e.g. \"us-west-rack2\"',\n type: \"string\",\n placeholder: \"e.g. us-west-rack-2\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n ],\n compression: [\n {\n name: \"extensions\",\n required: false,\n label: \"Extensions\",\n tooltip:\n 'Extensions to compress e.g. \".txt\", \".log\" or \".csv\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter an Extension\",\n withBorder: true,\n },\n {\n name: \"mime_types\",\n required: false,\n label: \"Mime Types\",\n tooltip:\n 'Mime types e.g. \"text/*\", \"application/json\" or \"application/xml\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter a Mime Type\",\n withBorder: true,\n },\n ],\n api: [\n {\n name: \"requests_max\",\n required: false,\n label: \"Requests Max\",\n tooltip: \"Maximum number of concurrent requests, e.g. '1600'\",\n type: \"number\",\n placeholder: \"Enter Requests Max\",\n },\n {\n name: \"cors_allow_origin\",\n required: false,\n label: \"Cors Allow Origin\",\n tooltip: \"List of origins allowed for CORS requests\",\n type: \"csv\",\n placeholder: \"Enter allowed origin e.g. https://example.com\",\n },\n {\n name: \"replication_workers\",\n required: false,\n label: \"Replication Workers\",\n tooltip: \"Number of replication workers, defaults to 100\",\n type: \"number\",\n placeholder: \"Enter Replication Workers\",\n },\n {\n name: \"replication_failed_workers\",\n required: false,\n label: \"Replication Failed Workers\",\n tooltip:\n \"Number of replication workers for recently failed replicas, defaults to 4\",\n type: \"number\",\n placeholder: \"Enter Replication Failed Workers\",\n },\n ],\n heal: [\n {\n name: \"bitrotscan\",\n required: false,\n label: \"Bitrot Scan\",\n tooltip:\n \"Perform bitrot scan on disks when checking objects during scanner\",\n type: \"on|off\",\n },\n {\n name: \"max_sleep\",\n required: false,\n label: \"Max Sleep\",\n tooltip:\n \"Maximum sleep duration between objects to slow down heal operation, e.g. 2s\",\n type: \"duration\",\n placeholder: \"Enter Max Sleep Duration\",\n },\n {\n name: \"max_io\",\n required: false,\n label: \"Max IO\",\n tooltip:\n \"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3\",\n type: \"number\",\n placeholder: \"Enter Max IO\",\n },\n ],\n scanner: [\n {\n name: \"delay\",\n required: false,\n label: \"Delay Multiplier\",\n tooltip: \"Scanner delay multiplier, defaults to '10.0'\",\n type: \"number\",\n placeholder: \"Enter Delay\",\n },\n {\n name: \"max_wait\",\n required: false,\n label: \"Max Wait\",\n tooltip: \"Maximum wait time between operations, defaults to '15s'\",\n type: \"duration\",\n placeholder: \"Enter Max Wait\",\n },\n {\n name: \"cycle\",\n required: false,\n label: \"Cycle\",\n tooltip: \"Time duration between scanner cycles, defaults to '1m'\",\n type: \"duration\",\n placeholder: \"Enter Cycle\",\n },\n ],\n etcd: [\n {\n name: \"endpoints\",\n required: true,\n label: \"Endpoints\",\n tooltip:\n 'List of etcd endpoints e.g. \"http://localhost:2379\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"path_prefix\",\n required: false,\n label: \"Path Prefix\",\n tooltip: 'Namespace prefix to isolate tenants e.g. \"customer1/\"',\n type: \"string\",\n placeholder: \"Enter Path Prefix\",\n },\n {\n name: \"coredns_path\",\n required: false,\n label: \"Coredns Path\",\n tooltip: 'Shared bucket DNS records, default is \"/skydns\"',\n type: \"string\",\n placeholder: \"Enter Coredns Path\",\n },\n {\n name: \"client_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_cert_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n multiline: true,\n placeholder: \"Enter custom notes if any\",\n },\n ],\n logger_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_kafka: [\n {\n name: \"enable\",\n required: false,\n label: \"Enable\",\n tooltip: \"Enable audit_kafka target\",\n type: \"on|off\",\n customValueProcess: (origValue: string) => {\n return origValue === \"\" || origValue === \"on\" ? \"on\" : \"off\";\n },\n },\n {\n name: \"brokers\",\n required: true,\n label: \"Brokers\",\n type: \"csv\",\n placeholder: \"Enter Kafka Broker\",\n },\n {\n name: \"topic\",\n required: false,\n label: \"Topic\",\n type: \"string\",\n placeholder: \"Enter Kafka Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n },\n {\n name: \"sasl\",\n required: false,\n label: \"Use SASL\",\n tooltip:\n \"Enable SASL (Simple Authentication and Security Layer) authentication\",\n type: \"on|off\",\n },\n {\n name: \"sasl_username\",\n required: false,\n label: \"SASL Username\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_password\",\n required: false,\n label: \"SASL Password\",\n type: \"password\",\n placeholder: \"Enter SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_mechanism\",\n required: false,\n label: \"SASL Mechanism\",\n type: \"string\",\n placeholder: \"Enter SASL Mechanism\",\n tooltip: \"SASL authentication mechanism\",\n },\n {\n name: \"tls\",\n required: false,\n label: \"Use TLS\",\n tooltip: \"Enable TLS (Transport Layer Security)\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n required: false,\n label: \"Skip TLS Verification\",\n tooltip: \"Trust server TLS without verification\",\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_tls_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"tls_client_auth\",\n required: false,\n label: \"TLS Client Auth\",\n tooltip:\n \"ClientAuth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n },\n {\n name: \"version\",\n required: false,\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster\",\n type: \"string\",\n },\n ],\n};\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const selectSAs = (\n e: React.ChangeEvent,\n setSelectedSAs: Function,\n selectedSAs: string[],\n) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedSAs]; // We clone the selectedSAs array\n if (checked) {\n // If the user has checked this field we need to push this to selectedSAs\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 setSelectedSAs(elements);\n return elements;\n};\n\nexport const overrideFields = (formFields: IElementValue[]): IOverrideEnv => {\n let overrideReturn: IOverrideEnv = {};\n\n formFields.forEach((envItem) => {\n // it has override values, we construct the value\n if (envItem.env_override) {\n const value: OverrideValue = {\n value: envItem.env_override.value || \"\",\n overrideEnv: envItem.env_override.name || \"\",\n };\n\n overrideReturn = { ...overrideReturn, [envItem.key]: value };\n }\n });\n\n return overrideReturn;\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, useEffect, useState } from \"react\";\nimport {\n CommentBox,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n ReadBox,\n Switch,\n Tooltip,\n} from \"mds\";\nimport { IElementValue, IOverrideEnv, KVField } from \"../Configurations/types\";\nimport CSVMultiSelector from \"../Common/FormComponents/CSVMultiSelector/CSVMultiSelector\";\n\ninterface IConfGenericProps {\n onChange: (newValue: IElementValue[]) => void;\n fields: KVField[];\n defaultVals?: IElementValue[];\n overrideEnv?: IOverrideEnv;\n}\n\n// Function to get defined values,\n//we make this because the backed sometimes don't return all the keys when there is an initial configuration\nexport const valueDef = (\n key: string,\n type: string,\n defaults: IElementValue[],\n) => {\n let defValue = type === \"on|off\" ? \"off\" : \"\";\n\n if (defaults.length > 0) {\n const storedConfig = defaults.find((element) => element.key === key);\n\n if (storedConfig) {\n defValue = storedConfig.value || \"\";\n }\n }\n\n return defValue;\n};\n\nconst ConfTargetGeneric = ({\n onChange,\n fields,\n defaultVals,\n overrideEnv,\n}: IConfGenericProps) => {\n const [valueHolder, setValueHolder] = useState([]);\n const fieldsElements = !fields ? [] : fields;\n const defValList = !defaultVals ? [] : defaultVals;\n\n // Effect to create all the values to hold\n useEffect(() => {\n const values: IElementValue[] = fields.map((field) => {\n const stateInsert: IElementValue = {\n key: field.name,\n value: valueDef(field.name, field.type, defValList),\n };\n return stateInsert;\n });\n\n setValueHolder(values);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fields, defaultVals]);\n\n useEffect(() => {\n onChange(valueHolder);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [valueHolder]);\n\n const setValueElement = (key: string, value: string, index: number) => {\n const valuesDup = [...valueHolder];\n value = value.trim();\n valuesDup[index] = { key, value };\n\n setValueHolder(valuesDup);\n };\n\n const fieldDefinition = (field: KVField, item: number) => {\n const holderItem = valueHolder[item];\n\n if (holderItem) {\n // Override Value with env var, we display generic string component\n const override = overrideEnv?.[`${holderItem.key}`];\n\n if (override) {\n return (\n \n \n \n \n \n }\n sx={{ width: \"100%\" }}\n >\n {override.value}\n \n );\n }\n }\n\n switch (field.type) {\n case \"on|off\":\n const value = holderItem ? holderItem.value : \"off\";\n\n return (\n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setValueElement(field.name, value, item);\n }}\n id={field.name}\n name={field.name}\n label={field.label}\n value={\"switch_on\"}\n tooltip={field.tooltip}\n checked={value === \"on\"}\n />\n );\n case \"csv\":\n return (\n {\n let valCh = \"\";\n\n if (Array.isArray(value)) {\n valCh = value.join(\",\");\n } else {\n valCh = value;\n }\n\n setValueElement(field.name, valCh, item);\n }}\n tooltip={field.tooltip}\n commonPlaceholder={field.placeholder}\n withBorder={true}\n />\n );\n case \"comment\":\n return (\n setValueElement(field.name, e.target.value, item)}\n placeholder={field.placeholder}\n />\n );\n default:\n return (\n ) =>\n setValueElement(field.name, e.target.value, item)\n }\n placeholder={field.placeholder}\n />\n );\n }\n };\n\n return (\n \n {fieldsElements.map((field, item) => (\n {fieldDefinition(field, item)}\n ))}\n \n );\n};\n\nexport default ConfTargetGeneric;\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 { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\nimport { ConfirmDeleteIcon, ProgressBar } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IResetConfiguration {\n configurationName: string;\n closeResetModalAndRefresh: (reloadConfiguration: boolean) => void;\n resetOpen: boolean;\n}\n\nconst ResetConfigurationModal = ({\n configurationName,\n closeResetModalAndRefresh,\n resetOpen,\n}: IResetConfiguration) => {\n const dispatch = useAppDispatch();\n const [resetLoading, setResetLoading] = useState(false);\n\n useEffect(() => {\n if (resetLoading) {\n api.configs\n .resetConfig(configurationName)\n .then(() => {\n setResetLoading(false);\n closeResetModalAndRefresh(true);\n })\n .catch((err) => {\n setResetLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [closeResetModalAndRefresh, configurationName, resetLoading, dispatch]);\n\n const resetConfiguration = () => {\n setResetLoading(true);\n };\n\n return (\n }\n isLoading={resetLoading}\n onConfirm={resetConfiguration}\n onClose={() => {\n closeResetModalAndRefresh(false);\n }}\n confirmationContent={\n \n {resetLoading && }\n \n Are you sure you want to restore these configurations to default\n values?\n
\n \n Please note that this may cause your system to not be accessible\n \n
\n
\n }\n />\n );\n};\n\nexport default ResetConfigurationModal;\n"],"names":["_ref","elements","name","label","tooltip","commonPlaceholder","onChange","withBorder","currentElements","setCurrentElements","useState","bottomList","createRef","useEffect","length","elementsSplit","split","push","refScroll","current","scrollIntoView","onChangeCallback","useCallback","newString","firstUpdate","useRef","elementsString","filter","element","trim","join","onChangeElement","e","persist","updatedElement","index","get","target","parseInt","value","inputs","map","_jsx","InputBox","id","concat","toString","placeholder","overlayIcon","AddIcon","overlayAction","elementsUp","cpList","addEmptyLine","Fragment","children","_jsxs","Box","sx","display","className","InputLabel","alignItems","marginLeft","width","Tooltip","placement","HelpIcon","withBorders","overflowY","height","position","ref","onClose","modalOpen","title","wideLimit","titleIcon","iconColor","dispatch","useAppDispatch","openSnackbar","setOpenSnackbar","modalSnackMessage","useSelector","state","system","modalSnackBar","setModalSnackMessage","message","type","detailedErrorMsg","ModalBox","open","widthLimit","MainError","isModal","Snackbar","closeSnackBar","mode","variant","autoHideDuration","condensed","onCloseEndpoint","setName","endpoint","setEndpoint","authToken","setAuthToken","saving","setSaving","invalidInputs","setInvalidInput","initialInputs","setInitialInputs","initializeInput","item","validateInput","valid","includes","icon","WebhookIcon","ConsoleIcon","PendingItemsIcon","ModalWrapper","FormLayout","containerPadding","event","validity","error","pattern","required","Grid","xs","marginBottom","ProgressBar","modalStyleUtils","modalButtonBar","Button","disabled","onClick","marginRight","color","saveWebhook","payload","key_values","key","arn_resource_id","api","configs","setConfig","then","res","setServerNeedsRestart","data","restart","setSnackBarMessage","configurationIsLoading","catch","err","setErrorSnackMessage","errorToHandler","selectedARN","deleteLoading","setDeleteLoading","resetConfig","defaultWH","ConfirmDialog","confirmText","isOpen","isLoading","onConfirm","onConfirmDelete","ConfirmDeleteIcon","confirmationContent","_overrideValues$enabl","_overrideValues$enabl2","_overrideValues$endpo","_overrideValues$endpo2","_overrideValues$auth_","_overrideValues$auth_2","endpointInfo","endpointState","setEndpointState","endpointLocate","find","tokenLocate","enable","endpointValue","tokenValue","hasOverride","itm","env_override","overrideValues","overrideFields","ReadBox","actionButton","justifyContent","paddingRight","overrideEnv","style","auth_token","Switch","checked","updateWebhook","setResetConfigurationOpen","WebhookSettingslist","newEndpointOpen","setNewEndpointOpen","deleteWebhookOpen","setDeleteWebhookOpen","editWebhookOpen","setEditWebhookOpen","setSelectedARN","selectedEndpoint","setSelectedEndpoint","actions","disableButtonFunction","wHook","_wHook$key_values","container","AddEndpointModal","DeleteWebhookEndpoint","onCloseDelete","EditWebhookEndpoint","onCloseEditWebhook","padding","DataTable","columns","elementKey","renderFunction","EnableFilter","overrideEnabled","flexDirection","justifyItems","fontSize","fill","TierOfflineIcon","TierOnlineIcon","endpointFilter","itemActions","idField","records","entityName","customPaperHeight","selectedConfiguration","navigate","useNavigate","pathname","useLocation","selConfigTab","substring","lastIndexOf","valuesObj","setValueObj","configValues","setConfigValues","configSubsysList","setConfigSubsysList","resetConfigurationOpen","overrideEnvs","setOverrideEnvs","loadingConfig","loadingConfigurations","configId","configInfo","values","keyVals","fieldsConfigurations","field","includedValue","customValue","customValueProcess","removeEmptyFields","configuration_id","onValueChange","newValue","resetConfigurationMOpen","onMouseMove","setHelpName","configuration_label","ResetConfigurationModal","configurationName","closeResetModalAndRefresh","resetOpen","textAlign","paddingTop","Loader","WebhookSettings","noValidate","onSubmit","preventDefault","flexFlow","gridTemplateColumns","gap","ConfTargetGeneric","fields","defaultVals","maxHeight","ConfigurationsList","configName","validActiveConfig","configurationElements","containerClassName","minWidth","EditConfiguration","ExportConfigButton","useDispatch","isReqLoading","invokeApi","useApi","performDownload","Blob","window","atob","DateTime","now","toFormat","TooltipWrapper","UploadIcon","ImportConfigButton","needsRestart","serverNeedsRestart","refreshPage","setRefreshPage","undefined","fileUpload","files","fileToUpload","formData","FormData","blobFile","append","click","DownloadIcon","NON_SUB_SYS_CONFIG_ITEMS","IGNORED_CONFIG_SUB_SYS","ConfigurationOptions","configSubSysList","setConfigSubSysList","fetchConfigSubSysList","async","listConfig","_res$data","configurations","_res$data2","confSubSysList","reduce","acc","availableConfigSubSys","_ref2","PageHeaderWrapper","HelpMenu","PageLayout","ScreenTitle","SettingsIcon","Tabs","currentTabOrPath","onTabClick","path","useRouteTabs","options","tabConfig","to","IAM_PAGES","SETTINGS","routes","Routes","Route","ConfigurationForm","Navigate","HelpBox","iconComponent","help","href","rel","PublicIcon","CompressIcon","CodeIcon","FirstAidIcon","FindReplaceIcon","KeyIcon","LogsIcon","region","compression","heal","scanner","etcd","multiline","logger_webhook","audit_webhook","audit_kafka","origValue","formFields","selectSAs","setSelectedSAs","selectedSAs","targetD","overrideReturn","forEach","envItem","valueDef","defaults","defValue","storedConfig","valueHolder","setValueHolder","fieldsElements","defValList","setValueElement","valuesDup","fieldDefinition","holderItem","override","CSVMultiSelector","valCh","Array","isArray","CommentBox","resetLoading","setResetLoading","resetConfiguration","maxWidth","whiteSpace","wordWrap"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/7052.37bcb35a.chunk.js","mappings":"kLAqCA,MAkJA,EAlJyBA,IAQC,IARA,SACxBC,EAAQ,KACRC,EAAI,MACJC,EAAK,QACLC,EAAU,GAAE,kBACZC,EAAoB,GAAE,SACtBC,EAAQ,WACRC,GAAa,GACKP,EAClB,MAAOQ,EAAiBC,IAAsBC,EAAAA,EAAAA,UAAmB,CAAC,KAC5DC,GAAaC,EAAAA,EAAAA,cAGnBC,EAAAA,EAAAA,YAAU,KACR,GAC6B,IAA3BL,EAAgBM,QACO,KAAvBN,EAAgB,IAChBP,GACa,KAAbA,EACA,CACA,MAAMc,EAAgBd,EAASe,MAAM,KACrCD,EAAcE,KAAK,IAEnBR,EAAmBM,EACrB,IAGC,CAACd,EAAUO,KAGdK,EAAAA,EAAAA,YAAU,KACR,GAAIL,EAAgBM,OAAS,EAAG,CAC9B,MAAMI,EAAYP,EAAWQ,QACzBD,GACFA,EAAUE,gBAAe,EAE7B,IACC,CAACZ,EAAiBG,IAErB,MAAMU,GAAmBC,EAAAA,EAAAA,cACtBC,IACCjB,EAASiB,EAAU,GAErB,CAACjB,IAIGkB,GAAcC,EAAAA,EAAAA,SAAO,IAC3BZ,EAAAA,EAAAA,YAAU,KACR,GAAIW,EAAYL,QAEd,YADAK,EAAYL,SAAU,GAGxB,MAAMO,EAAiBlB,EACpBmB,QAAQC,GAA+B,KAAnBA,EAAQC,SAC5BC,KAAK,KAERT,EAAiBK,EAAe,GAG/B,CAAClB,IAGJ,MASMuB,EAAmBC,IACvBA,EAAEC,UAEF,IAAIC,EAAiB,IAAI1B,GACzB,MAAM2B,EAAQC,IAAIJ,EAAEK,OAAQ,gBAAiB,KAE7CH,EADiBI,SAASH,IACCH,EAAEK,OAAOE,MAEpC9B,EAAmByB,EAAe,EAG9BM,EAAShC,EAAgBiC,KAAI,CAACb,EAASO,KAEzCO,EAAAA,EAAAA,KAACC,EAAAA,IAAQ,CAEPC,GAAE,GAAAC,OAAK3C,EAAI,KAAA2C,OAAIV,EAAMW,YACrB3C,MAAO,GACPD,KAAI,GAAA2C,OAAK3C,EAAI,KAAA2C,OAAIV,EAAMW,YACvBP,MAAO/B,EAAgB2B,GACvB7B,SAAUyB,EACVI,MAAOA,EACPY,YAAa1C,EACb2C,YAAab,IAAU3B,EAAgBM,OAAS,GAAI4B,EAAAA,EAAAA,KAACO,EAAAA,IAAO,IAAM,KAClEC,cAAeA,KAhCCC,KACpB,GAAiD,KAA7CA,EAAWA,EAAWrC,OAAS,GAAGe,OAAe,CACnD,MAAMuB,EAAS,IAAID,GACnBC,EAAOnC,KAAK,IACZR,EAAmB2C,EACrB,GA4BMC,CAAa7C,EAAgB,GAC7B,aAAAqC,OAXgB3C,EAAI,KAAA2C,OAAIV,EAAMW,eAgBtC,OACEJ,EAAAA,EAAAA,KAACY,EAAAA,SAAQ,CAAAC,UACPC,EAAAA,EAAAA,MAACC,EAAAA,IAAG,CAACC,GAAI,CAAEC,QAAS,QAAUC,UAAW,YAAYL,SAAA,EACnDC,EAAAA,EAAAA,MAACK,EAAAA,IAAU,CACTH,GAAI,CACFI,WAAY,cACZP,SAAA,EAEFb,EAAAA,EAAAA,KAAA,QAAAa,SAAOpD,IACM,KAAZC,IACCsC,EAAAA,EAAAA,KAACe,EAAAA,IAAG,CACFC,GAAI,CACFK,WAAY,EACZJ,QAAS,OACTG,WAAY,SACZ,cAAe,CACbE,MAAO,KAETT,UAEFb,EAAAA,EAAAA,KAACuB,EAAAA,IAAO,CAAC7D,QAASA,EAAS8D,UAAU,MAAKX,UACxCb,EAAAA,EAAAA,KAACe,EAAAA,IAAG,CAACG,UAAWxD,EAAQmD,UACtBb,EAAAA,EAAAA,KAACyB,EAAAA,IAAQ,cAMnBX,EAAAA,EAAAA,MAACC,EAAAA,IAAG,CACFW,YAAa7D,EACbmD,GAAI,CACFM,MAAO,OACPK,UAAW,OACXC,OAAQ,IACRC,SAAU,YACVhB,SAAA,CAEDf,GACDE,EAAAA,EAAAA,KAAA,OAAK8B,IAAK7D,WAGL,C,oHClJf,MAyEA,EAzEqBX,IASD,IATE,QACpByE,EAAO,UACPC,EAAS,MACTC,EAAK,SACLpB,EAAQ,UACRqB,GAAY,EAAI,UAChBC,EAAY,KAAI,UAChBC,EAAY,UAAS,GACrBpB,GACY1D,EACZ,MAAM+E,GAAWC,EAAAA,EAAAA,OACVC,EAAcC,IAAmBxE,EAAAA,EAAAA,WAAkB,GAEpDyE,GAAoBC,EAAAA,EAAAA,KACvBC,GAAoBA,EAAMC,OAAOC,iBAGpC1E,EAAAA,EAAAA,YAAU,KACRkE,GAASS,EAAAA,EAAAA,IAAqB,IAAI,GACjC,CAACT,KAEJlE,EAAAA,EAAAA,YAAU,KACR,GAAIsE,EAAmB,CACrB,GAAkC,KAA9BA,EAAkBM,QAEpB,YADAP,GAAgB,GAIa,UAA3BC,EAAkBO,MACpBR,GAAgB,EAEpB,IACC,CAACC,IAOJ,IAAIM,EAAU,GASd,OAPIN,IACFM,EAAUN,EAAkBQ,kBACZ,KAAZF,GAAmBA,GAAWA,EAAQ3E,OAAS,KACjD2E,EAAUN,EAAkBM,WAK9BjC,EAAAA,EAAAA,MAACoC,EAAAA,IAAQ,CACPnB,QAASA,EACToB,KAAMnB,EACNC,MAAOA,EACPE,UAAWA,EACXiB,WAAYlB,EACZlB,GAAIA,EACJoB,UAAWA,EAAUvB,SAAA,EAErBb,EAAAA,EAAAA,KAACqD,EAAAA,EAAS,CAACC,SAAS,KACpBtD,EAAAA,EAAAA,KAACuD,EAAAA,IAAQ,CACPxB,QA1BgByB,KACpBhB,GAAgB,GAChBH,GAASS,EAAAA,EAAAA,IAAqB,IAAI,EAyB9BK,KAAMZ,EACNQ,QAASA,EACTU,KAAM,SACNC,QAAoC,UAA3BjB,EAAkBO,KAAmB,QAAU,UACxDW,iBAA6C,UAA3BlB,EAAkBO,KAAmB,GAAK,EAC5DY,WAAS,IAEV/C,IACQ,C,4MCzDf,MAsMA,EAtMyBvD,IAAsD,IAArD,KAAE6F,EAAI,KAAEH,EAAI,gBAAEa,GAAiCvG,EACvE,MAAOE,EAAMsG,IAAW9F,EAAAA,EAAAA,UAAiB,KAClC+F,EAAUC,IAAehG,EAAAA,EAAAA,UAAiB,KAC1CiG,EAAWC,IAAgBlG,EAAAA,EAAAA,UAAiB,KAC5CmG,EAAQC,IAAapG,EAAAA,EAAAA,WAAkB,IACvCqG,EAAeC,IAAmBtG,EAAAA,EAAAA,UAAmB,CAC1D,OACA,cAEKuG,EAAeC,IAAoBxG,EAAAA,EAAAA,UAAmB,CAC3D,OACA,WACA,eAGIqE,GAAWC,EAAAA,EAAAA,MAyDXmC,EAAmBjH,IACvBgH,EAAiBD,EAActF,QAAQyF,GAASA,IAASlH,IAAM,EAG3DmH,EAAgBA,CAACnH,EAAcoH,KAC/BP,EAAcQ,SAASrH,IAASoH,EAClCN,EAAgBD,EAAcpF,QAAQyF,GAASA,IAASlH,KAIrDoH,GAAUP,EAAcQ,SAASrH,IACpC8G,EAAgB,IAAID,EAAe7G,GACrC,EAGF,IAAIyE,EAAQ,kBACR6C,GAAO9E,EAAAA,EAAAA,KAAC+E,EAAAA,IAAW,IAEvB,OAAQ/B,GACN,IAAK,iBACHf,EAAQ,qBACR6C,GAAO9E,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,IACnB,MACF,IAAK,gBACH/C,EAAQ,oBACR6C,GAAO9E,EAAAA,EAAAA,KAACiF,EAAAA,IAAgB,IAI5B,OACEjF,EAAAA,EAAAA,KAACY,EAAAA,SAAQ,CAAAC,UACPC,EAAAA,EAAAA,MAACoE,EAAAA,EAAY,CACXlD,UAAWmB,EACXlB,MAAOA,EACPF,QAAS8B,EACT1B,UAAW2C,EAAKjE,SAAA,EAEhBC,EAAAA,EAAAA,MAACqE,EAAAA,IAAU,CAACC,kBAAkB,EAAO1D,aAAa,EAAMb,SAAA,EACtDb,EAAAA,EAAAA,KAACC,EAAAA,IAAQ,CACPC,GAAG,OACH1C,KAAK,OACLI,SAAWyH,IACTZ,EAAgB,QAChBX,EAAQuB,EAAM1F,OAAOE,OACrB8E,EAAc,OAAQU,EAAM1F,OAAO2F,SAASV,MAAM,EAEpDW,MACElB,EAAcQ,SAAS,UAAYN,EAAcM,SAAS,QACtD,eACA,GAENpH,MAAM,OACNoC,MAAOrC,EACPgI,QAAS,2BACTC,UAAQ,KAEVzF,EAAAA,EAAAA,KAACC,EAAAA,IAAQ,CACPC,GAAG,WACH1C,KAAK,WACLI,SAAWyH,IACTZ,EAAgB,YAChBT,EAAYqB,EAAM1F,OAAOE,OACzB8E,EAAc,WAAYU,EAAM1F,OAAO2F,SAASV,MAAM,EAExDW,MACElB,EAAcQ,SAAS,cACtBN,EAAcM,SAAS,YACpB,uBACA,GAENpH,MAAM,WACNoC,MAAOkE,EACPyB,QACE,yEAEFC,UAAQ,KAEVzF,EAAAA,EAAAA,KAACC,EAAAA,IAAQ,CACPC,GAAG,aACH1C,KAAK,aACLI,SAAWyH,IACTZ,EAAgB,cAChBP,EAAamB,EAAM1F,OAAOE,MAAM,EAElCpC,MAAM,aACNoC,MAAOoE,OAGVE,IACCnE,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJiB,GAAI,GACJ3E,GAAI,CACF4E,aAAc,IACd/E,UAEFb,EAAAA,EAAAA,KAAC6F,EAAAA,IAAW,OAGhB/E,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CAAChB,MAAI,EAACiB,GAAI,GAAI3E,GAAI8E,EAAAA,GAAgBC,eAAelF,SAAA,EACpDb,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,QACJ8C,KAAK,SACLU,QAAQ,UACRuC,SAAU9B,EACV+B,QAASrC,EACTpG,MAAO,SACPuD,GAAI,CACFmF,YAAa,OAGjBnG,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,iBACJ8C,KAAK,SACLU,QAAQ,aACR0C,MAAM,UACNH,SAAU9B,GAAmC,IAAzBE,EAAcjG,OAClCX,MAAO,OACPyI,QA7KUG,KAClB,GAAIlC,EACF,OAGF,GAA6B,IAAzBE,EAAcjG,OAChB,OAGF,GAAoB,KAAhBZ,EAAK2B,OAGP,YAFAmF,EAAgB,IAAID,EAAe,SAKrC,GAAwB,KAApBN,EAAS5E,OAGX,YAFAmF,EAAgB,IAAID,EAAe,aAKrCD,GAAU,GAEV,MAAMkC,EAAU,CACdC,WAAY,CACV,CACEC,IAAK,WACL3G,MAAOkE,GAET,CACEyC,IAAK,aACL3G,MAAOoE,IAGXwC,gBAAiBjJ,GAGnBkJ,EAAAA,EAAIC,QACDC,UAAU5D,EAAMsD,GAChBO,MAAMC,IACL1C,GAAU,GACV/B,GAAS0E,EAAAA,EAAAA,IAAsBD,EAAIE,KAAKC,UAAW,IAC9CH,EAAIE,KAAKC,SACZ5E,GAAS6E,EAAAA,EAAAA,IAAmB,qCAG9BrD,IACAxB,GAAS8E,EAAAA,EAAAA,KAAuB,GAAM,IAEvCC,OAAOC,IACNjD,GAAU,GACV/B,GAASiF,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAI9B,QAAQ,GACzD,WA6HO,E,eC7Mf,MA0DA,EA1D8BjI,IAIC,IAJA,UAC7B0E,EAAS,QACTD,EAAO,YACPyF,GACuBlK,EACvB,MAAOmK,EAAeC,IAAoB1J,EAAAA,EAAAA,WAAkB,GAEtDqE,GAAWC,EAAAA,EAAAA,OAEjBnE,EAAAA,EAAAA,YAAU,KACJsJ,GACFf,EAAAA,EAAIC,QACDgB,YAAYH,GACZX,MAAK,KACJa,GAAiB,GACjBrF,GAAS0E,EAAAA,EAAAA,KAAsB,IAC/B1E,GAAS8E,EAAAA,EAAAA,KAAuB,IAChCpF,GAAS,IAEVqF,OAAOC,IACNK,GAAiB,GACjBrF,GAASiF,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAI9B,QAAQ,GAE/D,GACC,CAACkC,EAAepF,EAAUN,EAASyF,IAEtC,MAIMI,GAAaJ,EAAY3C,SAAS,KAExC,IAAI9B,EAAU,0DAOd,OAJI6E,IACF7E,EAAU,+CAIV/C,EAAAA,EAAAA,KAAC6H,EAAAA,EAAa,CACZ5F,MAAO2F,EAAS,yCAChBE,YAAaF,EAAY,QAAU,SACnCG,OAAQ/F,EACRgG,UAAWP,EACXQ,UAnBoBC,KACtBR,GAAiB,EAAK,EAmBpBvF,WAAWnC,EAAAA,EAAAA,KAACmI,EAAAA,IAAiB,IAC7BpG,QAASA,EACTqG,qBACEtH,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,IAAAV,OACH4C,EAAO,MACX/C,EAAAA,EAAAA,KAAA,UAAAa,SAAS2G,IAAqB,QAGlC,ECiSN,EAtU0BlK,IAKH,IAAD+K,EAAAC,EAAAC,EAAAC,EAAAC,EAAAC,EAAA,IALK,KACzBvF,EAAI,KACJH,EAAI,aACJ2F,EAAY,gBACZ9E,GACevG,EACf,MAAOE,EAAMsG,IAAW9F,EAAAA,EAAAA,UAAiB,KAClC+F,EAAUC,IAAehG,EAAAA,EAAAA,UAAiB,KAC1CiG,EAAWC,IAAgBlG,EAAAA,EAAAA,UAAiB,KAC5C4K,EAAeC,IAAoB7K,EAAAA,EAAAA,UAAiB,OACpDmG,EAAQC,IAAapG,EAAAA,EAAAA,WAAkB,IACvCqG,EAAeC,IAAmBtG,EAAAA,EAAAA,UAAmB,IAEtDqE,GAAWC,EAAAA,EAAAA,OAEjBnE,EAAAA,EAAAA,YAAU,KACR,GAAIwK,EAAc,CAChB,MAAMG,EAAiBH,EAAapC,WAAWwC,MAC5CvC,GAAoB,aAAZA,EAAIA,MAETwC,EAAcL,EAAapC,WAAWwC,MACzCvC,GAAoB,eAAZA,EAAIA,MAETyC,EAASN,EAAapC,WAAWwC,MACpCvC,GAAoB,WAAZA,EAAIA,MAGf,IAAInC,EAA0B,GAE9B,GAAIyE,EAAgB,CAClB,MAAMI,EAAgBJ,EAAejJ,MAEf,KAAlBqJ,EACF7E,EAAc9F,KAAK,YAEnByF,EAAYkF,EAEhB,CAEA,GAAIF,EAAa,CACf,MAAMG,EAAaH,EAAYnJ,MAEZ,KAAfsJ,EACF9E,EAAc9F,KAAK,cAEnB2F,EAAaiF,EAEjB,CAEIF,GACmB,QAAjBA,EAAOpJ,OACTgJ,EAAiBI,EAAOpJ,OAI5BiE,EAAQ6E,EAAanL,MAAQ,IAC7B8G,EAAgBD,EAClB,IACC,CAACsE,IAEJ,MA+DMf,GAAapK,EAAKqH,SAAS,KAC3BuE,EAAcT,EAAapC,WAAWtH,QACzCoK,KAAUA,EAAIC,eAGXC,GAAiBC,EAAAA,EAAAA,IAAeJ,GAEtC,IAAInH,EAAQ,eACR6C,GAAO9E,EAAAA,EAAAA,KAAC+E,EAAAA,IAAW,IAEvB,OAAQ/B,GACN,IAAK,iBACHf,EAAK,QAAA9B,OAAWyH,EAAY,gBAAkB,GAAE,kBAChD9C,GAAO9E,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,IACnB,MACF,IAAK,gBACH/C,EAAK,QAAA9B,OAAWyH,EAAY,gBAAkB,GAAE,iBAChD9C,GAAO9E,EAAAA,EAAAA,KAACiF,EAAAA,IAAgB,IAQ5B,OAJImE,EAAYhL,OAAS,IACvB6D,EAAQ,8BAIRjC,EAAAA,EAAAA,KAACY,EAAAA,SAAQ,CAAAC,UACPb,EAAAA,EAAAA,KAACkF,EAAAA,EAAY,CACXlD,UAAWmB,EACXlB,MAAK,GAAA9B,OAAK8B,GAAK9B,OAAGyH,EAAY,GAAE,MAAAzH,OAAS3C,IACzCuE,QAAS8B,EACT1B,UAAW2C,EAAKjE,UAEhBb,EAAAA,EAAAA,KAACmF,EAAAA,IAAU,CAACzD,aAAa,EAAO0D,kBAAkB,EAAMvE,SACrDuI,EAAYhL,OAAS,GACpB0C,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,EACPb,EAAAA,EAAAA,KAACyJ,EAAAA,IAAO,CACNhM,MAAO,UACPuD,GAAI,CAAEM,MAAO,QACboI,cACE1J,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJ1D,GAAI,CACFC,QAAS,OACT0I,eAAgB,WAChBC,aAAc,QACd/I,UAEFb,EAAAA,EAAAA,KAACuB,EAAAA,IAAO,CACN7D,QACE6L,EAAeN,OAAM,8BAAA9I,QAEM,QAArBkI,EAAAkB,EAAeN,cAAM,IAAAZ,OAAA,EAArBA,EAAuBwB,cAAe,MAAK,yBAE7C,GAENrI,UAAW,OAAOX,UAElBb,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,CAAC8E,MAAO,CAAExI,MAAO,UAGlCT,UAEqB,QAArByH,EAAAiB,EAAeN,cAAM,IAAAX,OAAA,EAArBA,EAAuBzI,QAAS,OAEnCG,EAAAA,EAAAA,KAACyJ,EAAAA,IAAO,CACNhM,MAAO,WACPuD,GAAI,CAAEM,MAAO,QACboI,cACE1J,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJ1D,GAAI,CACFC,QAAS,OACT0I,eAAgB,WAChBC,aAAc,QACd/I,UAEFb,EAAAA,EAAAA,KAACuB,EAAAA,IAAO,CACN7D,QACE6L,EAAeN,OAAM,8BAAA9I,QAEQ,QAAvBoI,EAAAgB,EAAexF,gBAAQ,IAAAwE,OAAA,EAAvBA,EAAyBsB,cAAe,MAAK,yBAE/C,GAENrI,UAAW,OAAOX,UAElBb,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,CAAC8E,MAAO,CAAExI,MAAO,UAGlCT,UAEuB,QAAvB2H,EAAAe,EAAexF,gBAAQ,IAAAyE,OAAA,EAAvBA,EAAyB3I,QAAS,OAErCG,EAAAA,EAAAA,KAACyJ,EAAAA,IAAO,CACNhM,MAAO,aACPuD,GAAI,CAAEM,MAAO,QACboI,cACE1J,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJ1D,GAAI,CACFC,QAAS,OACT0I,eAAgB,WAChBC,aAAc,QACd/I,UAEFb,EAAAA,EAAAA,KAACuB,EAAAA,IAAO,CACN7D,QACE6L,EAAeN,OAAM,8BAAA9I,QAEU,QAAzBsI,EAAAc,EAAeQ,kBAAU,IAAAtB,OAAA,EAAzBA,EAA2BoB,cAAe,MAAK,yBAEjD,GAENrI,UAAW,OAAOX,UAElBb,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,CAAC8E,MAAO,CAAExI,MAAO,UAGlCT,UAEyB,QAAzB6H,EAAAa,EAAeQ,kBAAU,IAAArB,OAAA,EAAzBA,EAA2B7I,QAAS,UAIzCiB,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,EACPb,EAAAA,EAAAA,KAACgK,EAAAA,IAAM,CACLpM,SAAW0B,IACT,MAAMO,EAAQP,EAAEK,OAAOsK,QAAU,KAAO,MACxCpB,EAAiBhJ,EAAM,EAEzBK,GAAI,mBACJ1C,KAAM,mBACNC,MAAO,UACPoC,MAAO,YACPoK,QAA2B,OAAlBrB,KAEX5I,EAAAA,EAAAA,KAACC,EAAAA,IAAQ,CACPC,GAAG,WACH1C,KAAK,WACLI,SAAWyH,IACTrB,EAAYqB,EAAM1F,OAAOE,OAxJnB8E,EAACnH,EAAcoH,KAC/BP,EAAcQ,SAASrH,IAASoH,EAClCN,EAAgBD,EAAcpF,QAAQyF,GAASA,IAASlH,KAIrDoH,GAAUP,EAAcQ,SAASrH,IACpC8G,EAAgB,IAAID,EAAe7G,GACrC,EAiJcmH,CAAc,WAAYU,EAAM1F,OAAO2F,SAASV,MAAM,EAExDW,MACElB,EAAcQ,SAAS,YACnB,uBACA,GAENpH,MAAM,WACNoC,MAAOkE,EACPyB,QACE,yEAEFC,UAAQ,KAEVzF,EAAAA,EAAAA,KAACC,EAAAA,IAAQ,CACPC,GAAG,aACH1C,KAAK,aACLI,SAAWyH,IACTnB,EAAamB,EAAM1F,OAAOE,MAAM,EAElCpC,MAAM,aACNoC,MAAOoE,IAERE,IACCnE,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJiB,GAAI,GACJ3E,GAAI,CACF4E,aAAc,IACd/E,UAEFb,EAAAA,EAAAA,KAAC6F,EAAAA,IAAW,OAGhB/E,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CAAChB,MAAI,EAAC1D,GAAI8E,EAAAA,GAAgBC,eAAelF,SAAA,EAC5Cb,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,QACJ8C,KAAK,SACLU,QAAQ,UACRuC,SAAU9B,EACV+B,QAASrC,EACTpG,MAAO,YAETuC,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,iBACJ8C,KAAK,SACLU,QAAQ,aACR0C,MAAM,UACNH,SAAU9B,GAAmC,IAAzBE,EAAcjG,OAClCX,MAAO,SACPyI,QA/PMgE,KACpB,GAAI/F,EACF,OAGF,GAA6B,IAAzBE,EAAcjG,OAChB,OAGF,IAAK2F,GAAgC,KAApBA,EAAS5E,OAGxB,YAFAmF,EAAgB,IAAID,EAAe,aAKrCD,GAAU,GAEV,MAAMkC,EAAU,CACdC,WAAY,CACV,CACEC,IAAK,WACL3G,MAAOkE,GAET,CACEyC,IAAK,aACL3G,MAAOoE,GAET,CACEuC,IAAK,SACL3G,MAAO+I,KAKblC,EAAAA,EAAIC,QACDC,UAAUpJ,EAAM8I,GAChBO,MAAMC,IACL1C,GAAU,GACV/B,GAAS0E,EAAAA,EAAAA,IAAsBD,EAAIE,KAAKC,UAAW,IAC9CH,EAAIE,KAAKC,SACZ5E,GAAS6E,EAAAA,EAAAA,IAAmB,qCAG9BrD,IACAxB,GAAS8E,EAAAA,EAAAA,KAAuB,GAAM,IAEvCC,OAAOC,IACNjD,GAAU,GACV/B,GAASiF,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAI9B,QAAQ,GACzD,eAqNO,ECnIf,EA9MwBjI,IAIK,IAJJ,0BACvB6M,EAAyB,oBACzBC,EAAmB,KACnBpH,GACqB1F,EACrB,MAAO+M,EAAiBC,IAAsBtM,EAAAA,EAAAA,WAAkB,IACzDuM,EAAmBC,IAAwBxM,EAAAA,EAAAA,WAAkB,IAC7DyM,EAAiBC,IAAsB1M,EAAAA,EAAAA,WAAkB,IACzDwJ,EAAamD,IAAkB3M,EAAAA,EAAAA,UAAiB,KAChD4M,EAAkBC,IACvB7M,EAAAA,EAAAA,UAAmC,MAyF/B8M,EAAU,CACd,CACE9H,KAAM,OACNkD,QAAUxB,IACJA,EAAKlH,OACPkN,GAAmB,GACnBG,EAAoBnG,GACtB,GAGJ,CACE1B,KAAM,SACNkD,QAAUxB,IACJA,EAAKlH,OACPgN,GAAqB,GACrBG,EAAejG,EAAKlH,MACtB,EAEFuN,sBAAwBrG,IACtB,MAAMsG,EAAQZ,EAAoBrB,MAC/B7J,GAAYA,EAAQ1B,OAASkH,IAGhC,GAAIsG,EAAO,CAAC,IAADC,EACT,MAAM7B,EAA8B,QAAnB6B,EAAGD,EAAMzE,kBAAU,IAAA0E,OAAA,EAAhBA,EAAkBhM,QACnCoK,KAAUA,EAAIC,eAIjB,SAAIF,GAAeA,EAAYhL,OAAS,EAK1C,CACA,OAAO,CAAK,IAIlB,OACE0C,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CAACwF,WAAS,EAAArK,SAAA,CACZwJ,IACCrK,EAAAA,EAAAA,KAACmL,EAAgB,CACfhI,KAAMkH,EACNrH,KAAMA,EACNa,gBAAiBA,KACfyG,GAAmB,EAAM,IAI9BC,IACCvK,EAAAA,EAAAA,KAACoL,EAAqB,CACpBpJ,UAAWuI,EACXxI,QA/DcsJ,KACpBb,GAAqB,GACrBG,EAAe,GAAG,EA8DZnD,YAAaA,EACbxE,KAAMA,IAGTyH,GAAmBG,IAClB5K,EAAAA,EAAAA,KAACsL,EAAmB,CAClBnI,KAAMsH,EACNzH,KAAMA,EACN2F,aAAciC,EACd/G,gBApEmB0H,KACzBb,GAAmB,GACnBG,EAAoB,KAAK,KAqEvB7K,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CAAChB,MAAI,EAACiB,GAAI,GAAI3E,GAAI,CAAEC,QAAS,OAAQ0I,eAAgB,YAAa9I,UACrEb,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,aACJwD,QAAQ,aACRwC,QAASA,KACPoE,GAAmB,EAAK,EACxBzJ,SACH,oBAIHb,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CAAChB,MAAI,EAACiB,GAAI,GAAI3E,GAAI,CAAEwK,QAAS,eAAgB3K,UAChDC,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,EACPb,EAAAA,EAAAA,KAAA,MAAAa,SAAI,oCACJb,EAAAA,EAAAA,KAACyL,EAAAA,IAAS,CACRC,QAAS,CACP,CACEjO,MAAO,SACPkO,WAAY,aACZC,eA9JelH,IAC3B,MAAMmH,EAAenH,EAAKqE,MAAMM,GAAoB,WAAZA,EAAI7C,MAE5C,GAAgB,OAAZqF,QAAY,IAAZA,GAAAA,EAAcvC,aAAc,CAC9B,MAAMwC,EACS,OAAZD,QAAY,IAAZA,GAAAA,EAAcvC,aAAazJ,OACS,QAAzB,OAAZgM,QAAY,IAAZA,OAAY,EAAZA,EAAcvC,aAAazJ,QACd,OAAZgM,QAAY,IAAZA,GAAAA,EAAcvC,aAAazJ,MAExB,WADA,UAEN,OACEiB,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CACHwF,WAAS,EACTlK,GAAI,CACFC,QAAS,OACT8K,cAAe,SACf3K,WAAY,SACZ4K,aAAc,QACdC,SAAU,OACVpL,SAAA,EAEFb,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,CAAC8E,MAAO,CAAEoC,KAAM,UAAW5K,MAAO,UAC7CwK,EAAkB,UAAY,aAGrC,CAGA,OAAKD,GAAuC,OAAvBA,EAAahM,OAAmBgM,EAAahM,OAmBhEiB,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CACHwF,WAAS,EACTlK,GAAI,CACFC,QAAS,OACT8K,cAAe,SACf3K,WAAY,SACZ4K,aAAc,QACdC,SAAU,OACVpL,SAAA,EAEFb,EAAAA,EAAAA,KAACmM,EAAAA,IAAe,CAACrC,MAAO,CAAEoC,KAAM,UAAW5K,MAAO,GAAIM,OAAQ,MAAQ,eA3BtEd,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CACHwF,WAAS,EACTlK,GAAI,CACFC,QAAS,OACT8K,cAAe,SACf3K,WAAY,SACZ4K,aAAc,QACdC,SAAU,OACVpL,SAAA,EAEFb,EAAAA,EAAAA,KAACoM,EAAAA,IAAc,CAACtC,MAAO,CAAEoC,KAAM,UAAW5K,MAAO,GAAIM,OAAQ,MAAQ,YAmBlE,EAoGGN,MAAO,IAET,CAAE7D,MAAO,OAAQkO,WAAY,QAC7B,CACElO,MAAO,WACPkO,WAAY,aACZC,eAnLUlH,IACtB,MAAM2H,EAAiB3H,EAAKqE,MAAMM,GAAoB,aAAZA,EAAI7C,MAE9C,OAAI6F,EACEA,EAAe/C,aACV+C,EAAe/C,aAAazJ,MAG9BwM,EAAexM,MAGjB,EAAE,IA2KDyM,YAAaxB,EACbyB,QAAQ,OACRvE,WAAW,EACXwE,QAASpC,EACTqC,WAAW,YACXC,kBAAmB,+BAIpB,E,yBC5LX,MAgOA,EAhO0BpP,IAGY,IAHX,sBACzBqP,EAAqB,UACrBzL,EAAY,IACkB5D,EAC9B,MAAM+E,GAAWC,EAAAA,EAAAA,MACXsK,GAAWC,EAAAA,EAAAA,OACX,SAAEC,EAAW,KAAOC,EAAAA,EAAAA,MAE1B,IAAIC,EAAeF,EAASG,UAAUH,EAASI,YAAY,KAAO,GAClEF,EAAgC,aAAjBA,EAA8B,SAAWA,EAGxD,MAAOG,EAAWC,IAAepP,EAAAA,EAAAA,UAA0B,KACpDmG,EAAQC,IAAapG,EAAAA,EAAAA,WAAkB,IACvCqP,EAAcC,IAAmBtP,EAAAA,EAAAA,UAA0B,KAC3DuP,EAAkBC,IAAuBxP,EAAAA,EAAAA,UAA0B,KACnEyP,EAAwBtD,IAC7BnM,EAAAA,EAAAA,WAAkB,IACb0P,EAAcC,IAAmB3P,EAAAA,EAAAA,UAAuB,CAAC,GAE1D4P,GAAgBlL,EAAAA,EAAAA,KACnBC,GAAoBA,EAAMC,OAAOiL,yBAGpC1P,EAAAA,EAAAA,YAAU,KACRkE,GAAS8E,EAAAA,EAAAA,KAAuB,GAAM,GACrC,CAAC6F,EAAc3K,KAElBlE,EAAAA,EAAAA,YAAU,KACR,GAAIyP,EAAe,CACjB,MAAME,EAAWpO,IAAIiN,EAAuB,oBAAoB,GAEhE,GAAImB,EAiCF,YAhCApH,EAAAA,EAAIC,QACDoH,WAAWD,GACXjH,MAAMC,IACL0G,EAAoB1G,EAAIE,MACxB,IAAIgH,EAA4BtO,IAAIoH,EAAIE,KAAK,GAAI,aAAc,IAE/D,MAEMiH,EAF0BC,EAAAA,GAAqBJ,GAEP/N,KAAKoO,IACjD,MAAMC,EAAgBJ,EAAOjF,MAC1B7J,GAA6BA,EAAQsH,MAAQ2H,EAAM3Q,OAEhD6Q,GAA2B,OAAbD,QAAa,IAAbA,OAAa,EAAbA,EAAevO,QAAS,GAE5C,MAAO,CACL2G,IAAK2H,EAAM3Q,KACXqC,MAAOsO,EAAMG,mBACTH,EAAMG,mBAAmBD,GACzBA,EACJ/E,aAA2B,OAAb8E,QAAa,IAAbA,OAAa,EAAbA,EAAe9E,aAC9B,IAGHgE,EAAgBW,GAChBN,GAAgBnE,EAAAA,EAAAA,IAAeyE,IAC/B5L,GAAS8E,EAAAA,EAAAA,KAAuB,GAAO,IAExCC,OAAOC,IACNhF,GAAS8E,EAAAA,EAAAA,KAAuB,IAChC9E,GAASiF,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAI9B,QAAQ,IAK/DlD,GAAS8E,EAAAA,EAAAA,KAAuB,GAClC,IACC,CAACyG,EAAejB,EAAuBtK,KAE1ClE,EAAAA,EAAAA,YAAU,KACR,GAAIgG,EAAQ,CACV,MAAMmC,EAAU,CACdC,YAAYgI,EAAAA,EAAAA,IAAkBpB,IAEhCzG,EAAAA,EAAIC,QACDC,UAAU+F,EAAsB6B,iBAAkBlI,GAClDO,MAAMC,IACL1C,GAAU,GACV/B,GAAS0E,EAAAA,EAAAA,IAAsBD,EAAIE,KAAKC,UAAW,IACnD5E,GAAS8E,EAAAA,EAAAA,KAAuB,IAC3BL,EAAIE,KAAKC,SACZ5E,GAAS6E,EAAAA,EAAAA,IAAmB,oCAC9B,IAEDE,OAAOC,IACNjD,GAAU,GACV/B,GAASiF,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAI9B,QAAQ,GAE/D,IACC,CAACpB,EAAQ9B,EAAUsK,EAAuBQ,EAAWP,IAGxD,MAKM6B,GAAgB7P,EAAAA,EAAAA,cACnB8P,IACCtB,EAAYsB,EAAS,GAEvB,CAACtB,IAWGuB,EAA0BA,KAC9BxE,GAA0B,EAAK,EAGjC,OACEnK,EAAAA,EAAAA,KAACY,EAAAA,SAAQ,CAAAC,UACPC,EAAAA,EAAAA,MAAA,OACE8N,YAAaA,KACXvM,GACEwM,EAAAA,EAAAA,IAAY,YAAD1O,OACGwM,EAAsBmC,sBAErC,EACDjO,SAAA,CAED4M,IACCzN,EAAAA,EAAAA,KAAC+O,EAAAA,EAAuB,CACtBC,kBAAmBrC,EAAsB6B,iBACzCS,0BA1BahI,IACrBkD,GAA0B,GAC1B9H,GAAS0E,EAAAA,EAAAA,IAAsBE,IAC3BA,GACF5E,GAAS8E,EAAAA,EAAAA,KAAuB,GAClC,EAsBQ+H,UAAWzB,IAGdG,GACC5N,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CAAChB,MAAI,EAACiB,GAAI,GAAI3E,GAAI,CAAEmO,UAAW,SAAUC,WAAY,QAASvO,UACjEb,EAAAA,EAAAA,KAACqP,EAAAA,IAAM,OAGTrP,EAAAA,EAAAA,KAACe,EAAAA,IAAG,CACFC,GAAI,CACFwK,QAAS,OACT5J,OAAQ,QACRf,SAE0C,mBAA3C8L,EAAsB6B,kBACoB,kBAA3C7B,EAAsB6B,kBACpBxO,EAAAA,EAAAA,KAACsP,EAAe,CACdlF,oBAAqBmD,EACrBpD,0BAA2BwE,EAC3B3L,KAAM2J,EAAsB6B,oBAG9BxO,EAAAA,EAAAA,KAACY,EAAAA,SAAQ,CAAAC,UACPC,EAAAA,EAAAA,MAAA,QACEyO,YAAU,EACVC,SAhEInK,IAClBA,EAAMoK,iBACNrL,GAAU,EAAK,EA+DDlD,UAAWA,EACX4I,MAAO,CACLlI,OAAQ,OACRX,QAAS,OACTyO,SAAU,UACV7O,SAAA,EAEFb,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJiB,GAAI,GACJ3E,GAAI,CACFC,QAAS,OACT0O,oBAAqB,MACrBC,IAAK,QACL/O,UAEFb,EAAAA,EAAAA,KAAC6P,EAAAA,QAAiB,CAChBC,OACE5B,EAAAA,GACEvB,EAAsB6B,kBAG1B5Q,SAAU6Q,EACVsB,YAAa1C,EACbxD,YAAa6D,OAGjB5M,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CACHhB,MAAI,EACJiB,GAAI,GACJ3E,GAAI,CACFoO,WAAY,QACZD,UAAW,QACXa,UAAW,OACX/O,QAAS,OACTG,WAAY,SACZuI,eAAgB,YAChB9I,SAAA,EAEFb,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACLhD,KAAM,SACN9C,GAAI,mBACJwD,QAAQ,YACRwC,QAASyI,EACTlR,MAAO,qBACP,aAEFuC,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,OACJ8C,KAAK,SACLU,QAAQ,aACRuC,SAAU9B,EACV1G,MAAO,uBASd,ECxNf,EAlC2BwS,KACzB,MAAM,SAAEnD,EAAW,KAAOC,EAAAA,EAAAA,MAEpBmD,EAAapD,EAASG,UAAUH,EAASI,YAAY,KAAO,GAE5DiD,EAAoBC,EAAAA,GAAsBrH,MAC7C7J,GAAYA,EAAQsP,mBAAqB0B,IAEtCG,EAAkB,GAAAlQ,OAAM+P,GAC9B,OACElQ,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJiB,GAAI,GACJ3E,GAAI,CACFY,OAAQ,OAER,yBAA0B,CACxB,UAAW,CACT0O,SAAU,IACVnK,YAAa,KAGjBtF,SAEDsP,IACCnQ,EAAAA,EAAAA,KAACuQ,EAAiB,CAChBrP,UAAS,GAAAf,OAAKkQ,GACd1D,sBAAuBwD,KAGtB,E,qEC3BX,MAiCA,EAjC2BK,KACzB,MAAMnO,GAAWoO,EAAAA,EAAAA,OACVC,EAAcC,IAAaC,EAAAA,EAAAA,IAC/B9J,KAEC+J,EAAAA,EAAAA,IACE,IAAIC,KAAK,CAACC,OAAOC,KAAKlK,EAAIjH,SAAS,uBAADM,OACX8Q,EAAAA,GAASC,MAAMC,SACpC,uBACD,SACF,IAEF9J,IACChF,GAASiF,EAAAA,EAAAA,IAAqBD,GAAK,IAIvC,OACErH,EAAAA,EAAAA,KAACoR,EAAAA,EAAc,CAAC1T,QAAQ,0FAAyFmD,UAC/Gb,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,gBACJgG,QAASA,KACPyK,EAAU,MAAM,wBAAyB,EAE3C7L,MAAM9E,EAAAA,EAAAA,KAACqR,EAAAA,IAAU,IACjB5T,MAAO,SACPiG,QAAS,UACTuC,SAAUyK,KAEG,ECoDrB,EA9E2BY,KACzB,MAAM1E,GAAWC,EAAAA,EAAAA,MACXxK,GAAWoO,EAAAA,EAAAA,MAEXc,GAAe7O,EAAAA,EAAAA,KAClBC,GAAoBA,EAAMC,OAAO4O,sBAG7BC,EAAaC,IAAkB1T,EAAAA,EAAAA,eACpC2T,GAEIC,GAAa7S,EAAAA,EAAAA,QAAyB,OAErC2R,EAAcC,IAAaC,EAAAA,EAAAA,IAC/B9J,IAECzE,GAAS0E,EAAAA,EAAAA,KAAsB,IAC/B2K,GAAe,EAAK,IAErBrK,IACChF,GAASiF,EAAAA,EAAAA,IAAqBD,GAAK,KAIvClJ,EAAAA,EAAAA,YAAU,MACHoT,GAAgBE,GACnB7E,EAAS,EACX,GACC,CAAC2E,EAAcE,EAAa7E,IAwB/B,OACE9L,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,EACPb,EAAAA,EAAAA,KAAA,SACEgD,KAAK,OACLpF,SA1BsB0B,IAC1B,GACQ,OAANA,QACMqS,IAANrS,GACmB,OAAnBA,EAAEK,OAAOkS,YACUF,IAAnBrS,EAAEK,OAAOkS,MAET,OAEFvS,EAAEmQ,iBACF,MAAOqC,GAAgBxS,EAAEK,OAAOkS,MAE1BE,EAAW,IAAIC,SACfC,EAAW,IAAInB,KAAK,CAACgB,GAAe,CAAE9O,KAAM8O,EAAa9O,OAE/D+O,EAASG,OAAO,OAAQD,EAAUH,EAAatU,MAE/CmT,EAAU,OAAO,wBAA0BoB,GAE3CzS,EAAEK,OAAOE,MAAQ,EAAE,EAQfiK,MAAO,CAAE7I,QAAS,QAClBa,IAAK8P,KAEP5R,EAAAA,EAAAA,KAACoR,EAAAA,EAAc,CAAC1T,QAAQ,8DAA6DmD,UACnFb,EAAAA,EAAAA,KAACgG,EAAAA,IAAM,CACL9F,GAAI,gBACJgG,QAASA,KACH0L,GAAcA,EAAWnT,SAC3BmT,EAAWnT,QAAQ0T,OACrB,EAEFrN,MAAM9E,EAAAA,EAAAA,KAACoS,EAAAA,IAAY,IACnB3U,MAAO,SACPiG,QAAS,UACTuC,SAAUyK,QAGL,E,eCrDf,MAKM2B,EAA2B,CAAC,UAC5BC,EAAyB,CAAC,SAmIhC,EAjI6BC,KAC3B,MAAM,SAAEzF,EAAW,KAAOC,EAAAA,EAAAA,MACpB1K,GAAWC,EAAAA,EAAAA,MACXsK,GAAWC,EAAAA,EAAAA,OAEV2F,EAAkBC,IAAuBzU,EAAAA,EAAAA,UAAmB,IAC7D0U,GAAwB9T,EAAAA,EAAAA,cAAY+T,UACxCjM,EAAAA,EAAIC,QACDiM,aACA/L,MAAMC,IAAS,IAAD+L,EACb,GAAI/L,GAAU,OAAHA,QAAG,IAAHA,GAAAA,EAAKE,MAAW,OAAHF,QAAG,IAAHA,GAAS,QAAN+L,EAAH/L,EAAKE,YAAI,IAAA6L,GAATA,EAAWC,eAAgB,CAAC,IAADC,EACjD,MAAMC,IAAqB,OAAHlM,QAAG,IAAHA,GAAS,QAANiM,EAAHjM,EAAKE,YAAI,IAAA+L,OAAN,EAAHA,EAAWD,iBAAkB,IAAIG,QACvD,CAACC,EAAa5V,KAAoB,IAAlB,IAAEkJ,EAAM,IAAIlJ,EAI1B,OAHKgV,EAAuBzN,SAAS2B,IACnC0M,EAAI3U,KAAKiI,GAEJ0M,CAAG,GAEZ,IAGFT,EAAoBO,EACtB,KAED5L,OAAOC,IACNhF,GAASiF,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,IAAM,GACnD,GACH,CAAChF,KAEJlE,EAAAA,EAAAA,YAAU,KACRuU,IACArQ,GAASwM,EAAAA,EAAAA,IAAY,mBAAmB,GAEvC,IAEH,MAAMsE,EAAwB/C,EAAAA,GAAsBnR,QAClDmU,IAAqC,IAApC,iBAAE5E,GAA4B4E,EAC7B,OACEf,EAAyBxN,SAAS2J,IAClCgE,EAAiB3N,SAAS2J,KACzBgE,EAAiBpU,MAAM,IAK9B,OACE0C,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,EACPb,EAAAA,EAAAA,KAACqT,EAAAA,EAAiB,CAAC5V,MAAO,gBAAiBqN,SAAS9K,EAAAA,EAAAA,KAACsT,EAAAA,EAAQ,OAC7DxS,EAAAA,EAAAA,MAACyS,EAAAA,IAAU,CAAA1S,SAAA,EACTC,EAAAA,EAAAA,MAAC4E,EAAAA,IAAI,CAAChB,MAAI,EAACiB,GAAI,GAAIzF,GAAI,qBAAqBW,SAAA,EAC1Cb,EAAAA,EAAAA,KAACwT,EAAAA,IAAW,CACV1O,MAAM9E,EAAAA,EAAAA,KAACyT,EAAAA,IAAY,IACnBxR,MAAO,uBACP6I,SACEhK,EAAAA,EAAAA,MAACC,EAAAA,IAAG,CACFC,GAAI,CACFC,QAAS,OACT2O,IAAK,IACL/O,SAAA,EAEFb,EAAAA,EAAAA,KAACsR,EAAkB,KACnBtR,EAAAA,EAAAA,KAACwQ,EAAkB,OAGvBxP,GAAI,CAAE4E,aAAc,OAEtB5F,EAAAA,EAAAA,KAAC0T,EAAAA,IAAI,CACHC,iBAAkB7G,EAClB8G,WAAaC,IACXjH,EAASiH,EAAK,EAEhBC,cAAY,EACZC,QAASZ,EAAsBpT,KAAKb,IAClC,MAAM,iBAAEsP,EAAgB,oBAAEM,EAAmB,KAAEhK,GAAS5F,EACxD,MAAO,CACL8U,UAAW,CACT9T,GAAG,gBAADC,OAAkB2O,GACpBrR,MAAOqR,EACPjP,MAAO2O,EACP1J,KAAMA,EACNmP,IAxFIJ,EAwFarF,EAvF3B,GAANrO,OAAU+T,EAAAA,GAAUC,SAAQ,KAAAhU,OAAI0T,MADZA,KA0FP,IAEHO,QACEtT,EAAAA,EAAAA,MAACuT,EAAAA,GAAM,CAAAxT,SAAA,CACJsS,EAAsBpT,KAAKb,IAC1Bc,EAAAA,EAAAA,KAACsU,EAAAA,GAAK,CAEJT,KAAI,GAAA1T,OAAKjB,EAAQsP,kBACjBtP,SAASc,EAAAA,EAAAA,KAACuU,EAAiB,KAAI,cAAApU,OAFZjB,EAAQ4P,yBAK/B9O,EAAAA,EAAAA,KAACsU,EAAAA,GAAK,CACJT,KAAM,IACN3U,SAASc,EAAAA,EAAAA,KAACwU,EAAAA,GAAQ,CAACP,GAAE,GAAA9T,OAAK+T,EAAAA,GAAUC,SAAQ,wBAMtDnU,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CAAChB,MAAI,EAACiB,GAAI,GAAI3E,GAAI,CAAEoO,WAAY,QAASvO,UAC5Cb,EAAAA,EAAAA,KAACyU,EAAAA,IAAO,CACNxS,MAAO,kCACPyS,eAAe1U,EAAAA,EAAAA,KAACyT,EAAAA,IAAY,IAC5BkB,MACE7T,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,CAAC,gHAGRb,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,SAAM,4BACoB,KAC1BA,EAAAA,EAAAA,KAAA,KACE4U,KAAK,4FACLjV,OAAO,SACPkV,IAAI,WAAUhU,SACf,kBAEG,gBAOL,C,2GCzJR,MAAMuP,EAAoC,CAC/C,CACEtL,MAAM9E,EAAAA,EAAAA,KAAC8U,EAAAA,IAAU,IACjBtG,iBAAkB,SAClBM,oBAAqB,UAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAAC+U,EAAAA,IAAY,IACnBvG,iBAAkB,cAClBM,oBAAqB,eAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAACgV,EAAAA,IAAQ,IACfxG,iBAAkB,MAClBM,oBAAqB,OAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAACiV,EAAAA,IAAY,IACnBzG,iBAAkB,OAClBM,oBAAqB,QAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAACkV,EAAAA,IAAe,IACtB1G,iBAAkB,UAClBM,oBAAqB,WAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAACmV,EAAAA,IAAO,IACd3G,iBAAkB,OAClBM,oBAAqB,QAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,IAClBwJ,iBAAkB,iBAClBM,oBAAqB,kBAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAACiF,EAAAA,IAAgB,IACvBuJ,iBAAkB,gBAClBM,oBAAqB,iBAEvB,CACEhK,MAAM9E,EAAAA,EAAAA,KAACoV,EAAAA,IAAQ,IACf5G,iBAAkB,cAClBM,oBAAqB,gBAIZZ,EAA4B,CACvCmH,OAAQ,CACN,CACE7X,KAAM,OACNiI,UAAU,EACVhI,MAAO,kBACPC,QAAS,0DACTsF,KAAM,SACN3C,YAAa,uBAEf,CACE7C,KAAM,UACNiI,UAAU,EACVhI,MAAO,UACPC,QAAS,wCACTsF,KAAM,UACN3C,YAAa,8BAGjBiV,YAAa,CACX,CACE9X,KAAM,aACNiI,UAAU,EACVhI,MAAO,aACPC,QACE,sFACFsF,KAAM,MACN3C,YAAa,qBACbxC,YAAY,GAEd,CACEL,KAAM,aACNiI,UAAU,EACVhI,MAAO,aACPC,QACE,kGACFsF,KAAM,MACN3C,YAAa,oBACbxC,YAAY,IAGhB6I,IAAK,CACH,CACElJ,KAAM,eACNiI,UAAU,EACVhI,MAAO,eACPC,QAAS,qDACTsF,KAAM,SACN3C,YAAa,sBAEf,CACE7C,KAAM,oBACNiI,UAAU,EACVhI,MAAO,oBACPC,QAAS,4CACTsF,KAAM,MACN3C,YAAa,iDAEf,CACE7C,KAAM,sBACNiI,UAAU,EACVhI,MAAO,sBACPC,QAAS,iDACTsF,KAAM,SACN3C,YAAa,6BAEf,CACE7C,KAAM,6BACNiI,UAAU,EACVhI,MAAO,6BACPC,QACE,4EACFsF,KAAM,SACN3C,YAAa,qCAGjBkV,KAAM,CACJ,CACE/X,KAAM,aACNiI,UAAU,EACVhI,MAAO,cACPC,QACE,oEACFsF,KAAM,UAER,CACExF,KAAM,YACNiI,UAAU,EACVhI,MAAO,YACPC,QACE,8EACFsF,KAAM,WACN3C,YAAa,4BAEf,CACE7C,KAAM,SACNiI,UAAU,EACVhI,MAAO,SACPC,QACE,kFACFsF,KAAM,SACN3C,YAAa,iBAGjBmV,QAAS,CACP,CACEhY,KAAM,QACNiI,UAAU,EACVhI,MAAO,mBACPC,QAAS,+CACTsF,KAAM,SACN3C,YAAa,eAEf,CACE7C,KAAM,WACNiI,UAAU,EACVhI,MAAO,WACPC,QAAS,0DACTsF,KAAM,WACN3C,YAAa,kBAEf,CACE7C,KAAM,QACNiI,UAAU,EACVhI,MAAO,QACPC,QAAS,yDACTsF,KAAM,WACN3C,YAAa,gBAGjBoV,KAAM,CACJ,CACEjY,KAAM,YACNiI,UAAU,EACVhI,MAAO,YACPC,QACE,oFACFsF,KAAM,MACN3C,YAAa,kBAEf,CACE7C,KAAM,cACNiI,UAAU,EACVhI,MAAO,cACPC,QAAS,wDACTsF,KAAM,SACN3C,YAAa,qBAEf,CACE7C,KAAM,eACNiI,UAAU,EACVhI,MAAO,eACPC,QAAS,kDACTsF,KAAM,SACN3C,YAAa,sBAEf,CACE7C,KAAM,cACNiI,UAAU,EACVhI,MAAO,cACPC,QAAS,sCACTsF,KAAM,SACN3C,YAAa,qBAEf,CACE7C,KAAM,kBACNiI,UAAU,EACVhI,MAAO,kBACPC,QAAS,0CACTsF,KAAM,SACN3C,YAAa,yBAEf,CACE7C,KAAM,UACNiI,UAAU,EACVhI,MAAO,UACPC,QAAS,wCACTsF,KAAM,UACN0S,WAAW,EACXrV,YAAa,8BAGjBsV,eAAgB,CACd,CACEnY,KAAM,WACNiI,UAAU,EACVhI,MAAO,WACPuF,KAAM,SACN3C,YAAa,kBAEf,CACE7C,KAAM,aACNiI,UAAU,EACVhI,MAAO,aACPuF,KAAM,SACN3C,YAAa,qBAGjBuV,cAAe,CACb,CACEpY,KAAM,WACNiI,UAAU,EACVhI,MAAO,WACPuF,KAAM,SACN3C,YAAa,kBAEf,CACE7C,KAAM,aACNiI,UAAU,EACVhI,MAAO,aACPuF,KAAM,SACN3C,YAAa,qBAGjBwV,YAAa,CACX,CACErY,KAAM,SACNiI,UAAU,EACVhI,MAAO,SACPC,QAAS,4BACTsF,KAAM,SACNsL,mBAAqBwH,GACE,KAAdA,GAAkC,OAAdA,EAAqB,KAAO,OAG3D,CACEtY,KAAM,UACNiI,UAAU,EACVhI,MAAO,UACPuF,KAAM,MACN3C,YAAa,sBAEf,CACE7C,KAAM,QACNiI,UAAU,EACVhI,MAAO,QACPuF,KAAM,SACN3C,YAAa,oBACb3C,QAAS,6CAEX,CACEF,KAAM,OACNiI,UAAU,EACVhI,MAAO,WACPC,QACE,wEACFsF,KAAM,UAER,CACExF,KAAM,gBACNiI,UAAU,EACVhI,MAAO,gBACPuF,KAAM,SACN3C,YAAa,sBACb3C,QAAS,wDAEX,CACEF,KAAM,gBACNiI,UAAU,EACVhI,MAAO,gBACPuF,KAAM,WACN3C,YAAa,sBACb3C,QAAS,wDAEX,CACEF,KAAM,iBACNiI,UAAU,EACVhI,MAAO,iBACPuF,KAAM,SACN3C,YAAa,uBACb3C,QAAS,iCAEX,CACEF,KAAM,MACNiI,UAAU,EACVhI,MAAO,UACPC,QAAS,wCACTsF,KAAM,UAER,CACExF,KAAM,kBACNiI,UAAU,EACVhI,MAAO,wBACPC,QAAS,wCACTsF,KAAM,UAER,CACExF,KAAM,kBACNiI,UAAU,EACVhI,MAAO,cACPC,QAAS,sCACTsF,KAAM,SACN3C,YAAa,qBAEf,CACE7C,KAAM,iBACNiI,UAAU,EACVhI,MAAO,kBACPC,QAAS,0CACTsF,KAAM,SACN3C,YAAa,yBAEf,CACE7C,KAAM,kBACNiI,UAAU,EACVhI,MAAO,kBACPC,QACE,+EACFsF,KAAM,UAER,CACExF,KAAM,UACNiI,UAAU,EACVhI,MAAO,UACPC,QAAS,2CACTsF,KAAM,YAKCuL,EAAqBwH,GACTA,EAAW9W,QAAQkP,GAA0B,KAAhBA,EAAMtO,QAK/CmW,EAAYA,CACvB1W,EACA2W,EACAC,KAEA,MAAMC,EAAU7W,EAAEK,OACZE,EAAQsW,EAAQtW,MAGtB,IAAItC,EAAqB,IAAI2Y,GAS7B,OAXgBC,EAAQlM,QAKtB1M,EAASgB,KAAKsB,GAGdtC,EAAWA,EAAS0B,QAAQC,GAAYA,IAAYW,IAEtDoW,EAAe1Y,GACRA,CAAQ,EAGJiM,EAAkBuM,IAC7B,IAAIK,EAA+B,CAAC,EAcpC,OAZAL,EAAWM,SAASC,IAElB,GAAIA,EAAQhN,aAAc,CACxB,MAAMzJ,EAAuB,CAC3BA,MAAOyW,EAAQhN,aAAazJ,OAAS,GACrCgK,YAAayM,EAAQhN,aAAa9L,MAAQ,IAG5C4Y,EAAiB,IAAKA,EAAgB,CAACE,EAAQ9P,KAAM3G,EACvD,KAGKuW,CAAc,C,+FChZvB,MAAMG,EAAWA,CAAC/P,EAAaxD,EAAcwT,KAC3C,IAAIC,EAAoB,WAATzT,EAAoB,MAAQ,GAE3C,GAAIwT,EAASpY,OAAS,EAAG,CACvB,MAAMsY,EAAeF,EAASzN,MAAM7J,GAAYA,EAAQsH,MAAQA,IAE5DkQ,IACFD,EAAWC,EAAa7W,OAAS,GAErC,CAEA,OAAO4W,CAAQ,EA0JjB,EAvJ0BnZ,IAKA,IALC,SACzBM,EAAQ,OACRkS,EAAM,YACNC,EAAW,YACXlG,GACkBvM,EAClB,MAAOqZ,EAAaC,IAAkB5Y,EAAAA,EAAAA,UAA0B,IAC1D6Y,EAAkB/G,GAAS,GAC3BgH,EAAc/G,GAAc,IAGlC5R,EAAAA,EAAAA,YAAU,KACR,MAAM6P,EAA0B8B,EAAO/P,KAAKoO,IACP,CACjC3H,IAAK2H,EAAM3Q,KACXqC,MAAO0W,EAASpI,EAAM3Q,KAAM2Q,EAAMnL,KAAM8T,OAK5CF,EAAe5I,EAAO,GAErB,CAAC8B,EAAQC,KAEZ5R,EAAAA,EAAAA,YAAU,KACRP,EAAS+Y,EAAY,GAEpB,CAACA,IAEJ,MAAMI,EAAkBA,CAACvQ,EAAa3G,EAAeJ,KACnD,MAAMuX,EAAY,IAAIL,GACtB9W,EAAQA,EAAMV,OACd6X,EAAUvX,GAAS,CAAE+G,MAAK3G,SAE1B+W,EAAeI,EAAU,EAGrBC,EAAkBA,CAAC9I,EAAgBzJ,KACvC,MAAMwS,EAAaP,EAAYjS,GAE/B,GAAIwS,EAAY,CAEd,MAAMC,EAAsB,OAAXtN,QAAW,IAAXA,OAAW,EAAXA,EAAW,GAAA1J,OAAM+W,EAAW1Q,MAE7C,GAAI2Q,EACF,OACEnX,EAAAA,EAAAA,KAACyJ,EAAAA,IAAO,CACNhM,MAAO0Q,EAAM1Q,MACbiM,cACE1J,EAAAA,EAAAA,KAAC0F,EAAAA,IAAI,CACHhB,MAAI,EACJ1D,GAAI,CACFC,QAAS,OACT0I,eAAgB,WAChBC,aAAc,QACd/I,UAEFb,EAAAA,EAAAA,KAACuB,EAAAA,IAAO,CACN7D,QAAO,8BAAAyC,OAAgCgX,EAAStN,YAAW,yBAC3DrI,UAAW,OAAOX,UAElBb,EAAAA,EAAAA,KAACgF,EAAAA,IAAW,CAAC8E,MAAO,CAAExI,MAAO,UAInCN,GAAI,CAAEM,MAAO,QAAST,SAErBsW,EAAStX,OAIlB,CAEA,OAAQsO,EAAMnL,MACZ,IAAK,SACH,MAAMnD,EAAQqX,EAAaA,EAAWrX,MAAQ,MAE9C,OACEG,EAAAA,EAAAA,KAACgK,EAAAA,IAAM,CACLpM,SAAW0B,IACT,MAAMO,EAAQP,EAAEK,OAAOsK,QAAU,KAAO,MACxC8M,EAAgB5I,EAAM3Q,KAAMqC,EAAO6E,EAAK,EAE1CxE,GAAIiO,EAAM3Q,KACVA,KAAM2Q,EAAM3Q,KACZC,MAAO0Q,EAAM1Q,MACboC,MAAO,YACPnC,QAASyQ,EAAMzQ,QACfuM,QAAmB,OAAVpK,IAGf,IAAK,MACH,OACEG,EAAAA,EAAAA,KAACoX,EAAAA,EAAgB,CACf7Z,SAAU2Z,EAAaA,EAAWrX,MAAQ,GAC1CpC,MAAO0Q,EAAM1Q,MACbD,KAAM2Q,EAAM3Q,KACZI,SAAWiC,IACT,IAAIwX,EAAQ,GAGVA,EADEC,MAAMC,QAAQ1X,GACRA,EAAMT,KAAK,KAEXS,EAGVkX,EAAgB5I,EAAM3Q,KAAM6Z,EAAO3S,EAAK,EAE1ChH,QAASyQ,EAAMzQ,QACfC,kBAAmBwQ,EAAM9N,YACzBxC,YAAY,IAGlB,IAAK,UACH,OACEmC,EAAAA,EAAAA,KAACwX,EAAAA,IAAU,CACTtX,GAAIiO,EAAM3Q,KACVA,KAAM2Q,EAAM3Q,KACZC,MAAO0Q,EAAM1Q,MACbC,QAASyQ,EAAMzQ,QACfmC,MAAOqX,EAAaA,EAAWrX,MAAQ,GACvCjC,SAAW0B,GAAMyX,EAAgB5I,EAAM3Q,KAAM8B,EAAEK,OAAOE,MAAO6E,GAC7DrE,YAAa8N,EAAM9N,cAGzB,QACE,OACEL,EAAAA,EAAAA,KAACC,EAAAA,IAAQ,CACPC,GAAIiO,EAAM3Q,KACVA,KAAM2Q,EAAM3Q,KACZC,MAAO0Q,EAAM1Q,MACbC,QAASyQ,EAAMzQ,QACfmC,MAAOqX,EAAaA,EAAWrX,MAAQ,GACvCjC,SAAW0B,GACTyX,EAAgB5I,EAAM3Q,KAAM8B,EAAEK,OAAOE,MAAO6E,GAE9CrE,YAAa8N,EAAM9N,cAG3B,EAGF,OACEL,EAAAA,EAAAA,KAACmF,EAAAA,IAAU,CAACzD,aAAa,EAAO0D,kBAAkB,EAAMvE,SACrDgW,EAAe9W,KAAI,CAACoO,EAAOzJ,KAC1B1E,EAAAA,EAAAA,KAACY,EAAAA,SAAQ,CAAAC,SAAmBoW,EAAgB9I,EAAOzJ,IAApCyJ,EAAM3Q,SAEZ,C,+HCzKjB,MA6DA,EA7DgCF,IAIJ,IAJK,kBAC/B0R,EAAiB,0BACjBC,EAAyB,UACzBC,GACoB5R,EACpB,MAAM+E,GAAWC,EAAAA,EAAAA,OACVmV,EAAcC,IAAmB1Z,EAAAA,EAAAA,WAAkB,IAE1DG,EAAAA,EAAAA,YAAU,KACJsZ,GACF/Q,EAAAA,EAAIC,QACDgB,YAAYqH,GACZnI,MAAK,KACJ6Q,GAAgB,GAChBzI,GAA0B,EAAK,IAEhC7H,OAAOC,IACNqQ,GAAgB,GAChBrV,GAASiF,EAAAA,EAAAA,KAAqBC,EAAAA,EAAAA,GAAeF,EAAI9B,QAAQ,GAE/D,GACC,CAAC0J,EAA2BD,EAAmByI,EAAcpV,IAMhE,OACErC,EAAAA,EAAAA,KAAC6H,EAAAA,EAAa,CACZ5F,MAAK,mBACL6F,YAAa,2BACbC,OAAQmH,EACR/M,WAAWnC,EAAAA,EAAAA,KAACmI,EAAAA,IAAiB,IAC7BH,UAAWyP,EACXxP,UAXuB0P,KACzBD,GAAgB,EAAK,EAWnB3V,QAASA,KACPkN,GAA0B,EAAM,EAElC7G,qBACEtH,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,CACN4W,IAAgBzX,EAAAA,EAAAA,KAAC6F,EAAAA,IAAW,KAC7B/E,EAAAA,EAAAA,MAACF,EAAAA,SAAQ,CAAAC,SAAA,CAAC,4EAGRb,EAAAA,EAAAA,KAAA,UACAA,EAAAA,EAAAA,KAAA,KACE8J,MAAO,CACL8N,SAAU,QACVC,WAAY,SACZC,SAAU,cACVjX,SACH,4EAMP,C","sources":["screens/Console/Common/FormComponents/CSVMultiSelector/CSVMultiSelector.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/EventDestinations/WebhookSettings/AddEndpointModal.tsx","screens/Console/EventDestinations/WebhookSettings/DeleteWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/EditWebhookEndpoint.tsx","screens/Console/EventDestinations/WebhookSettings/WebhookSettings.tsx","screens/Console/EventDestinations/CustomForms/EditConfiguration.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationForm.tsx","screens/Console/Configurations/ConfigurationPanels/ExportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ImportConfigButton.tsx","screens/Console/Configurations/ConfigurationPanels/ConfigurationOptions.tsx","screens/Console/Configurations/utils.tsx","screens/Console/EventDestinations/ConfTargetGeneric.tsx","screens/Console/EventDestinations/CustomForms/ResetConfigurationModal.tsx"],"sourcesContent":["// 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, {\n ChangeEvent,\n createRef,\n useCallback,\n useEffect,\n useRef,\n useState,\n Fragment,\n} from \"react\";\nimport get from \"lodash/get\";\nimport { AddIcon, Box, HelpIcon, InputBox, InputLabel, Tooltip } from \"mds\";\n\ninterface ICSVMultiSelector {\n elements: string;\n name: string;\n label: string;\n tooltip?: string;\n commonPlaceholder?: string;\n withBorder?: boolean;\n onChange: (elements: string) => void;\n}\n\nconst CSVMultiSelector = ({\n elements,\n name,\n label,\n tooltip = \"\",\n commonPlaceholder = \"\",\n onChange,\n withBorder = false,\n}: ICSVMultiSelector) => {\n const [currentElements, setCurrentElements] = useState([\"\"]);\n const bottomList = createRef();\n\n // Use effect to get the initial values from props\n useEffect(() => {\n if (\n currentElements.length === 1 &&\n currentElements[0] === \"\" &&\n elements &&\n elements !== \"\"\n ) {\n const elementsSplit = elements.split(\",\");\n elementsSplit.push(\"\");\n\n setCurrentElements(elementsSplit);\n }\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [elements, currentElements]);\n\n // Use effect to send new values to onChange\n useEffect(() => {\n if (currentElements.length > 1) {\n const refScroll = bottomList.current;\n if (refScroll) {\n refScroll.scrollIntoView(false);\n }\n }\n }, [currentElements, bottomList]);\n\n const onChangeCallback = useCallback(\n (newString: string) => {\n onChange(newString);\n },\n [onChange],\n );\n\n // We avoid multiple re-renders / hang issue typing too fast\n const firstUpdate = useRef(true);\n useEffect(() => {\n if (firstUpdate.current) {\n firstUpdate.current = false;\n return;\n }\n const elementsString = currentElements\n .filter((element) => element.trim() !== \"\")\n .join(\",\");\n\n onChangeCallback(elementsString);\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [currentElements]);\n\n // If the last input is not empty, we add a new one\n const addEmptyLine = (elementsUp: string[]) => {\n if (elementsUp[elementsUp.length - 1].trim() !== \"\") {\n const cpList = [...elementsUp];\n cpList.push(\"\");\n setCurrentElements(cpList);\n }\n };\n\n // Onchange function for input box, we get the dataset-index & only update that value in the array\n const onChangeElement = (e: ChangeEvent) => {\n e.persist();\n\n let updatedElement = [...currentElements];\n const index = get(e.target, \"dataset.index\", \"0\");\n const indexNum = parseInt(index);\n updatedElement[indexNum] = e.target.value;\n\n setCurrentElements(updatedElement);\n };\n\n const inputs = currentElements.map((element, index) => {\n return (\n : null}\n overlayAction={() => {\n addEmptyLine(currentElements);\n }}\n />\n );\n });\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n \n \n )}\n \n \n {inputs}\n
\n \n \n \n );\n};\nexport default CSVMultiSelector;\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 { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default ModalWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Button,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n PendingItemsIcon,\n ProgressBar,\n WebhookIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n onCloseEndpoint: () => void;\n}\n\nconst AddEndpointModal = ({ open, type, onCloseEndpoint }: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([\n \"name\",\n \"endpoint\",\n ]);\n const [initialInputs, setInitialInputs] = useState([\n \"name\",\n \"endpoint\",\n \"auth-token\",\n ]);\n\n const dispatch = useAppDispatch();\n\n const saveWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (name.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"name\"]);\n\n return;\n }\n\n if (endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n ],\n arn_resource_id: name,\n };\n\n api.configs\n .setConfig(type, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const initializeInput = (name: string) => {\n setInitialInputs(initialInputs.filter((item) => item !== name));\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n let title = \"Add new Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = \"New Logger Webhook\";\n icon = ;\n break;\n case \"audit_webhook\":\n title = \"New Audit Webhook\";\n icon = ;\n break;\n }\n\n return (\n \n \n \n ) => {\n initializeInput(\"name\");\n setName(event.target.value);\n validateInput(\"name\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"name\") && !initialInputs.includes(\"name\")\n ? \"Invalid Name\"\n : \"\"\n }\n label=\"Name\"\n value={name}\n pattern={\"^(?=.*[a-zA-Z0-9]).{1,}$\"}\n required\n />\n ) => {\n initializeInput(\"endpoint\");\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\") &&\n !initialInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n ) => {\n initializeInput(\"auth-token\");\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n \n {saving && (\n \n \n \n )}\n \n \n \n \n \n \n );\n};\n\nexport default AddEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { ConfirmDeleteIcon } from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IDeleteWebhookEndpoint {\n modalOpen: boolean;\n onClose: () => void;\n selectedARN: string;\n type: string;\n}\n\nconst DeleteWebhookEndpoint = ({\n modalOpen,\n onClose,\n selectedARN,\n}: IDeleteWebhookEndpoint) => {\n const [deleteLoading, setDeleteLoading] = useState(false);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (deleteLoading) {\n api.configs\n .resetConfig(selectedARN)\n .then(() => {\n setDeleteLoading(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(configurationIsLoading(true));\n onClose();\n })\n .catch((err) => {\n setDeleteLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [deleteLoading, dispatch, onClose, selectedARN]);\n\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n const defaultWH = !selectedARN.includes(\":\");\n\n let message = \"Are you sure you want to delete the Configured Endpoint\";\n\n // Main webhook, we just reset\n if (defaultWH) {\n message = \"Are you sure you want to reset the Default\";\n }\n\n return (\n }\n onClose={onClose}\n confirmationContent={\n \n {`${message} `}\n {selectedARN}?\n \n }\n />\n );\n};\n\nexport default DeleteWebhookEndpoint;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Button,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n PendingItemsIcon,\n ProgressBar,\n ReadBox,\n Switch,\n Tooltip,\n WebhookIcon,\n} from \"mds\";\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\nimport { IConfigurationSys } from \"../../Configurations/types\";\nimport { overrideFields } from \"../../Configurations/utils\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IEndpointModal {\n open: boolean;\n type: string;\n endpointInfo: IConfigurationSys;\n onCloseEndpoint: () => void;\n}\n\nconst EditEndpointModal = ({\n open,\n type,\n endpointInfo,\n onCloseEndpoint,\n}: IEndpointModal) => {\n const [name, setName] = useState(\"\");\n const [endpoint, setEndpoint] = useState(\"\");\n const [authToken, setAuthToken] = useState(\"\");\n const [endpointState, setEndpointState] = useState(\"on\");\n const [saving, setSaving] = useState(false);\n const [invalidInputs, setInvalidInput] = useState([]);\n\n const dispatch = useAppDispatch();\n\n useEffect(() => {\n if (endpointInfo) {\n const endpointLocate = endpointInfo.key_values.find(\n (key) => key.key === \"endpoint\",\n );\n const tokenLocate = endpointInfo.key_values.find(\n (key) => key.key === \"auth_token\",\n );\n const enable = endpointInfo.key_values.find(\n (key) => key.key === \"enable\",\n );\n\n let invalidInputs: string[] = [];\n\n if (endpointLocate) {\n const endpointValue = endpointLocate.value;\n\n if (endpointValue === \"\") {\n invalidInputs.push(\"endpoint\");\n } else {\n setEndpoint(endpointValue);\n }\n }\n\n if (tokenLocate) {\n const tokenValue = tokenLocate.value;\n\n if (tokenValue === \"\") {\n invalidInputs.push(\"auth-token\");\n } else {\n setAuthToken(tokenValue);\n }\n }\n\n if (enable) {\n if (enable.value === \"off\") {\n setEndpointState(enable.value);\n }\n }\n\n setName(endpointInfo.name || \"\");\n setInvalidInput(invalidInputs);\n }\n }, [endpointInfo]);\n\n const updateWebhook = () => {\n if (saving) {\n return;\n }\n\n if (invalidInputs.length !== 0) {\n return;\n }\n\n if (!endpoint || endpoint.trim() === \"\") {\n setInvalidInput([...invalidInputs, \"endpoint\"]);\n\n return;\n }\n\n setSaving(true);\n\n const payload = {\n key_values: [\n {\n key: \"endpoint\",\n value: endpoint,\n },\n {\n key: \"auth_token\",\n value: authToken,\n },\n {\n key: \"enable\",\n value: endpointState,\n },\n ],\n };\n\n api.configs\n .setConfig(name, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n\n onCloseEndpoint();\n dispatch(configurationIsLoading(true));\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n };\n\n const validateInput = (name: string, valid: boolean) => {\n if (invalidInputs.includes(name) && valid) {\n setInvalidInput(invalidInputs.filter((item) => item !== name));\n return;\n }\n\n if (!valid && !invalidInputs.includes(name)) {\n setInvalidInput([...invalidInputs, name]);\n }\n };\n\n const defaultWH = !name.includes(\":\");\n const hasOverride = endpointInfo.key_values.filter(\n (itm) => !!itm.env_override,\n );\n\n const overrideValues = overrideFields(hasOverride);\n\n let title = \"Edit Webhook\";\n let icon = ;\n\n switch (type) {\n case \"logger_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Logger Webhook`;\n icon = ;\n break;\n case \"audit_webhook\":\n title = `Edit ${defaultWH ? \" the Default \" : \"\"}Audit Webhook`;\n icon = ;\n break;\n }\n\n if (hasOverride.length > 0) {\n title = \"View env variable Webhook\";\n }\n\n return (\n \n \n \n {hasOverride.length > 0 ? (\n \n \n \n \n \n \n }\n >\n {overrideValues.enable?.value || \"-\"}\n \n \n \n \n \n \n }\n >\n {overrideValues.endpoint?.value || \"-\"}\n \n \n \n \n \n \n }\n >\n {overrideValues.auth_token?.value || \"-\"}\n \n \n ) : (\n \n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setEndpointState(value);\n }}\n id={\"endpoint_enabled\"}\n name={\"endpoint_enabled\"}\n label={\"Enabled\"}\n value={\"switch_on\"}\n checked={endpointState === \"on\"}\n />\n ) => {\n setEndpoint(event.target.value);\n validateInput(\"endpoint\", event.target.validity.valid);\n }}\n error={\n invalidInputs.includes(\"endpoint\")\n ? \"Invalid Endpoint set\"\n : \"\"\n }\n label=\"Endpoint\"\n value={endpoint}\n pattern={\n \"^(https?):\\\\/\\\\/([a-zA-Z0-9\\\\-.]+)(:[0-9]+)?(\\\\/[a-zA-Z0-9\\\\-.\\\\/]*)?$\"\n }\n required\n />\n ) => {\n setAuthToken(event.target.value);\n }}\n label=\"Auth Token\"\n value={authToken}\n />\n {saving && (\n \n \n \n )}\n \n \n \n \n \n )}\n \n \n \n );\n};\n\nexport default EditEndpointModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { IConfigurationSys, IElementValue } from \"../../Configurations/types\";\nimport {\n Button,\n ConsoleIcon,\n DataTable,\n Grid,\n TierOfflineIcon,\n TierOnlineIcon,\n} from \"mds\";\nimport AddEndpointModal from \"./AddEndpointModal\";\nimport DeleteWebhookEndpoint from \"./DeleteWebhookEndpoint\";\nimport EditWebhookEndpoint from \"./EditWebhookEndpoint\";\nimport { Configuration } from \"api/consoleApi\";\n\ninterface WebhookSettingsProps {\n WebhookSettingslist: Configuration[];\n setResetConfigurationOpen: () => void;\n type: string;\n}\n\nconst WebhookSettings = ({\n setResetConfigurationOpen,\n WebhookSettingslist,\n type,\n}: WebhookSettingsProps) => {\n const [newEndpointOpen, setNewEndpointOpen] = useState(false);\n const [deleteWebhookOpen, setDeleteWebhookOpen] = useState(false);\n const [editWebhookOpen, setEditWebhookOpen] = useState(false);\n const [selectedARN, setSelectedARN] = useState(\"\");\n const [selectedEndpoint, setSelectedEndpoint] =\n useState(null);\n\n const renderEndpoint = (item: IElementValue[]) => {\n const endpointFilter = item.find((itm) => itm.key === \"endpoint\");\n\n if (endpointFilter) {\n if (endpointFilter.env_override) {\n return endpointFilter.env_override.value;\n }\n\n return endpointFilter.value;\n }\n\n return \"\";\n };\n\n const renderWebhookStatus = (item: IElementValue[]) => {\n const EnableFilter = item.find((itm) => itm.key === \"enable\");\n\n if (EnableFilter?.env_override) {\n const overrideEnabled =\n !EnableFilter?.env_override.value ||\n EnableFilter?.env_override.value === \"on\" ||\n !EnableFilter?.env_override.value\n ? \"Enabled\"\n : \"Disabled\";\n return (\n \n \n {overrideEnabled ? \"Enabled\" : \"Disabled\"}\n \n );\n }\n\n // If enable is not set, then enabled by default\n if (!EnableFilter || EnableFilter.value === \"on\" || !EnableFilter.value) {\n return (\n \n \n Enabled\n \n );\n }\n\n return (\n \n \n Disabled\n \n );\n };\n\n const onCloseDelete = () => {\n setDeleteWebhookOpen(false);\n setSelectedARN(\"\");\n };\n\n const onCloseEditWebhook = () => {\n setEditWebhookOpen(false);\n setSelectedEndpoint(null);\n };\n\n const actions = [\n {\n type: \"view\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setEditWebhookOpen(true);\n setSelectedEndpoint(item);\n }\n },\n },\n {\n type: \"delete\",\n onClick: (item: IConfigurationSys) => {\n if (item.name) {\n setDeleteWebhookOpen(true);\n setSelectedARN(item.name);\n }\n },\n disableButtonFunction: (item: string) => {\n const wHook = WebhookSettingslist.find(\n (element) => element.name === item,\n );\n\n if (wHook) {\n const hasOverride = wHook.key_values?.filter(\n (itm) => !!itm.env_override,\n );\n\n // Has override values, we cannot delete.\n if (hasOverride && hasOverride.length > 0) {\n return true;\n }\n\n return false;\n }\n return false;\n },\n },\n ];\n return (\n \n {newEndpointOpen && (\n {\n setNewEndpointOpen(false);\n }}\n />\n )}\n {deleteWebhookOpen && (\n \n )}\n {editWebhookOpen && selectedEndpoint && (\n \n )}\n \n {\n setNewEndpointOpen(true);\n }}\n >\n New Endpoint\n \n \n \n \n

Currently Configured Endpoints

\n \n
\n
\n
\n );\n};\nexport default WebhookSettings;\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, useCallback, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { Box, Button, Grid, Loader } from \"mds\";\nimport { useLocation, useNavigate } from \"react-router-dom\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { Configuration, ConfigurationKV } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n fieldsConfigurations,\n overrideFields,\n removeEmptyFields,\n} from \"../../Configurations/utils\";\nimport {\n IConfigurationElement,\n IElementValue,\n IOverrideEnv,\n KVField,\n} from \"../../Configurations/types\";\nimport {\n configurationIsLoading,\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport WebhookSettings from \"../WebhookSettings/WebhookSettings\";\nimport ConfTargetGeneric from \"../ConfTargetGeneric\";\nimport ResetConfigurationModal from \"./ResetConfigurationModal\";\n\ninterface IAddNotificationEndpointProps {\n selectedConfiguration: IConfigurationElement;\n className?: string;\n}\n\nconst EditConfiguration = ({\n selectedConfiguration,\n className = \"\",\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const { pathname = \"\" } = useLocation();\n\n let selConfigTab = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n selConfigTab = selConfigTab === \"settings\" ? \"region\" : selConfigTab;\n\n //Local States\n const [valuesObj, setValueObj] = useState([]);\n const [saving, setSaving] = useState(false);\n const [configValues, setConfigValues] = useState([]);\n const [configSubsysList, setConfigSubsysList] = useState([]);\n const [resetConfigurationOpen, setResetConfigurationOpen] =\n useState(false);\n const [overrideEnvs, setOverrideEnvs] = useState({});\n\n const loadingConfig = useSelector(\n (state: AppState) => state.system.loadingConfigurations,\n );\n\n useEffect(() => {\n dispatch(configurationIsLoading(true));\n }, [selConfigTab, dispatch]);\n\n useEffect(() => {\n if (loadingConfig) {\n const configId = get(selectedConfiguration, \"configuration_id\", false);\n\n if (configId) {\n api.configs\n .configInfo(configId)\n .then((res) => {\n setConfigSubsysList(res.data);\n let values: ConfigurationKV[] = get(res.data[0], \"key_values\", []);\n\n const fieldsConfig: KVField[] = fieldsConfigurations[configId];\n\n const keyVals: IElementValue[] = fieldsConfig.map((field) => {\n const includedValue = values.find(\n (element: ConfigurationKV) => element.key === field.name,\n );\n const customValue = includedValue?.value || \"\";\n\n return {\n key: field.name,\n value: field.customValueProcess\n ? field.customValueProcess(customValue)\n : customValue,\n env_override: includedValue?.env_override,\n };\n });\n\n setConfigValues(keyVals);\n setOverrideEnvs(overrideFields(keyVals));\n dispatch(configurationIsLoading(false));\n })\n .catch((err) => {\n dispatch(configurationIsLoading(false));\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n\n return;\n }\n dispatch(configurationIsLoading(false));\n }\n }, [loadingConfig, selectedConfiguration, dispatch]);\n\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesObj),\n };\n api.configs\n .setConfig(selectedConfiguration.configuration_id, payload)\n .then((res) => {\n setSaving(false);\n dispatch(setServerNeedsRestart(res.data.restart || false));\n dispatch(configurationIsLoading(true));\n if (!res.data.restart) {\n dispatch(setSnackBarMessage(\"Configuration saved successfully\"));\n }\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [saving, dispatch, selectedConfiguration, valuesObj, navigate]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueObj(newValue);\n },\n [setValueObj],\n );\n\n const continueReset = (restart: boolean) => {\n setResetConfigurationOpen(false);\n dispatch(setServerNeedsRestart(restart));\n if (restart) {\n dispatch(configurationIsLoading(true));\n }\n };\n\n const resetConfigurationMOpen = () => {\n setResetConfigurationOpen(true);\n };\n\n return (\n \n {\n dispatch(\n setHelpName(\n `settings_${selectedConfiguration.configuration_label}`,\n ),\n );\n }}\n >\n {resetConfigurationOpen && (\n \n )}\n {loadingConfig ? (\n \n \n \n ) : (\n \n {selectedConfiguration.configuration_id === \"logger_webhook\" ||\n selectedConfiguration.configuration_id === \"audit_webhook\" ? (\n \n ) : (\n \n \n \n \n \n \n \n    \n \n \n \n \n )}\n \n )}\n
\n
\n );\n};\n\nexport default EditConfiguration;\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 { useLocation } from \"react-router-dom\";\nimport { Grid } from \"mds\";\nimport { configurationElements } from \"../utils\";\nimport EditConfiguration from \"../../EventDestinations/CustomForms/EditConfiguration\";\n\nconst ConfigurationsList = () => {\n const { pathname = \"\" } = useLocation();\n\n const configName = pathname.substring(pathname.lastIndexOf(\"/\") + 1);\n\n const validActiveConfig = configurationElements.find(\n (element) => element.configuration_id === configName,\n );\n const containerClassName = `${configName}`;\n return (\n \n {validActiveConfig && (\n \n )}\n \n );\n};\n\nexport default ConfigurationsList;\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 { Button, UploadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport { performDownload } from \"../../../../common/utils\";\nimport { DateTime } from \"luxon\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useDispatch } from \"react-redux\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst ExportConfigButton = () => {\n const dispatch = useDispatch();\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n performDownload(\n new Blob([window.atob(res.value)]),\n `minio-server-config-${DateTime.now().toFormat(\n \"LL-dd-yyyy-HH-mm-ss\",\n )}.conf`,\n );\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n return (\n \n {\n invokeApi(\"GET\", `api/v1/configs/export`);\n }}\n icon={}\n label={\"Export\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n );\n};\n\nexport default ExportConfigButton;\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, useRef, useState } from \"react\";\nimport { Button, DownloadIcon } from \"mds\";\nimport useApi from \"../../Common/Hooks/useApi\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../../systemSlice\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useDispatch, useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { AppState } from \"../../../../store\";\n\nconst ImportConfigButton = () => {\n const navigate = useNavigate();\n const dispatch = useDispatch();\n\n const needsRestart = useSelector(\n (state: AppState) => state.system.serverNeedsRestart,\n );\n\n const [refreshPage, setRefreshPage] = useState(\n undefined,\n );\n const fileUpload = useRef(null);\n\n const [isReqLoading, invokeApi] = useApi(\n (res: any) => {\n //base64 encoded information so decode before downloading.\n dispatch(setServerNeedsRestart(true)); //import should refreshPage as per mc.\n setRefreshPage(true);\n },\n (err) => {\n dispatch(setErrorSnackMessage(err));\n },\n );\n\n useEffect(() => {\n if (!needsRestart && refreshPage) {\n navigate(0); // refresh the page.\n }\n }, [needsRestart, refreshPage, navigate]);\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n const [fileToUpload] = e.target.files;\n\n const formData = new FormData();\n const blobFile = new Blob([fileToUpload], { type: fileToUpload.type });\n\n formData.append(\"file\", blobFile, fileToUpload.name);\n // @ts-ignore\n invokeApi(\"POST\", `api/v1/configs/import`, formData);\n\n e.target.value = \"\";\n };\n\n return (\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n }}\n icon={}\n label={\"Import\"}\n variant={\"regular\"}\n disabled={isReqLoading}\n />\n \n \n );\n};\n\nexport default ImportConfigButton;\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, useCallback, useEffect, useState } from \"react\";\nimport {\n Box,\n Grid,\n HelpBox,\n PageLayout,\n ScreenTitle,\n SettingsIcon,\n Tabs,\n} from \"mds\";\n\nimport { configurationElements } from \"../utils\";\nimport {\n Navigate,\n Route,\n Routes,\n useLocation,\n useNavigate,\n} from \"react-router-dom\";\n\nimport ConfigurationForm from \"./ConfigurationForm\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport PageHeaderWrapper from \"../../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ExportConfigButton from \"./ExportConfigButton\";\nimport ImportConfigButton from \"./ImportConfigButton\";\n\nimport HelpMenu from \"../../HelpMenu\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\nimport { api } from \"../../../../api\";\nimport { IElement } from \"../types\";\nimport { errorToHandler } from \"../../../../api/errors\";\n\nconst getRoutePath = (path: string) => {\n return `${IAM_PAGES.SETTINGS}/${path}`;\n};\n\n// region is not part of config subsystem list.\nconst NON_SUB_SYS_CONFIG_ITEMS = [\"region\"];\nconst IGNORED_CONFIG_SUB_SYS = [\"cache\"]; // cache config is not supported.\n\nconst ConfigurationOptions = () => {\n const { pathname = \"\" } = useLocation();\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const [configSubSysList, setConfigSubSysList] = useState([]);\n const fetchConfigSubSysList = useCallback(async () => {\n api.configs\n .listConfig() // get a list of available config subsystems.\n .then((res) => {\n if (res && res?.data && res?.data?.configurations) {\n const confSubSysList = (res?.data?.configurations || []).reduce(\n (acc: string[], { key = \"\" }) => {\n if (!IGNORED_CONFIG_SUB_SYS.includes(key)) {\n acc.push(key);\n }\n return acc;\n },\n [],\n );\n\n setConfigSubSysList(confSubSysList);\n }\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }, [dispatch]);\n\n useEffect(() => {\n fetchConfigSubSysList();\n dispatch(setHelpName(\"settings_Region\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n const availableConfigSubSys = configurationElements.filter(\n ({ configuration_id }: IElement) => {\n return (\n NON_SUB_SYS_CONFIG_ITEMS.includes(configuration_id) ||\n configSubSysList.includes(configuration_id) ||\n !configSubSysList.length\n );\n },\n );\n\n return (\n \n } />\n \n \n }\n title={\"MinIO Configuration:\"}\n actions={\n \n \n \n \n }\n sx={{ marginBottom: 15 }}\n />\n {\n navigate(path);\n }}\n useRouteTabs\n options={availableConfigSubSys.map((element) => {\n const { configuration_id, configuration_label, icon } = element;\n return {\n tabConfig: {\n id: `settings-tab-${configuration_label}`,\n label: configuration_label,\n value: configuration_id,\n icon: icon,\n to: getRoutePath(configuration_id),\n },\n };\n })}\n routes={\n \n {availableConfigSubSys.map((element) => (\n }\n />\n ))}\n }\n />\n \n }\n />\n \n \n }\n help={\n \n MinIO supports a variety of configurations ranging from\n encryption, compression, region, notifications, etc.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n
\n );\n};\n\nexport default ConfigurationOptions;\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 { IElement, IElementValue, IOverrideEnv, OverrideValue } from \"./types\";\nimport {\n CodeIcon,\n CompressIcon,\n ConsoleIcon,\n FindReplaceIcon,\n FirstAidIcon,\n KeyIcon,\n LogsIcon,\n PendingItemsIcon,\n PublicIcon,\n} from \"mds\";\n\nexport const configurationElements: IElement[] = [\n {\n icon: ,\n configuration_id: \"region\",\n configuration_label: \"Region\",\n },\n {\n icon: ,\n configuration_id: \"compression\",\n configuration_label: \"Compression\",\n },\n {\n icon: ,\n configuration_id: \"api\",\n configuration_label: \"API\",\n },\n {\n icon: ,\n configuration_id: \"heal\",\n configuration_label: \"Heal\",\n },\n {\n icon: ,\n configuration_id: \"scanner\",\n configuration_label: \"Scanner\",\n },\n {\n icon: ,\n configuration_id: \"etcd\",\n configuration_label: \"Etcd\",\n },\n {\n icon: ,\n configuration_id: \"logger_webhook\",\n configuration_label: \"Logger Webhook\",\n },\n {\n icon: ,\n configuration_id: \"audit_webhook\",\n configuration_label: \"Audit Webhook\",\n },\n {\n icon: ,\n configuration_id: \"audit_kafka\",\n configuration_label: \"Audit Kafka\",\n },\n];\n\nexport const fieldsConfigurations: any = {\n region: [\n {\n name: \"name\",\n required: true,\n label: \"Server Location\",\n tooltip: 'Name of the location of the server e.g. \"us-west-rack2\"',\n type: \"string\",\n placeholder: \"e.g. us-west-rack-2\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n ],\n compression: [\n {\n name: \"extensions\",\n required: false,\n label: \"Extensions\",\n tooltip:\n 'Extensions to compress e.g. \".txt\", \".log\" or \".csv\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter an Extension\",\n withBorder: true,\n },\n {\n name: \"mime_types\",\n required: false,\n label: \"Mime Types\",\n tooltip:\n 'Mime types e.g. \"text/*\", \"application/json\" or \"application/xml\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter a Mime Type\",\n withBorder: true,\n },\n ],\n api: [\n {\n name: \"requests_max\",\n required: false,\n label: \"Requests Max\",\n tooltip: \"Maximum number of concurrent requests, e.g. '1600'\",\n type: \"number\",\n placeholder: \"Enter Requests Max\",\n },\n {\n name: \"cors_allow_origin\",\n required: false,\n label: \"Cors Allow Origin\",\n tooltip: \"List of origins allowed for CORS requests\",\n type: \"csv\",\n placeholder: \"Enter allowed origin e.g. https://example.com\",\n },\n {\n name: \"replication_workers\",\n required: false,\n label: \"Replication Workers\",\n tooltip: \"Number of replication workers, defaults to 100\",\n type: \"number\",\n placeholder: \"Enter Replication Workers\",\n },\n {\n name: \"replication_failed_workers\",\n required: false,\n label: \"Replication Failed Workers\",\n tooltip:\n \"Number of replication workers for recently failed replicas, defaults to 4\",\n type: \"number\",\n placeholder: \"Enter Replication Failed Workers\",\n },\n ],\n heal: [\n {\n name: \"bitrotscan\",\n required: false,\n label: \"Bitrot Scan\",\n tooltip:\n \"Perform bitrot scan on disks when checking objects during scanner\",\n type: \"on|off\",\n },\n {\n name: \"max_sleep\",\n required: false,\n label: \"Max Sleep\",\n tooltip:\n \"Maximum sleep duration between objects to slow down heal operation, e.g. 2s\",\n type: \"duration\",\n placeholder: \"Enter Max Sleep Duration\",\n },\n {\n name: \"max_io\",\n required: false,\n label: \"Max IO\",\n tooltip:\n \"Maximum IO requests allowed between objects to slow down heal operation, e.g. 3\",\n type: \"number\",\n placeholder: \"Enter Max IO\",\n },\n ],\n scanner: [\n {\n name: \"delay\",\n required: false,\n label: \"Delay Multiplier\",\n tooltip: \"Scanner delay multiplier, defaults to '10.0'\",\n type: \"number\",\n placeholder: \"Enter Delay\",\n },\n {\n name: \"max_wait\",\n required: false,\n label: \"Max Wait\",\n tooltip: \"Maximum wait time between operations, defaults to '15s'\",\n type: \"duration\",\n placeholder: \"Enter Max Wait\",\n },\n {\n name: \"cycle\",\n required: false,\n label: \"Cycle\",\n tooltip: \"Time duration between scanner cycles, defaults to '1m'\",\n type: \"duration\",\n placeholder: \"Enter Cycle\",\n },\n ],\n etcd: [\n {\n name: \"endpoints\",\n required: true,\n label: \"Endpoints\",\n tooltip:\n 'List of etcd endpoints e.g. \"http://localhost:2379\" - you can write one per field',\n type: \"csv\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"path_prefix\",\n required: false,\n label: \"Path Prefix\",\n tooltip: 'Namespace prefix to isolate tenants e.g. \"customer1/\"',\n type: \"string\",\n placeholder: \"Enter Path Prefix\",\n },\n {\n name: \"coredns_path\",\n required: false,\n label: \"Coredns Path\",\n tooltip: 'Shared bucket DNS records, default is \"/skydns\"',\n type: \"string\",\n placeholder: \"Enter Coredns Path\",\n },\n {\n name: \"client_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_cert_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"comment\",\n required: false,\n label: \"Comment\",\n tooltip: \"You can add a comment to this setting\",\n type: \"comment\",\n multiline: true,\n placeholder: \"Enter custom notes if any\",\n },\n ],\n logger_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_webhook: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n type: \"string\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n required: true,\n label: \"Auth Token\",\n type: \"string\",\n placeholder: \"Enter Auth Token\",\n },\n ],\n audit_kafka: [\n {\n name: \"enable\",\n required: false,\n label: \"Enable\",\n tooltip: \"Enable audit_kafka target\",\n type: \"on|off\",\n customValueProcess: (origValue: string) => {\n return origValue === \"\" || origValue === \"on\" ? \"on\" : \"off\";\n },\n },\n {\n name: \"brokers\",\n required: true,\n label: \"Brokers\",\n type: \"csv\",\n placeholder: \"Enter Kafka Broker\",\n },\n {\n name: \"topic\",\n required: false,\n label: \"Topic\",\n type: \"string\",\n placeholder: \"Enter Kafka Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n },\n {\n name: \"sasl\",\n required: false,\n label: \"Use SASL\",\n tooltip:\n \"Enable SASL (Simple Authentication and Security Layer) authentication\",\n type: \"on|off\",\n },\n {\n name: \"sasl_username\",\n required: false,\n label: \"SASL Username\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_password\",\n required: false,\n label: \"SASL Password\",\n type: \"password\",\n placeholder: \"Enter SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n },\n {\n name: \"sasl_mechanism\",\n required: false,\n label: \"SASL Mechanism\",\n type: \"string\",\n placeholder: \"Enter SASL Mechanism\",\n tooltip: \"SASL authentication mechanism\",\n },\n {\n name: \"tls\",\n required: false,\n label: \"Use TLS\",\n tooltip: \"Enable TLS (Transport Layer Security)\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n required: false,\n label: \"Skip TLS Verification\",\n tooltip: \"Trust server TLS without verification\",\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n required: false,\n label: \"Client Cert\",\n tooltip: \"Client cert for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_tls_key\",\n required: false,\n label: \"Client Cert Key\",\n tooltip: \"Client cert key for mTLS authentication\",\n type: \"string\",\n placeholder: \"Enter Client Cert Key\",\n },\n {\n name: \"tls_client_auth\",\n required: false,\n label: \"TLS Client Auth\",\n tooltip:\n \"ClientAuth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n },\n {\n name: \"version\",\n required: false,\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster\",\n type: \"string\",\n },\n ],\n};\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const selectSAs = (\n e: React.ChangeEvent,\n setSelectedSAs: Function,\n selectedSAs: string[],\n) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedSAs]; // We clone the selectedSAs array\n if (checked) {\n // If the user has checked this field we need to push this to selectedSAs\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 setSelectedSAs(elements);\n return elements;\n};\n\nexport const overrideFields = (formFields: IElementValue[]): IOverrideEnv => {\n let overrideReturn: IOverrideEnv = {};\n\n formFields.forEach((envItem) => {\n // it has override values, we construct the value\n if (envItem.env_override) {\n const value: OverrideValue = {\n value: envItem.env_override.value || \"\",\n overrideEnv: envItem.env_override.name || \"\",\n };\n\n overrideReturn = { ...overrideReturn, [envItem.key]: value };\n }\n });\n\n return overrideReturn;\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, useEffect, useState } from \"react\";\nimport {\n CommentBox,\n ConsoleIcon,\n FormLayout,\n Grid,\n InputBox,\n ReadBox,\n Switch,\n Tooltip,\n} from \"mds\";\nimport { IElementValue, IOverrideEnv, KVField } from \"../Configurations/types\";\nimport CSVMultiSelector from \"../Common/FormComponents/CSVMultiSelector/CSVMultiSelector\";\n\ninterface IConfGenericProps {\n onChange: (newValue: IElementValue[]) => void;\n fields: KVField[];\n defaultVals?: IElementValue[];\n overrideEnv?: IOverrideEnv;\n}\n\n// Function to get defined values,\n//we make this because the backed sometimes don't return all the keys when there is an initial configuration\nconst valueDef = (key: string, type: string, defaults: IElementValue[]) => {\n let defValue = type === \"on|off\" ? \"off\" : \"\";\n\n if (defaults.length > 0) {\n const storedConfig = defaults.find((element) => element.key === key);\n\n if (storedConfig) {\n defValue = storedConfig.value || \"\";\n }\n }\n\n return defValue;\n};\n\nconst ConfTargetGeneric = ({\n onChange,\n fields,\n defaultVals,\n overrideEnv,\n}: IConfGenericProps) => {\n const [valueHolder, setValueHolder] = useState([]);\n const fieldsElements = !fields ? [] : fields;\n const defValList = !defaultVals ? [] : defaultVals;\n\n // Effect to create all the values to hold\n useEffect(() => {\n const values: IElementValue[] = fields.map((field) => {\n const stateInsert: IElementValue = {\n key: field.name,\n value: valueDef(field.name, field.type, defValList),\n };\n return stateInsert;\n });\n\n setValueHolder(values);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [fields, defaultVals]);\n\n useEffect(() => {\n onChange(valueHolder);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [valueHolder]);\n\n const setValueElement = (key: string, value: string, index: number) => {\n const valuesDup = [...valueHolder];\n value = value.trim();\n valuesDup[index] = { key, value };\n\n setValueHolder(valuesDup);\n };\n\n const fieldDefinition = (field: KVField, item: number) => {\n const holderItem = valueHolder[item];\n\n if (holderItem) {\n // Override Value with env var, we display generic string component\n const override = overrideEnv?.[`${holderItem.key}`];\n\n if (override) {\n return (\n \n \n \n \n \n }\n sx={{ width: \"100%\" }}\n >\n {override.value}\n \n );\n }\n }\n\n switch (field.type) {\n case \"on|off\":\n const value = holderItem ? holderItem.value : \"off\";\n\n return (\n ) => {\n const value = e.target.checked ? \"on\" : \"off\";\n setValueElement(field.name, value, item);\n }}\n id={field.name}\n name={field.name}\n label={field.label}\n value={\"switch_on\"}\n tooltip={field.tooltip}\n checked={value === \"on\"}\n />\n );\n case \"csv\":\n return (\n {\n let valCh = \"\";\n\n if (Array.isArray(value)) {\n valCh = value.join(\",\");\n } else {\n valCh = value;\n }\n\n setValueElement(field.name, valCh, item);\n }}\n tooltip={field.tooltip}\n commonPlaceholder={field.placeholder}\n withBorder={true}\n />\n );\n case \"comment\":\n return (\n setValueElement(field.name, e.target.value, item)}\n placeholder={field.placeholder}\n />\n );\n default:\n return (\n ) =>\n setValueElement(field.name, e.target.value, item)\n }\n placeholder={field.placeholder}\n />\n );\n }\n };\n\n return (\n \n {fieldsElements.map((field, item) => (\n {fieldDefinition(field, item)}\n ))}\n \n );\n};\n\nexport default ConfTargetGeneric;\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 { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../Common/ModalWrapper/ConfirmDialog\";\n\nimport { ConfirmDeleteIcon, ProgressBar } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IResetConfiguration {\n configurationName: string;\n closeResetModalAndRefresh: (reloadConfiguration: boolean) => void;\n resetOpen: boolean;\n}\n\nconst ResetConfigurationModal = ({\n configurationName,\n closeResetModalAndRefresh,\n resetOpen,\n}: IResetConfiguration) => {\n const dispatch = useAppDispatch();\n const [resetLoading, setResetLoading] = useState(false);\n\n useEffect(() => {\n if (resetLoading) {\n api.configs\n .resetConfig(configurationName)\n .then(() => {\n setResetLoading(false);\n closeResetModalAndRefresh(true);\n })\n .catch((err) => {\n setResetLoading(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [closeResetModalAndRefresh, configurationName, resetLoading, dispatch]);\n\n const resetConfiguration = () => {\n setResetLoading(true);\n };\n\n return (\n }\n isLoading={resetLoading}\n onConfirm={resetConfiguration}\n onClose={() => {\n closeResetModalAndRefresh(false);\n }}\n confirmationContent={\n \n {resetLoading && }\n \n Are you sure you want to restore these configurations to default\n values?\n
\n \n Please note that this may cause your system to not be accessible\n \n
\n
\n }\n />\n );\n};\n\nexport default ResetConfigurationModal;\n"],"names":["_ref","elements","name","label","tooltip","commonPlaceholder","onChange","withBorder","currentElements","setCurrentElements","useState","bottomList","createRef","useEffect","length","elementsSplit","split","push","refScroll","current","scrollIntoView","onChangeCallback","useCallback","newString","firstUpdate","useRef","elementsString","filter","element","trim","join","onChangeElement","e","persist","updatedElement","index","get","target","parseInt","value","inputs","map","_jsx","InputBox","id","concat","toString","placeholder","overlayIcon","AddIcon","overlayAction","elementsUp","cpList","addEmptyLine","Fragment","children","_jsxs","Box","sx","display","className","InputLabel","alignItems","marginLeft","width","Tooltip","placement","HelpIcon","withBorders","overflowY","height","position","ref","onClose","modalOpen","title","wideLimit","titleIcon","iconColor","dispatch","useAppDispatch","openSnackbar","setOpenSnackbar","modalSnackMessage","useSelector","state","system","modalSnackBar","setModalSnackMessage","message","type","detailedErrorMsg","ModalBox","open","widthLimit","MainError","isModal","Snackbar","closeSnackBar","mode","variant","autoHideDuration","condensed","onCloseEndpoint","setName","endpoint","setEndpoint","authToken","setAuthToken","saving","setSaving","invalidInputs","setInvalidInput","initialInputs","setInitialInputs","initializeInput","item","validateInput","valid","includes","icon","WebhookIcon","ConsoleIcon","PendingItemsIcon","ModalWrapper","FormLayout","containerPadding","event","validity","error","pattern","required","Grid","xs","marginBottom","ProgressBar","modalStyleUtils","modalButtonBar","Button","disabled","onClick","marginRight","color","saveWebhook","payload","key_values","key","arn_resource_id","api","configs","setConfig","then","res","setServerNeedsRestart","data","restart","setSnackBarMessage","configurationIsLoading","catch","err","setErrorSnackMessage","errorToHandler","selectedARN","deleteLoading","setDeleteLoading","resetConfig","defaultWH","ConfirmDialog","confirmText","isOpen","isLoading","onConfirm","onConfirmDelete","ConfirmDeleteIcon","confirmationContent","_overrideValues$enabl","_overrideValues$enabl2","_overrideValues$endpo","_overrideValues$endpo2","_overrideValues$auth_","_overrideValues$auth_2","endpointInfo","endpointState","setEndpointState","endpointLocate","find","tokenLocate","enable","endpointValue","tokenValue","hasOverride","itm","env_override","overrideValues","overrideFields","ReadBox","actionButton","justifyContent","paddingRight","overrideEnv","style","auth_token","Switch","checked","updateWebhook","setResetConfigurationOpen","WebhookSettingslist","newEndpointOpen","setNewEndpointOpen","deleteWebhookOpen","setDeleteWebhookOpen","editWebhookOpen","setEditWebhookOpen","setSelectedARN","selectedEndpoint","setSelectedEndpoint","actions","disableButtonFunction","wHook","_wHook$key_values","container","AddEndpointModal","DeleteWebhookEndpoint","onCloseDelete","EditWebhookEndpoint","onCloseEditWebhook","padding","DataTable","columns","elementKey","renderFunction","EnableFilter","overrideEnabled","flexDirection","justifyItems","fontSize","fill","TierOfflineIcon","TierOnlineIcon","endpointFilter","itemActions","idField","records","entityName","customPaperHeight","selectedConfiguration","navigate","useNavigate","pathname","useLocation","selConfigTab","substring","lastIndexOf","valuesObj","setValueObj","configValues","setConfigValues","configSubsysList","setConfigSubsysList","resetConfigurationOpen","overrideEnvs","setOverrideEnvs","loadingConfig","loadingConfigurations","configId","configInfo","values","keyVals","fieldsConfigurations","field","includedValue","customValue","customValueProcess","removeEmptyFields","configuration_id","onValueChange","newValue","resetConfigurationMOpen","onMouseMove","setHelpName","configuration_label","ResetConfigurationModal","configurationName","closeResetModalAndRefresh","resetOpen","textAlign","paddingTop","Loader","WebhookSettings","noValidate","onSubmit","preventDefault","flexFlow","gridTemplateColumns","gap","ConfTargetGeneric","fields","defaultVals","maxHeight","ConfigurationsList","configName","validActiveConfig","configurationElements","containerClassName","minWidth","EditConfiguration","ExportConfigButton","useDispatch","isReqLoading","invokeApi","useApi","performDownload","Blob","window","atob","DateTime","now","toFormat","TooltipWrapper","UploadIcon","ImportConfigButton","needsRestart","serverNeedsRestart","refreshPage","setRefreshPage","undefined","fileUpload","files","fileToUpload","formData","FormData","blobFile","append","click","DownloadIcon","NON_SUB_SYS_CONFIG_ITEMS","IGNORED_CONFIG_SUB_SYS","ConfigurationOptions","configSubSysList","setConfigSubSysList","fetchConfigSubSysList","async","listConfig","_res$data","configurations","_res$data2","confSubSysList","reduce","acc","availableConfigSubSys","_ref2","PageHeaderWrapper","HelpMenu","PageLayout","ScreenTitle","SettingsIcon","Tabs","currentTabOrPath","onTabClick","path","useRouteTabs","options","tabConfig","to","IAM_PAGES","SETTINGS","routes","Routes","Route","ConfigurationForm","Navigate","HelpBox","iconComponent","help","href","rel","PublicIcon","CompressIcon","CodeIcon","FirstAidIcon","FindReplaceIcon","KeyIcon","LogsIcon","region","compression","heal","scanner","etcd","multiline","logger_webhook","audit_webhook","audit_kafka","origValue","formFields","selectSAs","setSelectedSAs","selectedSAs","targetD","overrideReturn","forEach","envItem","valueDef","defaults","defValue","storedConfig","valueHolder","setValueHolder","fieldsElements","defValList","setValueElement","valuesDup","fieldDefinition","holderItem","override","CSVMultiSelector","valCh","Array","isArray","CommentBox","resetLoading","setResetLoading","resetConfiguration","maxWidth","whiteSpace","wordWrap"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/7063.bf210d7d.chunk.js.map b/web-app/build/static/js/7063.bf210d7d.chunk.js.map index 306e0c7cf5..ef32d720f7 100644 --- a/web-app/build/static/js/7063.bf210d7d.chunk.js.map +++ b/web-app/build/static/js/7063.bf210d7d.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/7063.bf210d7d.chunk.js","mappings":"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","sources":["screens/Console/Support/utils.tsx","screens/Console/Support/registerThunks.ts","screens/Console/Support/RegisterHelpBox.tsx","screens/Console/Support/OfflineRegistration.tsx","screens/Console/Support/SubnetMFAToken.tsx","screens/Console/Support/ClusterRegistrationForm.tsx","screens/Console/Support/OnlineRegistration.tsx","screens/Console/Support/GetApiKeyModal.tsx","screens/Console/Support/ApiKeyRegister.tsx","screens/Console/Support/Register.tsx","screens/Console/Support/RegistrationStatusBanner.tsx","../node_modules/copy-to-clipboard/index.js","../node_modules/react-copy-to-clipboard/lib/Component.js","../node_modules/react-copy-to-clipboard/lib/index.js","../node_modules/toggle-selection/index.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { CopyIcon, SettingsIcon, Box, Grid, Switch, InputBox } from \"mds\";\nimport RegistrationStatusBanner from \"./RegistrationStatusBanner\";\n\nexport const ClusterRegistered = ({ email }: { email: string }) => {\n return (\n \n \n \n \n Login to{\" \"}\n \n SUBNET\n {\" \"}\n to avail support for this MinIO cluster\n \n \n \n );\n};\n\nexport const ProxyConfiguration = () => {\n const proxyConfigurationCommand =\n \"mc admin config set {alias} subnet proxy={proxy}\";\n const [displaySubnetProxy, setDisplaySubnetProxy] = useState(false);\n return (\n \n \n \n \n \n
\n Proxy Configuration\n
\n \n \n For airgap/firewalled environments it is possible to{\" \"}\n \n configure a proxy\n {\" \"}\n to connect to SUBNET .\n \n \n {displaySubnetProxy && (\n {}}\n label=\"\"\n value={proxyConfigurationCommand}\n overlayIcon={}\n overlayAction={() =>\n navigator.clipboard.writeText(proxyConfigurationCommand)\n }\n />\n )}\n \n \n \n ) => {\n setDisplaySubnetProxy(event.target.checked);\n }}\n />\n \n \n
\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 resetRegisterForm,\n setClusterRegistered,\n setLicenseInfo,\n setLoading,\n setLoadingLicenseInfo,\n setSelectedSubnetOrganization,\n setSubnetAccessToken,\n setSubnetMFAToken,\n setSubnetOrganizations,\n setSubnetOTP,\n} from \"./registerSlice\";\nimport api from \"../../../common/api\";\nimport {\n SubnetInfo,\n SubnetLoginRequest,\n SubnetLoginResponse,\n SubnetLoginWithMFARequest,\n SubnetRegisterRequest,\n} from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_PAGES_PERMISSIONS,\n} from \"../../../common/SecureComponent/permissions\";\n\nexport const fetchLicenseInfo = createAsyncThunk(\n \"register/fetchLicenseInfo\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n const getSubnetInfo = hasPermission(\n CONSOLE_UI_RESOURCE,\n IAM_PAGES_PERMISSIONS[IAM_PAGES.LICENSE],\n true,\n );\n\n const loadingLicenseInfo = state.register.loadingLicenseInfo;\n\n if (loadingLicenseInfo) {\n return;\n }\n if (getSubnetInfo) {\n dispatch(setLoadingLicenseInfo(true));\n api\n .invoke(\"GET\", `/api/v1/subnet/info`)\n .then((res: SubnetInfo) => {\n dispatch(setLicenseInfo(res));\n dispatch(setClusterRegistered(true));\n dispatch(setLoadingLicenseInfo(false));\n })\n .catch((err: ErrorResponseHandler) => {\n if (\n err.detailedError.toLowerCase() !==\n \"License is not present\".toLowerCase() &&\n err.detailedError.toLowerCase() !==\n \"license not found\".toLowerCase()\n ) {\n dispatch(setErrorSnackMessage(err));\n }\n dispatch(setClusterRegistered(false));\n dispatch(setLoadingLicenseInfo(false));\n });\n } else {\n dispatch(setLoadingLicenseInfo(false));\n }\n },\n);\n\nexport interface ClassRegisterArgs {\n token: string;\n account_id: string;\n}\n\nexport const callRegister = createAsyncThunk(\n \"register/callRegister\",\n async (args: ClassRegisterArgs, { dispatch }) => {\n const request: SubnetRegisterRequest = {\n token: args.token,\n account_id: args.account_id,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/register\", request)\n .then(() => {\n dispatch(setLoading(false));\n dispatch(setServerNeedsRestart(true));\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n },\n);\n\nexport const subnetLoginWithMFA = createAsyncThunk(\n \"register/subnetLoginWithMFA\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const subnetEmail = state.register.subnetEmail;\n const subnetMFAToken = state.register.subnetMFAToken;\n const subnetOTP = state.register.subnetOTP;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n const request: SubnetLoginWithMFARequest = {\n username: subnetEmail,\n otp: subnetOTP,\n mfa_token: subnetMFAToken,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login/mfa\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.access_token && resp.organizations.length > 0) {\n if (resp.organizations.length === 1) {\n dispatch(\n callRegister({\n token: resp.access_token,\n account_id: resp.organizations[0].accountId.toString(),\n }),\n );\n } else {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(setSubnetOTP(\"\"));\n });\n },\n);\n\nexport const subnetLogin = createAsyncThunk(\n \"register/subnetLogin\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const license = state.register.license;\n const subnetPassword = state.register.subnetPassword;\n const subnetEmail = state.register.subnetEmail;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n let request: SubnetLoginRequest = {\n username: subnetEmail,\n password: subnetPassword,\n apiKey: license,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.registered) {\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n } else if (resp && resp.mfa_token) {\n dispatch(setSubnetMFAToken(resp.mfa_token));\n } else if (resp && resp.access_token && resp.organizations.length > 0) {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(resetRegisterForm());\n });\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n CallHomeFeatureIcon,\n DiagnosticsFeatureIcon,\n ExtraFeaturesIcon,\n HelpIconFilled,\n PerformanceFeatureIcon,\n Box,\n HelpBox,\n} from \"mds\";\n\nconst FeatureItem = ({\n icon,\n description,\n}: {\n icon: any;\n description: string | React.ReactNode;\n}) => {\n return (\n \n {icon}{\" \"}\n \n {description}\n \n \n );\n};\nconst RegisterHelpBox = () => {\n return (\n }\n help={\n \n \n Registering this cluster with the MinIO Subscription Network\n (SUBNET) provides the following benefits in addition to the\n commercial license and SLA backed support.\n \n\n \n }\n description={`Call Home Monitoring`}\n />\n }\n description={`Health Diagnostics`}\n />\n }\n description={`Performance Analysis`}\n />\n }\n description={\n \n More Features\n \n }\n />\n \n \n }\n />\n );\n};\n\nexport default RegisterHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Box,\n Button,\n CommentBox,\n CopyIcon,\n FormLayout,\n OfflineRegistrationIcon,\n} from \"mds\";\nimport { ClusterRegistered } from \"./utils\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { api } from \"api\";\nimport { ApiError, HttpResponse, SetConfigResponse } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst OfflineRegistration = () => {\n const dispatch = useAppDispatch();\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n\n const offlineRegUrl = `https://subnet.min.io/cluster/register?token=${subnetRegToken}`;\n\n const [licenseKey, setLicenseKey] = useState(\"\");\n const [loadingSave, setLoadingSave] = useState(false);\n\n const applyAirGapLicense = () => {\n setLoadingSave(true);\n api.configs\n .setConfig(\"subnet\", {\n key_values: [{ key: \"license\", value: licenseKey }],\n })\n .then((_) => {\n dispatch(fetchLicenseInfo());\n dispatch(setServerNeedsRestart(true));\n })\n .catch((res: HttpResponse) => {\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n })\n .finally(() => setLoadingSave(false));\n };\n\n return (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n }\n helpBox={}\n withBorders={false}\n containerPadding={false}\n >\n \n \n \n \n Click on the link to register this cluster in SUBNET and get\n a License Key for this Air-Gap deployment\n \n \n\n \n \n https://subnet.min.io/cluster/register\n \n\n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n \n\n \n Note: If this machine does not have internet connection, Copy\n paste the following URL in a browser where you access SUBNET\n and follow the instructions to complete the registration\n \n\n \n \n {\n setLicenseKey(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default OfflineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { Box, Button, FormLayout, InputBox, LockIcon } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { setSubnetOTP } from \"./registerSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { subnetLoginWithMFA } from \"./registerThunks\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\n\nconst SubnetMFAToken = () => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetOTP = useSelector((state: AppState) => state.register.subnetOTP);\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n }\n withBorders={false}\n containerPadding={false}\n >\n \n Please enter the 6-digit verification code that was sent to your email\n address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n dispatch(setSubnetOTP(event.target.value))\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n dispatch(subnetLoginWithMFA())}\n disabled={\n loading ||\n subnetOTP.trim().length === 0 ||\n subnetMFAToken.trim().length === 0\n }\n variant=\"callAction\"\n label={\"Verify\"}\n />\n \n \n );\n};\nexport default SubnetMFAToken;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { Box, Button, FormLayout, Select } from \"mds\";\nimport { setLoading, setSelectedSubnetOrganization } from \"./registerSlice\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { callRegister } from \"./registerThunks\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\n\nconst ClusterRegistrationForm = () => {\n const dispatch = useAppDispatch();\n\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n const selectedSubnetOrganization = useSelector(\n (state: AppState) => state.register.selectedSubnetOrganization,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n }\n >\n \n dispatch(setSelectedSubnetOrganization(value as string))\n }\n label=\"Select an organization\"\n value={selectedSubnetOrganization}\n options={subnetOrganizations.map((organization) => ({\n label: organization.company,\n value: organization.accountId.toString(),\n }))}\n />\n \n () => {\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n if (subnetAccessToken && selectedSubnetOrganization) {\n dispatch(\n callRegister({\n token: subnetAccessToken,\n account_id: selectedSubnetOrganization,\n }),\n );\n }\n }}\n disabled={loading || subnetAccessToken.trim().length === 0}\n variant=\"callAction\"\n label={\"Register\"}\n />\n \n \n );\n};\n\nexport default ClusterRegistrationForm;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Box,\n Button,\n FormLayout,\n InputBox,\n OnlineRegistrationIcon,\n UsersIcon,\n} from \"mds\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSubnetEmail, setSubnetPassword } from \"./registerSlice\";\nimport { subnetLogin } from \"./registerThunks\";\n\nconst OnlineRegistration = () => {\n const dispatch = useAppDispatch();\n\n const subnetPassword = useSelector(\n (state: AppState) => state.register.subnetPassword,\n );\n const subnetEmail = useSelector(\n (state: AppState) => state.register.subnetEmail,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n }\n title={\"Online activation of MinIO Subscription Network License\"}\n withBorders={false}\n containerPadding={false}\n helpBox={}\n >\n \n Use your MinIO Subscription Network login credentials to register this\n cluster.\n \n \n ) =>\n dispatch(setSubnetEmail(event.target.value))\n }\n label=\"Email\"\n value={subnetEmail}\n overlayIcon={}\n />\n ) =>\n dispatch(setSubnetPassword(event.target.value))\n }\n label=\"Password\"\n type={\"password\"}\n value={subnetPassword}\n />\n\n \n {\n e.preventDefault();\n window.open(`https://min.io/signup?ref=con`, \"_blank\");\n }}\n label={\"Sign up\"}\n />\n dispatch(subnetLogin())}\n label={\"Register\"}\n />\n \n \n \n );\n};\n\nexport default OnlineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, FormLayout, InfoIcon, InputBox, LockIcon, UsersIcon } from \"mds\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport { api } from \"api\";\nimport {\n ApiError,\n ApiKey,\n HttpResponse,\n SubnetLoginResponse,\n} from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IGetApiKeyModalProps {\n open: boolean;\n closeModal: () => void;\n onSet: (apiKey: string) => void;\n}\n\nconst GetApiKeyModal = ({ open, closeModal, onSet }: IGetApiKeyModalProps) => {\n const dispatch = useAppDispatch();\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [mfaToken, setMfaToken] = useState(\"\");\n const [subnetOTP, setSubnetOTP] = useState(\"\");\n const [loadingSave, setLoadingSave] = useState(false);\n\n const onError = (err: ApiError) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n closeModal();\n setEmail(\"\");\n setPassword(\"\");\n setMfaToken(\"\");\n setSubnetOTP(\"\");\n };\n\n const onConfirm = () => {\n if (mfaToken !== \"\") {\n submitSubnetMfa();\n } else {\n submitSubnetLogin();\n }\n };\n\n const submitSubnetMfa = () => {\n setLoadingSave(true);\n api.subnet\n .subnetLoginMfa({\n username: email,\n otp: subnetOTP,\n mfa_token: mfaToken,\n })\n .then((res: HttpResponse) => {\n if (res.data && res.data.access_token) {\n getApiKey(res.data.access_token);\n }\n })\n .catch((res: HttpResponse) => {\n onError(res.error);\n })\n .finally(() => setLoadingSave(false));\n };\n\n const getApiKey = (access_token: string) => {\n setLoadingSave(true);\n api.subnet\n .subnetApiKey({\n token: access_token,\n })\n .then((res: HttpResponse) => {\n if (res.data && res.data.apiKey) {\n onSet(res.data.apiKey);\n closeModal();\n }\n })\n .catch((res: HttpResponse) => {\n onError(res.error);\n })\n .finally(() => setLoadingSave(false));\n };\n\n const submitSubnetLogin = () => {\n setLoadingSave(true);\n api.subnet\n .subnetLogin({ username: email, password })\n .then((res: HttpResponse) => {\n if (res.data && res.data.mfa_token) {\n setMfaToken(res.data.mfa_token);\n }\n })\n .catch((res: HttpResponse) => {\n onError(res.error);\n })\n .finally(() => setLoadingSave(false));\n };\n\n const getDialogContent = () => {\n if (mfaToken === \"\") {\n return getCredentialsDialog();\n }\n return getMFADialog();\n };\n\n const getCredentialsDialog = () => {\n return (\n \n ) =>\n setEmail(event.target.value)\n }\n label=\"Email\"\n value={email}\n overlayIcon={}\n />\n ) =>\n setPassword(event.target.value)\n }\n label=\"Password\"\n type={\"password\"}\n value={password}\n />\n \n );\n };\n\n const getMFADialog = () => {\n return (\n \n \n \n Two-Factor Authentication\n \n\n \n Please enter the 6-digit verification code that was sent to your\n email address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n setSubnetOTP(event.target.value)\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n \n );\n };\n\n return open ? (\n }\n isLoading={loadingSave}\n cancelText={\"Cancel\"}\n onConfirm={onConfirm}\n onClose={closeModal}\n confirmButtonProps={{\n variant: \"callAction\",\n disabled: !email || !password || loadingSave,\n hidden: true,\n }}\n cancelButtonProps={{\n disabled: loadingSave,\n }}\n confirmationContent={getDialogContent()}\n />\n ) : null;\n};\n\nexport default GetApiKeyModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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, { useCallback, useEffect, useState } from \"react\";\nimport { Box, Button, FormLayout, InputBox, OnlineRegistrationIcon } from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport { SubnetLoginRequest, SubnetLoginResponse } from \"../License/types\";\nimport { useAppDispatch } from \"../../../store\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport GetApiKeyModal from \"./GetApiKeyModal\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport api from \"../../../common/api\";\n\ninterface IApiKeyRegister {\n registerEndpoint: string;\n}\n\nconst ApiKeyRegister = ({ registerEndpoint }: IApiKeyRegister) => {\n const navigate = useNavigate();\n\n const [showApiKeyModal, setShowApiKeyModal] = useState(false);\n const [apiKey, setApiKey] = useState(\"\");\n const [loading, setLoading] = useState(false);\n const [fromModal, setFromModal] = useState(false);\n const dispatch = useAppDispatch();\n\n const onRegister = useCallback(() => {\n if (loading) {\n return;\n }\n setLoading(true);\n let request: SubnetLoginRequest = { apiKey };\n api\n .invoke(\"POST\", registerEndpoint, request)\n .then((resp: SubnetLoginResponse) => {\n setLoading(false);\n if (resp && resp.registered) {\n dispatch(setServerNeedsRestart(true));\n navigate(IAM_PAGES.LICENSE);\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n reset();\n });\n }, [apiKey, dispatch, loading, registerEndpoint, navigate]);\n\n useEffect(() => {\n if (fromModal) {\n onRegister();\n }\n }, [fromModal, onRegister]);\n\n const reset = () => {\n setApiKey(\"\");\n setFromModal(false);\n };\n\n return (\n }\n containerPadding={false}\n withBorders={false}\n helpBox={}\n >\n \n Use your MinIO Subscription Network API Key to register this cluster.\n \n \n ) =>\n setApiKey(event.target.value)\n }\n label=\"API Key\"\n value={apiKey}\n />\n\n \n setShowApiKeyModal(true)}\n label={\"Get from SUBNET\"}\n />\n onRegister()}\n label={\"Register\"}\n />\n \n \n setShowApiKeyModal(false)}\n onSet={(value) => {\n setApiKey(value);\n setFromModal(true);\n }}\n />\n \n );\n};\n\nexport default ApiKeyRegister;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, PageLayout, Tabs } from \"mds\";\nimport { SubnetRegTokenResponse } from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useSelector } from \"react-redux\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { ClusterRegistered, ProxyConfiguration } from \"./utils\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n resetRegisterForm,\n setCurTab,\n setLoading,\n setSubnetRegToken,\n} from \"./registerSlice\";\nimport OfflineRegistration from \"./OfflineRegistration\";\nimport SubnetMFAToken from \"./SubnetMFAToken\";\nimport ClusterRegistrationForm from \"./ClusterRegistrationForm\";\nimport OnlineRegistration from \"./OnlineRegistration\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\nimport api from \"../../../common/api\";\nimport ApiKeyRegister from \"./ApiKeyRegister\";\n\nconst Register = () => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n\n const loading = useSelector((state: AppState) => state.register.loading);\n const loadingLicenseInfo = useSelector(\n (state: AppState) => state.register.loadingLicenseInfo,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n const curTab = useSelector((state: AppState) => state.register.curTab);\n\n const [initialLicenseLoading, setInitialLicenseLoading] =\n useState(true);\n\n useEffect(() => {\n // when unmounted, reset\n return () => {\n dispatch(resetRegisterForm());\n };\n }, [dispatch]);\n\n useEffect(() => {\n if (curTab === \"simple-tab-2\" && !loading && !subnetRegToken) {\n const fetchSubnetRegToken = () => {\n dispatch(setLoading(true));\n api\n .invoke(\"GET\", \"/api/v1/subnet/registration-token\")\n .then((resp: SubnetRegTokenResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.regToken) {\n dispatch(setSubnetRegToken(resp.regToken));\n }\n })\n .catch((err: ErrorResponseHandler) => {\n console.error(err);\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n };\n fetchSubnetRegToken();\n }\n }, [curTab, loading, subnetRegToken, dispatch]);\n\n useEffect(() => {\n if (initialLicenseLoading) {\n dispatch(fetchLicenseInfo());\n setInitialLicenseLoading(false);\n }\n }, [initialLicenseLoading, setInitialLicenseLoading, dispatch]);\n\n let clusterRegistrationForm: React.ReactElement = ;\n\n if (subnetAccessToken && subnetOrganizations.length > 0) {\n clusterRegistrationForm = ;\n } else if (subnetMFAToken) {\n clusterRegistrationForm = ;\n } else {\n clusterRegistrationForm = ;\n }\n\n const apiKeyRegistration = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n \n )}\n \n \n \n );\n\n const offlineRegistration = ;\n\n const regUi = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n clusterRegistrationForm\n )}\n \n\n {!clusterRegistered && }\n \n );\n\n const loadingUi =
Loading..
;\n const uiToShow = loadingLicenseInfo ? loadingUi : regUi;\n\n useEffect(() => {\n dispatch(setHelpName(\"register\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n }\n />\n\n \n {\n dispatch(setCurTab(newValue));\n }}\n options={[\n {\n tabConfig: {\n label: \"Credentials\",\n id: \"simple-tab-0\",\n },\n content: uiToShow,\n },\n {\n tabConfig: {\n label: \"API Key\",\n id: \"simple-tab-1\",\n },\n content: apiKeyRegistration,\n },\n {\n tabConfig: {\n label: \"Air-Gap\",\n id: \"simple-tab-2\",\n },\n content: offlineRegistration,\n },\n ]}\n />\n \n \n );\n};\n\nexport default Register;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { VerifiedIcon, Box, breakPoints } from \"mds\";\n\nconst RegistrationStatusBanner = ({ email = \"\" }: { email?: string }) => {\n return (\n \n \n Register status:\n \n \n \n Registered\n \n \n \n\n \n Registered to:\n {email}\n \n \n );\n};\nexport default RegistrationStatusBanner;\n","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["ClusterRegistered","_ref","email","_jsxs","Fragment","children","_jsx","RegistrationStatusBanner","Grid","item","xs","sx","marginTop","Box","padding","href","target","ProxyConfiguration","proxyConfigurationCommand","displaySubnetProxy","setDisplaySubnetProxy","useState","withBorders","display","alignItems","justifyContent","flexFlow","height","width","SettingsIcon","style","marginLeft","fontWeight","marginBottom","fontSize","InputBox","disabled","id","name","placeholder","onChange","label","value","overlayIcon","CopyIcon","overlayAction","navigator","clipboard","writeText","Switch","checked","event","fetchLicenseInfo","createAsyncThunk","async","_","getState","dispatch","state","getSubnetInfo","hasPermission","CONSOLE_UI_RESOURCE","IAM_PAGES_PERMISSIONS","IAM_PAGES","LICENSE","register","loadingLicenseInfo","setLoadingLicenseInfo","api","invoke","then","res","setLicenseInfo","setClusterRegistered","catch","err","detailedError","toLowerCase","setErrorSnackMessage","callRegister","args","_ref2","request","token","account_id","setLoading","setServerNeedsRestart","resetRegisterForm","subnetLoginWithMFA","_ref3","rejectWithValue","subnetEmail","subnetMFAToken","subnetOTP","loading","username","otp","mfa_token","resp","access_token","organizations","length","accountId","toString","setSubnetAccessToken","setSubnetOrganizations","setSelectedSubnetOrganization","setSubnetOTP","subnetLogin","_ref4","license","subnetPassword","password","apiKey","registered","setSubnetMFAToken","FeatureItem","icon","description","marginRight","className","fontStyle","RegisterHelpBox","HelpBox","title","iconComponent","HelpIconFilled","help","CallHomeFeatureIcon","DiagnosticsFeatureIcon","PerformanceFeatureIcon","ExtraFeaturesIcon","OfflineRegistration","useAppDispatch","subnetRegToken","useSelector","clusterRegistered","licenseInfo","offlineRegUrl","concat","licenseKey","setLicenseKey","loadingSave","setLoadingSave","FormLayout","OfflineRegistrationIcon","helpBox","containerPadding","flex","gap","TooltipWrapper","tooltip","CopyToClipboard","text","Button","type","color","variant","flexDirection","CommentBox","e","modalStyleUtils","modalButtonBar","onClick","applyAirGapLicense","configs","setConfig","key_values","key","errorToHandler","error","finally","SubnetMFAToken","LockIcon","trim","ClusterRegistrationForm","subnetAccessToken","selectedSubnetOrganization","subnetOrganizations","Select","options","map","organization","company","OnlineRegistration","OnlineRegistrationIcon","setSubnetEmail","UsersIcon","setSubnetPassword","preventDefault","window","open","closeModal","onSet","setEmail","setPassword","mfaToken","setMfaToken","onError","submitSubnetMfa","subnet","subnetLoginMfa","data","getApiKey","subnetApiKey","submitSubnetLogin","getCredentialsDialog","getMFADialog","ConfirmDialog","confirmText","isOpen","titleIcon","InfoIcon","isLoading","cancelText","onConfirm","onClose","confirmButtonProps","hidden","cancelButtonProps","confirmationContent","registerEndpoint","navigate","useNavigate","showApiKeyModal","setShowApiKeyModal","setApiKey","fromModal","setFromModal","onRegister","useCallback","reset","useEffect","GetApiKeyModal","Register","curTab","initialLicenseLoading","setInitialLicenseLoading","fetchSubnetRegToken","regToken","setSubnetRegToken","console","clusterRegistrationForm","apiKeyRegistration","ApiKeyRegister","offlineRegistration","regUi","uiToShow","setHelpName","PageHeaderWrapper","actions","HelpMenu","PageLayout","Tabs","horizontal","currentTabOrPath","onTabClick","newValue","setCurTab","tabConfig","content","position","top","left","backgroundColor","fill","VerifiedIcon","breakPoints","sm","deselectCurrent","require","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","all","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","stopPropagation","format","clipboardData","warn","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","copyKey","test","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","i","arguments","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","props","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","Array","_key","_this$props","elem","Children","only","_this$props2","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/7063.bf210d7d.chunk.js","mappings":"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","sources":["screens/Console/Support/utils.tsx","screens/Console/Support/registerThunks.ts","screens/Console/Support/RegisterHelpBox.tsx","screens/Console/Support/OfflineRegistration.tsx","screens/Console/Support/SubnetMFAToken.tsx","screens/Console/Support/ClusterRegistrationForm.tsx","screens/Console/Support/OnlineRegistration.tsx","screens/Console/Support/GetApiKeyModal.tsx","screens/Console/Support/ApiKeyRegister.tsx","screens/Console/Support/Register.tsx","screens/Console/Support/RegistrationStatusBanner.tsx","../node_modules/copy-to-clipboard/index.js","../node_modules/react-copy-to-clipboard/lib/Component.js","../node_modules/react-copy-to-clipboard/lib/index.js","../node_modules/toggle-selection/index.js"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { CopyIcon, SettingsIcon, Box, Grid, Switch, InputBox } from \"mds\";\nimport RegistrationStatusBanner from \"./RegistrationStatusBanner\";\n\nexport const ClusterRegistered = ({ email }: { email: string }) => {\n return (\n \n \n \n \n Login to{\" \"}\n \n SUBNET\n {\" \"}\n to avail support for this MinIO cluster\n \n \n \n );\n};\n\nexport const ProxyConfiguration = () => {\n const proxyConfigurationCommand =\n \"mc admin config set {alias} subnet proxy={proxy}\";\n const [displaySubnetProxy, setDisplaySubnetProxy] = useState(false);\n return (\n \n \n \n \n \n
\n Proxy Configuration\n
\n \n \n For airgap/firewalled environments it is possible to{\" \"}\n \n configure a proxy\n {\" \"}\n to connect to SUBNET .\n \n \n {displaySubnetProxy && (\n {}}\n label=\"\"\n value={proxyConfigurationCommand}\n overlayIcon={}\n overlayAction={() =>\n navigator.clipboard.writeText(proxyConfigurationCommand)\n }\n />\n )}\n \n \n \n ) => {\n setDisplaySubnetProxy(event.target.checked);\n }}\n />\n \n \n
\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 resetRegisterForm,\n setClusterRegistered,\n setLicenseInfo,\n setLoading,\n setLoadingLicenseInfo,\n setSelectedSubnetOrganization,\n setSubnetAccessToken,\n setSubnetMFAToken,\n setSubnetOrganizations,\n setSubnetOTP,\n} from \"./registerSlice\";\nimport api from \"../../../common/api\";\nimport {\n SubnetInfo,\n SubnetLoginRequest,\n SubnetLoginResponse,\n SubnetLoginWithMFARequest,\n SubnetRegisterRequest,\n} from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n CONSOLE_UI_RESOURCE,\n IAM_PAGES,\n IAM_PAGES_PERMISSIONS,\n} from \"../../../common/SecureComponent/permissions\";\n\nexport const fetchLicenseInfo = createAsyncThunk(\n \"register/fetchLicenseInfo\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n const getSubnetInfo = hasPermission(\n CONSOLE_UI_RESOURCE,\n IAM_PAGES_PERMISSIONS[IAM_PAGES.LICENSE],\n true,\n );\n\n const loadingLicenseInfo = state.register.loadingLicenseInfo;\n\n if (loadingLicenseInfo) {\n return;\n }\n if (getSubnetInfo) {\n dispatch(setLoadingLicenseInfo(true));\n api\n .invoke(\"GET\", `/api/v1/subnet/info`)\n .then((res: SubnetInfo) => {\n dispatch(setLicenseInfo(res));\n dispatch(setClusterRegistered(true));\n dispatch(setLoadingLicenseInfo(false));\n })\n .catch((err: ErrorResponseHandler) => {\n if (\n err.detailedError.toLowerCase() !==\n \"License is not present\".toLowerCase() &&\n err.detailedError.toLowerCase() !==\n \"license not found\".toLowerCase()\n ) {\n dispatch(setErrorSnackMessage(err));\n }\n dispatch(setClusterRegistered(false));\n dispatch(setLoadingLicenseInfo(false));\n });\n } else {\n dispatch(setLoadingLicenseInfo(false));\n }\n },\n);\n\ninterface ClassRegisterArgs {\n token: string;\n account_id: string;\n}\n\nexport const callRegister = createAsyncThunk(\n \"register/callRegister\",\n async (args: ClassRegisterArgs, { dispatch }) => {\n const request: SubnetRegisterRequest = {\n token: args.token,\n account_id: args.account_id,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/register\", request)\n .then(() => {\n dispatch(setLoading(false));\n dispatch(setServerNeedsRestart(true));\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n },\n);\n\nexport const subnetLoginWithMFA = createAsyncThunk(\n \"register/subnetLoginWithMFA\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const subnetEmail = state.register.subnetEmail;\n const subnetMFAToken = state.register.subnetMFAToken;\n const subnetOTP = state.register.subnetOTP;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n const request: SubnetLoginWithMFARequest = {\n username: subnetEmail,\n otp: subnetOTP,\n mfa_token: subnetMFAToken,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login/mfa\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.access_token && resp.organizations.length > 0) {\n if (resp.organizations.length === 1) {\n dispatch(\n callRegister({\n token: resp.access_token,\n account_id: resp.organizations[0].accountId.toString(),\n }),\n );\n } else {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(setSubnetOTP(\"\"));\n });\n },\n);\n\nexport const subnetLogin = createAsyncThunk(\n \"register/subnetLogin\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const license = state.register.license;\n const subnetPassword = state.register.subnetPassword;\n const subnetEmail = state.register.subnetEmail;\n const loading = state.register.loading;\n\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n let request: SubnetLoginRequest = {\n username: subnetEmail,\n password: subnetPassword,\n apiKey: license,\n };\n api\n .invoke(\"POST\", \"/api/v1/subnet/login\", request)\n .then((resp: SubnetLoginResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.registered) {\n dispatch(resetRegisterForm());\n dispatch(fetchLicenseInfo());\n } else if (resp && resp.mfa_token) {\n dispatch(setSubnetMFAToken(resp.mfa_token));\n } else if (resp && resp.access_token && resp.organizations.length > 0) {\n dispatch(setSubnetAccessToken(resp.access_token));\n dispatch(setSubnetOrganizations(resp.organizations));\n dispatch(\n setSelectedSubnetOrganization(\n resp.organizations[0].accountId.toString(),\n ),\n );\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n dispatch(resetRegisterForm());\n });\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n CallHomeFeatureIcon,\n DiagnosticsFeatureIcon,\n ExtraFeaturesIcon,\n HelpIconFilled,\n PerformanceFeatureIcon,\n Box,\n HelpBox,\n} from \"mds\";\n\nconst FeatureItem = ({\n icon,\n description,\n}: {\n icon: any;\n description: string | React.ReactNode;\n}) => {\n return (\n \n {icon}{\" \"}\n \n {description}\n \n \n );\n};\nconst RegisterHelpBox = () => {\n return (\n }\n help={\n \n \n Registering this cluster with the MinIO Subscription Network\n (SUBNET) provides the following benefits in addition to the\n commercial license and SLA backed support.\n \n\n \n }\n description={`Call Home Monitoring`}\n />\n }\n description={`Health Diagnostics`}\n />\n }\n description={`Performance Analysis`}\n />\n }\n description={\n \n More Features\n \n }\n />\n \n \n }\n />\n );\n};\n\nexport default RegisterHelpBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Box,\n Button,\n CommentBox,\n CopyIcon,\n FormLayout,\n OfflineRegistrationIcon,\n} from \"mds\";\nimport { ClusterRegistered } from \"./utils\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { api } from \"api\";\nimport { ApiError, HttpResponse, SetConfigResponse } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\nconst OfflineRegistration = () => {\n const dispatch = useAppDispatch();\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n\n const offlineRegUrl = `https://subnet.min.io/cluster/register?token=${subnetRegToken}`;\n\n const [licenseKey, setLicenseKey] = useState(\"\");\n const [loadingSave, setLoadingSave] = useState(false);\n\n const applyAirGapLicense = () => {\n setLoadingSave(true);\n api.configs\n .setConfig(\"subnet\", {\n key_values: [{ key: \"license\", value: licenseKey }],\n })\n .then((_) => {\n dispatch(fetchLicenseInfo());\n dispatch(setServerNeedsRestart(true));\n })\n .catch((res: HttpResponse) => {\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n })\n .finally(() => setLoadingSave(false));\n };\n\n return (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n }\n helpBox={}\n withBorders={false}\n containerPadding={false}\n >\n \n \n \n \n Click on the link to register this cluster in SUBNET and get\n a License Key for this Air-Gap deployment\n \n \n\n \n \n https://subnet.min.io/cluster/register\n \n\n \n \n }\n color={\"primary\"}\n variant={\"regular\"}\n />\n \n \n \n\n \n Note: If this machine does not have internet connection, Copy\n paste the following URL in a browser where you access SUBNET\n and follow the instructions to complete the registration\n \n\n \n \n {\n setLicenseKey(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n )}\n \n \n );\n};\n\nexport default OfflineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { Box, Button, FormLayout, InputBox, LockIcon } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { setSubnetOTP } from \"./registerSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { subnetLoginWithMFA } from \"./registerThunks\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\n\nconst SubnetMFAToken = () => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetOTP = useSelector((state: AppState) => state.register.subnetOTP);\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n }\n withBorders={false}\n containerPadding={false}\n >\n \n Please enter the 6-digit verification code that was sent to your email\n address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n dispatch(setSubnetOTP(event.target.value))\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n dispatch(subnetLoginWithMFA())}\n disabled={\n loading ||\n subnetOTP.trim().length === 0 ||\n subnetMFAToken.trim().length === 0\n }\n variant=\"callAction\"\n label={\"Verify\"}\n />\n \n \n );\n};\nexport default SubnetMFAToken;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { Box, Button, FormLayout, Select } from \"mds\";\nimport { setLoading, setSelectedSubnetOrganization } from \"./registerSlice\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { callRegister } from \"./registerThunks\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\n\nconst ClusterRegistrationForm = () => {\n const dispatch = useAppDispatch();\n\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n const selectedSubnetOrganization = useSelector(\n (state: AppState) => state.register.selectedSubnetOrganization,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n }\n >\n \n dispatch(setSelectedSubnetOrganization(value as string))\n }\n label=\"Select an organization\"\n value={selectedSubnetOrganization}\n options={subnetOrganizations.map((organization) => ({\n label: organization.company,\n value: organization.accountId.toString(),\n }))}\n />\n \n () => {\n if (loading) {\n return;\n }\n dispatch(setLoading(true));\n if (subnetAccessToken && selectedSubnetOrganization) {\n dispatch(\n callRegister({\n token: subnetAccessToken,\n account_id: selectedSubnetOrganization,\n }),\n );\n }\n }}\n disabled={loading || subnetAccessToken.trim().length === 0}\n variant=\"callAction\"\n label={\"Register\"}\n />\n \n \n );\n};\n\nexport default ClusterRegistrationForm;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 {\n Box,\n Button,\n FormLayout,\n InputBox,\n OnlineRegistrationIcon,\n UsersIcon,\n} from \"mds\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setSubnetEmail, setSubnetPassword } from \"./registerSlice\";\nimport { subnetLogin } from \"./registerThunks\";\n\nconst OnlineRegistration = () => {\n const dispatch = useAppDispatch();\n\n const subnetPassword = useSelector(\n (state: AppState) => state.register.subnetPassword,\n );\n const subnetEmail = useSelector(\n (state: AppState) => state.register.subnetEmail,\n );\n const loading = useSelector((state: AppState) => state.register.loading);\n\n return (\n }\n title={\"Online activation of MinIO Subscription Network License\"}\n withBorders={false}\n containerPadding={false}\n helpBox={}\n >\n \n Use your MinIO Subscription Network login credentials to register this\n cluster.\n \n \n ) =>\n dispatch(setSubnetEmail(event.target.value))\n }\n label=\"Email\"\n value={subnetEmail}\n overlayIcon={}\n />\n ) =>\n dispatch(setSubnetPassword(event.target.value))\n }\n label=\"Password\"\n type={\"password\"}\n value={subnetPassword}\n />\n\n \n {\n e.preventDefault();\n window.open(`https://min.io/signup?ref=con`, \"_blank\");\n }}\n label={\"Sign up\"}\n />\n dispatch(subnetLogin())}\n label={\"Register\"}\n />\n \n \n \n );\n};\n\nexport default OnlineRegistration;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, FormLayout, InfoIcon, InputBox, LockIcon, UsersIcon } from \"mds\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setErrorSnackMessage } from \"../../../systemSlice\";\nimport ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport { api } from \"api\";\nimport {\n ApiError,\n ApiKey,\n HttpResponse,\n SubnetLoginResponse,\n} from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IGetApiKeyModalProps {\n open: boolean;\n closeModal: () => void;\n onSet: (apiKey: string) => void;\n}\n\nconst GetApiKeyModal = ({ open, closeModal, onSet }: IGetApiKeyModalProps) => {\n const dispatch = useAppDispatch();\n const [email, setEmail] = useState(\"\");\n const [password, setPassword] = useState(\"\");\n const [mfaToken, setMfaToken] = useState(\"\");\n const [subnetOTP, setSubnetOTP] = useState(\"\");\n const [loadingSave, setLoadingSave] = useState(false);\n\n const onError = (err: ApiError) => {\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n closeModal();\n setEmail(\"\");\n setPassword(\"\");\n setMfaToken(\"\");\n setSubnetOTP(\"\");\n };\n\n const onConfirm = () => {\n if (mfaToken !== \"\") {\n submitSubnetMfa();\n } else {\n submitSubnetLogin();\n }\n };\n\n const submitSubnetMfa = () => {\n setLoadingSave(true);\n api.subnet\n .subnetLoginMfa({\n username: email,\n otp: subnetOTP,\n mfa_token: mfaToken,\n })\n .then((res: HttpResponse) => {\n if (res.data && res.data.access_token) {\n getApiKey(res.data.access_token);\n }\n })\n .catch((res: HttpResponse) => {\n onError(res.error);\n })\n .finally(() => setLoadingSave(false));\n };\n\n const getApiKey = (access_token: string) => {\n setLoadingSave(true);\n api.subnet\n .subnetApiKey({\n token: access_token,\n })\n .then((res: HttpResponse) => {\n if (res.data && res.data.apiKey) {\n onSet(res.data.apiKey);\n closeModal();\n }\n })\n .catch((res: HttpResponse) => {\n onError(res.error);\n })\n .finally(() => setLoadingSave(false));\n };\n\n const submitSubnetLogin = () => {\n setLoadingSave(true);\n api.subnet\n .subnetLogin({ username: email, password })\n .then((res: HttpResponse) => {\n if (res.data && res.data.mfa_token) {\n setMfaToken(res.data.mfa_token);\n }\n })\n .catch((res: HttpResponse) => {\n onError(res.error);\n })\n .finally(() => setLoadingSave(false));\n };\n\n const getDialogContent = () => {\n if (mfaToken === \"\") {\n return getCredentialsDialog();\n }\n return getMFADialog();\n };\n\n const getCredentialsDialog = () => {\n return (\n \n ) =>\n setEmail(event.target.value)\n }\n label=\"Email\"\n value={email}\n overlayIcon={}\n />\n ) =>\n setPassword(event.target.value)\n }\n label=\"Password\"\n type={\"password\"}\n value={password}\n />\n \n );\n };\n\n const getMFADialog = () => {\n return (\n \n \n \n Two-Factor Authentication\n \n\n \n Please enter the 6-digit verification code that was sent to your\n email address. This code will be valid for 5 minutes.\n \n\n \n }\n id=\"subnet-otp\"\n name=\"subnet-otp\"\n onChange={(event: React.ChangeEvent) =>\n setSubnetOTP(event.target.value)\n }\n placeholder=\"\"\n label=\"\"\n value={subnetOTP}\n />\n \n \n \n );\n };\n\n return open ? (\n }\n isLoading={loadingSave}\n cancelText={\"Cancel\"}\n onConfirm={onConfirm}\n onClose={closeModal}\n confirmButtonProps={{\n variant: \"callAction\",\n disabled: !email || !password || loadingSave,\n hidden: true,\n }}\n cancelButtonProps={{\n disabled: loadingSave,\n }}\n confirmationContent={getDialogContent()}\n />\n ) : null;\n};\n\nexport default GetApiKeyModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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, { useCallback, useEffect, useState } from \"react\";\nimport { Box, Button, FormLayout, InputBox, OnlineRegistrationIcon } from \"mds\";\nimport { useNavigate } from \"react-router-dom\";\nimport { SubnetLoginRequest, SubnetLoginResponse } from \"../License/types\";\nimport { useAppDispatch } from \"../../../store\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport GetApiKeyModal from \"./GetApiKeyModal\";\nimport RegisterHelpBox from \"./RegisterHelpBox\";\nimport api from \"../../../common/api\";\n\ninterface IApiKeyRegister {\n registerEndpoint: string;\n}\n\nconst ApiKeyRegister = ({ registerEndpoint }: IApiKeyRegister) => {\n const navigate = useNavigate();\n\n const [showApiKeyModal, setShowApiKeyModal] = useState(false);\n const [apiKey, setApiKey] = useState(\"\");\n const [loading, setLoading] = useState(false);\n const [fromModal, setFromModal] = useState(false);\n const dispatch = useAppDispatch();\n\n const onRegister = useCallback(() => {\n if (loading) {\n return;\n }\n setLoading(true);\n let request: SubnetLoginRequest = { apiKey };\n api\n .invoke(\"POST\", registerEndpoint, request)\n .then((resp: SubnetLoginResponse) => {\n setLoading(false);\n if (resp && resp.registered) {\n dispatch(setServerNeedsRestart(true));\n navigate(IAM_PAGES.LICENSE);\n }\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n reset();\n });\n }, [apiKey, dispatch, loading, registerEndpoint, navigate]);\n\n useEffect(() => {\n if (fromModal) {\n onRegister();\n }\n }, [fromModal, onRegister]);\n\n const reset = () => {\n setApiKey(\"\");\n setFromModal(false);\n };\n\n return (\n }\n containerPadding={false}\n withBorders={false}\n helpBox={}\n >\n \n Use your MinIO Subscription Network API Key to register this cluster.\n \n \n ) =>\n setApiKey(event.target.value)\n }\n label=\"API Key\"\n value={apiKey}\n />\n\n \n setShowApiKeyModal(true)}\n label={\"Get from SUBNET\"}\n />\n onRegister()}\n label={\"Register\"}\n />\n \n \n setShowApiKeyModal(false)}\n onSet={(value) => {\n setApiKey(value);\n setFromModal(true);\n }}\n />\n \n );\n};\n\nexport default ApiKeyRegister;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, PageLayout, Tabs } from \"mds\";\nimport { SubnetRegTokenResponse } from \"../License/types\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useSelector } from \"react-redux\";\nimport { setErrorSnackMessage, setHelpName } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { ClusterRegistered, ProxyConfiguration } from \"./utils\";\nimport { fetchLicenseInfo } from \"./registerThunks\";\nimport {\n resetRegisterForm,\n setCurTab,\n setLoading,\n setSubnetRegToken,\n} from \"./registerSlice\";\nimport OfflineRegistration from \"./OfflineRegistration\";\nimport SubnetMFAToken from \"./SubnetMFAToken\";\nimport ClusterRegistrationForm from \"./ClusterRegistrationForm\";\nimport OnlineRegistration from \"./OnlineRegistration\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\nimport api from \"../../../common/api\";\nimport ApiKeyRegister from \"./ApiKeyRegister\";\n\nconst Register = () => {\n const dispatch = useAppDispatch();\n\n const subnetMFAToken = useSelector(\n (state: AppState) => state.register.subnetMFAToken,\n );\n const subnetAccessToken = useSelector(\n (state: AppState) => state.register.subnetAccessToken,\n );\n\n const subnetRegToken = useSelector(\n (state: AppState) => state.register.subnetRegToken,\n );\n const subnetOrganizations = useSelector(\n (state: AppState) => state.register.subnetOrganizations,\n );\n\n const loading = useSelector((state: AppState) => state.register.loading);\n const loadingLicenseInfo = useSelector(\n (state: AppState) => state.register.loadingLicenseInfo,\n );\n const clusterRegistered = useSelector(\n (state: AppState) => state.register.clusterRegistered,\n );\n const licenseInfo = useSelector(\n (state: AppState) => state.register.licenseInfo,\n );\n const curTab = useSelector((state: AppState) => state.register.curTab);\n\n const [initialLicenseLoading, setInitialLicenseLoading] =\n useState(true);\n\n useEffect(() => {\n // when unmounted, reset\n return () => {\n dispatch(resetRegisterForm());\n };\n }, [dispatch]);\n\n useEffect(() => {\n if (curTab === \"simple-tab-2\" && !loading && !subnetRegToken) {\n const fetchSubnetRegToken = () => {\n dispatch(setLoading(true));\n api\n .invoke(\"GET\", \"/api/v1/subnet/registration-token\")\n .then((resp: SubnetRegTokenResponse) => {\n dispatch(setLoading(false));\n if (resp && resp.regToken) {\n dispatch(setSubnetRegToken(resp.regToken));\n }\n })\n .catch((err: ErrorResponseHandler) => {\n console.error(err);\n dispatch(setErrorSnackMessage(err));\n dispatch(setLoading(false));\n });\n };\n fetchSubnetRegToken();\n }\n }, [curTab, loading, subnetRegToken, dispatch]);\n\n useEffect(() => {\n if (initialLicenseLoading) {\n dispatch(fetchLicenseInfo());\n setInitialLicenseLoading(false);\n }\n }, [initialLicenseLoading, setInitialLicenseLoading, dispatch]);\n\n let clusterRegistrationForm: React.ReactElement = ;\n\n if (subnetAccessToken && subnetOrganizations.length > 0) {\n clusterRegistrationForm = ;\n } else if (subnetMFAToken) {\n clusterRegistrationForm = ;\n } else {\n clusterRegistrationForm = ;\n }\n\n const apiKeyRegistration = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n \n )}\n \n \n \n );\n\n const offlineRegistration = ;\n\n const regUi = (\n \n \n {clusterRegistered && licenseInfo ? (\n \n ) : (\n clusterRegistrationForm\n )}\n \n\n {!clusterRegistered && }\n \n );\n\n const loadingUi =
Loading..
;\n const uiToShow = loadingLicenseInfo ? loadingUi : regUi;\n\n useEffect(() => {\n dispatch(setHelpName(\"register\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n }\n />\n\n \n {\n dispatch(setCurTab(newValue));\n }}\n options={[\n {\n tabConfig: {\n label: \"Credentials\",\n id: \"simple-tab-0\",\n },\n content: uiToShow,\n },\n {\n tabConfig: {\n label: \"API Key\",\n id: \"simple-tab-1\",\n },\n content: apiKeyRegistration,\n },\n {\n tabConfig: {\n label: \"Air-Gap\",\n id: \"simple-tab-2\",\n },\n content: offlineRegistration,\n },\n ]}\n />\n \n \n );\n};\n\nexport default Register;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { VerifiedIcon, Box, breakPoints } from \"mds\";\n\nconst RegistrationStatusBanner = ({ email = \"\" }: { email?: string }) => {\n return (\n \n \n Register status:\n \n \n \n Registered\n \n \n \n\n \n Registered to:\n {email}\n \n \n );\n};\nexport default RegistrationStatusBanner;\n","\"use strict\";\n\nvar deselectCurrent = require(\"toggle-selection\");\n\nvar clipboardToIE11Formatting = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n \"default\": \"Text\"\n}\n\nvar defaultMessage = \"Copy to clipboard: #{key}, Enter\";\n\nfunction format(message) {\n var copyKey = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return message.replace(/#{\\s*key\\s*}/g, copyKey);\n}\n\nfunction copy(text, options) {\n var debug,\n message,\n reselectPrevious,\n range,\n selection,\n mark,\n success = false;\n if (!options) {\n options = {};\n }\n debug = options.debug || false;\n try {\n reselectPrevious = deselectCurrent();\n\n range = document.createRange();\n selection = document.getSelection();\n\n mark = document.createElement(\"span\");\n mark.textContent = text;\n // avoid screen readers from reading out loud the text\n mark.ariaHidden = \"true\"\n // reset user styles for span element\n mark.style.all = \"unset\";\n // prevents scrolling to the end of the page\n mark.style.position = \"fixed\";\n mark.style.top = 0;\n mark.style.clip = \"rect(0, 0, 0, 0)\";\n // used to preserve spaces and line breaks\n mark.style.whiteSpace = \"pre\";\n // do not inherit user-select (it may be `none`)\n mark.style.webkitUserSelect = \"text\";\n mark.style.MozUserSelect = \"text\";\n mark.style.msUserSelect = \"text\";\n mark.style.userSelect = \"text\";\n mark.addEventListener(\"copy\", function(e) {\n e.stopPropagation();\n if (options.format) {\n e.preventDefault();\n if (typeof e.clipboardData === \"undefined\") { // IE 11\n debug && console.warn(\"unable to use e.clipboardData\");\n debug && console.warn(\"trying IE specific stuff\");\n window.clipboardData.clearData();\n var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting[\"default\"]\n window.clipboardData.setData(format, text);\n } else { // all other browsers\n e.clipboardData.clearData();\n e.clipboardData.setData(options.format, text);\n }\n }\n if (options.onCopy) {\n e.preventDefault();\n options.onCopy(e.clipboardData);\n }\n });\n\n document.body.appendChild(mark);\n\n range.selectNodeContents(mark);\n selection.addRange(range);\n\n var successful = document.execCommand(\"copy\");\n if (!successful) {\n throw new Error(\"copy command was unsuccessful\");\n }\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using execCommand: \", err);\n debug && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(options.format || \"text\", text);\n options.onCopy && options.onCopy(window.clipboardData);\n success = true;\n } catch (err) {\n debug && console.error(\"unable to copy using clipboardData: \", err);\n debug && console.error(\"falling back to prompt\");\n message = format(\"message\" in options ? options.message : defaultMessage);\n window.prompt(message, text);\n }\n } finally {\n if (selection) {\n if (typeof selection.removeRange == \"function\") {\n selection.removeRange(range);\n } else {\n selection.removeAllRanges();\n }\n }\n\n if (mark) {\n document.body.removeChild(mark);\n }\n reselectPrevious();\n }\n\n return success;\n}\n\nmodule.exports = copy;\n","\"use strict\";\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.CopyToClipboard = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _copyToClipboard = _interopRequireDefault(require(\"copy-to-clipboard\"));\n\nvar _excluded = [\"text\", \"onCopy\", \"options\", \"children\"];\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar CopyToClipboard = /*#__PURE__*/function (_React$PureComponent) {\n _inherits(CopyToClipboard, _React$PureComponent);\n\n var _super = _createSuper(CopyToClipboard);\n\n function CopyToClipboard() {\n var _this;\n\n _classCallCheck(this, CopyToClipboard);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n var _this$props = _this.props,\n text = _this$props.text,\n onCopy = _this$props.onCopy,\n children = _this$props.children,\n options = _this$props.options;\n\n var elem = _react[\"default\"].Children.only(children);\n\n var result = (0, _copyToClipboard[\"default\"])(text, options);\n\n if (onCopy) {\n onCopy(text, result);\n } // Bypass onClick if it was present\n\n\n if (elem && elem.props && typeof elem.props.onClick === 'function') {\n elem.props.onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(CopyToClipboard, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n _text = _this$props2.text,\n _onCopy = _this$props2.onCopy,\n _options = _this$props2.options,\n children = _this$props2.children,\n props = _objectWithoutProperties(_this$props2, _excluded);\n\n var elem = _react[\"default\"].Children.only(children);\n\n return /*#__PURE__*/_react[\"default\"].cloneElement(elem, _objectSpread(_objectSpread({}, props), {}, {\n onClick: this.onClick\n }));\n }\n }]);\n\n return CopyToClipboard;\n}(_react[\"default\"].PureComponent);\n\nexports.CopyToClipboard = CopyToClipboard;\n\n_defineProperty(CopyToClipboard, \"defaultProps\", {\n onCopy: undefined,\n options: undefined\n});","\"use strict\";\n\nvar _require = require('./Component'),\n CopyToClipboard = _require.CopyToClipboard;\n\nCopyToClipboard.CopyToClipboard = CopyToClipboard;\nmodule.exports = CopyToClipboard;","\nmodule.exports = function () {\n var selection = document.getSelection();\n if (!selection.rangeCount) {\n return function () {};\n }\n var active = document.activeElement;\n\n var ranges = [];\n for (var i = 0; i < selection.rangeCount; i++) {\n ranges.push(selection.getRangeAt(i));\n }\n\n switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML\n case 'INPUT':\n case 'TEXTAREA':\n active.blur();\n break;\n\n default:\n active = null;\n break;\n }\n\n selection.removeAllRanges();\n return function () {\n selection.type === 'Caret' &&\n selection.removeAllRanges();\n\n if (!selection.rangeCount) {\n ranges.forEach(function(range) {\n selection.addRange(range);\n });\n }\n\n active &&\n active.focus();\n };\n};\n"],"names":["ClusterRegistered","_ref","email","_jsxs","Fragment","children","_jsx","RegistrationStatusBanner","Grid","item","xs","sx","marginTop","Box","padding","href","target","ProxyConfiguration","proxyConfigurationCommand","displaySubnetProxy","setDisplaySubnetProxy","useState","withBorders","display","alignItems","justifyContent","flexFlow","height","width","SettingsIcon","style","marginLeft","fontWeight","marginBottom","fontSize","InputBox","disabled","id","name","placeholder","onChange","label","value","overlayIcon","CopyIcon","overlayAction","navigator","clipboard","writeText","Switch","checked","event","fetchLicenseInfo","createAsyncThunk","async","_","getState","dispatch","state","getSubnetInfo","hasPermission","CONSOLE_UI_RESOURCE","IAM_PAGES_PERMISSIONS","IAM_PAGES","LICENSE","register","loadingLicenseInfo","setLoadingLicenseInfo","api","invoke","then","res","setLicenseInfo","setClusterRegistered","catch","err","detailedError","toLowerCase","setErrorSnackMessage","callRegister","args","_ref2","request","token","account_id","setLoading","setServerNeedsRestart","resetRegisterForm","subnetLoginWithMFA","_ref3","rejectWithValue","subnetEmail","subnetMFAToken","subnetOTP","loading","username","otp","mfa_token","resp","access_token","organizations","length","accountId","toString","setSubnetAccessToken","setSubnetOrganizations","setSelectedSubnetOrganization","setSubnetOTP","subnetLogin","_ref4","license","subnetPassword","password","apiKey","registered","setSubnetMFAToken","FeatureItem","icon","description","marginRight","className","fontStyle","RegisterHelpBox","HelpBox","title","iconComponent","HelpIconFilled","help","CallHomeFeatureIcon","DiagnosticsFeatureIcon","PerformanceFeatureIcon","ExtraFeaturesIcon","OfflineRegistration","useAppDispatch","subnetRegToken","useSelector","clusterRegistered","licenseInfo","offlineRegUrl","concat","licenseKey","setLicenseKey","loadingSave","setLoadingSave","FormLayout","OfflineRegistrationIcon","helpBox","containerPadding","flex","gap","TooltipWrapper","tooltip","CopyToClipboard","text","Button","type","color","variant","flexDirection","CommentBox","e","modalStyleUtils","modalButtonBar","onClick","applyAirGapLicense","configs","setConfig","key_values","key","errorToHandler","error","finally","SubnetMFAToken","LockIcon","trim","ClusterRegistrationForm","subnetAccessToken","selectedSubnetOrganization","subnetOrganizations","Select","options","map","organization","company","OnlineRegistration","OnlineRegistrationIcon","setSubnetEmail","UsersIcon","setSubnetPassword","preventDefault","window","open","closeModal","onSet","setEmail","setPassword","mfaToken","setMfaToken","onError","submitSubnetMfa","subnet","subnetLoginMfa","data","getApiKey","subnetApiKey","submitSubnetLogin","getCredentialsDialog","getMFADialog","ConfirmDialog","confirmText","isOpen","titleIcon","InfoIcon","isLoading","cancelText","onConfirm","onClose","confirmButtonProps","hidden","cancelButtonProps","confirmationContent","registerEndpoint","navigate","useNavigate","showApiKeyModal","setShowApiKeyModal","setApiKey","fromModal","setFromModal","onRegister","useCallback","reset","useEffect","GetApiKeyModal","Register","curTab","initialLicenseLoading","setInitialLicenseLoading","fetchSubnetRegToken","regToken","setSubnetRegToken","console","clusterRegistrationForm","apiKeyRegistration","ApiKeyRegister","offlineRegistration","regUi","uiToShow","setHelpName","PageHeaderWrapper","actions","HelpMenu","PageLayout","Tabs","horizontal","currentTabOrPath","onTabClick","newValue","setCurTab","tabConfig","content","position","top","left","backgroundColor","fill","VerifiedIcon","breakPoints","sm","deselectCurrent","require","clipboardToIE11Formatting","module","exports","debug","message","reselectPrevious","range","selection","mark","success","document","createRange","getSelection","createElement","textContent","ariaHidden","all","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","addEventListener","stopPropagation","format","clipboardData","warn","clearData","setData","onCopy","body","appendChild","selectNodeContents","addRange","execCommand","Error","copyKey","test","userAgent","replace","prompt","removeRange","removeAllRanges","removeChild","_typeof","obj","Symbol","iterator","constructor","prototype","Object","defineProperty","_react","_interopRequireDefault","_copyToClipboard","_excluded","__esModule","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","i","arguments","source","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_objectWithoutProperties","excluded","sourceKeys","indexOf","_objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","call","_defineProperties","props","descriptor","configurable","writable","_setPrototypeOf","o","p","setPrototypeOf","__proto__","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_isNativeReflectConstruct","result","Super","_getPrototypeOf","NewTarget","this","self","TypeError","_assertThisInitialized","_possibleConstructorReturn","ReferenceError","getPrototypeOf","_React$PureComponent","subClass","superClass","create","_inherits","Constructor","protoProps","staticProps","_super","_this","instance","_classCallCheck","_len","Array","_key","_this$props","elem","Children","only","_this$props2","cloneElement","PureComponent","undefined","rangeCount","active","activeElement","ranges","getRangeAt","tagName","toUpperCase","blur","focus"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/7945.5cbf1d20.chunk.js.map b/web-app/build/static/js/7945.5cbf1d20.chunk.js.map index e4dcd771f2..505fe1e45e 100644 --- a/web-app/build/static/js/7945.5cbf1d20.chunk.js.map +++ b/web-app/build/static/js/7945.5cbf1d20.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/7945.5cbf1d20.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddAccessRule.tsx","screens/Console/Buckets/ListBuckets/UploadPermissionUtils.ts","screens/Console/ObjectBrowser/BrowserBreadcrumbs.tsx","utils/validationFunctions.ts","screens/Console/Buckets/ListBuckets/UploadFilesButton.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DetailsListPanel.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/IconWithLabel.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/utils.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ObjectMetaData.tsx","screens/Console/Common/FormComponents/DateSelector/utils.ts","screens/Console/Common/FormComponents/DateSelector/DateSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetRetention.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteObject.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetLegalHoldModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/TagsModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/InspectObject.tsx","screens/Console/ObjectBrowser/RenameLongFilename.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ObjectDetailPanel.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/RestoreFileVersion.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SpecificVersionPill.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/FileVersionItem.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteNonCurrent.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/DeleteSelectedVersions.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/VersionsNavigator.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsHelpers.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsTable.tsx","screens/Console/ObjectBrowser/FilterObjectsSB.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx","screens/Console/ObjectBrowser/OBHeader.tsx","screens/Console/Buckets/BucketDetails/BrowserHandler.tsx","screens/Console/Common/FormComponents/DaysSelector/DaysSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ShareFile.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewPDF.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileContent.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileModal.tsx","screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/ObjectBrowser/objectBrowserThunks.ts","screens/Console/ObjectBrowser/utils.ts","screens/Console/Tools/KeyRevealer.tsx"],"sourcesContent":["// 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 ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport {\n AddAccessRuleIcon,\n Button,\n FormLayout,\n Grid,\n InputBox,\n Select,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IAddAccessRule {\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n prefilledRoute?: string;\n}\n\nconst AddAccessRule = ({\n modalOpen,\n onClose,\n bucket,\n prefilledRoute,\n}: IAddAccessRule) => {\n const dispatch = useAppDispatch();\n\n const [prefix, setPrefix] = useState(\"\");\n const [selectedAccess, setSelectedAccess] = useState(\"readonly\");\n\n useEffect(() => {\n if (prefilledRoute) {\n setPrefix(prefilledRoute);\n }\n }, [prefilledRoute]);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setPrefix(\"\");\n setSelectedAccess(\"readonly\");\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: prefix,\n access: selectedAccess,\n })\n .then((res: any) => {\n dispatch(setSnackBarMessage(\"Access Rule added successfully\"));\n onClose();\n })\n .catch((res) => {\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n onClose();\n });\n };\n\n return (\n }\n >\n \n {\n setPrefix(e.target.value);\n }}\n tooltip={\n \"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy.\"\n }\n />\n {\n setSelectedAccess(value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n helpTip={\n \n Select the desired level of access available to unauthenticated\n Users\n \n }\n helpTipPlacement=\"right\"\n />\n \n \n\n \n \n \n \n );\n};\n\nexport default AddAccessRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 extractFileExtn = (resourceStr: string) => {\n //file extensions may contain query string. so exclude query strings !\n return (resourceStr.match(/\\.([^.]*?)(?=\\?|#|$)/) || [])[1];\n};\nexport const getPolicyAllowedFileExtensions = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n scopes,\n );\n\n //get acceptable files if any in the policy.\n const allowedFileExtensions = sessionGrantWildCards.reduce(\n (acc: string[], cv: string) => {\n const extension: string = extractFileExtn(cv);\n if (extension) {\n acc.push(`.${extension}`); //strict extension matching.\n }\n return acc;\n },\n [],\n );\n\n const uniqueExtensions = [...new Set(allowedFileExtensions)];\n return uniqueExtensions.join(\",\");\n};\n\n// The resource should not have the extensions (*.ext) for the hasPermission to work.\n// so sanitize this and also use to extract the allowed extensions outside of permission check.\nexport const getSessionGrantsWildCard = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n //get only the path matching grants to reduce processing.\n const grantsWithExtension = Object.keys(sessionGrants).reduce(\n (acc: Record, grantKey: string) => {\n if (extractFileExtn(grantKey) && grantKey.includes(uploadPath)) {\n acc[grantKey] = sessionGrants[grantKey];\n }\n return acc;\n },\n {},\n );\n\n const checkPathsForPermission = (sessionGrantKey: string) => {\n const grantActions = grantsWithExtension[sessionGrantKey];\n const hasScope = grantActions.some((actionKey) =>\n scopes.find((scopeKey) => {\n let wildCardMatch = false;\n const hasWildCard = scopeKey.indexOf(\"*\") !== -1;\n if (hasWildCard) {\n const scopeActionKey = scopeKey.substring(0, scopeKey.length - 1);\n\n wildCardMatch = actionKey.includes(scopeActionKey);\n }\n\n return wildCardMatch || actionKey === scopeKey;\n }),\n );\n\n const sessionGrantKeyPath = sessionGrantKey.substring(\n 0,\n sessionGrantKey.indexOf(\"/*.\"), //start of extension part.\n );\n const isUploadPathMatching =\n sessionGrantKeyPath === `arn:aws:s3:::${uploadPath}`;\n\n const hasGrant =\n isUploadPathMatching && sessionGrantKey !== \"arn:aws:s3:::*\";\n\n return hasScope && hasGrant;\n };\n\n return Object.keys(grantsWithExtension).filter(checkPathsForPermission);\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useSelector } from \"react-redux\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport styled from \"styled-components\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport { safeDecodeURIComponent } from \"../../../common/utils\";\nimport {\n Button,\n CopyIcon,\n NewPathIcon,\n Tooltip,\n Breadcrumbs,\n breakPoints,\n Box,\n} from \"mds\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../common/SecureComponent/permissions\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setVersionsModeEnabled } from \"./objectBrowserSlice\";\nimport { getSessionGrantsWildCard } from \"../Buckets/ListBuckets/UploadPermissionUtils\";\n\nconst CreatePathModal = withSuspense(\n React.lazy(\n () => import(\"../Buckets/ListBuckets/Objects/ListObjects/CreatePathModal\"),\n ),\n);\n\nconst BreadcrumbsMain = styled.div(() => ({\n display: \"flex\",\n \"& .additionalOptions\": {\n paddingRight: \"10px\",\n display: \"flex\",\n alignItems: \"center\",\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n display: \"none\",\n },\n },\n \"& .slashSpacingStyle\": {\n margin: \"0 5px\",\n },\n}));\n\ninterface IObjectBrowser {\n bucketName: string;\n internalPaths: string;\n hidePathButton?: boolean;\n additionalOptions?: React.ReactNode;\n}\n\nconst BrowserBreadcrumbs = ({\n bucketName,\n internalPaths,\n hidePathButton,\n additionalOptions,\n}: IObjectBrowser) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const [createFolderOpen, setCreateFolderOpen] = useState(false);\n const [canCreateSubpath, setCanCreateSubpath] = useState(false);\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n let paths = internalPaths;\n\n if (internalPaths !== \"\") {\n paths = `/${internalPaths}`;\n }\n\n const splitPaths = paths.split(\"/\").filter((path) => path !== \"\");\n const lastBreadcrumbsIndex = splitPaths.length - 1;\n\n const pathToCheckPerms = bucketName + paths || bucketName;\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathToCheckPerms,\n putObjectPermScopes,\n );\n\n useEffect(() => {\n setCanCreateSubpath(false);\n Object.keys(sessionGrants).forEach((grant) => {\n grant.includes(pathToCheckPerms) &&\n grant.includes(\"/*\") &&\n setCanCreateSubpath(true);\n });\n }, [pathToCheckPerms, internalPaths, sessionGrants]);\n\n const canCreatePath =\n hasPermission(\n [pathToCheckPerms, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) ||\n anonymousMode ||\n canCreateSubpath;\n\n let breadcrumbsMap = splitPaths.map((objectItem: string, index: number) => {\n const subSplit = `${splitPaths.slice(0, index + 1).join(\"/\")}/`;\n const route = `/browser/${encodeURIComponent(bucketName)}/${\n subSplit ? `${encodeURIComponent(subSplit)}` : ``\n }`;\n\n if (index === lastBreadcrumbsIndex && objectItem === versionedFile) {\n return null;\n }\n\n return (\n \n /\n {index === lastBreadcrumbsIndex ? (\n \n {safeDecodeURIComponent(objectItem) /*Only for display*/}\n \n ) : (\n {\n dispatch(\n setVersionsModeEnabled({ status: false, objectName: \"\" }),\n );\n }}\n >\n {\n safeDecodeURIComponent(\n objectItem,\n ) /*Only for display to preserve */\n }\n \n )}\n \n );\n });\n\n let versionsItem: any[] = [];\n\n if (versionsMode) {\n versionsItem = [\n \n \n /\n {versionedFile} - Versions\n \n ,\n ];\n }\n\n const listBreadcrumbs: any[] = [\n \n {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n }}\n >\n {bucketName}\n \n ,\n ...breadcrumbsMap,\n ...versionsItem,\n ];\n\n const closeAddFolderModal = () => {\n setCreateFolderOpen(false);\n };\n\n const goBackFunction = () => {\n if (versionsMode) {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n } else {\n if (splitPaths.length === 0) {\n navigate(\"/browser\");\n\n return;\n }\n\n const prevPath = splitPaths.slice(0, -1);\n\n navigate(\n `/browser/${bucketName}${\n prevPath.length > 0\n ? `/${encodeURIComponent(`${prevPath.join(\"/\")}/`)}`\n : \"\"\n }`,\n );\n }\n };\n\n return (\n \n \n {createFolderOpen && (\n \n )}\n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n dispatch(setSnackBarMessage(\"Path copied to clipboard\"));\n }}\n style={{\n width: \"28px\",\n height: \"28px\",\n color: \"#969FA8\",\n border: \"#969FA8 1px solid\",\n marginRight: 5,\n }}\n />\n \n {additionalOptions}\n \n }\n >\n {listBreadcrumbs}\n \n {!hidePathButton && (\n \n {\n setCreateFolderOpen(true);\n }}\n disabled={anonymousMode ? false : rewindEnabled || !canCreatePath}\n icon={}\n style={{\n whiteSpace: \"nowrap\",\n }}\n variant={\"regular\"}\n label={\"Create new path\"}\n />\n \n )}\n \n div\": {\n fontSize: 12,\n fontWeight: \"normal\",\n flexDirection: \"row\",\n flexWrap: \"nowrap\",\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n display: \"flex\",\n },\n }}\n >\n {additionalOptions}\n \n
\n );\n};\n\nexport default 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\nexport const isVersionedMode = (status: string | undefined) => {\n return status === \"Enabled\" || status === \"Suspended\";\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { CSSObject } from \"styled-components\";\nimport { Button, DropdownSelector, UploadFolderIcon, UploadIcon } from \"mds\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../common/SecureComponent\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useSelector } from \"react-redux\";\nimport { AppState } from \"../../../../store\";\nimport { getSessionGrantsWildCard } from \"./UploadPermissionUtils\";\n\ninterface IUploadFilesButton {\n uploadPath: string;\n bucketName: string;\n forceDisable?: boolean;\n uploadFileFunction: (closeFunction: () => void) => void;\n uploadFolderFunction: (closeFunction: () => void) => void;\n overrideStyles?: CSSObject;\n}\n\nconst UploadFilesButton = ({\n uploadPath,\n bucketName,\n forceDisable = false,\n uploadFileFunction,\n uploadFolderFunction,\n overrideStyles = {},\n}: IUploadFilesButton) => {\n const [anchorEl, setAnchorEl] = useState(null);\n const [uploadOptionsOpen, uploadOptionsSetOpen] = useState(false);\n\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n putObjectPermScopes,\n );\n\n const openUploadMenu = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n uploadOptionsSetOpen(!uploadOptionsOpen);\n setAnchorEl(event.currentTarget);\n };\n const handleCloseUpload = () => {\n setAnchorEl(null);\n };\n\n const uploadObjectAllowed =\n hasPermission(\n [uploadPath, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const uploadFolderAllowed = hasPermission(\n [bucketName, ...sessionGrantWildCards],\n putObjectPermScopes,\n false,\n true,\n );\n\n const uploadFolderAction = (action: string) => {\n if (action === \"folder\") {\n uploadFolderFunction(handleCloseUpload);\n return;\n }\n\n uploadFileFunction(handleCloseUpload);\n };\n\n const uploadEnabled: boolean = uploadObjectAllowed || uploadFolderAllowed;\n\n return (\n \n \n }\n variant={\"callAction\"}\n disabled={forceDisable || !uploadEnabled}\n sx={overrideStyles}\n />\n \n ,\n value: \"file\",\n disabled: !uploadObjectAllowed || forceDisable,\n },\n {\n label: \"Upload Folder\",\n icon: ,\n value: \"folder\",\n disabled: !uploadFolderAllowed || forceDisable,\n },\n ]}\n selectedOption={\"\"}\n onSelect={(nValue) => uploadFolderAction(nValue)}\n hideTriggerAction={() => {\n uploadOptionsSetOpen(false);\n }}\n open={uploadOptionsOpen}\n anchorEl={anchorEl}\n anchorOrigin={\"end\"}\n useAnchorWidth\n />\n \n );\n};\n\nexport default UploadFilesButton;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, Button, ClosePanelIcon } from \"mds\";\n\ninterface IDetailsListPanel {\n open: boolean;\n className?: string;\n closePanel: () => void;\n children: React.ReactNode;\n}\n\nconst DetailsListPanel = ({\n open,\n closePanel,\n className = \"\",\n children,\n}: IDetailsListPanel) => {\n return (\n \n }\n sx={{\n position: \"absolute\",\n right: 5,\n top: 18,\n padding: 0,\n height: 14,\n \"&:hover:not(:disabled)\": {\n backgroundColor: \"transparent\",\n },\n }}\n />\n {children}\n \n );\n};\n\nexport default DetailsListPanel;\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\nimport React from \"react\";\nimport { Box } from \"mds\";\nimport { replaceUnicodeChar } from \"../../../../../../common/utils\";\n\ninterface IIconWithLabel {\n icon: React.ReactNode;\n strings: string[];\n}\n\nconst IconWithLabel = ({ icon, strings }: IIconWithLabel) => {\n return (\n \n {icon}\n \n {replaceUnicodeChar(strings[strings.length - 1])}\n \n \n );\n};\n\nexport default IconWithLabel;\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\";\n\nimport {\n FileBookIcon,\n FileCodeIcon,\n FileConfigIcon,\n FileDbIcon,\n FileFontIcon,\n FileImageIcon,\n FileLockIcon,\n FileMissingIcon,\n FileMusicIcon,\n FileNonType,\n FilePdfIcon,\n FilePptIcon,\n FileTxtIcon,\n FileVideoIcon,\n FileXlsIcon,\n FileZipIcon,\n FolderBrowserIcon,\n} from \"mds\";\nimport IconWithLabel from \"./IconWithLabel\";\n\ninterface IExtToIcon {\n icon: any;\n extensions: string[];\n}\n\nexport const extensionToIcon: IExtToIcon[] = [\n {\n icon: ,\n extensions: [\"mp4\", \"mov\", \"avi\", \"mpeg\", \"mpg\"],\n },\n {\n icon: ,\n extensions: [\"mp3\", \"m4a\", \"aac\"],\n },\n {\n icon: ,\n extensions: [\"pdf\"],\n },\n {\n icon: ,\n extensions: [\"ppt\", \"pptx\"],\n },\n {\n icon: ,\n extensions: [\"xls\", \"xlsx\"],\n },\n {\n icon: ,\n extensions: [\"cer\", \"crt\", \"pem\"],\n },\n {\n icon: ,\n extensions: [\"html\", \"xml\", \"css\", \"py\", \"go\", \"php\", \"cpp\", \"h\", \"java\"],\n },\n {\n icon: ,\n extensions: [\"cfg\", \"yaml\"],\n },\n {\n icon: ,\n extensions: [\"sql\"],\n },\n {\n icon: ,\n extensions: [\"ttf\", \"otf\"],\n },\n {\n icon: ,\n extensions: [\"doc\", \"docx\", \"txt\", \"rtf\"],\n },\n {\n icon: ,\n extensions: [\"zip\", \"rar\", \"tar\", \"gz\"],\n },\n {\n icon: ,\n extensions: [\"epub\", \"mobi\", \"azw\", \"azw3\"],\n },\n {\n icon: ,\n extensions: [\"jpeg\", \"jpg\", \"gif\", \"tiff\", \"png\", \"heic\", \"dng\"],\n },\n];\n\nexport const displayFileIconName = (\n element: string,\n returnOnlyIcon: boolean = false,\n) => {\n let elementString = element;\n let icon = ;\n // Element is a folder\n if (element.endsWith(\"/\")) {\n icon = ;\n elementString = element.slice(0, -1);\n }\n\n const lowercaseElement = element.toLowerCase();\n for (const etc of extensionToIcon) {\n for (const ext of etc.extensions) {\n if (lowercaseElement.endsWith(`.${ext}`)) {\n icon = etc.icon;\n }\n }\n }\n\n if (!element.endsWith(\"/\") && element.indexOf(\".\") < 0) {\n icon = ;\n }\n\n const splitItem = elementString.split(\"/\");\n\n if (returnOnlyIcon) {\n return icon;\n }\n\n return ;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box } from \"mds\";\nimport { safeDecodeURIComponent } from \"../../../../../../common/utils\";\n\ninterface IObjectMetadata {\n metaData: any;\n}\n\nconst itemRendererFn = (element: any) => {\n return Array.isArray(element)\n ? element.map(safeDecodeURIComponent).join(\", \")\n : safeDecodeURIComponent(element);\n};\n\nconst ObjectMetaData = ({ metaData }: IObjectMetadata) => {\n const metaKeys = Object.keys(metaData);\n\n return (\n \n {metaKeys.map((element: string, index: number) => {\n const renderItem = itemRendererFn(metaData[element]);\n return (\n \n {element}\n
\n {renderItem}\n \n );\n })}\n
\n );\n};\n\nexport default ObjectMetaData;\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 months = [\n { value: \"01\", label: \"January\" },\n { value: \"02\", label: \"February\" },\n { value: \"03\", label: \"March\" },\n { value: \"04\", label: \"April\" },\n { value: \"05\", label: \"May\" },\n { value: \"06\", label: \"June\" },\n { value: \"07\", label: \"July\" },\n { value: \"08\", label: \"August\" },\n { value: \"09\", label: \"September\" },\n { value: \"10\", label: \"October\" },\n { value: \"11\", label: \"November\" },\n { value: \"12\", label: \"December\" },\n];\n\nexport const days = Array.from(Array(31), (_, num) => ({\n value: (num + 1).toString(),\n label: (num + 1).toString(),\n}));\n\nconst currentYear = new Date().getFullYear();\n\nexport const years = Array.from(Array(50), (_, numYear) => ({\n value: (numYear + currentYear).toString(),\n label: (numYear + currentYear).toString(),\n}));\n\nexport const validDate = (year: string, month: string, day: string): any[] => {\n const currentDate = Date.parse(`${year}-${month}-${day}`);\n\n if (isNaN(currentDate)) {\n return [false, \"\"];\n }\n\n const parsedMonth = parseInt(month);\n const parsedDay = parseInt(day);\n\n const monthForString = parsedMonth < 10 ? `0${parsedMonth}` : parsedMonth;\n const dayForString = parsedDay < 10 ? `0${parsedDay}` : parsedDay;\n\n const parsedDate = new Date(currentDate).toISOString().split(\"T\")[0];\n const dateString = `${year}-${monthForString}-${dayForString}`;\n\n return [parsedDate === dateString, dateString];\n};\n\n// twoDigitDate gets a two digit string number used for months or days\n// returns \"NaN\" if number is NaN\nexport const twoDigitDate = (num: number): string => {\n return num < 10 ? `0${num}` : `${num}`;\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, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useState,\n} from \"react\";\nimport { Box, HelpIcon, InputLabel, Select, Tooltip } from \"mds\";\nimport { days, months, validDate, years } from \"./utils\";\n\ninterface IDateSelectorProps {\n id: string;\n label: string;\n disableOptions?: boolean;\n tooltip?: string;\n borderBottom?: boolean;\n value?: string;\n onDateChange: (date: string, isValid: boolean) => any;\n}\n\nconst DateSelector = forwardRef(\n (\n {\n id,\n label,\n disableOptions = false,\n tooltip = \"\",\n borderBottom = false,\n onDateChange,\n value = \"\",\n }: IDateSelectorProps,\n ref: any,\n ) => {\n useImperativeHandle(ref, () => ({ resetDate }));\n\n const [month, setMonth] = useState(\"\");\n const [day, setDay] = useState(\"\");\n const [year, setYear] = useState(\"\");\n\n useEffect(() => {\n // verify if there is a current value\n // assume is in the format \"2021-12-30\"\n if (value !== \"\") {\n const valueSplit = value.split(\"-\");\n\n setYear(valueSplit[0]);\n setMonth(valueSplit[1]);\n // Turn to single digit to be displayed on dropdown buttons\n setDay(`${parseInt(valueSplit[2])}`);\n }\n }, [value]);\n\n useEffect(() => {\n const [isValid, dateString] = validDate(year, month, day);\n onDateChange(dateString, isValid);\n }, [month, day, year, onDateChange]);\n\n const resetDate = () => {\n setMonth(\"\");\n setDay(\"\");\n setYear(\"\");\n };\n\n const isDateDisabled = () => {\n if (disableOptions) {\n return disableOptions;\n } else {\n return false;\n }\n };\n\n const monthForDropDown = [{ value: \"\", label: \"\" }, ...months];\n const daysForDrop = [{ value: \"\", label: \"\" }, ...days];\n const yearsForDrop = [{ value: \"\", label: \"\" }, ...years];\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n \n \n )}\n \n \n \n {\n setMonth(newValue);\n }}\n options={monthForDropDown}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setDay(newValue);\n }}\n options={daysForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setYear(newValue);\n }}\n options={yearsForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n sx={{\n marginBottom: 12,\n }}\n />\n \n \n );\n },\n);\n\nexport default DateSelector;\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 { Box, Button, FormLayout, Grid, RadioGroup, Switch } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { BucketObject, ObjectRetentionMode } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { twoDigitDate } from \"../../../../Common/FormComponents/DateSelector/utils\";\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\n\ninterface ISetRetentionProps {\n open: boolean;\n closeModalAndRefresh: (updateInfo: boolean) => void;\n objectName: string;\n bucketName: string;\n objectInfo: BucketObject;\n}\n\ninterface IRefObject {\n resetDate: () => void;\n}\n\nconst SetRetention = ({\n open,\n closeModalAndRefresh,\n objectName,\n objectInfo,\n bucketName,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\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(retentionConfig?.mode || ObjectRetentionMode.Governance);\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, retentionConfig?.mode]);\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(ObjectRetentionMode.Governance);\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.buckets\n .putObjectRetention(\n bucketName,\n {\n prefix: selectedObject,\n version_id: versionId || \"\",\n },\n {\n expires: expireDate,\n mode: type as ObjectRetentionMode,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const disableRetention = (\n selectedObject: string,\n versionId: string | null,\n ) => {\n api.buckets\n .deleteObjectRetention(bucketName, {\n prefix: selectedObject,\n version_id: versionId || \"\",\n })\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const saveNewRetentionPolicy = () => {\n setIsSaving(true);\n const selectedObject = objectInfo.name || \"\";\n const versionId = objectInfo.version_id || null;\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 onSubmit(e);\n }}\n >\n \n \n Selected Object: {objectName}\n \n {showSwitcher && (\n ) => {\n setStatusEnabled(!statusEnabled);\n }}\n label={\"Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n />\n )}\n {\n setType(e.target.value as ObjectRetentionMode);\n }}\n selectorOptions={[\n { label: \"Governance\", value: ObjectRetentionMode.Governance },\n { label: \"Compliance\", value: ObjectRetentionMode.Compliance },\n ]}\n />\n {\n setIsDateValid(isValid);\n if (isValid) {\n setDate(date);\n }\n }}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default 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, { Fragment, useState } from \"react\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../../../../Common/Hooks/useApi\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\n\ninterface IDeleteObjectProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n\n versioningInfo: BucketVersioningResponse | undefined;\n selectedVersion?: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n versioningInfo,\n selectedVersion = \"\",\n}: IDeleteObjectProps) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n\n // We close the modal box on access denied.\n if (err.detailedError === \"Access Denied.\") {\n closeDeleteModalAndRefresh(true);\n }\n };\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n const [deleteVersions, setDeleteVersions] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n const recursive = selectedObject.endsWith(\"/\");\n invokeDeleteApi(\n \"DELETE\",\n `/api/v1/buckets/${encodeURIComponent(selectedBucket)}/objects?prefix=${encodeURIComponent(selectedObject)}${\n selectedVersion !== \"\"\n ? `&version_id=${encodeURIComponent(selectedVersion)}`\n : `&recursive=${recursive}&all_versions=${deleteVersions}`\n }${bypassGovernance ? \"&bypass=true\" : \"\"}`,\n );\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete:
\n {selectedObject}{\" \"}\n {selectedVersion !== \"\" ? (\n \n
\n
\n Version ID:\n
\n {selectedVersion}\n
\n ) : (\n \"\"\n )}\n ?
\n
\n {isVersionedMode(versioningInfo?.status) &&\n selectedVersion === \"\" && (\n \n {\n setDeleteVersions(!deleteVersions);\n }}\n description=\"\"\n />\n \n )}\n {canBypass && (deleteVersions || selectedVersion !== \"\") && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n
\n
\n )}\n {deleteVersions && (\n \n \n This will remove the object as well as all of its versions,{\" \"}\n
\n This action is irreversible.\n
\n
\n Are you sure you want to continue?\n
\n )}\n \n }\n />\n );\n};\n\nexport default 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, { useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { Box, Button, FormLayout, Grid, Switch } from \"mds\";\nimport { BucketObject, ObjectLegalHoldStatus } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\n\ninterface ISetRetentionProps {\n open: boolean;\n closeModalAndRefresh: (reload: boolean) => void;\n objectName: string;\n bucketName: string;\n actualInfo: BucketObject;\n}\n\nconst SetLegalHoldModal = ({\n open,\n closeModalAndRefresh,\n objectName,\n bucketName,\n actualInfo,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\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.buckets\n .putObjectLegalHold(\n bucketName,\n {\n prefix: objectName,\n version_id: versionId || \"\",\n },\n {\n status: legalHoldEnabled\n ? ObjectLegalHoldStatus.Enabled\n : ObjectLegalHoldStatus.Disabled,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.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 onSubmit(e);\n }}\n >\n \n \n Object: {bucketName + \"/\" + objectName}\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 \n \n \n \n );\n};\n\nexport default SetLegalHoldModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 get from \"lodash/get\";\nimport styled from \"styled-components\";\nimport {\n AddNewTagIcon,\n Button,\n DisabledIcon,\n EditTagIcon,\n InputBox,\n SectionTitle,\n Box,\n Grid,\n Tag,\n FormLayout,\n} from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { useSelector } from \"react-redux\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../../../common/SecureComponent\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\n\ninterface ITagModal {\n modalOpen: boolean;\n bucketName: string;\n actualInfo: BucketObject;\n onCloseAndUpdate: (refresh: boolean) => void;\n}\n\nconst DeleteTag = styled.b(({ theme }) => ({\n color: get(theme, \"signalColors.danger\", \"#C83B51\"),\n marginLeft: 5,\n}));\n\nconst AddTagModal = ({\n modalOpen,\n onCloseAndUpdate,\n bucketName,\n actualInfo,\n}: ITagModal) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n const [deleteEnabled, setDeleteEnabled] = useState(false);\n const [deleteKey, setDeleteKey] = useState(\"\");\n const [deleteLabel, setDeleteLabel] = useState(\"\");\n\n const currentTags = actualInfo.tags;\n const currTagKeys = Object.keys(currentTags || {});\n\n const allPathData = actualInfo.name?.split(\"/\");\n const currentItem = allPathData?.pop() || \"\";\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 const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: actualInfo.name || \"\", version_id: verID },\n { tags: newTagList },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const deleteTagProcess = () => {\n const cleanObject: any = { ...currentTags };\n delete cleanObject[deleteKey];\n\n const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: actualInfo.name || \"\", version_id: verID },\n { tags: cleanObject },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const onDeleteTag = (tagKey: string, tag: string) => {\n setDeleteKey(tagKey);\n setDeleteLabel(tag);\n setDeleteEnabled(true);\n };\n\n const cancelDelete = () => {\n setDeleteKey(\"\");\n setDeleteLabel(\"\");\n setDeleteEnabled(false);\n };\n\n const tagsFor = (plural: boolean) => (\n \n Tag{plural ? \"s\" : \"\"} for: {currentItem}\n \n );\n\n return (\n \n {\n onCloseAndUpdate(true);\n }}\n iconColor={deleteEnabled ? \"delete\" : \"default\"}\n titleIcon={deleteEnabled ? : }\n >\n {deleteEnabled ? (\n \n \n {tagsFor(false)}\n Are you sure you want to delete the tag{\" \"}\n \n {deleteKey} : {deleteLabel}\n {\" \"}\n ?\n \n \n \n \n \n \n ) : (\n \n \n \n {tagsFor(true)}\n \n Current Tags:\n
\n {currTagKeys.length === 0 ? (\n \n There are no tags for this object\n \n ) : (\n \n )}\n \n {currTagKeys.map((tagKey: string, index: number) => {\n const tag = get(currentTags, `${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n \n {\n onDeleteTag(tagKey, tag);\n }}\n />\n \n );\n }\n return null;\n })}\n \n
\n \n \n \n \n } separator={false}>\n Add New Tag\n \n \n {\n setNewKey(e.target.value);\n }}\n />\n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n \n )}\n \n
\n );\n};\n\nexport default AddTagModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n Button,\n InspectMenuIcon,\n PasswordKeyIcon,\n Switch,\n Grid,\n Box,\n} from \"mds\";\nimport {\n deleteCookie,\n getCookieValue,\n performDownload,\n} from \"../../../../../../common/utils\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport KeyRevealer from \"../../../../Tools/KeyRevealer\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\n\ninterface IInspectObjectProps {\n closeInspectModalAndRefresh: (refresh: boolean) => void;\n inspectOpen: boolean;\n inspectPath: string;\n volumeName: string;\n}\n\nconst InspectObject = ({\n closeInspectModalAndRefresh,\n inspectOpen,\n inspectPath,\n volumeName,\n}: IInspectObjectProps) => {\n const dispatch = useAppDispatch();\n const onClose = () => closeInspectModalAndRefresh(false);\n const [isEncrypt, setIsEncrypt] = useState(true);\n const [decryptionKey, setDecryptionKey] = useState(\"\");\n const [insFileName, setInsFileName] = useState(\"\");\n\n if (!inspectPath) {\n return null;\n }\n const makeRequest = async (url: string) => {\n return await fetch(url, { method: \"GET\" });\n };\n\n const performInspect = async () => {\n let basename = document.baseURI.replace(window.location.origin, \"\");\n const urlOfInspectApi = `${window.location.origin}${basename}/api/v1/admin/inspect?volume=${encodeURIComponent(volumeName)}&file=${encodeURIComponent(inspectPath + \"/xl.meta\")}&encrypt=${isEncrypt}`;\n\n makeRequest(urlOfInspectApi)\n .then(async (res) => {\n if (!res.ok) {\n const resErr: any = await res.json();\n\n dispatch(\n setErrorSnackMessage({\n errorMessage: resErr.message,\n detailedError: resErr.code,\n }),\n );\n }\n const blob: Blob = await res.blob();\n\n //@ts-ignore\n const filename = res.headers.get(\"content-disposition\").split('\"')[1];\n const decryptKey = getCookieValue(filename) || \"\";\n\n performDownload(blob, filename);\n setInsFileName(filename);\n if (decryptKey === \"\") {\n onClose();\n return;\n }\n setDecryptionKey(decryptKey);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n const onCloseDecKeyModal = () => {\n deleteCookie(insFileName);\n onClose();\n setDecryptionKey(\"\");\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n return (\n \n {!decryptionKey && (\n }\n title={`Inspect Object`}\n onClose={onClose}\n >\n ) => {\n onSubmit(e);\n }}\n >\n Would you like to encrypt {inspectPath}?
\n {\n setIsEncrypt(!isEncrypt);\n }}\n description=\"\"\n />\n \n \n \n \n \n )}\n {decryptionKey ? (\n }\n >\n \n This will be displayed only once. It cannot be recovered.\n
\n Use secure medium to share this key.\n
\n \n \n \n \n ) : null}\n
\n );\n};\n\nexport default InspectObject;\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 { Button, EditIcon, FormLayout, Grid, InputBox, Switch } from \"mds\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { useAppDispatch } from \"../../../store\";\nimport { downloadObject } from \"./utils\";\nimport { BucketObject } from \"api/consoleApi\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ninterface IRenameLongFilename {\n open: boolean;\n bucketName: string;\n internalPaths: string;\n currentItem: string;\n actualInfo: BucketObject;\n closeModal: () => void;\n}\n\nconst RenameLongFileName = ({\n open,\n closeModal,\n currentItem,\n internalPaths,\n actualInfo,\n bucketName,\n}: IRenameLongFilename) => {\n const dispatch = useAppDispatch();\n\n const [newFileName, setNewFileName] = useState(currentItem);\n const [acceptLongName, setAcceptLongName] = useState(false);\n\n const doDownload = (e: React.FormEvent) => {\n e.preventDefault();\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n closeModal();\n };\n\n return (\n }\n >\n
\n The file you are trying to download has a long name.\n
\n This can cause issues on Windows Systems by trimming the file name after\n download.\n
\n
We recommend to rename the file download\n
\n ) => {\n doDownload(e);\n }}\n >\n \n ) => {\n setNewFileName(event.target.value);\n }}\n label=\"\"\n type={\"text\"}\n value={newFileName}\n error={\n newFileName.length > 200 && !acceptLongName\n ? \"Filename should be less than 200 characters long.\"\n : \"\"\n }\n />\n ) => {\n setAcceptLongName(event.target.checked);\n if (event.target.checked) {\n setNewFileName(currentItem);\n }\n }}\n label={\"Use Original Name\"}\n />\n \n 200 && !acceptLongName}\n label={\"Download File\"}\n />\n \n \n \n \n );\n};\n\nexport default RenameLongFileName;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useSelector } from \"react-redux\";\nimport {\n ActionsList,\n Box,\n Button,\n DeleteIcon,\n DownloadIcon,\n Grid,\n InspectMenuIcon,\n LegalHoldIcon,\n Loader,\n MetadataIcon,\n ObjectInfoIcon,\n PreviewIcon,\n RetentionIcon,\n ShareIcon,\n SimpleHeader,\n TagsIcon,\n VersionsIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject, BucketVersioningResponse } from \"api/consoleApi\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport {\n niceBytes,\n niceBytesInt,\n niceDaysInt,\n} from \"../../../../../../common/utils\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport { selDistSet } from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n setVersionsModeEnabled,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { displayFileIconName } from \"./utils\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport ObjectMetaData from \"../ObjectDetails/ObjectMetaData\";\nimport ShareFile from \"../ObjectDetails/ShareFile\";\nimport SetRetention from \"../ObjectDetails/SetRetention\";\nimport DeleteObject from \"../ListObjects/DeleteObject\";\nimport SetLegalHoldModal from \"../ObjectDetails/SetLegalHoldModal\";\nimport TagsModal from \"../ObjectDetails/TagsModal\";\nimport InspectObject from \"./InspectObject\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst emptyFile: BucketObject = {\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: undefined,\n};\n\ninterface IObjectDetailPanelProps {\n internalPaths: string;\n bucketName: string;\n versioningInfo: BucketVersioningResponse;\n locking: boolean | undefined;\n onClosePanel: (hardRefresh: boolean) => void;\n}\n\nconst ObjectDetailPanel = ({\n internalPaths,\n bucketName,\n versioningInfo,\n locking,\n onClosePanel,\n}: IObjectDetailPanelProps) => {\n const dispatch = useAppDispatch();\n\n const distributedSetup = useSelector(selDistSet);\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n const loadingObjectInfo = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjectInfo,\n );\n\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [retentionModalOpen, setRetentionModalOpen] = useState(false);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [legalholdOpen, setLegalholdOpen] = useState(false);\n const [inspectModalOpen, setInspectModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [allInfoElements, setAllInfoElements] = useState([]);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [previewOpen, setPreviewOpen] = useState(false);\n const [totalVersionsSize, setTotalVersionsSize] = useState(0);\n const [longFileOpen, setLongFileOpen] = useState(false);\n const [metaData, setMetaData] = useState(null);\n const [loadMetadata, setLoadingMetadata] = useState(false);\n\n const internalPathsDecoded = internalPaths || \"\";\n const allPathData = internalPathsDecoded.split(\"/\");\n const currentItem = allPathData.pop() || \"\";\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (distributedSetup && allInfoElements && allInfoElements.length >= 1) {\n let infoElement =\n allInfoElements.find((el: BucketObject) => el.is_latest) || emptyFile;\n\n if (selectedVersion !== \"\") {\n infoElement =\n allInfoElements.find(\n (el: BucketObject) => el.version_id === selectedVersion,\n ) || emptyFile;\n }\n\n if (!infoElement.is_delete_marker) {\n setLoadingMetadata(true);\n }\n\n setActualInfo(infoElement);\n }\n }, [selectedVersion, distributedSetup, allInfoElements]);\n\n useEffect(() => {\n if (loadingObjectInfo && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n if (distributedSetup) {\n setAllInfoElements(result);\n setVersions(result);\n\n const tVersionSize = result.reduce(\n (acc: number, currValue: BucketObject): number => {\n if (currValue?.size) {\n return acc + currValue.size;\n }\n return acc;\n },\n 0,\n );\n\n setTotalVersionsSize(tVersionSize);\n } else {\n const resInfo = result[0];\n\n setActualInfo(resInfo);\n setVersions([]);\n\n if (!resInfo.is_delete_marker) {\n setLoadingMetadata(true);\n }\n }\n\n dispatch(setLoadingObjectInfo(false));\n })\n .catch((err) => {\n console.error(\"Error loading object details\", err.error);\n dispatch(setLoadingObjectInfo(false));\n });\n }\n }, [\n loadingObjectInfo,\n bucketName,\n internalPaths,\n dispatch,\n distributedSetup,\n selectedVersion,\n ]);\n\n useEffect(() => {\n if (loadMetadata && internalPaths !== \"\") {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: internalPaths,\n versionID: actualInfo?.version_id || \"\",\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n\n setMetaData(metadata);\n setLoadingMetadata(false);\n })\n .catch((err) => {\n console.error(\"Error Getting Metadata Status: \", err.detailedError);\n setLoadingMetadata(false);\n });\n }\n }, [bucketName, internalPaths, loadMetadata, actualInfo?.version_id]);\n\n let tagKeys: string[] = [];\n\n if (actualInfo && 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 dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n };\n\n const closeFileOpen = () => {\n setLongFileOpen(false);\n };\n\n const closeDeleteModal = (closeAndReload: boolean) => {\n setDeleteOpen(false);\n\n if (closeAndReload && selectedVersion === \"\") {\n onClosePanel(true);\n } else {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeAddTagModal = (reloadObjectData: boolean) => {\n setTagModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeInspectModal = (reloadObjectData: boolean) => {\n setInspectModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeLegalholdModal = (reload: boolean) => {\n setLegalholdOpen(false);\n if (reload) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const loaderForContainer = (\n
\n \n
\n );\n\n if (!actualInfo) {\n if (loadingObjectInfo) {\n return loaderForContainer;\n }\n\n return null;\n }\n\n const objectName =\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name;\n\n const objectResources = [\n bucketName,\n currentItem,\n [bucketName, actualInfo.name].join(\"/\"),\n ];\n const canSetLegalHold = hasPermission(bucketName, [\n IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canSetTags = hasPermission(objectResources, [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const canChangeRetention = hasPermission(\n objectResources,\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n );\n const canInspect = hasPermission(objectResources, [\n IAM_SCOPES.ADMIN_INSPECT_DATA,\n ]);\n const canChangeVersioning = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canGetObject = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n const canDelete = hasPermission(\n [bucketName, currentItem, [bucketName, actualInfo.name].join(\"/\")],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n\n let objectType: AllowedPreviews = previewObjectType(metaData, currentItem);\n\n const multiActionButtons = [\n {\n action: () => {\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n },\n label: \"Download\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Download this Object\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download this object\",\n ),\n },\n {\n action: () => {\n shareObject();\n },\n label: \"Share\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Share this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"share this object\",\n ),\n },\n {\n action: () => {\n setPreviewOpen(true);\n },\n label: \"Preview\",\n disabled:\n !!actualInfo.is_delete_marker ||\n (objectType === \"none\" && !canGetObject),\n icon: ,\n tooltip: canGetObject\n ? \"Preview this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"preview this object\",\n ),\n },\n {\n action: () => {\n setLegalholdOpen(true);\n },\n label: \"Legal Hold\",\n disabled:\n !locking ||\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canSetLegalHold ||\n selectedVersion !== \"\",\n icon: ,\n tooltip: canSetLegalHold\n ? locking\n ? \"Change Legal Hold rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Legal Hold\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD, IAM_SCOPES.S3_PUT_ACTIONS],\n \"change legal hold settings for this object\",\n ),\n },\n {\n action: openRetentionModal,\n label: \"Retention\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canChangeRetention ||\n selectedVersion !== \"\" ||\n !locking,\n icon: ,\n tooltip: canChangeRetention\n ? locking\n ? \"Change Retention rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Retention Rules\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"change Retention Rules for this object\",\n ),\n },\n {\n action: () => {\n setTagModalOpen(true);\n },\n label: \"Tags\",\n disabled:\n !!actualInfo.is_delete_marker || selectedVersion !== \"\" || !canSetTags,\n icon: ,\n tooltip: canSetTags\n ? \"Change Tags for this File\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"set Tags on this object\",\n ),\n },\n {\n action: () => {\n setInspectModalOpen(true);\n },\n label: \"Inspect\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n selectedVersion !== \"\" ||\n !canInspect,\n icon: ,\n tooltip: canInspect\n ? \"Inspect this file\"\n : permissionTooltipHelper(\n [IAM_SCOPES.ADMIN_INSPECT_DATA],\n \"inspect this file\",\n ),\n },\n {\n action: () => {\n dispatch(\n setVersionsModeEnabled({\n status: !versionsMode,\n objectName: objectName,\n }),\n );\n },\n label: versionsMode ? \"Hide Object Versions\" : \"Display Object Versions\",\n icon: ,\n disabled:\n !distributedSetup ||\n !(actualInfo.version_id && actualInfo.version_id !== \"null\") ||\n !canChangeVersioning,\n tooltip: canChangeVersioning\n ? actualInfo.version_id && actualInfo.version_id !== \"null\"\n ? \"Display Versions for this file\"\n : \"\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"display all versions of this object\",\n ),\n },\n ];\n\n const calculateLastModifyTime = (lastModified: string) => {\n const currentTime = new Date();\n const modifiedTime = new Date(lastModified);\n\n const difTime = currentTime.getTime() - modifiedTime.getTime();\n\n const formatTime = niceDaysInt(difTime, \"ms\");\n\n return formatTime.trim() !== \"\" ? `${formatTime} ago` : \"Just now\";\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {retentionModalOpen && actualInfo && (\n \n )}\n {deleteOpen && (\n \n )}\n {legalholdOpen && actualInfo && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {tagModalOpen && actualInfo && (\n \n )}\n {inspectModalOpen && actualInfo && (\n \n )}\n {longFileOpen && actualInfo && (\n \n )}\n\n {loadingObjectInfo ? (\n {loaderForContainer}\n ) : (\n \n \n {displayFileIconName(objectName || \"\", true)}\n {objectName}\n \n }\n items={multiActionButtons}\n />\n \n \n \n }\n iconLocation={\"start\"}\n fullWidth\n variant={\"secondary\"}\n onClick={() => {\n setDeleteOpen(true);\n }}\n disabled={\n selectedVersion === \"\" && actualInfo.is_delete_marker\n }\n sx={{\n width: \"calc(100% - 44px)\",\n margin: \"8px 0\",\n }}\n label={`Delete${selectedVersion !== \"\" ? \" version\" : \"\"}`}\n />\n \n \n \n } label={\"Object Info\"} />\n \n Name:\n
\n
{objectName}
\n
\n {selectedVersion !== \"\" && (\n \n Version ID:\n
\n {selectedVersion}\n
\n )}\n \n Size:\n
\n {niceBytes(`${actualInfo.size || \"0\"}`)}\n
\n {actualInfo.version_id &&\n actualInfo.version_id !== \"null\" &&\n selectedVersion === \"\" && (\n \n Versions:\n
\n {versions.length} version{versions.length !== 1 ? \"s\" : \"\"},{\" \"}\n {niceBytesInt(totalVersionsSize)}\n
\n )}\n {selectedVersion === \"\" && (\n \n Last Modified:\n
\n {calculateLastModifyTime(actualInfo.last_modified || \"\")}\n
\n )}\n \n ETAG:\n
\n {actualInfo.etag || \"N/A\"}\n
\n \n Tags:\n
\n {tagKeys.length === 0\n ? \"N/A\"\n : tagKeys.map((tagKey, index) => {\n return (\n \n {tagKey}:{get(actualInfo, `tags.${tagKey}`, \"\")}\n {index < tagKeys.length - 1 ? \", \" : \"\"}\n \n );\n })}\n
\n \n \n \n Legal Hold:\n
\n {actualInfo.legal_hold_status ? \"On\" : \"Off\"}\n
\n \n
\n \n \n \n Retention Policy:\n
\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" ? (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n ) : (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n )}\n \n
\n \n
\n {!actualInfo.is_delete_marker && (\n \n } />\n \n {actualInfo && metaData ? (\n \n ) : null}\n \n \n )}\n \n )}\n
\n );\n};\n\nexport default ObjectDetailPanel;\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 { Box, RecoverIcon } from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { restoreLocalObjectList } from \"../../../../ObjectBrowser/objectBrowserSlice\";\n\ninterface IRestoreFileVersion {\n restoreOpen: boolean;\n bucketName: string;\n versionToRestore: BucketObject;\n objectPath: string;\n onCloseAndUpdate: (refresh: boolean) => void;\n}\n\nconst RestoreFileVersion = ({\n versionToRestore,\n bucketName,\n objectPath,\n restoreOpen,\n onCloseAndUpdate,\n}: IRestoreFileVersion) => {\n const dispatch = useAppDispatch();\n const [restoreLoading, setRestoreLoading] = useState(false);\n\n const restoreVersion = () => {\n setRestoreLoading(true);\n\n api.buckets\n .putObjectRestore(bucketName, {\n prefix: objectPath,\n version_id: versionToRestore.version_id || \"\",\n })\n .then(() => {\n setRestoreLoading(false);\n onCloseAndUpdate(true);\n dispatch(\n restoreLocalObjectList({\n prefix: objectPath,\n objectInfo: versionToRestore,\n }),\n );\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setRestoreLoading(false);\n });\n };\n\n return (\n }\n onConfirm={restoreVersion}\n confirmButtonProps={{\n variant: \"secondary\",\n disabled: restoreLoading,\n }}\n onClose={() => {\n onCloseAndUpdate(false);\n }}\n confirmationContent={\n \n Are you sure you want to restore
\n {objectPath}
with Version ID:\n
\n {versionToRestore.version_id}?\n
\n }\n />\n );\n};\n\nexport default RestoreFileVersion;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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\";\n\ninterface ISpecificVersionPillProps {\n type: \"null\" | \"current\" | \"deleted\";\n}\n\nconst SpecificVersionPill = ({ type }: ISpecificVersionPillProps) => {\n let bgColor = \"#000\";\n let message = \"\";\n\n switch (type) {\n case \"null\":\n bgColor = \"#07193E\";\n message = \"NULL VERSION\";\n break;\n case \"deleted\":\n bgColor = \"#868686\";\n message = \"DELETED\";\n break;\n default:\n bgColor = \"#174551\";\n message = \"CURRENT VERSION\";\n }\n\n return (\n \n {message}\n \n );\n};\n\nexport default SpecificVersionPill;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { DateTime } from \"luxon\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { displayFileIconName } from \"../ListObjects/utils\";\nimport {\n DownloadIcon,\n PreviewIcon,\n RecoverIcon,\n ShareIcon,\n IconButton,\n Tooltip,\n Grid,\n Checkbox,\n} from \"mds\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport SpecificVersionPill from \"./SpecificVersionPill\";\nimport { BucketObject } from \"api/consoleApi\";\n\ninterface IFileVersionItem {\n fileName: string;\n versionInfo: BucketObject;\n index: number;\n isSelected?: boolean;\n checkable: boolean;\n isChecked: boolean;\n onCheck: (versionID: string) => void;\n onShare: (versionInfo: BucketObject) => void;\n onDownload: (versionInfo: BucketObject) => void;\n onRestore: (versionInfo: BucketObject) => void;\n onPreview: (versionInfo: BucketObject) => void;\n globalClick: (versionInfo: BucketObject) => void;\n key: any;\n style: any;\n}\n\nconst FileVersionStyled = styled.div(({ theme }) => {\n return {\n \"&:before\": {\n content: \"' '\",\n display: \"block\",\n position: \"absolute\",\n width: \"2px\",\n height: \"calc(100% + 2px)\",\n backgroundColor: get(theme, \"borderColor\", \"#F8F8F8\"),\n left: \"24px\",\n },\n \"& .mainFileVersionItem\": {\n borderBottom: `${get(theme, \"borderColor\", \"#F8F8F8\")} 1px solid`,\n padding: \"1rem 0\",\n margin: \"0 0.5rem 0 2.5rem\",\n cursor: \"pointer\",\n \"&.deleted\": {\n color: \"#868686\",\n },\n },\n \"& .intermediateLayer\": {\n margin: \"0 1.5rem 0 1.5rem\",\n \"&:hover, &.selected\": {\n backgroundColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 16,\n fontWeight: \"bold\",\n display: \"flex\",\n alignItems: \"center\",\n \"& svg.min-icon\": {\n width: 18,\n height: 18,\n minWidth: 18,\n minHeight: 18,\n marginRight: 10,\n },\n },\n \"& .buttonContainer\": {\n textAlign: \"right\",\n \"& button\": {\n marginLeft: \"1.5rem\",\n },\n },\n \"& .versionID\": {\n fontSize: \"12px\",\n margin: \"2px 0\",\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n },\n \"& .versionData\": {\n marginRight: \"10px\",\n fontSize: 12,\n color: \"#868686\",\n },\n \"@media (max-width: 600px)\": {\n \"& .buttonContainer\": {\n \"& button\": {\n marginLeft: \"5px\",\n },\n },\n },\n \"@media (max-width: 799px)\": {\n \"&:before\": {\n display: \"none\",\n },\n \"& .mainFileVersionItem\": {\n padding: \"5px 0px\",\n margin: 0,\n },\n \"& .intermediateLayer\": {\n margin: 0,\n \"&:hover, &.selected\": {\n backgroundColor: \"transparent\",\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 14,\n \"& svg.min-icon\": {\n display: \"none\",\n },\n },\n \"& .versionData\": {\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n },\n \"& .collapsableInfo\": {\n display: \"flex\",\n flexDirection: \"column\",\n },\n \"& .versionItem\": {\n display: \"none\",\n },\n },\n };\n});\n\nconst FileVersionItem = ({\n fileName,\n versionInfo,\n isSelected,\n checkable,\n isChecked,\n onCheck,\n onShare,\n onDownload,\n onRestore,\n onPreview,\n globalClick,\n index,\n key,\n style,\n}: IFileVersionItem) => {\n const disableButtons = versionInfo.is_delete_marker;\n\n const versionItemButtons = [\n {\n icon: ,\n action: onPreview,\n tooltip: \"Preview\",\n },\n {\n icon: ,\n action: onDownload,\n tooltip: \"Download this version\",\n },\n {\n icon: ,\n action: onShare,\n tooltip: \"Share this version\",\n },\n {\n icon: ,\n action: onRestore,\n tooltip: \"Restore this version\",\n },\n ];\n\n let pill: \"deleted\" | \"current\" | \"null\" | null = null;\n\n if (versionInfo.is_delete_marker) {\n pill = \"deleted\";\n } else if (versionInfo.is_latest) {\n pill = \"current\";\n } else if (versionInfo.version_id === \"null\") {\n pill = \"null\";\n }\n\n let lastModified = DateTime.now();\n\n if (versionInfo.last_modified) {\n lastModified = DateTime.fromISO(\n versionInfo.last_modified,\n ) as DateTime;\n }\n\n return (\n \n {\n globalClick(versionInfo);\n }}\n key={key}\n style={style}\n >\n \n \n \n \n \n {checkable && (\n {\n e.stopPropagation();\n onCheck(versionInfo.version_id || \"\");\n }}\n value={versionInfo.version_id || \"\"}\n disabled={versionInfo.is_delete_marker}\n sx={{\n width: \"initial\",\n }}\n />\n )}\n {displayFileIconName(fileName, true)} v{index.toString()}\n \n {pill && }\n \n \n \n {versionItemButtons.map((button, index) => {\n return (\n \n {\n e.stopPropagation();\n if (!disableButtons) {\n button.action(versionInfo);\n } else {\n e.preventDefault();\n }\n }}\n sx={{\n backgroundColor: \"#F8F8F8\",\n borderRadius: \"100%\",\n width: \"28px\",\n height: \"28px\",\n padding: \"5px\",\n \"& .min-icon\": {\n width: \"14px\",\n height: \"14px\",\n },\n }}\n >\n {button.icon}\n \n \n );\n })}\n \n \n \n \n {versionInfo.version_id !== \"null\" ? versionInfo.version_id : \"-\"}\n \n \n \n Last modified:{\" \"}\n {lastModified.toFormat(\"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\")}\n \n \n Size: {niceBytes(`${versionInfo.size || \"0\"}`)}\n \n \n \n \n \n \n );\n};\n\nexport default FileVersionItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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\";\n\nimport { ConfirmDeleteIcon, Switch, Grid, InputBox } from \"mds\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteNonCurrentProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteNonCurrentVersions = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n}: IDeleteNonCurrentProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [typeConfirm, setTypeConfirm] = useState(\"\");\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n useEffect(() => {\n if (deleteLoading) {\n api.buckets\n .deleteObject(selectedBucket, {\n prefix: selectedObject,\n non_current_versions: true,\n bypass: bypassGovernance,\n })\n .then(() => {\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n dispatch,\n selectedObject,\n selectedBucket,\n bypassGovernance,\n ]);\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={() => closeDeleteModalAndRefresh(false)}\n confirmButtonProps={{\n disabled: typeConfirm !== \"YES, PROCEED\" || deleteLoading,\n }}\n confirmationContent={\n \n Are you sure you want to delete all the non-current versions for:{\" \"}\n {selectedObject}?
\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n
\n To continue please type YES, PROCEED in the box.\n
\n
\n \n ) => {\n setTypeConfirm(event.target.value);\n }}\n label=\"\"\n value={typeConfirm}\n />\n \n
\n }\n />\n );\n};\n\nexport default DeleteNonCurrentVersions;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteSelectedVersionsProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedVersions: string[];\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedVersions,\n selectedObject,\n}: IDeleteSelectedVersionsProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n const onClose = () => closeDeleteModalAndRefresh(false);\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n useEffect(() => {\n if (deleteLoading) {\n const selectedObjectsRequest = selectedVersions.map((versionID) => {\n return {\n path: selectedObject,\n versionID: versionID,\n recursive: false,\n };\n });\n\n if (selectedObjectsRequest.length > 0) {\n api.buckets\n .deleteMultipleObjects(selectedBucket, selectedObjectsRequest, {\n all_versions: false,\n bypass: bypassGovernance,\n })\n .then(() => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n selectedBucket,\n selectedObject,\n selectedVersions,\n bypassGovernance,\n dispatch,\n ]);\n\n if (!selectedVersions) {\n return null;\n }\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the selected {selectedVersions.length}{\" \"}\n versions for {selectedObject}?\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n \n }\n />\n );\n};\n\nexport default DeleteObject;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useSelector } from \"react-redux\";\nimport {\n breakPoints,\n Button,\n DeleteIcon,\n DeleteNonCurrentIcon,\n Grid,\n ProgressBar,\n ScreenTitle,\n Select,\n SelectMultipleIcon,\n VersionsIcon,\n} from \"mds\";\nimport ShareFile from \"./ShareFile\";\n\nimport { niceBytesInt } from \"../../../../../../common/utils\";\nimport RestoreFileVersion from \"./RestoreFileVersion\";\n\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport FileVersionItem from \"./FileVersionItem\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport DeleteNonCurrent from \"../ListObjects/DeleteNonCurrent\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport DeleteSelectedVersions from \"./DeleteSelectedVersions\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { List, ListRowProps } from \"react-virtualized\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IVersionsNavigatorProps {\n internalPaths: string;\n bucketName: string;\n}\n\nconst emptyFile: BucketObject = {\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: undefined,\n};\n\nconst VersionsNavigator = ({\n internalPaths,\n bucketName,\n}: IVersionsNavigatorProps) => {\n const dispatch = useAppDispatch();\n\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n const loadingVersions = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersions,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n\n const distributedSetup = useSelector(selDistSet);\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [restoreVersionOpen, setRestoreVersionOpen] = useState(false);\n const [restoreVersion, setRestoreVersion] = useState(\n null,\n );\n const [sortValue, setSortValue] = useState(\"date\");\n const [previewOpen, setPreviewOpen] = useState(false);\n const [deleteNonCurrentOpen, setDeleteNonCurrentOpen] =\n useState(false);\n const [selectEnabled, setSelectEnabled] = useState(false);\n const [selectedItems, setSelectedItems] = useState([]);\n const [delSelectedVOpen, setDelSelectedVOpen] = useState(false);\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (!loadingVersions && !actualInfo) {\n dispatch(setLoadingVersions(true));\n }\n }, [loadingVersions, actualInfo, dispatch]);\n\n useEffect(() => {\n if (loadingVersions && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result = get(res.data, \"objects\", []);\n\n // Filter the results prefixes as API can return more files than expected.\n const filteredPrefixes = result.filter(\n (item: BucketObject) => item.name === internalPaths,\n );\n\n if (distributedSetup) {\n setActualInfo(\n filteredPrefixes.find((el: BucketObject) => el.is_latest) ||\n emptyFile,\n );\n setVersions(filteredPrefixes);\n } else {\n setActualInfo(filteredPrefixes[0]);\n setVersions([]);\n }\n\n dispatch(setLoadingVersions(false));\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n dispatch(setLoadingVersions(false));\n });\n }\n }, [loadingVersions, bucketName, internalPaths, dispatch, distributedSetup]);\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n setPreviewOpen(false);\n };\n\n const onShareItem = (item: BucketObject) => {\n setObjectToShare(item);\n shareObject();\n };\n\n const onPreviewItem = (item: BucketObject) => {\n setObjectToShare(item);\n setPreviewOpen(true);\n };\n\n const onRestoreItem = (item: BucketObject) => {\n setRestoreVersion(item);\n setRestoreVersionOpen(true);\n };\n\n const onDownloadItem = (item: BucketObject) => {\n downloadObject(dispatch, bucketName, internalPaths, item);\n };\n\n const onGlobalClick = (item: BucketObject) => {\n dispatch(setSelectedVersion(item.version_id || \"\"));\n };\n\n const filteredRecords = versions.filter((version) => {\n if (version.version_id) {\n return version.version_id.includes(searchVersions);\n }\n return false;\n });\n\n const closeRestoreModal = (reloadObjectData: boolean) => {\n setRestoreVersionOpen(false);\n setRestoreVersion(null);\n\n if (reloadObjectData) {\n dispatch(setLoadingVersions(true));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeDeleteNonCurrent = (reloadAfterDelete: boolean) => {\n setDeleteNonCurrentOpen(false);\n\n if (reloadAfterDelete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeSelectedVersions = (reloadOnComplete: boolean) => {\n setDelSelectedVOpen(false);\n\n if (reloadOnComplete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n setSelectedItems([]);\n }\n };\n\n const totalSpace = versions.reduce((acc: number, currValue: BucketObject) => {\n if (currValue.size) {\n return acc + currValue.size;\n }\n return acc;\n }, 0);\n\n filteredRecords.sort((a, b) => {\n switch (sortValue) {\n case \"size\":\n if (a.size && b.size) {\n if (a.size < b.size) {\n return -1;\n }\n if (a.size > b.size) {\n return 1;\n }\n return 0;\n }\n return 0;\n default:\n const dateA = new Date(a.last_modified || \"\").getTime();\n const dateB = new Date(b.last_modified || \"\").getTime();\n\n if (dateA < dateB) {\n return 1;\n }\n if (dateA > dateB) {\n return -1;\n }\n return 0;\n }\n });\n\n const onCheckVersion = (selectedVersion: string) => {\n if (selectedItems.includes(selectedVersion)) {\n const filteredItems = selectedItems.filter(\n (element) => element !== selectedVersion,\n );\n\n setSelectedItems(filteredItems);\n\n return;\n }\n\n const cloneState = [...selectedItems];\n cloneState.push(selectedVersion);\n\n setSelectedItems(cloneState);\n };\n\n const rowRenderer = ({\n key, // Unique key within array of rows\n index, // Index of row within collection\n isScrolling, // The List is currently being scrolled\n isVisible, // This row is visible within the List (eg it is not an overscanned row)\n style, // Style object to be applied to row (to position it)\n }: ListRowProps) => {\n const versOrd = versions.length - index;\n return (\n \n );\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {restoreVersionOpen && actualInfo && restoreVersion && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {deleteNonCurrentOpen && (\n \n )}\n {delSelectedVOpen && (\n \n )}\n \n {!actualInfo && (\n \n \n \n )}\n\n {actualInfo && (\n \n \n \n \n \n \n \n \n }\n title={`${\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name\n } Versions`}\n subTitle={\n \n \n \n {versions.length} Version\n {versions.length === 1 ? \"\" : \"s\"}   \n \n \n \n {niceBytesInt(totalSpace)}\n \n \n }\n actions={\n \n \n {\n setSelectEnabled(!selectEnabled);\n }}\n icon={}\n variant={selectEnabled ? \"callAction\" : \"regular\"}\n style={{ marginRight: 8 }}\n />\n \n {selectEnabled && (\n \n {\n setDelSelectedVOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 8 }}\n disabled={selectedItems.length === 0}\n />\n \n )}\n \n {\n setDeleteNonCurrentOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 15 }}\n disabled={versions.length <= 1}\n />\n \n {\n setSortValue(newValue);\n }}\n noLabelMinWidth\n />\n \n }\n bottomBorder={false}\n />\n \n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n // @ts-ignore\n \n )}\n \n \n )}\n \n \n );\n};\n\nexport default VersionsNavigator;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { DateTime } from \"luxon\";\nimport { BucketObjectItem } from \"./types\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport { displayFileIconName } from \"./utils\";\n\n// Functions\n\nexport const displayParsedDate = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n\n const currTime = DateTime.now();\n const objectTime = DateTime.fromISO(object.last_modified);\n\n const isToday =\n currTime.hasSame(objectTime, \"day\") &&\n currTime.hasSame(objectTime, \"month\") &&\n currTime.hasSame(objectTime, \"year\");\n\n if (isToday) {\n return `Today, ${objectTime.toFormat(\"HH:mm\")}`;\n }\n\n return objectTime.toFormat(\"ccc, LLL dd yyyy HH:mm (ZZZZ)\");\n};\n\nexport const displayNiceBytes = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\") || !object.size) {\n return \"-\";\n }\n return niceBytes(String(object.size));\n};\n\nexport const displayDeleteFlag = (state: boolean) => {\n return state ? \"Yes\" : \"No\";\n};\n\n// Table Props\n\nexport const listModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Last Modified\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n];\n\nexport const rewindModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Object Date\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n {\n label: \"Deleted\",\n elementKey: \"delete_flag\",\n renderFunction: displayDeleteFlag,\n width: 60,\n },\n];\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { listModeColumns, rewindModeColumns } from \"./ListObjectsHelpers\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { selFeatures } from \"../../../../consoleSlice\";\nimport {\n setLoadingVersions,\n setObjectDetailsView,\n setReloadObjectsList,\n setSelectedObjects,\n setSelectedObjectView,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { sortListObjects } from \"../utils\";\nimport { BucketObjectItem } from \"./types\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { DataTable, ItemActions } from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\n\nconst ListObjectsTable = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n\n const [sortDirection, setSortDirection] = useState<\n \"ASC\" | \"DESC\" | undefined\n >(\"ASC\");\n const [currentSortField, setCurrentSortField] = useState(\"name\");\n\n const bucketName = params.bucketName || \"\";\n\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n\n const requestInProgress = useSelector(\n (state: AppState) => state.objectBrowser.requestInProgress,\n );\n\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const records = useSelector((state: AppState) => state.objectBrowser.records);\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n const connectionError = useSelector(\n (state: AppState) => state.objectBrowser.connectionError,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const displayListObjects = hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]);\n\n const plSelect = records.filter((b: BucketObjectItem) => {\n if (searchObjects === \"\") {\n return true;\n } else {\n const objectName = b.name.toLowerCase();\n return objectName.indexOf(searchObjects.toLowerCase()) >= 0;\n }\n });\n const sortASC = plSelect.sort(sortListObjects(currentSortField));\n\n let payload: BucketObjectItem[] = [];\n\n if (sortDirection === \"ASC\") {\n payload = sortASC;\n } else {\n payload = sortASC.reverse();\n }\n\n const openPath = (object: BucketObject) => {\n const idElement = object.name || \"\";\n const newPath = `/browser/${encodeURIComponent(bucketName)}${\n idElement ? `/${encodeURIComponent(idElement)}` : ``\n }`;\n\n // for anonymous start download\n if (anonymousMode && !object.name?.endsWith(\"/\")) {\n downloadObject(dispatch, bucketName, idElement, object);\n return;\n }\n dispatch(setSelectedObjects([]));\n\n navigate(newPath);\n\n if (!anonymousMode) {\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n }\n dispatch(setSelectedObjectView(idElement));\n };\n const tableActions: ItemActions[] = [\n {\n type: \"view\",\n tooltip: \"View\",\n onClick: openPath,\n sendOnlyId: false,\n },\n ];\n\n const sortChange = (sortData: any) => {\n const newSortDirection = get(sortData, \"sortDirection\", \"DESC\");\n setCurrentSortField(sortData.sortBy);\n setSortDirection(newSortDirection);\n dispatch(setReloadObjectsList(true));\n };\n\n const selectAllItems = () => {\n dispatch(setSelectedObjectView(null));\n\n if (selectedObjects.length === payload.length) {\n dispatch(setSelectedObjects([]));\n return;\n }\n\n const elements = payload.map((item) => item.name);\n dispatch(setSelectedObjects(elements));\n };\n\n const selectListObjects = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedObjects]; // 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 dispatch(setSelectedObjects(elements));\n dispatch(setSelectedObjectView(null));\n\n return elements;\n };\n\n let errorMessage =\n !displayListObjects && !anonymousMode\n ? permissionTooltipHelper(\n [IAM_SCOPES.S3_LIST_BUCKET, IAM_SCOPES.S3_ALL_LIST_BUCKET],\n \"view Objects in this bucket\",\n )\n : `This location is empty${\n !rewindEnabled ? \", please try uploading a new file\" : \"\"\n }`;\n\n if (connectionError) {\n errorMessage =\n \"Objects List unavailable. Please review your WebSockets configuration and try again\";\n }\n\n let customPaperHeight = \"calc(100vh - 290px)\";\n\n if (obOnly) {\n customPaperHeight = \"calc(100vh - 315px)\";\n }\n\n return (\n {\n if (payload[index]?.delete_flag) {\n return \"deleted\";\n }\n\n return \"\";\n }}\n sx={{\n minHeight: detailsOpen ? \"100%\" : \"initial\",\n }}\n noBackground\n />\n );\n};\nexport default ListObjectsTable;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { setSearchObjects } from \"./objectBrowserSlice\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\n\nconst FilterObjectsSB = () => {\n const dispatch = useAppDispatch();\n\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n return (\n {\n dispatch(setSearchObjects(value));\n }}\n value={searchObjects}\n />\n );\n};\nexport default FilterObjectsSB;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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, {\n Fragment,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport {\n AccessRuleIcon,\n ActionsList,\n Badge,\n Box,\n BucketsIcon,\n Button,\n Checkbox,\n DeleteIcon,\n DownloadIcon,\n Grid,\n HistoryIcon,\n PageLayout,\n PreviewIcon,\n RefreshIcon,\n ScreenTitle,\n ShareIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { BucketQuota } from \"api/consoleApi\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useNavigate, useParams } from \"react-router-dom\";\nimport { useDropzone } from \"react-dropzone\";\nimport { DateTime } from \"luxon\";\nimport { niceBytesInt } from \"../../../../../../common/utils\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../../../systemSlice\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport {\n extractFileExtn,\n getPolicyAllowedFileExtensions,\n getSessionGrantsWildCard,\n} from \"../../UploadPermissionUtils\";\nimport {\n makeid,\n removeTrace,\n storeCallForObjectWithID,\n storeFormDataWithID,\n} from \"../../../../ObjectBrowser/transferManager\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n openList,\n resetMessages,\n resetRewind,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setLoadingVersions,\n setNewObject,\n setObjectDetailsView,\n setPreviewOpen,\n setReloadObjectsList,\n setRetentionConfig,\n setSelectedObjects,\n setSelectedObjectView,\n setSelectedPreview,\n setShareFileModalOpen,\n setShowDeletedObjects,\n setVersionsModeEnabled,\n updateProgress,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n setBucketInfo,\n} from \"../../../BucketDetails/bucketDetailsSlice\";\nimport {\n downloadSelected,\n openAnonymousAccess,\n openPreview,\n openShare,\n} from \"../../../../ObjectBrowser/objectBrowserThunks\";\nimport withSuspense from \"../../../../Common/Components/withSuspense\";\nimport UploadFilesButton from \"../../UploadFilesButton\";\nimport DetailsListPanel from \"./DetailsListPanel\";\nimport ObjectDetailPanel from \"./ObjectDetailPanel\";\nimport VersionsNavigator from \"../ObjectDetails/VersionsNavigator\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport ListObjectsTable from \"./ListObjectsTable\";\nimport FilterObjectsSB from \"../../../../ObjectBrowser/FilterObjectsSB\";\nimport AddAccessRule from \"../../../BucketDetails/AddAccessRule\";\n\nconst DeleteMultipleObjects = withSuspense(\n React.lazy(() => import(\"./DeleteMultipleObjects\")),\n);\nconst ShareFile = withSuspense(\n React.lazy(() => import(\"../ObjectDetails/ShareFile\")),\n);\nconst RewindEnable = withSuspense(React.lazy(() => import(\"./RewindEnable\")));\nconst PreviewFileModal = withSuspense(\n React.lazy(() => import(\"../Preview/PreviewFileModal\")),\n);\n\nconst baseDnDStyle = {\n borderWidth: 2,\n borderRadius: 2,\n borderColor: \"transparent\",\n outline: \"none\",\n};\n\nconst activeDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"transparent\",\n borderColor: \"#2196f3\",\n};\n\nconst acceptDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"transparent\",\n borderColor: \"#00e676\",\n};\n\nconst ListObjects = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n const location = useLocation();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const bucketToRewind = useSelector(\n (state: AppState) => state.objectBrowser.rewind.bucketToRewind,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n const selectedInternalPaths = useSelector(\n (state: AppState) => state.objectBrowser.selectedInternalPaths,\n );\n const requestInProgress = useSelector(\n (state: AppState) => state.objectBrowser.requestInProgress,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n const versioningConfig = useSelector(\n (state: AppState) => state.objectBrowser.versionInfo,\n );\n const lockingEnabled = useSelector(\n (state: AppState) => state.objectBrowser.lockingEnabled,\n );\n const downloadRenameModal = useSelector(\n (state: AppState) => state.objectBrowser.downloadRenameModal,\n );\n const selectedPreview = useSelector(\n (state: AppState) => state.objectBrowser.selectedPreview,\n );\n const shareFileModalOpen = useSelector(\n (state: AppState) => state.objectBrowser.shareFileModalOpen,\n );\n const previewOpen = useSelector(\n (state: AppState) => state.objectBrowser.previewOpen,\n );\n const selectedBucket = useSelector(\n (state: AppState) => state.objectBrowser.selectedBucket,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n const anonymousAccessOpen = useSelector(\n (state: AppState) => state.objectBrowser.anonymousAccessOpen,\n );\n\n const records = useSelector(\n (state: AppState) => state.objectBrowser?.records || [],\n );\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n\n const [deleteMultipleOpen, setDeleteMultipleOpen] = useState(false);\n const [rewindSelect, setRewindSelect] = useState(false);\n const [iniLoad, setIniLoad] = useState(false);\n const [canShareFile, setCanShareFile] = useState(false);\n const [canPreviewFile, setCanPreviewFile] = useState(false);\n const [quota, setQuota] = useState(null);\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const isVersioningApplied = isVersionedMode(versioningConfig.status);\n\n const bucketName = params.bucketName || \"\";\n const pathSegment = location.pathname.split(`/browser/${bucketName}/`);\n const internalPaths =\n pathSegment.length === 2 ? decodeURIComponent(pathSegment[1]) : \"\";\n\n const currentPath = internalPaths.split(\"/\").filter((i: string) => i !== \"\");\n\n let uploadPath = [bucketName];\n if (currentPath.length > 0) {\n uploadPath = uploadPath.concat(currentPath);\n }\n\n const fileUpload = useRef(null);\n const folderUpload = useRef(null);\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const pathAsResourceInPolicy = uploadPath.join(\"/\");\n const allowedFileExtensions = getPolicyAllowedFileExtensions(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const canDownload = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n );\n const canRewind = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n ]);\n const canDelete = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n const canUpload =\n hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const canSetAnonymousAccess = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n\n const checkForDelMarker = (): boolean => {\n let isObjDelMarker = false;\n if (selectedObjects.length === 1) {\n let matchingRec = records.find((obj) => {\n return obj.name === `${selectedObjects[0]}` && obj.delete_flag;\n });\n\n isObjDelMarker = !!matchingRec;\n }\n return isObjDelMarker;\n };\n\n const isSelObjectDelMarker = checkForDelMarker();\n\n const fetchMetadata = useCallback(() => {\n const objectName = selectedObjects[0];\n\n if (!isMetaDataLoaded && objectName) {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: objectName,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, selectedObjects, isMetaDataLoaded]);\n\n useEffect(() => {\n if (bucketName && !isSelObjectDelMarker) {\n fetchMetadata();\n }\n }, [bucketName, selectedObjects, fetchMetadata, isSelObjectDelMarker]);\n\n useEffect(() => {\n if (rewindEnabled) {\n if (bucketToRewind !== bucketName) {\n dispatch(resetRewind());\n return;\n }\n }\n }, [rewindEnabled, bucketToRewind, bucketName, dispatch]);\n\n useEffect(() => {\n if (folderUpload.current !== null) {\n folderUpload.current.setAttribute(\"directory\", \"\");\n folderUpload.current.setAttribute(\"webkitdirectory\", \"\");\n }\n }, [folderUpload]);\n\n useEffect(() => {\n if (selectedObjects.length === 1) {\n const objectName = selectedObjects[0];\n const isPrefix = objectName.endsWith(\"/\");\n\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n if (objectType !== \"none\" && canDownload) {\n setCanPreviewFile(true);\n } else {\n setCanPreviewFile(false);\n }\n\n if (canDownload && !isPrefix) {\n setCanShareFile(true);\n } else {\n setCanShareFile(false);\n }\n } else {\n setCanShareFile(false);\n setCanPreviewFile(false);\n }\n }, [selectedObjects, canDownload, metaData]);\n\n useEffect(() => {\n if (!quota && !anonymousMode) {\n api.buckets\n .getBucketQuota(bucketName)\n .then((res) => {\n let quotaVals = null;\n\n if (res.data.quota) {\n quotaVals = res.data;\n }\n\n setQuota(quotaVals);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Quota Status: \",\n err.error.detailedMessage,\n );\n setQuota(null);\n });\n }\n }, [quota, bucketName, anonymousMode]);\n\n useEffect(() => {\n if (selectedObjects.length > 0) {\n dispatch(setObjectDetailsView(true));\n return;\n }\n\n if (\n selectedObjects.length === 0 &&\n selectedInternalPaths === null &&\n !requestInProgress\n ) {\n dispatch(setObjectDetailsView(false));\n }\n }, [selectedObjects, selectedInternalPaths, dispatch, requestInProgress]);\n\n useEffect(() => {\n if (!iniLoad) {\n dispatch(setBucketDetailsLoad(true));\n setIniLoad(true);\n }\n }, [iniLoad, dispatch, setIniLoad]);\n\n // bucket info\n useEffect(() => {\n if ((requestInProgress || loadingBucket) && !anonymousMode) {\n api.buckets\n .bucketInfo(bucketName)\n .then((res) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setBucketInfo(res.data));\n })\n .catch((err) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }\n }, [bucketName, loadingBucket, dispatch, anonymousMode, requestInProgress]);\n\n // Load retention Config\n\n useEffect(() => {\n if (selectedBucket !== \"\") {\n api.buckets\n .getBucketRetentionConfig(selectedBucket)\n .then((res) => {\n dispatch(setRetentionConfig(res.data));\n })\n .catch(() => {\n dispatch(setRetentionConfig(null));\n });\n }\n }, [selectedBucket, dispatch]);\n\n const closeDeleteMultipleModalAndRefresh = (refresh: boolean) => {\n setDeleteMultipleOpen(false);\n\n if (refresh) {\n dispatch(setSnackBarMessage(`Objects deleted successfully.`));\n dispatch(setSelectedObjects([]));\n dispatch(setReloadObjectsList(true));\n }\n };\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n var newFiles: File[] = [];\n\n for (let i = 0; i < e.target.files.length; i++) {\n newFiles.push(e.target.files[i]);\n }\n uploadObject(newFiles, \"\");\n\n e.target.value = \"\";\n };\n\n const uploadObject = useCallback(\n (files: File[], folderPath: string): void => {\n let pathPrefix = \"\";\n if (simplePath) {\n pathPrefix = simplePath.endsWith(\"/\") ? simplePath : simplePath + \"/\";\n }\n\n const upload = (\n files: File[],\n bucketName: string,\n path: string,\n folderPath: string,\n ) => {\n let uploadPromise = (file: File) => {\n return new Promise((resolve, reject) => {\n let uploadUrl = `api/v1/buckets/${bucketName}/objects/upload`;\n const fileName = file.name;\n\n const blobFile = new Blob([file], { type: file.type });\n\n const filePath = get(file, \"path\", \"\");\n const fileWebkitRelativePath = get(file, \"webkitRelativePath\", \"\");\n\n let relativeFolderPath = folderPath;\n const ID = makeid(8);\n\n // File was uploaded via drag & drop\n if (filePath !== \"\") {\n relativeFolderPath = filePath;\n } else if (fileWebkitRelativePath !== \"\") {\n // File was uploaded using upload button\n relativeFolderPath = fileWebkitRelativePath;\n }\n\n let prefixPath = \"\";\n\n if (path !== \"\" || relativeFolderPath !== \"\") {\n const finalFolderPath = relativeFolderPath\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\");\n\n const pathClean = path.endsWith(\"/\") ? path.slice(0, -1) : path;\n\n prefixPath = `${pathClean}${\n !pathClean.endsWith(\"/\") &&\n finalFolderPath !== \"\" &&\n !finalFolderPath.startsWith(\"/\")\n ? \"/\"\n : \"\"\n }${finalFolderPath}${\n !finalFolderPath.endsWith(\"/\") ||\n (finalFolderPath.trim() === \"\" && !path.endsWith(\"/\"))\n ? \"/\"\n : \"\"\n }`;\n }\n\n if (prefixPath !== \"\") {\n uploadUrl = `${uploadUrl}?prefix=${encodeURIComponent(\n prefixPath + fileName,\n )}`;\n } else {\n uploadUrl = `${uploadUrl}?prefix=${encodeURIComponent(fileName)}`;\n }\n\n const identity = encodeURIComponent(\n `${bucketName}-${prefixPath}-${new Date().getTime()}-${Math.random()}`,\n );\n\n let xhr = new XMLHttpRequest();\n xhr.open(\"POST\", uploadUrl, true);\n if (anonymousMode) {\n xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n }\n // xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n\n const areMultipleFiles = files.length > 1;\n let errorMessage = `An error occurred while uploading the file${\n areMultipleFiles ? \"s\" : \"\"\n }.`;\n\n const errorMessages: any = {\n 413: \"Error - File size too large\",\n };\n\n xhr.withCredentials = false;\n xhr.onload = function () {\n // resolve promise only when HTTP code is ok\n if (xhr.status >= 200 && xhr.status < 300) {\n dispatch(completeObject(identity));\n resolve({ status: xhr.status });\n\n removeTrace(ID);\n } else {\n // reject promise if there was a server error\n if (errorMessages[xhr.status]) {\n errorMessage = errorMessages[xhr.status];\n } else if (xhr.response) {\n try {\n const err = JSON.parse(xhr.response);\n errorMessage = err.detailedMessage;\n } catch (e) {\n errorMessage = \"something went wrong\";\n }\n }\n\n dispatch(\n failObject({\n instanceID: identity,\n msg: errorMessage,\n }),\n );\n reject({ status: xhr.status, message: errorMessage });\n\n removeTrace(ID);\n }\n };\n\n xhr.upload.addEventListener(\"error\", () => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n });\n\n xhr.upload.addEventListener(\"progress\", (event) => {\n const progress = Math.floor((event.loaded * 100) / event.total);\n\n dispatch(\n updateProgress({\n instanceID: identity,\n progress: progress,\n }),\n );\n });\n\n xhr.onerror = () => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n };\n xhr.onloadend = () => {\n if (files.length === 0) {\n dispatch(setReloadObjectsList(true));\n }\n };\n xhr.onabort = () => {\n dispatch(cancelObjectInList(identity));\n };\n\n const formData = new FormData();\n if (file.size !== undefined) {\n formData.append(file.size.toString(), blobFile, fileName);\n storeCallForObjectWithID(ID, xhr);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identity,\n percentage: 0,\n prefix: `${prefixPath}${fileName}`,\n type: \"upload\",\n waitingForFile: false,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n storeFormDataWithID(ID, formData);\n }\n });\n };\n\n const uploadFilePromises: any = [];\n // open object manager\n dispatch(openList());\n for (let i = 0; i < files.length; i++) {\n const file = files[i];\n uploadFilePromises.push(uploadPromise(file));\n }\n Promise.allSettled(uploadFilePromises).then((results: Array) => {\n const errors = results.filter(\n (result) => result.status === \"rejected\",\n );\n if (errors.length > 0) {\n const totalFiles = uploadFilePromises.length;\n const successUploadedFiles =\n uploadFilePromises.length - errors.length;\n const err: ErrorResponseHandler = {\n errorMessage: \"There were some errors during file upload\",\n detailedError: `Uploaded files ${successUploadedFiles}/${totalFiles}`,\n };\n dispatch(setErrorSnackMessage(err));\n }\n // We force objects list reload after all promises were handled\n dispatch(setReloadObjectsList(true));\n });\n };\n\n upload(files, bucketName, pathPrefix, folderPath);\n },\n [bucketName, dispatch, simplePath, anonymousMode],\n );\n\n const onDrop = useCallback(\n (acceptedFiles: any[]) => {\n if (acceptedFiles && acceptedFiles.length > 0 && canUpload) {\n let newFolderPath: string = acceptedFiles[0].path;\n //Should we filter by allowed file extensions if any?.\n let allowedFiles = acceptedFiles;\n\n if (allowedFileExtensions.length > 0) {\n allowedFiles = acceptedFiles.filter((file) => {\n const fileExtn = extractFileExtn(file.name);\n return allowedFileExtensions.includes(fileExtn);\n });\n }\n\n if (allowedFiles.length) {\n uploadObject(allowedFiles, newFolderPath);\n console.log(\n `${allowedFiles.length} Allowed Files Processed out of ${acceptedFiles.length}.`,\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n\n if (allowedFiles.length !== acceptedFiles.length) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload is restricted.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n } else {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Could not process drag and drop.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n\n console.error(\n \"Could not process drag and drop . upload may be restricted.\",\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n }\n }\n if (!canUpload) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload not allowed\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [uploadObject],\n );\n\n const { getRootProps, getInputProps, isDragActive, isDragAccept } =\n useDropzone({\n noClick: true,\n onDrop,\n });\n\n const dndStyles = useMemo(\n () => ({\n ...baseDnDStyle,\n ...(isDragActive ? activeDnDStyle : {}),\n ...(isDragAccept ? acceptDnDStyle : {}),\n }),\n [isDragActive, isDragAccept],\n );\n\n const closeShareModal = () => {\n dispatch(setShareFileModalOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const rewindCloseModal = () => {\n setRewindSelect(false);\n };\n\n const closePreviewWindow = () => {\n dispatch(setPreviewOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const onClosePanel = (forceRefresh: boolean) => {\n dispatch(setSelectedObjectView(null));\n dispatch(setVersionsModeEnabled({ status: false }));\n if (detailsOpen && selectedInternalPaths !== null) {\n // We change URL to be the contained folder\n\n const splitURLS = internalPaths.split(\"/\");\n\n // We remove the last section of the URL as it should be a file\n splitURLS.pop();\n\n let URLItem = \"\";\n\n if (splitURLS && splitURLS.length > 0) {\n URLItem = `${splitURLS.join(\"/\")}/`;\n }\n\n navigate(\n `/browser/${encodeURIComponent(bucketName)}/${encodeURIComponent(URLItem)}`,\n );\n }\n\n dispatch(setObjectDetailsView(false));\n\n if (forceRefresh) {\n dispatch(setReloadObjectsList(true));\n }\n };\n\n const setDeletedAction = () => {\n dispatch(resetMessages());\n dispatch(setShowDeletedObjects(!showDeleted));\n onClosePanel(true);\n };\n\n const closeRenameModal = () => {\n dispatch(setDownloadRenameModal(null));\n };\n\n const closeAddAccessRule = () => {\n dispatch(setAnonymousAccessOpen(false));\n };\n\n let createdTime = DateTime.now();\n\n if (bucketInfo?.creation_date) {\n createdTime = DateTime.fromISO(bucketInfo.creation_date) as DateTime;\n }\n\n const downloadToolTip =\n selectedObjects?.length <= 1\n ? \"Download Selected\"\n : ` Download selected objects as Zip. Any Deleted objects in the selection would be skipped from download.`;\n\n const multiActionButtons = [\n {\n action: () => {\n dispatch(downloadSelected(bucketName));\n },\n label: \"Download\",\n disabled: !canDownload || isSelObjectDelMarker,\n icon: ,\n tooltip: canDownload\n ? downloadToolTip\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download objects from this bucket\",\n ),\n },\n {\n action: () => {\n dispatch(openShare());\n },\n label: \"Share\",\n disabled:\n selectedObjects.length !== 1 || !canShareFile || isSelObjectDelMarker,\n icon: ,\n tooltip: canShareFile ? \"Share Selected File\" : \"Sharing unavailable\",\n },\n {\n action: () => {\n dispatch(openPreview());\n },\n label: \"Preview\",\n disabled:\n selectedObjects.length !== 1 || !canPreviewFile || isSelObjectDelMarker,\n icon: ,\n tooltip: canPreviewFile ? \"Preview Selected File\" : \"Preview unavailable\",\n },\n {\n action: () => {\n dispatch(openAnonymousAccess());\n },\n label: \"Anonymous Access\",\n disabled:\n selectedObjects.length !== 1 ||\n !selectedObjects[0].endsWith(\"/\") ||\n !canSetAnonymousAccess,\n icon: ,\n tooltip:\n selectedObjects.length === 1 && selectedObjects[0].endsWith(\"/\")\n ? \"Set Anonymous Access to this Folder\"\n : \"Anonymous Access unavailable\",\n },\n {\n action: () => {\n setDeleteMultipleOpen(true);\n },\n label: \"Delete\",\n icon: ,\n disabled: !canDelete || selectedObjects.length === 0,\n tooltip: canDelete\n ? \"Delete Selected Files\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_DELETE_OBJECT],\n \"delete objects in this bucket\",\n ),\n },\n ];\n\n return (\n \n {shareFileModalOpen && selectedPreview && (\n \n )}\n {deleteMultipleOpen && (\n \n )}\n {rewindSelect && (\n \n )}\n {previewOpen && selectedPreview && (\n \n )}\n {!!downloadRenameModal && (\n \n )}\n {anonymousAccessOpen && (\n \n )}\n\n \n {anonymousMode && (\n
\n \n
\n )}\n \n \n \n \n }\n title={bucketName}\n subTitle={\n !anonymousMode ? (\n \n \n Created on: \n \n {bucketInfo?.creation_date\n ? createdTime.toFormat(\n \"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\",\n )\n : \"\"}\n \n \n \n Access:  \n {bucketInfo?.access || \"\"}\n \n {bucketInfo && (\n \n \n {bucketInfo.size && (\n {niceBytesInt(bucketInfo.size)}\n )}\n {bucketInfo.size && quota && (\n \n {\" \"}\n / {niceBytesInt(quota.quota || 0)}\n \n )}\n {bucketInfo.size && bucketInfo.objects ? \" - \" : \"\"}\n {bucketInfo.objects && (\n \n {bucketInfo.objects} Object\n {bucketInfo.objects && bucketInfo.objects !== 1\n ? \"s\"\n : \"\"}\n \n )}\n \n \n )}\n \n ) : null\n }\n actions={\n \n {!anonymousMode && (\n \n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n setRewindSelect(true);\n }}\n disabled={!isVersioningApplied || !canRewind}\n />\n \n )}\n \n }\n variant={\"regular\"}\n onClick={() => {\n if (versionsMode) {\n dispatch(setLoadingVersions(true));\n } else {\n dispatch(resetMessages());\n dispatch(setReloadObjectsList(true));\n }\n }}\n disabled={\n anonymousMode\n ? false\n : !hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || rewindEnabled\n }\n />\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n closeMenu();\n }}\n uploadFolderFunction={(closeMenu) => {\n if (folderUpload && folderUpload.current) {\n folderUpload.current.click();\n }\n closeMenu();\n }}\n />\n \n }\n bottomBorder={false}\n />\n \n \n \n \n {versionsMode ? (\n \n {selectedInternalPaths !== null && (\n \n )}\n \n ) : (\n \n \n {!anonymousMode && (\n \n \n )\n }\n hidePathButton={false}\n />\n \n )}\n \n \n \n )}\n {!anonymousMode && (\n \n {\n onClosePanel(false);\n }}\n className={`${versionsMode ? \"hideListOnSmall\" : \"\"}`}\n >\n {selectedObjects.length > 0 && (\n \n )}\n {selectedInternalPaths !== null && (\n \n )}\n \n \n )}\n \n \n
\n
\n );\n};\n\nexport default ListObjects;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 } from \"react\";\nimport {\n IAM_PAGES,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../common/SecureComponent\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport { BackLink, Button, SettingsIcon, Grid } from \"mds\";\nimport AutoColorIcon from \"../Common/Components/AutoColorIcon\";\nimport { useSelector } from \"react-redux\";\nimport { selFeatures } from \"../consoleSlice\";\nimport hasPermission from \"../../../common/SecureComponent/accessControl\";\nimport { useNavigate } from \"react-router-dom\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setSearchVersions } from \"./objectBrowserSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport FilterObjectsSB from \"./FilterObjectsSB\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ObjectManagerButton from \"../Common/ObjectManager/ObjectManagerButton\";\nimport HelpMenu from \"../HelpMenu\";\nimport { setHelpName } from \"../../../systemSlice\";\n\ninterface IOBHeader {\n bucketName: string;\n}\n\nconst OBHeader = ({ bucketName }: IOBHeader) => {\n const dispatch = useAppDispatch();\n const features = useSelector(selFeatures);\n\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const navigate = useNavigate();\n\n const configureBucketAllowed = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_DELETE_BUCKET,\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_PUT_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_PUT_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.ADMIN_GET_BUCKET_QUOTA,\n IAM_SCOPES.ADMIN_SET_BUCKET_QUOTA,\n IAM_SCOPES.S3_PUT_BUCKET_TAGGING,\n IAM_SCOPES.S3_GET_BUCKET_TAGGING,\n IAM_SCOPES.S3_LIST_BUCKET_VERSIONS,\n IAM_SCOPES.S3_GET_BUCKET_POLICY_STATUS,\n IAM_SCOPES.S3_DELETE_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const searchBar = (\n \n {!versionsMode ? (\n \n \n \n ) : (\n \n {\n dispatch(setSearchVersions(value));\n }}\n value={searchVersions}\n />\n \n )}\n \n );\n\n useEffect(() => {\n dispatch(setHelpName(\"object_browser\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {!obOnly ? (\n {\n navigate(IAM_PAGES.OBJECT_BROWSER_VIEW);\n }}\n />\n }\n actions={\n \n \n \n navigate(`/buckets/${bucketName}/admin`)}\n icon={\n \n }\n style={{\n padding: \"0 10px\",\n }}\n />\n \n \n \n \n }\n middleComponent={searchBar}\n />\n ) : (\n \n \n \n \n \n {searchBar}\n \n \n \n )}\n \n );\n};\n\nexport default OBHeader;\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, useCallback, useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useParams } from \"react-router-dom\";\nimport { api } from \"api\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport {\n resetMessages,\n setIsVersioned,\n setLoadingLocking,\n setLoadingObjectInfo,\n setLoadingVersioning,\n setLoadingVersions,\n setLockingEnabled,\n setObjectDetailsView,\n setRequestInProgress,\n setSelectedObjectView,\n setVersionsModeEnabled,\n} from \"../../ObjectBrowser/objectBrowserSlice\";\nimport ListObjects from \"../ListBuckets/Objects/ListObjects/ListObjects\";\nimport hasPermission from \"../../../../common/SecureComponent/accessControl\";\nimport OBHeader from \"../../ObjectBrowser/OBHeader\";\n\nconst BrowserHandler = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const location = useLocation();\n\n const loadingVersioning = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersioning,\n );\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const rewindDate = useSelector(\n (state: AppState) => state.objectBrowser.rewind.dateToRewind,\n );\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const requestInProgress = useSelector(\n (state: AppState) => state.objectBrowser.requestInProgress,\n );\n const loadingLocking = useSelector(\n (state: AppState) => state.objectBrowser.loadingLocking,\n );\n const reloadObjectsList = useSelector(\n (state: AppState) => state.objectBrowser.reloadObjectsList,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n const selectedBucket = useSelector(\n (state: AppState) => state.objectBrowser.selectedBucket,\n );\n const records = useSelector((state: AppState) => state.objectBrowser.records);\n\n const bucketName = params.bucketName || \"\";\n const pathSegment = location.pathname.split(\n `/browser/${encodeURIComponent(bucketName)}/`,\n );\n const internalPaths =\n pathSegment.length === 2 ? decodeURIComponent(pathSegment[1]) : \"\";\n\n const initWSRequest = useCallback(\n (path: string) => {\n let currDate = new Date();\n\n let date = currDate.toISOString();\n\n if (rewindDate !== null && rewindEnabled) {\n date = rewindDate;\n }\n\n const payloadData = {\n bucketName,\n path,\n rewindMode: rewindEnabled || showDeleted,\n date: date,\n };\n\n dispatch({ type: \"socket/OBRequest\", payload: payloadData });\n },\n [bucketName, showDeleted, rewindDate, rewindEnabled, dispatch],\n );\n\n // Common path load\n const pathLoad = useCallback(\n (forceLoad: boolean = false) => {\n // We exit Versions mode in case of path change\n dispatch(setVersionsModeEnabled({ status: false }));\n\n let searchPath = internalPaths;\n\n if (!internalPaths.endsWith(\"/\") && internalPaths !== \"\") {\n searchPath = `${internalPaths.split(\"/\").slice(0, -1).join(\"/\")}/`;\n }\n\n if (searchPath === \"/\") {\n searchPath = \"\";\n }\n\n // If the path is different of the actual path or reload objects list is requested, then we initialize a new request to load a new record set.\n if (\n searchPath !== simplePath ||\n bucketName !== selectedBucket ||\n forceLoad\n ) {\n dispatch(setRequestInProgress(true));\n initWSRequest(searchPath);\n }\n },\n [\n internalPaths,\n dispatch,\n simplePath,\n selectedBucket,\n bucketName,\n initWSRequest,\n ],\n );\n\n useEffect(() => {\n return () => {\n dispatch({ type: \"socket/OBCancelLast\" });\n };\n }, [dispatch]);\n\n // Object Details handler\n useEffect(() => {\n dispatch(setLoadingVersioning(true));\n\n if (internalPaths.endsWith(\"/\") || internalPaths === \"\") {\n dispatch(setObjectDetailsView(false));\n dispatch(setSelectedObjectView(null));\n dispatch(setLoadingLocking(true));\n } else {\n dispatch(setLoadingObjectInfo(true));\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedObjectView(internalPaths || \"\"));\n }\n }, [bucketName, internalPaths, rewindDate, rewindEnabled, dispatch]);\n\n // Navigation Listing Request\n useEffect(() => {\n pathLoad(false);\n }, [pathLoad]);\n\n // Reload Handler\n useEffect(() => {\n if (reloadObjectsList && records.length === 0 && !requestInProgress) {\n pathLoad(true);\n }\n }, [reloadObjectsList, records, requestInProgress, pathLoad]);\n\n const displayListObjects =\n hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || anonymousMode;\n\n useEffect(() => {\n if (loadingVersioning && !anonymousMode) {\n if (displayListObjects) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n dispatch(setIsVersioned(res.data));\n dispatch(setLoadingVersioning(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Versioning Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingVersioning(false));\n });\n } else {\n dispatch(setLoadingVersioning(false));\n dispatch(resetMessages());\n }\n }\n }, [\n bucketName,\n loadingVersioning,\n dispatch,\n displayListObjects,\n anonymousMode,\n ]);\n\n useEffect(() => {\n if (loadingLocking) {\n if (displayListObjects) {\n api.buckets\n .getBucketObjectLockingStatus(bucketName)\n .then((res) => {\n dispatch(setLockingEnabled(res.data.object_locking_enabled));\n dispatch(setLoadingLocking(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Locking Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingLocking(false));\n });\n } else {\n dispatch(resetMessages());\n dispatch(setLoadingLocking(false));\n }\n }\n }, [bucketName, loadingLocking, dispatch, displayListObjects]);\n\n return (\n \n {!anonymousMode && }\n \n \n );\n};\n\nexport default BrowserHandler;\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 { DateTime } from \"luxon\";\nimport { Box, InputBox, InputLabel, LinkIcon } from \"mds\";\n\nconst DAY_SECONDS = 86400;\nconst HOUR_SECONDS = 3600;\nconst HOUR_MINUTES = 60;\n\ninterface IDaysSelector {\n id: string;\n maxSeconds: number;\n label: string;\n entity: string;\n onChange: (newDate: string, isValid: boolean) => void;\n}\n\nconst calculateNewTime = (days: number, hours: number, minutes: number) => {\n return DateTime.now()\n .plus({\n hours: hours + days * 24,\n minutes,\n })\n .toISO(); // Lump days into hours to avoid daylight savings causing issues\n};\n\nconst DaysSelector = ({\n id,\n label,\n maxSeconds,\n entity,\n onChange,\n}: IDaysSelector) => {\n const maxDays = Math.floor(maxSeconds / DAY_SECONDS);\n const maxHours = Math.floor((maxSeconds % DAY_SECONDS) / HOUR_SECONDS);\n const maxMinutes = Math.floor((maxSeconds % HOUR_SECONDS) / HOUR_MINUTES);\n\n const [selectedDays, setSelectedDays] = useState(0);\n const [selectedHours, setSelectedHours] = useState(0);\n const [selectedMinutes, setSelectedMinutes] = useState(0);\n const [validDate, setValidDate] = useState(true);\n const [dateSelected, setDateSelected] = useState(null);\n\n // Set initial values\n useEffect(() => {\n setSelectedDays(maxDays);\n setSelectedHours(maxHours);\n setSelectedMinutes(maxMinutes);\n }, [maxDays, maxHours, maxMinutes]);\n\n useEffect(() => {\n if (\n !isNaN(selectedHours) &&\n !isNaN(selectedDays) &&\n !isNaN(selectedMinutes)\n ) {\n setDateSelected(\n calculateNewTime(selectedDays, selectedHours, selectedMinutes),\n );\n }\n }, [selectedDays, selectedHours, selectedMinutes]);\n\n useEffect(() => {\n if (validDate && dateSelected) {\n const formattedDate = DateTime.fromISO(dateSelected).toFormat(\n \"yyyy-MM-dd HH:mm:ss\",\n );\n onChange(formattedDate.split(\" \").join(\"T\"), true);\n } else {\n onChange(\"0000-00-00\", false);\n }\n }, [dateSelected, onChange, validDate]);\n\n // Basic validation for inputs\n useEffect(() => {\n let valid = true;\n\n if (\n selectedDays < 0 ||\n selectedDays > 7 ||\n selectedDays > maxDays ||\n isNaN(selectedDays)\n ) {\n valid = false;\n }\n\n if (selectedHours < 0 || selectedHours > 23 || isNaN(selectedHours)) {\n valid = false;\n }\n\n if (selectedMinutes < 0 || selectedMinutes > 59 || isNaN(selectedMinutes)) {\n valid = false;\n }\n\n if (selectedDays === maxDays) {\n if (selectedHours > maxHours) {\n valid = false;\n }\n\n if (selectedHours === maxHours) {\n if (selectedMinutes > maxMinutes) {\n valid = false;\n }\n }\n }\n\n if (selectedDays <= 0 && selectedHours <= 0 && selectedMinutes <= 0) {\n valid = false;\n }\n\n setValidDate(valid);\n }, [\n dateSelected,\n maxDays,\n maxHours,\n maxMinutes,\n onChange,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ]);\n\n const extraStyles = {\n \"& .textBoxContainer\": {\n minWidth: 0,\n },\n \"& input\": {\n textAlign: \"center\" as const,\n paddingRight: 10,\n paddingLeft: 10,\n width: 40,\n },\n };\n\n return (\n \n \n {label}\n \n label\": {\n fontWeight: 400,\n marginLeft: 15,\n marginRight: 25,\n },\n },\n }}\n >\n \n {\n setSelectedDays(parseInt(e.target.value));\n }}\n value={selectedDays.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedHours(parseInt(e.target.value));\n }}\n value={selectedHours.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedMinutes(parseInt(e.target.value));\n }}\n value={selectedMinutes.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n .min-icon\": {\n color: \"#5E5E5E\",\n width: 15,\n height: 15,\n marginRight: 10,\n },\n },\n \"& .validTill\": {\n fontWeight: \"bold\",\n marginLeft: 15,\n },\n \"& .invalidDurationText\": {\n marginTop: 15,\n display: \"flex\",\n color: \"red\",\n fontSize: 11,\n },\n }}\n >\n {validDate && dateSelected ? (\n
\n \n
{entity} will be available until:
{\" \"}\n
\n {DateTime.fromISO(dateSelected).toFormat(\n \"MM/dd/yyyy HH:mm:ss ZZZZ\",\n )}\n
\n
\n ) : (\n
\n Please select a valid duration.\n
\n )}\n \n \n );\n};\n\nexport default DaysSelector;\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 { useSelector } from \"react-redux\";\nimport {\n Button,\n CopyIcon,\n ReadBox,\n ShareIcon,\n Grid,\n ProgressBar,\n Tooltip,\n} from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DaysSelector from \"../../../../Common/FormComponents/DaysSelector/DaysSelector\";\nimport { niceTimeFromSeconds } from \"../../../../../../common/utils\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n setModalSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { getMaxShareLinkExpTime } from \"screens/Console/ObjectBrowser/objectBrowserThunks\";\nimport { maxShareLinkExpTime } from \"screens/Console/ObjectBrowser/objectBrowserSlice\";\nimport debounce from \"lodash/debounce\";\n\ninterface IShareFileProps {\n open: boolean;\n bucketName: string;\n dataObject: BucketObject;\n closeModalAndRefresh: () => void;\n}\n\nconst ShareFile = ({\n open,\n closeModalAndRefresh,\n bucketName,\n dataObject,\n}: IShareFileProps) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const maxShareLinkExpTimeVal = useSelector(maxShareLinkExpTime);\n const [shareURL, setShareURL] = useState(\"\");\n const [isLoadingVersion, setIsLoadingVersion] = useState(true);\n const [isLoadingFile, setIsLoadingFile] = useState(false);\n const [selectedDate, setSelectedDate] = useState(\"\");\n const [dateValid, setDateValid] = useState(true);\n const [versionID, setVersionID] = useState(\"null\");\n\n const debouncedDateChange = debounce((newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n setShareURL(\"\");\n }, 300);\n\n useEffect(() => {\n dispatch(getMaxShareLinkExpTime());\n }, [dispatch]);\n\n useEffect(() => {\n // In case version is undefined, we get the latest version of the object\n if (dataObject.version_id === undefined) {\n // In case it is not distributed setup, then we default to \"null\";\n if (distributedSetup) {\n api.buckets\n .listObjects(bucketName, {\n prefix: dataObject.name || \"\",\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n\n const latestVersion: BucketObject | undefined = result.find(\n (elem: BucketObject) => elem.is_latest,\n );\n\n if (latestVersion) {\n setVersionID(`${latestVersion.version_id}`);\n return;\n }\n\n // Version couldn't be retrieved, we default\n setVersionID(\"null\");\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(\"null\");\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(dataObject.version_id || \"null\");\n setIsLoadingVersion(false);\n }, [bucketName, dataObject, distributedSetup, dispatch]);\n\n useEffect(() => {\n if (dateValid && !isLoadingVersion) {\n setIsLoadingFile(true);\n setShareURL(\"\");\n\n const slDate = new Date(`${selectedDate}`);\n const currDate = new Date();\n\n const diffDate = Math.ceil(\n (slDate.getTime() - currDate.getTime()) / 1000,\n );\n\n if (diffDate > 0) {\n api.buckets\n .shareObject(bucketName, {\n prefix: dataObject.name || \"\",\n version_id: versionID,\n expires: selectedDate !== \"\" ? `${diffDate}s` : \"\",\n })\n .then((res) => {\n setShareURL(res.data);\n setIsLoadingFile(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setShareURL(\"\");\n setIsLoadingFile(false);\n });\n }\n }\n }, [\n dataObject,\n selectedDate,\n bucketName,\n dateValid,\n setShareURL,\n dispatch,\n distributedSetup,\n isLoadingVersion,\n versionID,\n ]);\n\n return (\n \n }\n modalOpen={open}\n onClose={() => {\n closeModalAndRefresh();\n }}\n >\n {isLoadingVersion && (\n \n \n \n )}\n {!isLoadingVersion && (\n \n \n \n You can reset your session by logging out and logging back\n in to the web UI.

\n You can increase the maximum configuration time by setting\n the MINIO_STS_DURATION environment variable on all your\n nodes.

\n You can use mc share as an alternative to this UI,\n where the session length does not limit the URL validity.\n \n }\n >\n \n The following URL lets you share this object without requiring\n a login.
\n The URL expires automatically at the earlier of your\n configured time ({niceTimeFromSeconds(maxShareLinkExpTimeVal)}\n ) or the expiration of your current web session.\n
\n \n \n
\n \n \n \n \n \n {\n dispatch(\n setModalSnackMessage(\"Share URL Copied to clipboard\"),\n );\n }}\n disabled={shareURL === \"\" || isLoadingFile}\n style={{\n width: \"28px\",\n height: \"28px\",\n padding: \"0px\",\n }}\n icon={}\n />\n \n }\n >\n {shareURL}\n \n \n
\n )}\n \n
\n );\n};\n\nexport default ShareFile;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { Document, Page, pdfjs } from \"react-pdf\";\nimport { Box, Button, InformativeMessage } from \"mds\";\n\npdfjs.GlobalWorkerOptions.workerSrc = \"./scripts/pdf.worker.min.mjs\";\n\ninterface IPreviewPDFProps {\n path: string;\n loading: boolean;\n onLoad: () => void;\n downloadFile: () => void;\n}\n\nconst PreviewPDF = ({\n path,\n loading,\n onLoad,\n downloadFile,\n}: IPreviewPDFProps) => {\n const [errorState, setErrorState] = useState(false);\n const [totalPages, setTotalPages] = useState(0);\n\n if (!path) {\n return null;\n }\n\n const renderPages = totalPages > 5 ? 5 : totalPages;\n const arrayCreate = Array.from(Array(renderPages).keys());\n\n return (\n \n {errorState && totalPages === 0 && (\n \n File preview couldn't be displayed, Please try Download instead.\n \n \n Download File\n \n \n \n }\n sx={{ marginBottom: 10 }}\n />\n )}\n {!loading && !errorState && (\n \n This is a File Preview for the first {arrayCreate.length} pages of\n the document, if you wish to work with the full document please\n download instead.\n \n \n Download File\n \n \n \n }\n sx={{ marginBottom: 10 }}\n />\n )}\n {!errorState && (\n \n {\n setTotalPages(_pdfInfo.numPages || 0);\n setErrorState(false);\n onLoad();\n }}\n onLoadError={(error) => {\n setErrorState(true);\n onLoad();\n console.error(error);\n }}\n >\n {arrayCreate.map((item) => (\n \n ))}\n \n \n )}\n \n );\n};\n\nexport default PreviewPDF;\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, useCallback, useEffect, useState } from \"react\";\nimport { ProgressBar, Grid, Box, InformativeMessage } from \"mds\";\nimport get from \"lodash/get\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { api } from \"../../../../../../api\";\nimport PreviewPDF from \"./PreviewPDF\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"../../../../../../api/consoleApi\";\n\ninterface IPreviewFileProps {\n bucketName: string;\n actualInfo: BucketObject;\n isFullscreen?: boolean;\n}\n\nconst PreviewFile = ({\n bucketName,\n actualInfo,\n isFullscreen = false,\n}: IPreviewFileProps) => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(true);\n\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const objectName = actualInfo?.name || \"\";\n\n const fetchMetadata = useCallback(() => {\n if (!isMetaDataLoaded) {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: objectName,\n versionID: actualInfo.version_id || \"\",\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, objectName, isMetaDataLoaded, actualInfo.version_id]);\n\n useEffect(() => {\n if (bucketName && objectName) {\n fetchMetadata();\n }\n }, [bucketName, objectName, fetchMetadata]);\n\n let path = \"\";\n\n if (actualInfo) {\n let basename = document.baseURI.replace(window.location.origin, \"\");\n path = `${window.location.origin}${basename}api/v1/buckets/${encodeURIComponent(bucketName)}/objects/download?preview=true&prefix=${encodeURIComponent(actualInfo.name || \"\")}`;\n if (actualInfo.version_id) {\n path = path.concat(`&version_id=${actualInfo.version_id}`);\n }\n }\n\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n const iframeLoaded = () => {\n setLoading(false);\n };\n\n return (\n \n {objectType !== \"none\" && loading && (\n \n \n \n )}\n {isMetaDataLoaded ? (\n \n {objectType === \"video\" && (\n \n \n \n )}\n {objectType === \"audio\" && (\n \n \n \n )}\n {objectType === \"image\" && (\n \n )}\n {objectType === \"pdf\" && (\n \n \n downloadObject(dispatch, bucketName, path, actualInfo)\n }\n />\n \n )}\n {objectType === \"none\" && (\n
\n \n
\n )}\n {objectType !== \"none\" &&\n objectType !== \"video\" &&\n objectType !== \"audio\" &&\n objectType !== \"image\" &&\n objectType !== \"pdf\" && (\n
\n \n File couldn't be loaded. Please try Download instead\n \n
\n )}\n \n ) : null}\n
\n );\n};\nexport default PreviewFile;\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 ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport PreviewFileContent from \"./PreviewFileContent\";\nimport { ObjectPreviewIcon } from \"mds\";\nimport { BucketObject } from \"../../../../../../api/consoleApi\";\n\ninterface IPreviewFileProps {\n open: boolean;\n bucketName: string;\n actualInfo: BucketObject;\n onClosePreview: () => void;\n}\n\nconst PreviewFileModal = ({\n open,\n bucketName,\n actualInfo,\n onClosePreview,\n}: IPreviewFileProps) => {\n return (\n \n }\n >\n \n \n \n );\n};\n\nexport default PreviewFileModal;\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, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\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 { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default ModalWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { getClientOS } from \"../../../common/utils\";\nimport { BucketObjectItem } from \"../Buckets/ListBuckets/Objects/ListObjects/types\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport {\n download,\n downloadSelectedAsZip,\n} from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setMaxShareLinkExpTime,\n setNewObject,\n setPreviewOpen,\n setSelectedPreview,\n setShareFileModalOpen,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { DateTime } from \"luxon\";\nimport { api } from \"api\";\n\nexport const downloadSelected = createAsyncThunk(\n \"objectBrowser/downloadSelected\",\n async (bucketName: string, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const downloadObject = (object: BucketObjectItem) => {\n const identityDownload = encodeURIComponent(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n object.name,\n object.version_id,\n object.size,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name,\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n };\n\n if (state.objectBrowser.selectedObjects.length !== 0) {\n let itemsToDownload: BucketObjectItem[] = [];\n\n const filterFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n itemsToDownload = state.objectBrowser.records.filter(filterFunction);\n\n // In case just one element is selected, then we trigger download modal validation.\n if (itemsToDownload.length === 1) {\n if (\n itemsToDownload[0].name.length > 200 &&\n getClientOS().toLowerCase().includes(\"win\")\n ) {\n dispatch(setDownloadRenameModal(itemsToDownload[0]));\n return;\n } else {\n downloadObject(itemsToDownload[0]);\n }\n } else {\n if (itemsToDownload.length === 1) {\n downloadObject(itemsToDownload[0]);\n } else if (itemsToDownload.length > 1) {\n const fileName = `${DateTime.now().toFormat(\n \"LL-dd-yyyy-HH-mm-ss\",\n )}_files_list.zip`;\n\n // We are enforcing zip download when multiple files are selected for better user experience\n const multiObjList = itemsToDownload.reduce((dwList: any[], bi) => {\n // Download objects/prefixes(recursively) as zip\n // Skip any deleted files selected via \"Show deleted objects\" in selection and log for debugging\n const isDeleted = bi?.delete_flag;\n if (bi && !isDeleted) {\n dwList.push(bi.name);\n } else {\n console.log(`Skipping ${bi?.name} from download.`);\n }\n return dwList;\n }, []);\n\n await downloadSelectedAsZip(bucketName, multiObjList, fileName);\n return;\n }\n }\n }\n },\n);\n\nexport const openPreview = createAsyncThunk(\n \"objectBrowser/openPreview\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setPreviewOpen(true));\n }\n }\n },\n);\n\nexport const openShare = createAsyncThunk(\n \"objectBrowser/openShare\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setShareFileModalOpen(true));\n }\n }\n },\n);\n\nexport const openAnonymousAccess = createAsyncThunk(\n \"objectBrowser/openAnonymousAccess\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n if (\n state.objectBrowser.selectedObjects.length === 1 &&\n state.objectBrowser.selectedObjects[0].endsWith(\"/\")\n ) {\n dispatch(setAnonymousAccessOpen(true));\n }\n },\n);\n\nexport const getMaxShareLinkExpTime = createAsyncThunk(\n \"objectBrowser/maxShareLinkExpTime\",\n async (_, { rejectWithValue, dispatch }) => {\n return api.buckets\n .getMaxShareLinkExp()\n .then((res) => {\n dispatch(setMaxShareLinkExpTime(res.data.exp));\n })\n .catch(async (res) => {\n return rejectWithValue(res.error);\n });\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { getClientOS } from \"../../../common/utils\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport { download } from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setLongFileOpen,\n setNewObject,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { AppDispatch } from \"../../../store\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { BucketObject } from \"api/consoleApi\";\n\nexport const downloadObject = (\n dispatch: AppDispatch,\n bucketName: string,\n internalPaths: string,\n object: BucketObject,\n) => {\n const identityDownload = encodeURIComponent(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const isWinOs = getClientOS().toLowerCase().includes(\"win\");\n\n if ((object.name?.length || 0) > 200 && isWinOs) {\n dispatch(setLongFileOpen(true));\n return;\n }\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n internalPaths,\n object.version_id,\n object.size || 0,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name || \"\",\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Button, CopyIcon, InputBox, Box, breakPoints } from \"mds\";\n\nconst KeyRevealer = ({ value }: { value: string }) => {\n const [shown, setShown] = useState(false);\n\n return (\n \n {}}\n value={value}\n overlayIcon={}\n readOnly={true}\n overlayAction={() => navigator.clipboard.writeText(value)}\n />\n\n setShown(!shown)}\n label={\"Show/Hide\"}\n />\n \n );\n};\n\nexport default KeyRevealer;\n"],"names":["_ref","modalOpen","onClose","bucket","prefilledRoute","dispatch","useAppDispatch","prefix","setPrefix","useState","selectedAccess","setSelectedAccess","useEffect","_jsx","ModalWrapper","title","titleIcon","AddAccessRuleIcon","children","_jsxs","FormLayout","withBorders","containerPadding","InputBox","value","label","id","name","placeholder","onChange","e","target","tooltip","Select","options","disabled","helpTip","Fragment","helpTipPlacement","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","type","variant","onClick","resetForm","trim","createProcess","api","setAccessRuleWithBucket","access","then","res","setSnackBarMessage","catch","setErrorSnackMessage","errorToHandler","error","extractFileExtn","resourceStr","match","getSessionGrantsWildCard","sessionGrants","uploadPath","scopes","arguments","length","undefined","grantsWithExtension","Object","keys","reduce","acc","grantKey","includes","filter","sessionGrantKey","hasScope","some","actionKey","find","scopeKey","wildCardMatch","indexOf","scopeActionKey","substring","isUploadPathMatching","concat","CreatePathModal","withSuspense","React","BreadcrumbsMain","styled","div","display","paddingRight","alignItems","breakPoints","lg","margin","bucketName","internalPaths","hidePathButton","additionalOptions","navigate","useNavigate","rewindEnabled","useSelector","state","objectBrowser","rewind","versionsMode","versionedFile","anonymousMode","system","createFolderOpen","setCreateFolderOpen","canCreateSubpath","setCanCreateSubpath","putObjectPermScopes","IAM_SCOPES","S3_PUT_OBJECT","S3_PUT_ACTIONS","console","session","permissions","paths","splitPaths","split","path","lastBreadcrumbsIndex","pathToCheckPerms","sessionGrantWildCards","forEach","grant","canCreatePath","hasPermission","breadcrumbsMap","map","objectItem","index","subSplit","slice","join","route","encodeURIComponent","className","style","cursor","whiteSpace","safeDecodeURIComponent","Link","to","setVersionsModeEnabled","status","objectName","toString","versionsItem","listBreadcrumbs","folderName","closeAddFolderModal","limitedSubPath","Breadcrumbs","goBackFunction","prevPath","CopyToClipboard","text","icon","CopyIcon","width","height","fill","marginTop","color","border","marginRight","Box","Tooltip","permissionTooltipHelper","NewPathIcon","marginBottom","justifyContent","fontSize","fontWeight","flexDirection","flexWrap","isVersionedMode","forceDisable","uploadFileFunction","uploadFolderFunction","overrideStyles","anchorEl","setAnchorEl","uploadOptionsOpen","uploadOptionsSetOpen","openUploadMenu","Boolean","handleCloseUpload","uploadObjectAllowed","uploadFolderAllowed","uploadEnabled","TooltipWrapper","event","currentTarget","UploadIcon","DropdownSelector","UploadFolderIcon","selectedOption","onSelect","nValue","hideTriggerAction","open","anchorOrigin","useAnchorWidth","closePanel","borderColor","borderWidth","borderStyle","borderRadius","borderBottomLeftRadius","borderBottomRightRadius","transitionDuration","overflowX","overflowY","position","opacity","marginLeft","minWidth","borderLeftWidth","ClosePanelIcon","right","top","padding","backgroundColor","strings","minHeight","overflow","textOverflow","replaceUnicodeChar","extensionToIcon","FileVideoIcon","extensions","FileMusicIcon","FilePdfIcon","FilePptIcon","FileXlsIcon","FileLockIcon","FileCodeIcon","FileConfigIcon","FileDbIcon","FileFontIcon","FileTxtIcon","FileZipIcon","FileBookIcon","FileImageIcon","displayFileIconName","element","returnOnlyIcon","elementString","FileNonType","endsWith","FolderBrowserIcon","lowercaseElement","toLowerCase","etc","ext","FileMissingIcon","splitItem","IconWithLabel","metaData","metaKeys","renderItem","Array","isArray","itemRendererFn","maxHeight","months","days","from","_","num","currentYear","Date","getFullYear","years","numYear","forwardRef","ref","disableOptions","borderBottom","onDateChange","useImperativeHandle","resetDate","month","setMonth","day","setDay","year","setYear","valueSplit","parseInt","isValid","dateString","validDate","currentDate","parse","isNaN","parsedMonth","parsedDay","monthForString","dayForString","parsedDate","toISOString","isDateDisabled","monthForDropDown","daysForDrop","yearsForDrop","gap","InputLabel","htmlFor","placement","HelpIcon","newValue","closeModalAndRefresh","objectInfo","retentionConfig","statusEnabled","setStatusEnabled","setType","date","setDate","isDateValid","setIsDateValid","isSaving","setIsSaving","alreadyConfigured","setAlreadyConfigured","retention_mode","mode","ObjectRetentionMode","Governance","retention_until_date","valueDate","getMonth","getDate","dateElement","useRef","current","showSwitcher","noValidate","autoComplete","onSubmit","preventDefault","Switch","checked","indicatorLabels","RadioGroup","currentValue","selectorOptions","Compliance","DateSelector","saveNewRetentionPolicy","selectedObject","versionId","version_id","expireDate","addRetention","buckets","putObjectRetention","expires","err","setModalErrorSnackMessage","disableRetention","deleteObjectRetention","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","versioningInfo","selectedVersion","deleteLoading","invokeDeleteApi","useApi","onDelSuccess","detailedError","deleteVersions","setDeleteVersions","bypassGovernance","setBypassGovernance","canBypass","S3_BYPASS_GOVERNANCE_RETENTION","ConfirmDialog","confirmText","isOpen","ConfirmDeleteIcon","isLoading","onConfirm","onConfirmDelete","recursive","confirmationContent","description","actualInfo","legalHoldEnabled","setLegalHoldEnabled","get","putObjectLegalHold","ObjectLegalHoldStatus","Enabled","Disabled","DeleteTag","b","theme","_ref2","_actualInfo$name","onCloseAndUpdate","distributedSetup","selDistSet","newKey","setNewKey","newLabel","setNewLabel","isSending","setIsSending","deleteEnabled","setDeleteEnabled","deleteKey","setDeleteKey","deleteLabel","setDeleteLabel","currentTags","tags","currTagKeys","allPathData","currentItem","pop","tagsFor","plural","iconColor","DisabledIcon","EditTagIcon","container","cancelDelete","deleteTagProcess","cleanObject","verID","putObjectTags","SecureComponent","S3_GET_OBJECT_TAGGING","S3_GET_ACTIONS","resource","flexFlow","tagKey","tag","S3_DELETE_OBJECT_TAGGING","errorProps","deleteIcon","onDelete","Tag","onDeleteTag","S3_PUT_OBJECT_TAGGING","SectionTitle","AddNewTagIcon","separator","addTagProcess","newTag","newTagList","closeInspectModalAndRefresh","inspectOpen","inspectPath","volumeName","isEncrypt","setIsEncrypt","decryptionKey","setDecryptionKey","insFileName","setInsFileName","InspectMenuIcon","async","basename","document","baseURI","replace","window","location","origin","fetch","url","method","makeRequest","ok","resErr","json","errorMessage","message","code","blob","filename","headers","decryptKey","getCookieValue","performDownload","onCloseDecKeyModal","deleteCookie","PasswordKeyIcon","KeyRevealer","closeModal","newFileName","setNewFileName","acceptLongName","setAcceptLongName","EditIcon","downloadObject","doDownload","emptyFile","is_latest","last_modified","legal_hold_status","size","locking","onClosePanel","loadingObjectInfo","shareFileModalOpen","setShareFileModalOpen","retentionModalOpen","setRetentionModalOpen","tagModalOpen","setTagModalOpen","legalholdOpen","setLegalholdOpen","inspectModalOpen","setInspectModalOpen","setActualInfo","allInfoElements","setAllInfoElements","objectToShare","setObjectToShare","versions","setVersions","setDeleteOpen","previewOpen","setPreviewOpen","totalVersionsSize","setTotalVersionsSize","longFileOpen","setLongFileOpen","setMetaData","loadMetadata","setLoadingMetadata","objectNameArray","infoElement","el","is_delete_marker","listObjects","with_versions","result","data","objects","tVersionSize","currValue","resInfo","setLoadingObjectInfo","getObjectMetadata","versionID","metadata","tagKeys","loaderForContainer","textAlign","Loader","objectResources","canSetLegalHold","S3_PUT_OBJECT_LEGAL_HOLD","canSetTags","canChangeRetention","S3_GET_OBJECT_RETENTION","S3_PUT_OBJECT_RETENTION","canInspect","ADMIN_INSPECT_DATA","canChangeVersioning","S3_GET_BUCKET_VERSIONING","S3_PUT_BUCKET_VERSIONING","S3_GET_OBJECT_VERSION","canGetObject","S3_GET_OBJECT","canDelete","S3_DELETE_OBJECT","objectType","previewObjectType","multiActionButtons","action","DownloadIcon","ShareIcon","PreviewIcon","LegalHoldIcon","openRetentionModal","RetentionIcon","TagsIcon","VersionsIcon","ShareFile","closeShareModal","dataObject","SetRetention","updateInfo","DeleteObject","closeAndReload","setLoadingVersions","setSelectedVersion","SetLegalHoldModal","reload","PreviewFileModal","onClosePreview","TagsModal","reloadObjectData","InspectObject","RenameLongFileName","closeFileOpen","textTransform","ActionsList","items","DeleteIcon","iconLocation","fullWidth","SimpleHeader","ObjectInfoIcon","overflowWrap","niceBytes","niceBytesInt","lastModified","currentTime","modifiedTime","difTime","getTime","formatTime","niceDaysInt","calculateLastModifyTime","etag","S3_GET_OBJECT_LEGAL_HOLD","MetadataIcon","ObjectMetaData","versionToRestore","objectPath","restoreOpen","restoreLoading","setRestoreLoading","RecoverIcon","restoreVersion","putObjectRestore","restoreLocalObjectList","confirmButtonProps","bgColor","FileVersionStyled","content","left","borderBottomColor","maxWidth","fileName","versionInfo","isSelected","checkable","isChecked","onCheck","onShare","onDownload","onRestore","onPreview","globalClick","key","disableButtons","versionItemButtons","pill","DateTime","now","fromISO","md","Checkbox","stopPropagation","SpecificVersionPill","button","IconButton","toFormat","setDeleteLoading","typeConfirm","setTypeConfirm","deleteObject","non_current_versions","bypass","selectedVersions","selectedObjectsRequest","deleteMultipleObjects","all_versions","searchVersions","loadingVersions","restoreVersionOpen","setRestoreVersionOpen","setRestoreVersion","sortValue","setSortValue","deleteNonCurrentOpen","setDeleteNonCurrentOpen","selectEnabled","setSelectEnabled","selectedItems","setSelectedItems","delSelectedVOpen","setDelSelectedVOpen","filteredPrefixes","onShareItem","onPreviewItem","onRestoreItem","onDownloadItem","onGlobalClick","filteredRecords","version","totalSpace","sort","a","dateA","dateB","onCheckVersion","filteredItems","cloneState","push","RestoreFileVersion","content_type","DeleteNonCurrent","reloadAfterDelete","DeleteSelectedVersions","reloadOnComplete","ProgressBar","BrowserBreadcrumbs","ScreenTitle","subTitle","actions","SelectMultipleIcon","DeleteNonCurrentIcon","noLabelMinWidth","bottomBorder","flexGrow","List","containerStyle","rowCount","rowHeight","rowRenderer","isScrolling","isVisible","versOrd","FileVersionItem","displayParsedDate","object","currTime","objectTime","hasSame","displayNiceBytes","String","listModeColumns","elementKey","renderFunction","enableSort","renderFullObject","rewindModeColumns","ListObjectsTable","params","useParams","sortDirection","setSortDirection","currentSortField","setCurrentSortField","detailsOpen","objectDetailsOpen","requestInProgress","features","selFeatures","obOnly","records","searchObjects","selectedObjects","connectionError","displayListObjects","S3_LIST_BUCKET","S3_ALL_LIST_BUCKET","sortASC","sortListObjects","payload","reverse","tableActions","_object$name","idElement","newPath","setSelectedObjects","setObjectDetailsView","setSelectedObjectView","sendOnlyId","customPaperHeight","DataTable","itemActions","columns","entityName","idField","targetD","elements","customEmptyMessage","sortEnabled","currentSort","currentDirection","onSortClick","sortData","newSortDirection","sortBy","setReloadObjectsList","onSelectAll","selectAllItems","rowStyle","_payload$index","delete_flag","noBackground","FilterObjectsSB","SearchBox","setSearchObjects","DeleteMultipleObjects","RewindEnable","baseDnDStyle","outline","activeDnDStyle","acceptDnDStyle","ListObjects","_downloadRenameModal$","useLocation","bucketToRewind","showDeleted","selectedInternalPaths","simplePath","versioningConfig","lockingEnabled","downloadRenameModal","selectedPreview","anonymousAccessOpen","_state$objectBrowser","loadingBucket","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","deleteMultipleOpen","setDeleteMultipleOpen","rewindSelect","setRewindSelect","iniLoad","setIniLoad","canShareFile","setCanShareFile","canPreviewFile","setCanPreviewFile","quota","setQuota","isMetaDataLoaded","setIsMetaDataLoaded","isVersioningApplied","pathSegment","pathname","decodeURIComponent","currentPath","i","fileUpload","folderUpload","pathAsResourceInPolicy","allowedFileExtensions","cv","extension","Set","getPolicyAllowedFileExtensions","canDownload","canRewind","canUpload","canSetAnonymousAccess","S3_GET_BUCKET_POLICY","S3_PUT_BUCKET_POLICY","isSelObjectDelMarker","checkForDelMarker","isObjDelMarker","obj","fetchMetadata","useCallback","resetRewind","setAttribute","isPrefix","getBucketQuota","quotaVals","detailedMessage","setBucketDetailsLoad","setBucketInfo","getBucketRetentionConfig","setRetentionConfig","handleUploadButton","files","newFiles","uploadObject","folderPath","pathPrefix","upload","uploadPromise","file","Promise","resolve","reject","uploadUrl","blobFile","Blob","filePath","fileWebkitRelativePath","relativeFolderPath","ID","makeid","prefixPath","finalFolderPath","pathClean","startsWith","identity","Math","random","xhr","XMLHttpRequest","setRequestHeader","areMultipleFiles","errorMessages","withCredentials","onload","completeObject","removeTrace","response","JSON","failObject","instanceID","msg","addEventListener","progress","floor","loaded","total","updateProgress","onerror","onloadend","onabort","cancelObjectInList","formData","FormData","append","storeCallForObjectWithID","setNewObject","done","percentage","waitingForFile","failed","cancelled","storeFormDataWithID","uploadFilePromises","openList","allSettled","results","errors","totalFiles","successUploadedFiles","onDrop","acceptedFiles","newFolderPath","allowedFiles","fileExtn","log","getRootProps","getInputProps","isDragActive","isDragAccept","useDropzone","noClick","dndStyles","useMemo","forceRefresh","splitURLS","URLItem","createdTime","creation_date","downloadToolTip","downloadSelected","openShare","openPreview","openAnonymousAccess","AccessRuleIcon","setSelectedPreview","refresh","versioning","rewindCloseModal","closePreviewWindow","closeRenameModal","setDownloadRenameModal","AddAccessRule","closeAddAccessRule","setAnonymousAccessOpen","PageLayout","paddingBottom","BucketsIcon","Badge","dotOnly","invisible","HistoryIcon","RefreshIcon","resetMessages","multiple","accept","UploadFilesButton","closeMenu","click","borderTop","VersionsNavigator","setDeletedAction","setShowDeletedObjects","DetailsListPanel","ObjectDetailPanel","configureBucketAllowed","S3_GET_BUCKET_ENCRYPTION_CONFIGURATION","S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION","S3_DELETE_BUCKET","S3_GET_BUCKET_NOTIFICATIONS","S3_PUT_BUCKET_NOTIFICATIONS","S3_GET_REPLICATION_CONFIGURATION","S3_PUT_REPLICATION_CONFIGURATION","S3_GET_LIFECYCLE_CONFIGURATION","S3_PUT_LIFECYCLE_CONFIGURATION","ADMIN_GET_BUCKET_QUOTA","ADMIN_SET_BUCKET_QUOTA","S3_PUT_BUCKET_TAGGING","S3_GET_BUCKET_TAGGING","S3_LIST_BUCKET_VERSIONS","S3_GET_BUCKET_POLICY_STATUS","S3_DELETE_BUCKET_POLICY","searchBar","setSearchVersions","setHelpName","AutoColorIcon","ObjectManagerButton","PageHeaderWrapper","BackLink","IAM_PAGES","OBJECT_BROWSER_VIEW","IAM_PERMISSIONS","IAM_ROLES","BUCKET_ADMIN","SettingsIcon","HelpMenu","middleComponent","BrowserHandler","loadingVersioning","rewindDate","dateToRewind","loadingLocking","reloadObjectsList","initWSRequest","rewindMode","pathLoad","forceLoad","searchPath","setRequestInProgress","setLoadingVersioning","setLoadingLocking","getBucketVersioning","setIsVersioned","getBucketObjectLockingStatus","setLockingEnabled","object_locking_enabled","OBHeader","maxSeconds","entity","maxDays","maxHours","maxMinutes","selectedDays","setSelectedDays","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","setValidDate","dateSelected","setDateSelected","calculateNewTime","hours","minutes","plus","toISO","formattedDate","valid","extraStyles","paddingLeft","min","max","LinkIcon","maxShareLinkExpTimeVal","maxShareLinkExpTime","shareURL","setShareURL","isLoadingVersion","setIsLoadingVersion","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","setVersionID","debouncedDateChange","debounce","newDate","getMaxShareLinkExpTime","latestVersion","elem","slDate","currDate","diffDate","ceil","shareObject","niceTimeFromSeconds","DaysSelector","ReadBox","actionButton","setModalSnackMessage","pdfjs","workerSrc","loading","onLoad","downloadFile","errorState","setErrorState","totalPages","setTotalPages","renderPages","arrayCreate","InformativeMessage","Document","onLoadSuccess","_pdfInfo","numPages","onLoadError","Page","pageNumber","renderAnnotationLayer","renderTextLayer","renderForms","isFullscreen","setLoading","iframeLoaded","flex","autoPlay","controls","muted","playsInline","onPlay","src","alt","PreviewPDF","allowTransparency","wideLimit","ObjectPreviewIcon","PreviewFileContent","WrappedComponent","fallback","props","Suspense","openSnackbar","setOpenSnackbar","modalSnackMessage","modalSnackBar","detailedErrorMsg","ModalBox","widthLimit","MainError","isModal","Snackbar","closeSnackBar","autoHideDuration","condensed","createAsyncThunk","getState","rejectWithValue","identityDownload","downloadCall","download","itemsToDownload","filterFunction","getClientOS","multiObjList","dwList","bi","isDeleted","downloadSelectedAsZip","fileObject","findFunction","_ref3","_ref4","_ref5","getMaxShareLinkExp","setMaxShareLinkExpTime","exp","isWinOs","shown","setShown","sm","overlayIcon","readOnly","overlayAction","navigator","clipboard","writeText"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/7945.5cbf1d20.chunk.js","mappings":"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","sources":["screens/Console/Buckets/BucketDetails/AddAccessRule.tsx","screens/Console/Buckets/ListBuckets/UploadPermissionUtils.ts","screens/Console/ObjectBrowser/BrowserBreadcrumbs.tsx","utils/validationFunctions.ts","screens/Console/Buckets/ListBuckets/UploadFilesButton.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DetailsListPanel.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/IconWithLabel.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/utils.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ObjectMetaData.tsx","screens/Console/Common/FormComponents/DateSelector/utils.ts","screens/Console/Common/FormComponents/DateSelector/DateSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetRetention.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteObject.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SetLegalHoldModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/TagsModal.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/InspectObject.tsx","screens/Console/ObjectBrowser/RenameLongFilename.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ObjectDetailPanel.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/RestoreFileVersion.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/SpecificVersionPill.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/FileVersionItem.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/DeleteNonCurrent.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/DeleteSelectedVersions.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/VersionsNavigator.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsHelpers.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjectsTable.tsx","screens/Console/ObjectBrowser/FilterObjectsSB.tsx","screens/Console/Buckets/ListBuckets/Objects/ListObjects/ListObjects.tsx","screens/Console/ObjectBrowser/OBHeader.tsx","screens/Console/Buckets/BucketDetails/BrowserHandler.tsx","screens/Console/Common/FormComponents/DaysSelector/DaysSelector.tsx","screens/Console/Buckets/ListBuckets/Objects/ObjectDetails/ShareFile.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewPDF.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileContent.tsx","screens/Console/Buckets/ListBuckets/Objects/Preview/PreviewFileModal.tsx","screens/Console/Common/Components/withSuspense.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/ObjectBrowser/objectBrowserThunks.ts","screens/Console/ObjectBrowser/utils.ts","screens/Console/Tools/KeyRevealer.tsx"],"sourcesContent":["// 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 ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport {\n AddAccessRuleIcon,\n Button,\n FormLayout,\n Grid,\n InputBox,\n Select,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../Common/FormComponents/common/styleLibrary\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IAddAccessRule {\n modalOpen: boolean;\n onClose: () => any;\n bucket: string;\n prefilledRoute?: string;\n}\n\nconst AddAccessRule = ({\n modalOpen,\n onClose,\n bucket,\n prefilledRoute,\n}: IAddAccessRule) => {\n const dispatch = useAppDispatch();\n\n const [prefix, setPrefix] = useState(\"\");\n const [selectedAccess, setSelectedAccess] = useState(\"readonly\");\n\n useEffect(() => {\n if (prefilledRoute) {\n setPrefix(prefilledRoute);\n }\n }, [prefilledRoute]);\n\n const accessOptions = [\n { label: \"readonly\", value: \"readonly\" },\n { label: \"writeonly\", value: \"writeonly\" },\n { label: \"readwrite\", value: \"readwrite\" },\n ];\n\n const resetForm = () => {\n setPrefix(\"\");\n setSelectedAccess(\"readonly\");\n };\n\n const createProcess = () => {\n api.bucket\n .setAccessRuleWithBucket(bucket, {\n prefix: prefix,\n access: selectedAccess,\n })\n .then((res: any) => {\n dispatch(setSnackBarMessage(\"Access Rule added successfully\"));\n onClose();\n })\n .catch((res) => {\n dispatch(setErrorSnackMessage(errorToHandler(res.error)));\n onClose();\n });\n };\n\n return (\n }\n >\n \n {\n setPrefix(e.target.value);\n }}\n tooltip={\n \"Enter '/' to apply the rule to all prefixes and objects at the bucket root. Do not include the wildcard asterisk '*' as part of the prefix *unless* it is an explicit part of the prefix name. The Console automatically appends an asterisk to the appropriate sections of the resulting IAM policy.\"\n }\n />\n {\n setSelectedAccess(value);\n }}\n label=\"Access\"\n value={selectedAccess}\n options={accessOptions}\n disabled={false}\n helpTip={\n \n Select the desired level of access available to unauthenticated\n Users\n \n }\n helpTipPlacement=\"right\"\n />\n \n \n\n \n \n \n \n );\n};\n\nexport default AddAccessRule;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 extractFileExtn = (resourceStr: string) => {\n //file extensions may contain query string. so exclude query strings !\n return (resourceStr.match(/\\.([^.]*?)(?=\\?|#|$)/) || [])[1];\n};\nexport const getPolicyAllowedFileExtensions = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n scopes,\n );\n\n //get acceptable files if any in the policy.\n const allowedFileExtensions = sessionGrantWildCards.reduce(\n (acc: string[], cv: string) => {\n const extension: string = extractFileExtn(cv);\n if (extension) {\n acc.push(`.${extension}`); //strict extension matching.\n }\n return acc;\n },\n [],\n );\n\n const uniqueExtensions = [...new Set(allowedFileExtensions)];\n return uniqueExtensions.join(\",\");\n};\n\n// The resource should not have the extensions (*.ext) for the hasPermission to work.\n// so sanitize this and also use to extract the allowed extensions outside of permission check.\nexport const getSessionGrantsWildCard = (\n sessionGrants: Record,\n uploadPath: string,\n scopes: string[] = [],\n) => {\n //get only the path matching grants to reduce processing.\n const grantsWithExtension = Object.keys(sessionGrants).reduce(\n (acc: Record, grantKey: string) => {\n if (extractFileExtn(grantKey) && grantKey.includes(uploadPath)) {\n acc[grantKey] = sessionGrants[grantKey];\n }\n return acc;\n },\n {},\n );\n\n const checkPathsForPermission = (sessionGrantKey: string) => {\n const grantActions = grantsWithExtension[sessionGrantKey];\n const hasScope = grantActions.some((actionKey) =>\n scopes.find((scopeKey) => {\n let wildCardMatch = false;\n const hasWildCard = scopeKey.indexOf(\"*\") !== -1;\n if (hasWildCard) {\n const scopeActionKey = scopeKey.substring(0, scopeKey.length - 1);\n\n wildCardMatch = actionKey.includes(scopeActionKey);\n }\n\n return wildCardMatch || actionKey === scopeKey;\n }),\n );\n\n const sessionGrantKeyPath = sessionGrantKey.substring(\n 0,\n sessionGrantKey.indexOf(\"/*.\"), //start of extension part.\n );\n const isUploadPathMatching =\n sessionGrantKeyPath === `arn:aws:s3:::${uploadPath}`;\n\n const hasGrant =\n isUploadPathMatching && sessionGrantKey !== \"arn:aws:s3:::*\";\n\n return hasScope && hasGrant;\n };\n\n return Object.keys(grantsWithExtension).filter(checkPathsForPermission);\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useSelector } from \"react-redux\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport styled from \"styled-components\";\nimport { Link, useNavigate } from \"react-router-dom\";\nimport { safeDecodeURIComponent } from \"../../../common/utils\";\nimport {\n Button,\n CopyIcon,\n NewPathIcon,\n Tooltip,\n Breadcrumbs,\n breakPoints,\n Box,\n} from \"mds\";\nimport { hasPermission } from \"../../../common/SecureComponent\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../common/SecureComponent/permissions\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setVersionsModeEnabled } from \"./objectBrowserSlice\";\nimport { getSessionGrantsWildCard } from \"../Buckets/ListBuckets/UploadPermissionUtils\";\n\nconst CreatePathModal = withSuspense(\n React.lazy(\n () => import(\"../Buckets/ListBuckets/Objects/ListObjects/CreatePathModal\"),\n ),\n);\n\nconst BreadcrumbsMain = styled.div(() => ({\n display: \"flex\",\n \"& .additionalOptions\": {\n paddingRight: \"10px\",\n display: \"flex\",\n alignItems: \"center\",\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n display: \"none\",\n },\n },\n \"& .slashSpacingStyle\": {\n margin: \"0 5px\",\n },\n}));\n\ninterface IObjectBrowser {\n bucketName: string;\n internalPaths: string;\n hidePathButton?: boolean;\n additionalOptions?: React.ReactNode;\n}\n\nconst BrowserBreadcrumbs = ({\n bucketName,\n internalPaths,\n hidePathButton,\n additionalOptions,\n}: IObjectBrowser) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const [createFolderOpen, setCreateFolderOpen] = useState(false);\n const [canCreateSubpath, setCanCreateSubpath] = useState(false);\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n let paths = internalPaths;\n\n if (internalPaths !== \"\") {\n paths = `/${internalPaths}`;\n }\n\n const splitPaths = paths.split(\"/\").filter((path) => path !== \"\");\n const lastBreadcrumbsIndex = splitPaths.length - 1;\n\n const pathToCheckPerms = bucketName + paths || bucketName;\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathToCheckPerms,\n putObjectPermScopes,\n );\n\n useEffect(() => {\n setCanCreateSubpath(false);\n Object.keys(sessionGrants).forEach((grant) => {\n grant.includes(pathToCheckPerms) &&\n grant.includes(\"/*\") &&\n setCanCreateSubpath(true);\n });\n }, [pathToCheckPerms, internalPaths, sessionGrants]);\n\n const canCreatePath =\n hasPermission(\n [pathToCheckPerms, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) ||\n anonymousMode ||\n canCreateSubpath;\n\n let breadcrumbsMap = splitPaths.map((objectItem: string, index: number) => {\n const subSplit = `${splitPaths.slice(0, index + 1).join(\"/\")}/`;\n const route = `/browser/${encodeURIComponent(bucketName)}/${\n subSplit ? `${encodeURIComponent(subSplit)}` : ``\n }`;\n\n if (index === lastBreadcrumbsIndex && objectItem === versionedFile) {\n return null;\n }\n\n return (\n \n /\n {index === lastBreadcrumbsIndex ? (\n \n {safeDecodeURIComponent(objectItem) /*Only for display*/}\n \n ) : (\n {\n dispatch(\n setVersionsModeEnabled({ status: false, objectName: \"\" }),\n );\n }}\n >\n {\n safeDecodeURIComponent(\n objectItem,\n ) /*Only for display to preserve */\n }\n \n )}\n \n );\n });\n\n let versionsItem: any[] = [];\n\n if (versionsMode) {\n versionsItem = [\n \n \n /\n {versionedFile} - Versions\n \n ,\n ];\n }\n\n const listBreadcrumbs: any[] = [\n \n {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n }}\n >\n {bucketName}\n \n ,\n ...breadcrumbsMap,\n ...versionsItem,\n ];\n\n const closeAddFolderModal = () => {\n setCreateFolderOpen(false);\n };\n\n const goBackFunction = () => {\n if (versionsMode) {\n dispatch(setVersionsModeEnabled({ status: false, objectName: \"\" }));\n } else {\n if (splitPaths.length === 0) {\n navigate(\"/browser\");\n\n return;\n }\n\n const prevPath = splitPaths.slice(0, -1);\n\n navigate(\n `/browser/${bucketName}${\n prevPath.length > 0\n ? `/${encodeURIComponent(`${prevPath.join(\"/\")}/`)}`\n : \"\"\n }`,\n );\n }\n };\n\n return (\n \n \n {createFolderOpen && (\n \n )}\n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n dispatch(setSnackBarMessage(\"Path copied to clipboard\"));\n }}\n style={{\n width: \"28px\",\n height: \"28px\",\n color: \"#969FA8\",\n border: \"#969FA8 1px solid\",\n marginRight: 5,\n }}\n />\n \n {additionalOptions}\n \n }\n >\n {listBreadcrumbs}\n \n {!hidePathButton && (\n \n {\n setCreateFolderOpen(true);\n }}\n disabled={anonymousMode ? false : rewindEnabled || !canCreatePath}\n icon={}\n style={{\n whiteSpace: \"nowrap\",\n }}\n variant={\"regular\"}\n label={\"Create new path\"}\n />\n \n )}\n \n div\": {\n fontSize: 12,\n fontWeight: \"normal\",\n flexDirection: \"row\",\n flexWrap: \"nowrap\",\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n display: \"flex\",\n },\n }}\n >\n {additionalOptions}\n \n \n );\n};\n\nexport default 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\nexport const isVersionedMode = (status: string | undefined) => {\n return status === \"Enabled\" || status === \"Suspended\";\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { CSSObject } from \"styled-components\";\nimport { Button, DropdownSelector, UploadFolderIcon, UploadIcon } from \"mds\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../common/SecureComponent\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { useSelector } from \"react-redux\";\nimport { AppState } from \"../../../../store\";\nimport { getSessionGrantsWildCard } from \"./UploadPermissionUtils\";\n\ninterface IUploadFilesButton {\n uploadPath: string;\n bucketName: string;\n forceDisable?: boolean;\n uploadFileFunction: (closeFunction: () => void) => void;\n uploadFolderFunction: (closeFunction: () => void) => void;\n overrideStyles?: CSSObject;\n}\n\nconst UploadFilesButton = ({\n uploadPath,\n bucketName,\n forceDisable = false,\n uploadFileFunction,\n uploadFolderFunction,\n overrideStyles = {},\n}: IUploadFilesButton) => {\n const [anchorEl, setAnchorEl] = useState(null);\n const [uploadOptionsOpen, uploadOptionsSetOpen] = useState(false);\n\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n uploadPath,\n putObjectPermScopes,\n );\n\n const openUploadMenu = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n uploadOptionsSetOpen(!uploadOptionsOpen);\n setAnchorEl(event.currentTarget);\n };\n const handleCloseUpload = () => {\n setAnchorEl(null);\n };\n\n const uploadObjectAllowed =\n hasPermission(\n [uploadPath, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const uploadFolderAllowed = hasPermission(\n [bucketName, ...sessionGrantWildCards],\n putObjectPermScopes,\n false,\n true,\n );\n\n const uploadFolderAction = (action: string) => {\n if (action === \"folder\") {\n uploadFolderFunction(handleCloseUpload);\n return;\n }\n\n uploadFileFunction(handleCloseUpload);\n };\n\n const uploadEnabled: boolean = uploadObjectAllowed || uploadFolderAllowed;\n\n return (\n \n \n }\n variant={\"callAction\"}\n disabled={forceDisable || !uploadEnabled}\n sx={overrideStyles}\n />\n \n ,\n value: \"file\",\n disabled: !uploadObjectAllowed || forceDisable,\n },\n {\n label: \"Upload Folder\",\n icon: ,\n value: \"folder\",\n disabled: !uploadFolderAllowed || forceDisable,\n },\n ]}\n selectedOption={\"\"}\n onSelect={(nValue) => uploadFolderAction(nValue)}\n hideTriggerAction={() => {\n uploadOptionsSetOpen(false);\n }}\n open={uploadOptionsOpen}\n anchorEl={anchorEl}\n anchorOrigin={\"end\"}\n useAnchorWidth\n />\n \n );\n};\n\nexport default UploadFilesButton;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, Button, ClosePanelIcon } from \"mds\";\n\ninterface IDetailsListPanel {\n open: boolean;\n className?: string;\n closePanel: () => void;\n children: React.ReactNode;\n}\n\nconst DetailsListPanel = ({\n open,\n closePanel,\n className = \"\",\n children,\n}: IDetailsListPanel) => {\n return (\n \n }\n sx={{\n position: \"absolute\",\n right: 5,\n top: 18,\n padding: 0,\n height: 14,\n \"&:hover:not(:disabled)\": {\n backgroundColor: \"transparent\",\n },\n }}\n />\n {children}\n \n );\n};\n\nexport default DetailsListPanel;\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\nimport React from \"react\";\nimport { Box } from \"mds\";\nimport { replaceUnicodeChar } from \"../../../../../../common/utils\";\n\ninterface IIconWithLabel {\n icon: React.ReactNode;\n strings: string[];\n}\n\nconst IconWithLabel = ({ icon, strings }: IIconWithLabel) => {\n return (\n \n {icon}\n \n {replaceUnicodeChar(strings[strings.length - 1])}\n \n \n );\n};\n\nexport default IconWithLabel;\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\";\n\nimport {\n FileBookIcon,\n FileCodeIcon,\n FileConfigIcon,\n FileDbIcon,\n FileFontIcon,\n FileImageIcon,\n FileLockIcon,\n FileMissingIcon,\n FileMusicIcon,\n FileNonType,\n FilePdfIcon,\n FilePptIcon,\n FileTxtIcon,\n FileVideoIcon,\n FileXlsIcon,\n FileZipIcon,\n FolderBrowserIcon,\n} from \"mds\";\nimport IconWithLabel from \"./IconWithLabel\";\n\ninterface IExtToIcon {\n icon: any;\n extensions: string[];\n}\n\nconst extensionToIcon: IExtToIcon[] = [\n {\n icon: ,\n extensions: [\"mp4\", \"mov\", \"avi\", \"mpeg\", \"mpg\"],\n },\n {\n icon: ,\n extensions: [\"mp3\", \"m4a\", \"aac\"],\n },\n {\n icon: ,\n extensions: [\"pdf\"],\n },\n {\n icon: ,\n extensions: [\"ppt\", \"pptx\"],\n },\n {\n icon: ,\n extensions: [\"xls\", \"xlsx\"],\n },\n {\n icon: ,\n extensions: [\"cer\", \"crt\", \"pem\"],\n },\n {\n icon: ,\n extensions: [\"html\", \"xml\", \"css\", \"py\", \"go\", \"php\", \"cpp\", \"h\", \"java\"],\n },\n {\n icon: ,\n extensions: [\"cfg\", \"yaml\"],\n },\n {\n icon: ,\n extensions: [\"sql\"],\n },\n {\n icon: ,\n extensions: [\"ttf\", \"otf\"],\n },\n {\n icon: ,\n extensions: [\"doc\", \"docx\", \"txt\", \"rtf\"],\n },\n {\n icon: ,\n extensions: [\"zip\", \"rar\", \"tar\", \"gz\"],\n },\n {\n icon: ,\n extensions: [\"epub\", \"mobi\", \"azw\", \"azw3\"],\n },\n {\n icon: ,\n extensions: [\"jpeg\", \"jpg\", \"gif\", \"tiff\", \"png\", \"heic\", \"dng\"],\n },\n];\n\nexport const displayFileIconName = (\n element: string,\n returnOnlyIcon: boolean = false,\n) => {\n let elementString = element;\n let icon = ;\n // Element is a folder\n if (element.endsWith(\"/\")) {\n icon = ;\n elementString = element.slice(0, -1);\n }\n\n const lowercaseElement = element.toLowerCase();\n for (const etc of extensionToIcon) {\n for (const ext of etc.extensions) {\n if (lowercaseElement.endsWith(`.${ext}`)) {\n icon = etc.icon;\n }\n }\n }\n\n if (!element.endsWith(\"/\") && element.indexOf(\".\") < 0) {\n icon = ;\n }\n\n const splitItem = elementString.split(\"/\");\n\n if (returnOnlyIcon) {\n return icon;\n }\n\n return ;\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box } from \"mds\";\nimport { safeDecodeURIComponent } from \"../../../../../../common/utils\";\n\ninterface IObjectMetadata {\n metaData: any;\n}\n\nconst itemRendererFn = (element: any) => {\n return Array.isArray(element)\n ? element.map(safeDecodeURIComponent).join(\", \")\n : safeDecodeURIComponent(element);\n};\n\nconst ObjectMetaData = ({ metaData }: IObjectMetadata) => {\n const metaKeys = Object.keys(metaData);\n\n return (\n \n {metaKeys.map((element: string, index: number) => {\n const renderItem = itemRendererFn(metaData[element]);\n return (\n \n {element}\n
\n {renderItem}\n \n );\n })}\n
\n );\n};\n\nexport default ObjectMetaData;\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 months = [\n { value: \"01\", label: \"January\" },\n { value: \"02\", label: \"February\" },\n { value: \"03\", label: \"March\" },\n { value: \"04\", label: \"April\" },\n { value: \"05\", label: \"May\" },\n { value: \"06\", label: \"June\" },\n { value: \"07\", label: \"July\" },\n { value: \"08\", label: \"August\" },\n { value: \"09\", label: \"September\" },\n { value: \"10\", label: \"October\" },\n { value: \"11\", label: \"November\" },\n { value: \"12\", label: \"December\" },\n];\n\nexport const days = Array.from(Array(31), (_, num) => ({\n value: (num + 1).toString(),\n label: (num + 1).toString(),\n}));\n\nconst currentYear = new Date().getFullYear();\n\nexport const years = Array.from(Array(50), (_, numYear) => ({\n value: (numYear + currentYear).toString(),\n label: (numYear + currentYear).toString(),\n}));\n\nexport const validDate = (year: string, month: string, day: string): any[] => {\n const currentDate = Date.parse(`${year}-${month}-${day}`);\n\n if (isNaN(currentDate)) {\n return [false, \"\"];\n }\n\n const parsedMonth = parseInt(month);\n const parsedDay = parseInt(day);\n\n const monthForString = parsedMonth < 10 ? `0${parsedMonth}` : parsedMonth;\n const dayForString = parsedDay < 10 ? `0${parsedDay}` : parsedDay;\n\n const parsedDate = new Date(currentDate).toISOString().split(\"T\")[0];\n const dateString = `${year}-${monthForString}-${dayForString}`;\n\n return [parsedDate === dateString, dateString];\n};\n\n// twoDigitDate gets a two digit string number used for months or days\n// returns \"NaN\" if number is NaN\nexport const twoDigitDate = (num: number): string => {\n return num < 10 ? `0${num}` : `${num}`;\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, {\n forwardRef,\n useEffect,\n useImperativeHandle,\n useState,\n} from \"react\";\nimport { Box, HelpIcon, InputLabel, Select, Tooltip } from \"mds\";\nimport { days, months, validDate, years } from \"./utils\";\n\ninterface IDateSelectorProps {\n id: string;\n label: string;\n disableOptions?: boolean;\n tooltip?: string;\n borderBottom?: boolean;\n value?: string;\n onDateChange: (date: string, isValid: boolean) => any;\n}\n\nconst DateSelector = forwardRef(\n (\n {\n id,\n label,\n disableOptions = false,\n tooltip = \"\",\n borderBottom = false,\n onDateChange,\n value = \"\",\n }: IDateSelectorProps,\n ref: any,\n ) => {\n useImperativeHandle(ref, () => ({ resetDate }));\n\n const [month, setMonth] = useState(\"\");\n const [day, setDay] = useState(\"\");\n const [year, setYear] = useState(\"\");\n\n useEffect(() => {\n // verify if there is a current value\n // assume is in the format \"2021-12-30\"\n if (value !== \"\") {\n const valueSplit = value.split(\"-\");\n\n setYear(valueSplit[0]);\n setMonth(valueSplit[1]);\n // Turn to single digit to be displayed on dropdown buttons\n setDay(`${parseInt(valueSplit[2])}`);\n }\n }, [value]);\n\n useEffect(() => {\n const [isValid, dateString] = validDate(year, month, day);\n onDateChange(dateString, isValid);\n }, [month, day, year, onDateChange]);\n\n const resetDate = () => {\n setMonth(\"\");\n setDay(\"\");\n setYear(\"\");\n };\n\n const isDateDisabled = () => {\n if (disableOptions) {\n return disableOptions;\n } else {\n return false;\n }\n };\n\n const monthForDropDown = [{ value: \"\", label: \"\" }, ...months];\n const daysForDrop = [{ value: \"\", label: \"\" }, ...days];\n const yearsForDrop = [{ value: \"\", label: \"\" }, ...years];\n\n return (\n \n \n \n {label}\n {tooltip !== \"\" && (\n \n \n \n \n \n \n \n )}\n \n \n \n {\n setMonth(newValue);\n }}\n options={monthForDropDown}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setDay(newValue);\n }}\n options={daysForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n />\n\n {\n setYear(newValue);\n }}\n options={yearsForDrop}\n label={\"\"}\n disabled={isDateDisabled()}\n sx={{\n marginBottom: 12,\n }}\n />\n \n \n );\n },\n);\n\nexport default DateSelector;\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 { Box, Button, FormLayout, Grid, RadioGroup, Switch } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { BucketObject, ObjectRetentionMode } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { twoDigitDate } from \"../../../../Common/FormComponents/DateSelector/utils\";\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DateSelector from \"../../../../Common/FormComponents/DateSelector/DateSelector\";\n\ninterface ISetRetentionProps {\n open: boolean;\n closeModalAndRefresh: (updateInfo: boolean) => void;\n objectName: string;\n bucketName: string;\n objectInfo: BucketObject;\n}\n\ninterface IRefObject {\n resetDate: () => void;\n}\n\nconst SetRetention = ({\n open,\n closeModalAndRefresh,\n objectName,\n objectInfo,\n bucketName,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\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(retentionConfig?.mode || ObjectRetentionMode.Governance);\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, retentionConfig?.mode]);\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(ObjectRetentionMode.Governance);\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.buckets\n .putObjectRetention(\n bucketName,\n {\n prefix: selectedObject,\n version_id: versionId || \"\",\n },\n {\n expires: expireDate,\n mode: type as ObjectRetentionMode,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const disableRetention = (\n selectedObject: string,\n versionId: string | null,\n ) => {\n api.buckets\n .deleteObjectRetention(bucketName, {\n prefix: selectedObject,\n version_id: versionId || \"\",\n })\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSaving(false);\n });\n };\n\n const saveNewRetentionPolicy = () => {\n setIsSaving(true);\n const selectedObject = objectInfo.name || \"\";\n const versionId = objectInfo.version_id || null;\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 onSubmit(e);\n }}\n >\n \n \n Selected Object: {objectName}\n \n {showSwitcher && (\n ) => {\n setStatusEnabled(!statusEnabled);\n }}\n label={\"Status\"}\n indicatorLabels={[\"Enabled\", \"Disabled\"]}\n />\n )}\n {\n setType(e.target.value as ObjectRetentionMode);\n }}\n selectorOptions={[\n { label: \"Governance\", value: ObjectRetentionMode.Governance },\n { label: \"Compliance\", value: ObjectRetentionMode.Compliance },\n ]}\n />\n {\n setIsDateValid(isValid);\n if (isValid) {\n setDate(date);\n }\n }}\n />\n \n \n \n \n \n \n \n );\n};\n\nexport default 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, { Fragment, useState } from \"react\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport useApi from \"../../../../Common/Hooks/useApi\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport { BucketVersioningResponse } from \"api/consoleApi\";\n\ninterface IDeleteObjectProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n\n versioningInfo: BucketVersioningResponse | undefined;\n selectedVersion?: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n versioningInfo,\n selectedVersion = \"\",\n}: IDeleteObjectProps) => {\n const dispatch = useAppDispatch();\n const onDelSuccess = () => closeDeleteModalAndRefresh(true);\n const onDelError = (err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n\n // We close the modal box on access denied.\n if (err.detailedError === \"Access Denied.\") {\n closeDeleteModalAndRefresh(true);\n }\n };\n const onClose = () => closeDeleteModalAndRefresh(false);\n\n const [deleteLoading, invokeDeleteApi] = useApi(onDelSuccess, onDelError);\n const [deleteVersions, setDeleteVersions] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n const recursive = selectedObject.endsWith(\"/\");\n invokeDeleteApi(\n \"DELETE\",\n `/api/v1/buckets/${encodeURIComponent(selectedBucket)}/objects?prefix=${encodeURIComponent(selectedObject)}${\n selectedVersion !== \"\"\n ? `&version_id=${encodeURIComponent(selectedVersion)}`\n : `&recursive=${recursive}&all_versions=${deleteVersions}`\n }${bypassGovernance ? \"&bypass=true\" : \"\"}`,\n );\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete:
\n {selectedObject}{\" \"}\n {selectedVersion !== \"\" ? (\n \n
\n
\n Version ID:\n
\n {selectedVersion}\n
\n ) : (\n \"\"\n )}\n ?
\n
\n {isVersionedMode(versioningInfo?.status) &&\n selectedVersion === \"\" && (\n \n {\n setDeleteVersions(!deleteVersions);\n }}\n description=\"\"\n />\n \n )}\n {canBypass && (deleteVersions || selectedVersion !== \"\") && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n {deleteVersions && (\n \n \n This will remove the object as well as all of its versions,{\" \"}\n
\n This action is irreversible.\n \n
\n Are you sure you want to continue?\n
\n )}\n
\n }\n />\n );\n};\n\nexport default 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, { useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { Box, Button, FormLayout, Grid, Switch } from \"mds\";\nimport { BucketObject, ObjectLegalHoldStatus } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { setModalErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\n\ninterface ISetRetentionProps {\n open: boolean;\n closeModalAndRefresh: (reload: boolean) => void;\n objectName: string;\n bucketName: string;\n actualInfo: BucketObject;\n}\n\nconst SetLegalHoldModal = ({\n open,\n closeModalAndRefresh,\n objectName,\n bucketName,\n actualInfo,\n}: ISetRetentionProps) => {\n const dispatch = useAppDispatch();\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.buckets\n .putObjectLegalHold(\n bucketName,\n {\n prefix: objectName,\n version_id: versionId || \"\",\n },\n {\n status: legalHoldEnabled\n ? ObjectLegalHoldStatus.Enabled\n : ObjectLegalHoldStatus.Disabled,\n },\n )\n .then(() => {\n setIsSaving(false);\n closeModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.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 onSubmit(e);\n }}\n >\n \n \n Object: {bucketName + \"/\" + objectName}\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 \n \n \n \n );\n};\n\nexport default SetLegalHoldModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 get from \"lodash/get\";\nimport styled from \"styled-components\";\nimport {\n AddNewTagIcon,\n Button,\n DisabledIcon,\n EditTagIcon,\n InputBox,\n SectionTitle,\n Box,\n Grid,\n Tag,\n FormLayout,\n} from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { useSelector } from \"react-redux\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../../../../common/SecureComponent\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\n\ninterface ITagModal {\n modalOpen: boolean;\n bucketName: string;\n actualInfo: BucketObject;\n onCloseAndUpdate: (refresh: boolean) => void;\n}\n\nconst DeleteTag = styled.b(({ theme }) => ({\n color: get(theme, \"signalColors.danger\", \"#C83B51\"),\n marginLeft: 5,\n}));\n\nconst AddTagModal = ({\n modalOpen,\n onCloseAndUpdate,\n bucketName,\n actualInfo,\n}: ITagModal) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const [newKey, setNewKey] = useState(\"\");\n const [newLabel, setNewLabel] = useState(\"\");\n const [isSending, setIsSending] = useState(false);\n const [deleteEnabled, setDeleteEnabled] = useState(false);\n const [deleteKey, setDeleteKey] = useState(\"\");\n const [deleteLabel, setDeleteLabel] = useState(\"\");\n\n const currentTags = actualInfo.tags;\n const currTagKeys = Object.keys(currentTags || {});\n\n const allPathData = actualInfo.name?.split(\"/\");\n const currentItem = allPathData?.pop() || \"\";\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 const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: actualInfo.name || \"\", version_id: verID },\n { tags: newTagList },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const deleteTagProcess = () => {\n const cleanObject: any = { ...currentTags };\n delete cleanObject[deleteKey];\n\n const verID = distributedSetup ? actualInfo.version_id || \"\" : \"null\";\n\n api.buckets\n .putObjectTags(\n bucketName,\n { prefix: actualInfo.name || \"\", version_id: verID },\n { tags: cleanObject },\n )\n .then(() => {\n onCloseAndUpdate(true);\n setIsSending(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setIsSending(false);\n });\n };\n\n const onDeleteTag = (tagKey: string, tag: string) => {\n setDeleteKey(tagKey);\n setDeleteLabel(tag);\n setDeleteEnabled(true);\n };\n\n const cancelDelete = () => {\n setDeleteKey(\"\");\n setDeleteLabel(\"\");\n setDeleteEnabled(false);\n };\n\n const tagsFor = (plural: boolean) => (\n \n Tag{plural ? \"s\" : \"\"} for: {currentItem}\n \n );\n\n return (\n \n {\n onCloseAndUpdate(true);\n }}\n iconColor={deleteEnabled ? \"delete\" : \"default\"}\n titleIcon={deleteEnabled ? : }\n >\n {deleteEnabled ? (\n \n \n {tagsFor(false)}\n Are you sure you want to delete the tag{\" \"}\n \n {deleteKey} : {deleteLabel}\n {\" \"}\n ?\n \n \n \n \n \n \n ) : (\n \n \n \n {tagsFor(true)}\n \n Current Tags:\n
\n {currTagKeys.length === 0 ? (\n \n There are no tags for this object\n \n ) : (\n \n )}\n \n {currTagKeys.map((tagKey: string, index: number) => {\n const tag = get(currentTags, `${tagKey}`, \"\");\n if (tag !== \"\") {\n return (\n \n {\n onDeleteTag(tagKey, tag);\n }}\n />\n \n );\n }\n return null;\n })}\n \n
\n \n \n \n \n } separator={false}>\n Add New Tag\n \n \n {\n setNewKey(e.target.value);\n }}\n />\n {\n setNewLabel(e.target.value);\n }}\n />\n \n \n \n \n \n \n \n \n )}\n \n
\n );\n};\n\nexport default AddTagModal;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n Button,\n InspectMenuIcon,\n PasswordKeyIcon,\n Switch,\n Grid,\n Box,\n} from \"mds\";\nimport {\n deleteCookie,\n getCookieValue,\n performDownload,\n} from \"../../../../../../common/utils\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport { modalStyleUtils } from \"../../../../Common/FormComponents/common/styleLibrary\";\nimport KeyRevealer from \"../../../../Tools/KeyRevealer\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\n\ninterface IInspectObjectProps {\n closeInspectModalAndRefresh: (refresh: boolean) => void;\n inspectOpen: boolean;\n inspectPath: string;\n volumeName: string;\n}\n\nconst InspectObject = ({\n closeInspectModalAndRefresh,\n inspectOpen,\n inspectPath,\n volumeName,\n}: IInspectObjectProps) => {\n const dispatch = useAppDispatch();\n const onClose = () => closeInspectModalAndRefresh(false);\n const [isEncrypt, setIsEncrypt] = useState(true);\n const [decryptionKey, setDecryptionKey] = useState(\"\");\n const [insFileName, setInsFileName] = useState(\"\");\n\n if (!inspectPath) {\n return null;\n }\n const makeRequest = async (url: string) => {\n return await fetch(url, { method: \"GET\" });\n };\n\n const performInspect = async () => {\n let basename = document.baseURI.replace(window.location.origin, \"\");\n const urlOfInspectApi = `${window.location.origin}${basename}/api/v1/admin/inspect?volume=${encodeURIComponent(volumeName)}&file=${encodeURIComponent(inspectPath + \"/xl.meta\")}&encrypt=${isEncrypt}`;\n\n makeRequest(urlOfInspectApi)\n .then(async (res) => {\n if (!res.ok) {\n const resErr: any = await res.json();\n\n dispatch(\n setErrorSnackMessage({\n errorMessage: resErr.message,\n detailedError: resErr.code,\n }),\n );\n }\n const blob: Blob = await res.blob();\n\n //@ts-ignore\n const filename = res.headers.get(\"content-disposition\").split('\"')[1];\n const decryptKey = getCookieValue(filename) || \"\";\n\n performDownload(blob, filename);\n setInsFileName(filename);\n if (decryptKey === \"\") {\n onClose();\n return;\n }\n setDecryptionKey(decryptKey);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(err));\n });\n };\n\n const onCloseDecKeyModal = () => {\n deleteCookie(insFileName);\n onClose();\n setDecryptionKey(\"\");\n };\n\n const onSubmit = (e: React.FormEvent) => {\n e.preventDefault();\n };\n\n return (\n \n {!decryptionKey && (\n }\n title={`Inspect Object`}\n onClose={onClose}\n >\n ) => {\n onSubmit(e);\n }}\n >\n Would you like to encrypt {inspectPath}?
\n {\n setIsEncrypt(!isEncrypt);\n }}\n description=\"\"\n />\n \n \n \n \n \n )}\n {decryptionKey ? (\n }\n >\n \n This will be displayed only once. It cannot be recovered.\n
\n Use secure medium to share this key.\n
\n \n \n \n \n ) : null}\n
\n );\n};\n\nexport default InspectObject;\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 { Button, EditIcon, FormLayout, Grid, InputBox, Switch } from \"mds\";\nimport { modalStyleUtils } from \"../Common/FormComponents/common/styleLibrary\";\nimport { useAppDispatch } from \"../../../store\";\nimport { downloadObject } from \"./utils\";\nimport { BucketObject } from \"api/consoleApi\";\nimport ModalWrapper from \"../Common/ModalWrapper/ModalWrapper\";\n\ninterface IRenameLongFilename {\n open: boolean;\n bucketName: string;\n internalPaths: string;\n currentItem: string;\n actualInfo: BucketObject;\n closeModal: () => void;\n}\n\nconst RenameLongFileName = ({\n open,\n closeModal,\n currentItem,\n internalPaths,\n actualInfo,\n bucketName,\n}: IRenameLongFilename) => {\n const dispatch = useAppDispatch();\n\n const [newFileName, setNewFileName] = useState(currentItem);\n const [acceptLongName, setAcceptLongName] = useState(false);\n\n const doDownload = (e: React.FormEvent) => {\n e.preventDefault();\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n closeModal();\n };\n\n return (\n }\n >\n

\n The file you are trying to download has a long name.\n
\n This can cause issues on Windows Systems by trimming the file name after\n download.\n
\n
We recommend to rename the file download\n
\n ) => {\n doDownload(e);\n }}\n >\n \n ) => {\n setNewFileName(event.target.value);\n }}\n label=\"\"\n type={\"text\"}\n value={newFileName}\n error={\n newFileName.length > 200 && !acceptLongName\n ? \"Filename should be less than 200 characters long.\"\n : \"\"\n }\n />\n ) => {\n setAcceptLongName(event.target.checked);\n if (event.target.checked) {\n setNewFileName(currentItem);\n }\n }}\n label={\"Use Original Name\"}\n />\n \n 200 && !acceptLongName}\n label={\"Download File\"}\n />\n \n \n \n \n );\n};\n\nexport default RenameLongFileName;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useSelector } from \"react-redux\";\nimport {\n ActionsList,\n Box,\n Button,\n DeleteIcon,\n DownloadIcon,\n Grid,\n InspectMenuIcon,\n LegalHoldIcon,\n Loader,\n MetadataIcon,\n ObjectInfoIcon,\n PreviewIcon,\n RetentionIcon,\n ShareIcon,\n SimpleHeader,\n TagsIcon,\n VersionsIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject, BucketVersioningResponse } from \"api/consoleApi\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport {\n niceBytes,\n niceBytesInt,\n niceDaysInt,\n} from \"../../../../../../common/utils\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport { selDistSet } from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n setVersionsModeEnabled,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { displayFileIconName } from \"./utils\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport ObjectMetaData from \"../ObjectDetails/ObjectMetaData\";\nimport ShareFile from \"../ObjectDetails/ShareFile\";\nimport SetRetention from \"../ObjectDetails/SetRetention\";\nimport DeleteObject from \"../ListObjects/DeleteObject\";\nimport SetLegalHoldModal from \"../ObjectDetails/SetLegalHoldModal\";\nimport TagsModal from \"../ObjectDetails/TagsModal\";\nimport InspectObject from \"./InspectObject\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\n\nconst emptyFile: BucketObject = {\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: undefined,\n};\n\ninterface IObjectDetailPanelProps {\n internalPaths: string;\n bucketName: string;\n versioningInfo: BucketVersioningResponse;\n locking: boolean | undefined;\n onClosePanel: (hardRefresh: boolean) => void;\n}\n\nconst ObjectDetailPanel = ({\n internalPaths,\n bucketName,\n versioningInfo,\n locking,\n onClosePanel,\n}: IObjectDetailPanelProps) => {\n const dispatch = useAppDispatch();\n\n const distributedSetup = useSelector(selDistSet);\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n const loadingObjectInfo = useSelector(\n (state: AppState) => state.objectBrowser.loadingObjectInfo,\n );\n\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [retentionModalOpen, setRetentionModalOpen] = useState(false);\n const [tagModalOpen, setTagModalOpen] = useState(false);\n const [legalholdOpen, setLegalholdOpen] = useState(false);\n const [inspectModalOpen, setInspectModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [allInfoElements, setAllInfoElements] = useState([]);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [deleteOpen, setDeleteOpen] = useState(false);\n const [previewOpen, setPreviewOpen] = useState(false);\n const [totalVersionsSize, setTotalVersionsSize] = useState(0);\n const [longFileOpen, setLongFileOpen] = useState(false);\n const [metaData, setMetaData] = useState(null);\n const [loadMetadata, setLoadingMetadata] = useState(false);\n\n const internalPathsDecoded = internalPaths || \"\";\n const allPathData = internalPathsDecoded.split(\"/\");\n const currentItem = allPathData.pop() || \"\";\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (distributedSetup && allInfoElements && allInfoElements.length >= 1) {\n let infoElement =\n allInfoElements.find((el: BucketObject) => el.is_latest) || emptyFile;\n\n if (selectedVersion !== \"\") {\n infoElement =\n allInfoElements.find(\n (el: BucketObject) => el.version_id === selectedVersion,\n ) || emptyFile;\n }\n\n if (!infoElement.is_delete_marker) {\n setLoadingMetadata(true);\n }\n\n setActualInfo(infoElement);\n }\n }, [selectedVersion, distributedSetup, allInfoElements]);\n\n useEffect(() => {\n if (loadingObjectInfo && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n if (distributedSetup) {\n setAllInfoElements(result);\n setVersions(result);\n\n const tVersionSize = result.reduce(\n (acc: number, currValue: BucketObject): number => {\n if (currValue?.size) {\n return acc + currValue.size;\n }\n return acc;\n },\n 0,\n );\n\n setTotalVersionsSize(tVersionSize);\n } else {\n const resInfo = result[0];\n\n setActualInfo(resInfo);\n setVersions([]);\n\n if (!resInfo.is_delete_marker) {\n setLoadingMetadata(true);\n }\n }\n\n dispatch(setLoadingObjectInfo(false));\n })\n .catch((err) => {\n console.error(\"Error loading object details\", err.error);\n dispatch(setLoadingObjectInfo(false));\n });\n }\n }, [\n loadingObjectInfo,\n bucketName,\n internalPaths,\n dispatch,\n distributedSetup,\n selectedVersion,\n ]);\n\n useEffect(() => {\n if (loadMetadata && internalPaths !== \"\") {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: internalPaths,\n versionID: actualInfo?.version_id || \"\",\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n\n setMetaData(metadata);\n setLoadingMetadata(false);\n })\n .catch((err) => {\n console.error(\"Error Getting Metadata Status: \", err.detailedError);\n setLoadingMetadata(false);\n });\n }\n }, [bucketName, internalPaths, loadMetadata, actualInfo?.version_id]);\n\n let tagKeys: string[] = [];\n\n if (actualInfo && 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 dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n };\n\n const closeFileOpen = () => {\n setLongFileOpen(false);\n };\n\n const closeDeleteModal = (closeAndReload: boolean) => {\n setDeleteOpen(false);\n\n if (closeAndReload && selectedVersion === \"\") {\n onClosePanel(true);\n } else {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeAddTagModal = (reloadObjectData: boolean) => {\n setTagModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeInspectModal = (reloadObjectData: boolean) => {\n setInspectModalOpen(false);\n if (reloadObjectData) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeLegalholdModal = (reload: boolean) => {\n setLegalholdOpen(false);\n if (reload) {\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const loaderForContainer = (\n
\n \n
\n );\n\n if (!actualInfo) {\n if (loadingObjectInfo) {\n return loaderForContainer;\n }\n\n return null;\n }\n\n const objectName =\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name;\n\n const objectResources = [\n bucketName,\n currentItem,\n [bucketName, actualInfo.name].join(\"/\"),\n ];\n const canSetLegalHold = hasPermission(bucketName, [\n IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canSetTags = hasPermission(objectResources, [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const canChangeRetention = hasPermission(\n objectResources,\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n true,\n );\n const canInspect = hasPermission(objectResources, [\n IAM_SCOPES.ADMIN_INSPECT_DATA,\n ]);\n const canChangeVersioning = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n const canGetObject = hasPermission(objectResources, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n ]);\n const canDelete = hasPermission(\n [bucketName, currentItem, [bucketName, actualInfo.name].join(\"/\")],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n\n let objectType: AllowedPreviews = previewObjectType(metaData, currentItem);\n\n const multiActionButtons = [\n {\n action: () => {\n downloadObject(dispatch, bucketName, internalPaths, actualInfo);\n },\n label: \"Download\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Download this Object\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download this object\",\n ),\n },\n {\n action: () => {\n shareObject();\n },\n label: \"Share\",\n disabled: !!actualInfo.is_delete_marker || !canGetObject,\n icon: ,\n tooltip: canGetObject\n ? \"Share this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"share this object\",\n ),\n },\n {\n action: () => {\n setPreviewOpen(true);\n },\n label: \"Preview\",\n disabled:\n !!actualInfo.is_delete_marker ||\n (objectType === \"none\" && !canGetObject),\n icon: ,\n tooltip: canGetObject\n ? \"Preview this File\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"preview this object\",\n ),\n },\n {\n action: () => {\n setLegalholdOpen(true);\n },\n label: \"Legal Hold\",\n disabled:\n !locking ||\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canSetLegalHold ||\n selectedVersion !== \"\",\n icon: ,\n tooltip: canSetLegalHold\n ? locking\n ? \"Change Legal Hold rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Legal Hold\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT_LEGAL_HOLD, IAM_SCOPES.S3_PUT_ACTIONS],\n \"change legal hold settings for this object\",\n ),\n },\n {\n action: openRetentionModal,\n label: \"Retention\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n !canChangeRetention ||\n selectedVersion !== \"\" ||\n !locking,\n icon: ,\n tooltip: canChangeRetention\n ? locking\n ? \"Change Retention rules for this File\"\n : \"Object Locking must be enabled on this bucket in order to set Retention Rules\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_OBJECT_RETENTION,\n IAM_SCOPES.S3_PUT_OBJECT_RETENTION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"change Retention Rules for this object\",\n ),\n },\n {\n action: () => {\n setTagModalOpen(true);\n },\n label: \"Tags\",\n disabled:\n !!actualInfo.is_delete_marker || selectedVersion !== \"\" || !canSetTags,\n icon: ,\n tooltip: canSetTags\n ? \"Change Tags for this File\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_PUT_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_OBJECT_TAGGING,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"set Tags on this object\",\n ),\n },\n {\n action: () => {\n setInspectModalOpen(true);\n },\n label: \"Inspect\",\n disabled:\n !distributedSetup ||\n !!actualInfo.is_delete_marker ||\n selectedVersion !== \"\" ||\n !canInspect,\n icon: ,\n tooltip: canInspect\n ? \"Inspect this file\"\n : permissionTooltipHelper(\n [IAM_SCOPES.ADMIN_INSPECT_DATA],\n \"inspect this file\",\n ),\n },\n {\n action: () => {\n dispatch(\n setVersionsModeEnabled({\n status: !versionsMode,\n objectName: objectName,\n }),\n );\n },\n label: versionsMode ? \"Hide Object Versions\" : \"Display Object Versions\",\n icon: ,\n disabled:\n !distributedSetup ||\n !(actualInfo.version_id && actualInfo.version_id !== \"null\") ||\n !canChangeVersioning,\n tooltip: canChangeVersioning\n ? actualInfo.version_id && actualInfo.version_id !== \"null\"\n ? \"Display Versions for this file\"\n : \"\"\n : permissionTooltipHelper(\n [\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_OBJECT_VERSION,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ],\n \"display all versions of this object\",\n ),\n },\n ];\n\n const calculateLastModifyTime = (lastModified: string) => {\n const currentTime = new Date();\n const modifiedTime = new Date(lastModified);\n\n const difTime = currentTime.getTime() - modifiedTime.getTime();\n\n const formatTime = niceDaysInt(difTime, \"ms\");\n\n return formatTime.trim() !== \"\" ? `${formatTime} ago` : \"Just now\";\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {retentionModalOpen && actualInfo && (\n \n )}\n {deleteOpen && (\n \n )}\n {legalholdOpen && actualInfo && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {tagModalOpen && actualInfo && (\n \n )}\n {inspectModalOpen && actualInfo && (\n \n )}\n {longFileOpen && actualInfo && (\n \n )}\n\n {loadingObjectInfo ? (\n {loaderForContainer}\n ) : (\n \n \n {displayFileIconName(objectName || \"\", true)}\n {objectName}\n \n }\n items={multiActionButtons}\n />\n \n \n \n }\n iconLocation={\"start\"}\n fullWidth\n variant={\"secondary\"}\n onClick={() => {\n setDeleteOpen(true);\n }}\n disabled={\n selectedVersion === \"\" && actualInfo.is_delete_marker\n }\n sx={{\n width: \"calc(100% - 44px)\",\n margin: \"8px 0\",\n }}\n label={`Delete${selectedVersion !== \"\" ? \" version\" : \"\"}`}\n />\n \n \n \n } label={\"Object Info\"} />\n \n Name:\n
\n
{objectName}
\n
\n {selectedVersion !== \"\" && (\n \n Version ID:\n
\n {selectedVersion}\n
\n )}\n \n Size:\n
\n {niceBytes(`${actualInfo.size || \"0\"}`)}\n
\n {actualInfo.version_id &&\n actualInfo.version_id !== \"null\" &&\n selectedVersion === \"\" && (\n \n Versions:\n
\n {versions.length} version{versions.length !== 1 ? \"s\" : \"\"},{\" \"}\n {niceBytesInt(totalVersionsSize)}\n
\n )}\n {selectedVersion === \"\" && (\n \n Last Modified:\n
\n {calculateLastModifyTime(actualInfo.last_modified || \"\")}\n
\n )}\n \n ETAG:\n
\n {actualInfo.etag || \"N/A\"}\n
\n \n Tags:\n
\n {tagKeys.length === 0\n ? \"N/A\"\n : tagKeys.map((tagKey, index) => {\n return (\n \n {tagKey}:{get(actualInfo, `tags.${tagKey}`, \"\")}\n {index < tagKeys.length - 1 ? \", \" : \"\"}\n \n );\n })}\n
\n \n \n \n Legal Hold:\n
\n {actualInfo.legal_hold_status ? \"On\" : \"Off\"}\n
\n \n
\n \n \n \n Retention Policy:\n
\n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" ? (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n ) : (\n \n {actualInfo.retention_mode\n ? actualInfo.retention_mode.toLowerCase()\n : \"None\"}\n \n )}\n \n
\n \n
\n {!actualInfo.is_delete_marker && (\n \n } />\n \n {actualInfo && metaData ? (\n \n ) : null}\n \n \n )}\n \n )}\n
\n );\n};\n\nexport default ObjectDetailPanel;\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 { Box, RecoverIcon } from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { restoreLocalObjectList } from \"../../../../ObjectBrowser/objectBrowserSlice\";\n\ninterface IRestoreFileVersion {\n restoreOpen: boolean;\n bucketName: string;\n versionToRestore: BucketObject;\n objectPath: string;\n onCloseAndUpdate: (refresh: boolean) => void;\n}\n\nconst RestoreFileVersion = ({\n versionToRestore,\n bucketName,\n objectPath,\n restoreOpen,\n onCloseAndUpdate,\n}: IRestoreFileVersion) => {\n const dispatch = useAppDispatch();\n const [restoreLoading, setRestoreLoading] = useState(false);\n\n const restoreVersion = () => {\n setRestoreLoading(true);\n\n api.buckets\n .putObjectRestore(bucketName, {\n prefix: objectPath,\n version_id: versionToRestore.version_id || \"\",\n })\n .then(() => {\n setRestoreLoading(false);\n onCloseAndUpdate(true);\n dispatch(\n restoreLocalObjectList({\n prefix: objectPath,\n objectInfo: versionToRestore,\n }),\n );\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setRestoreLoading(false);\n });\n };\n\n return (\n }\n onConfirm={restoreVersion}\n confirmButtonProps={{\n variant: \"secondary\",\n disabled: restoreLoading,\n }}\n onClose={() => {\n onCloseAndUpdate(false);\n }}\n confirmationContent={\n \n Are you sure you want to restore
\n {objectPath}
with Version ID:\n
\n {versionToRestore.version_id}?\n
\n }\n />\n );\n};\n\nexport default RestoreFileVersion;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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\";\n\ninterface ISpecificVersionPillProps {\n type: \"null\" | \"current\" | \"deleted\";\n}\n\nconst SpecificVersionPill = ({ type }: ISpecificVersionPillProps) => {\n let bgColor = \"#000\";\n let message = \"\";\n\n switch (type) {\n case \"null\":\n bgColor = \"#07193E\";\n message = \"NULL VERSION\";\n break;\n case \"deleted\":\n bgColor = \"#868686\";\n message = \"DELETED\";\n break;\n default:\n bgColor = \"#174551\";\n message = \"CURRENT VERSION\";\n }\n\n return (\n \n {message}\n \n );\n};\n\nexport default SpecificVersionPill;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { DateTime } from \"luxon\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { displayFileIconName } from \"../ListObjects/utils\";\nimport {\n DownloadIcon,\n PreviewIcon,\n RecoverIcon,\n ShareIcon,\n IconButton,\n Tooltip,\n Grid,\n Checkbox,\n} from \"mds\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport SpecificVersionPill from \"./SpecificVersionPill\";\nimport { BucketObject } from \"api/consoleApi\";\n\ninterface IFileVersionItem {\n fileName: string;\n versionInfo: BucketObject;\n index: number;\n isSelected?: boolean;\n checkable: boolean;\n isChecked: boolean;\n onCheck: (versionID: string) => void;\n onShare: (versionInfo: BucketObject) => void;\n onDownload: (versionInfo: BucketObject) => void;\n onRestore: (versionInfo: BucketObject) => void;\n onPreview: (versionInfo: BucketObject) => void;\n globalClick: (versionInfo: BucketObject) => void;\n key: any;\n style: any;\n}\n\nconst FileVersionStyled = styled.div(({ theme }) => {\n return {\n \"&:before\": {\n content: \"' '\",\n display: \"block\",\n position: \"absolute\",\n width: \"2px\",\n height: \"calc(100% + 2px)\",\n backgroundColor: get(theme, \"borderColor\", \"#F8F8F8\"),\n left: \"24px\",\n },\n \"& .mainFileVersionItem\": {\n borderBottom: `${get(theme, \"borderColor\", \"#F8F8F8\")} 1px solid`,\n padding: \"1rem 0\",\n margin: \"0 0.5rem 0 2.5rem\",\n cursor: \"pointer\",\n \"&.deleted\": {\n color: \"#868686\",\n },\n },\n \"& .intermediateLayer\": {\n margin: \"0 1.5rem 0 1.5rem\",\n \"&:hover, &.selected\": {\n backgroundColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 16,\n fontWeight: \"bold\",\n display: \"flex\",\n alignItems: \"center\",\n \"& svg.min-icon\": {\n width: 18,\n height: 18,\n minWidth: 18,\n minHeight: 18,\n marginRight: 10,\n },\n },\n \"& .buttonContainer\": {\n textAlign: \"right\",\n \"& button\": {\n marginLeft: \"1.5rem\",\n },\n },\n \"& .versionID\": {\n fontSize: \"12px\",\n margin: \"2px 0\",\n whiteSpace: \"nowrap\",\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n },\n \"& .versionData\": {\n marginRight: \"10px\",\n fontSize: 12,\n color: \"#868686\",\n },\n \"@media (max-width: 600px)\": {\n \"& .buttonContainer\": {\n \"& button\": {\n marginLeft: \"5px\",\n },\n },\n },\n \"@media (max-width: 799px)\": {\n \"&:before\": {\n display: \"none\",\n },\n \"& .mainFileVersionItem\": {\n padding: \"5px 0px\",\n margin: 0,\n },\n \"& .intermediateLayer\": {\n margin: 0,\n \"&:hover, &.selected\": {\n backgroundColor: \"transparent\",\n \"& > div\": {\n borderBottomColor: get(theme, \"boxBackground\", \"#F8F8F8\"),\n },\n },\n },\n \"& .versionContainer\": {\n fontSize: 14,\n \"& svg.min-icon\": {\n display: \"none\",\n },\n },\n \"& .versionData\": {\n textOverflow: \"ellipsis\",\n maxWidth: \"95%\",\n overflow: \"hidden\",\n whiteSpace: \"nowrap\",\n },\n \"& .collapsableInfo\": {\n display: \"flex\",\n flexDirection: \"column\",\n },\n \"& .versionItem\": {\n display: \"none\",\n },\n },\n };\n});\n\nconst FileVersionItem = ({\n fileName,\n versionInfo,\n isSelected,\n checkable,\n isChecked,\n onCheck,\n onShare,\n onDownload,\n onRestore,\n onPreview,\n globalClick,\n index,\n key,\n style,\n}: IFileVersionItem) => {\n const disableButtons = versionInfo.is_delete_marker;\n\n const versionItemButtons = [\n {\n icon: ,\n action: onPreview,\n tooltip: \"Preview\",\n },\n {\n icon: ,\n action: onDownload,\n tooltip: \"Download this version\",\n },\n {\n icon: ,\n action: onShare,\n tooltip: \"Share this version\",\n },\n {\n icon: ,\n action: onRestore,\n tooltip: \"Restore this version\",\n },\n ];\n\n let pill: \"deleted\" | \"current\" | \"null\" | null = null;\n\n if (versionInfo.is_delete_marker) {\n pill = \"deleted\";\n } else if (versionInfo.is_latest) {\n pill = \"current\";\n } else if (versionInfo.version_id === \"null\") {\n pill = \"null\";\n }\n\n let lastModified = DateTime.now();\n\n if (versionInfo.last_modified) {\n lastModified = DateTime.fromISO(\n versionInfo.last_modified,\n ) as DateTime;\n }\n\n return (\n \n {\n globalClick(versionInfo);\n }}\n key={key}\n style={style}\n >\n \n \n \n \n \n {checkable && (\n {\n e.stopPropagation();\n onCheck(versionInfo.version_id || \"\");\n }}\n value={versionInfo.version_id || \"\"}\n disabled={versionInfo.is_delete_marker}\n sx={{\n width: \"initial\",\n }}\n />\n )}\n {displayFileIconName(fileName, true)} v{index.toString()}\n \n {pill && }\n \n \n \n {versionItemButtons.map((button, index) => {\n return (\n \n {\n e.stopPropagation();\n if (!disableButtons) {\n button.action(versionInfo);\n } else {\n e.preventDefault();\n }\n }}\n sx={{\n backgroundColor: \"#F8F8F8\",\n borderRadius: \"100%\",\n width: \"28px\",\n height: \"28px\",\n padding: \"5px\",\n \"& .min-icon\": {\n width: \"14px\",\n height: \"14px\",\n },\n }}\n >\n {button.icon}\n \n \n );\n })}\n \n \n \n \n {versionInfo.version_id !== \"null\" ? versionInfo.version_id : \"-\"}\n \n \n \n Last modified:{\" \"}\n {lastModified.toFormat(\"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\")}\n \n \n Size: {niceBytes(`${versionInfo.size || \"0\"}`)}\n \n \n \n \n \n \n );\n};\n\nexport default FileVersionItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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\";\n\nimport { ConfirmDeleteIcon, Switch, Grid, InputBox } from \"mds\";\nimport ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteNonCurrentProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteNonCurrentVersions = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedObject,\n}: IDeleteNonCurrentProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [typeConfirm, setTypeConfirm] = useState(\"\");\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n useEffect(() => {\n if (deleteLoading) {\n api.buckets\n .deleteObject(selectedBucket, {\n prefix: selectedObject,\n non_current_versions: true,\n bypass: bypassGovernance,\n })\n .then(() => {\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n dispatch,\n selectedObject,\n selectedBucket,\n bypassGovernance,\n ]);\n\n if (!selectedObject) {\n return null;\n }\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={() => closeDeleteModalAndRefresh(false)}\n confirmButtonProps={{\n disabled: typeConfirm !== \"YES, PROCEED\" || deleteLoading,\n }}\n confirmationContent={\n \n Are you sure you want to delete all the non-current versions for:{\" \"}\n {selectedObject}?
\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n
\n To continue please type YES, PROCEED in the box.\n
\n
\n \n ) => {\n setTypeConfirm(event.target.value);\n }}\n label=\"\"\n value={typeConfirm}\n />\n \n
\n }\n />\n );\n};\n\nexport default DeleteNonCurrentVersions;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 ConfirmDialog from \"../../../../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmDeleteIcon, Switch } from \"mds\";\nimport { setErrorSnackMessage } from \"../../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { IAM_SCOPES } from \"../../../../../../common/SecureComponent/permissions\";\nimport { useSelector } from \"react-redux\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IDeleteSelectedVersionsProps {\n closeDeleteModalAndRefresh: (refresh: boolean) => void;\n deleteOpen: boolean;\n selectedVersions: string[];\n selectedObject: string;\n selectedBucket: string;\n}\n\nconst DeleteObject = ({\n closeDeleteModalAndRefresh,\n deleteOpen,\n selectedBucket,\n selectedVersions,\n selectedObject,\n}: IDeleteSelectedVersionsProps) => {\n const dispatch = useAppDispatch();\n const [deleteLoading, setDeleteLoading] = useState(false);\n const [bypassGovernance, setBypassGovernance] = useState(false);\n\n const retentionConfig = useSelector(\n (state: AppState) => state.objectBrowser.retentionConfig,\n );\n\n const canBypass =\n hasPermission(\n [selectedBucket],\n [IAM_SCOPES.S3_BYPASS_GOVERNANCE_RETENTION],\n ) && retentionConfig?.mode === \"governance\";\n\n const onClose = () => closeDeleteModalAndRefresh(false);\n const onConfirmDelete = () => {\n setDeleteLoading(true);\n };\n\n useEffect(() => {\n if (deleteLoading) {\n const selectedObjectsRequest = selectedVersions.map((versionID) => {\n return {\n path: selectedObject,\n versionID: versionID,\n recursive: false,\n };\n });\n\n if (selectedObjectsRequest.length > 0) {\n api.buckets\n .deleteMultipleObjects(selectedBucket, selectedObjectsRequest, {\n all_versions: false,\n bypass: bypassGovernance,\n })\n .then(() => {\n setDeleteLoading(false);\n closeDeleteModalAndRefresh(true);\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n setDeleteLoading(false);\n });\n }\n }\n }, [\n deleteLoading,\n closeDeleteModalAndRefresh,\n selectedBucket,\n selectedObject,\n selectedVersions,\n bypassGovernance,\n dispatch,\n ]);\n\n if (!selectedVersions) {\n return null;\n }\n\n return (\n }\n isLoading={deleteLoading}\n onConfirm={onConfirmDelete}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the selected {selectedVersions.length}{\" \"}\n versions for {selectedObject}?\n {canBypass && (\n \n \n {\n setBypassGovernance(!bypassGovernance);\n }}\n description=\"\"\n />\n \n \n )}\n \n }\n />\n );\n};\n\nexport default DeleteObject;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useSelector } from \"react-redux\";\nimport {\n breakPoints,\n Button,\n DeleteIcon,\n DeleteNonCurrentIcon,\n Grid,\n ProgressBar,\n ScreenTitle,\n Select,\n SelectMultipleIcon,\n VersionsIcon,\n} from \"mds\";\nimport ShareFile from \"./ShareFile\";\n\nimport { niceBytesInt } from \"../../../../../../common/utils\";\nimport RestoreFileVersion from \"./RestoreFileVersion\";\n\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport FileVersionItem from \"./FileVersionItem\";\nimport PreviewFileModal from \"../Preview/PreviewFileModal\";\nimport DeleteNonCurrent from \"../ListObjects/DeleteNonCurrent\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport DeleteSelectedVersions from \"./DeleteSelectedVersions\";\nimport {\n selDistSet,\n setErrorSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport {\n setLoadingObjectInfo,\n setLoadingVersions,\n setSelectedVersion,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { List, ListRowProps } from \"react-virtualized\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\n\ninterface IVersionsNavigatorProps {\n internalPaths: string;\n bucketName: string;\n}\n\nconst emptyFile: BucketObject = {\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: undefined,\n};\n\nconst VersionsNavigator = ({\n internalPaths,\n bucketName,\n}: IVersionsNavigatorProps) => {\n const dispatch = useAppDispatch();\n\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n const loadingVersions = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersions,\n );\n const selectedVersion = useSelector(\n (state: AppState) => state.objectBrowser.selectedVersion,\n );\n\n const distributedSetup = useSelector(selDistSet);\n const [shareFileModalOpen, setShareFileModalOpen] = useState(false);\n const [actualInfo, setActualInfo] = useState(null);\n const [objectToShare, setObjectToShare] = useState(null);\n const [versions, setVersions] = useState([]);\n const [restoreVersionOpen, setRestoreVersionOpen] = useState(false);\n const [restoreVersion, setRestoreVersion] = useState(\n null,\n );\n const [sortValue, setSortValue] = useState(\"date\");\n const [previewOpen, setPreviewOpen] = useState(false);\n const [deleteNonCurrentOpen, setDeleteNonCurrentOpen] =\n useState(false);\n const [selectEnabled, setSelectEnabled] = useState(false);\n const [selectedItems, setSelectedItems] = useState([]);\n const [delSelectedVOpen, setDelSelectedVOpen] = useState(false);\n\n // calculate object name to display\n let objectNameArray: string[] = [];\n if (actualInfo && actualInfo.name) {\n objectNameArray = actualInfo.name.split(\"/\");\n }\n\n useEffect(() => {\n if (!loadingVersions && !actualInfo) {\n dispatch(setLoadingVersions(true));\n }\n }, [loadingVersions, actualInfo, dispatch]);\n\n useEffect(() => {\n if (loadingVersions && internalPaths !== \"\") {\n api.buckets\n .listObjects(bucketName, {\n prefix: internalPaths,\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result = get(res.data, \"objects\", []);\n\n // Filter the results prefixes as API can return more files than expected.\n const filteredPrefixes = result.filter(\n (item: BucketObject) => item.name === internalPaths,\n );\n\n if (distributedSetup) {\n setActualInfo(\n filteredPrefixes.find((el: BucketObject) => el.is_latest) ||\n emptyFile,\n );\n setVersions(filteredPrefixes);\n } else {\n setActualInfo(filteredPrefixes[0]);\n setVersions([]);\n }\n\n dispatch(setLoadingVersions(false));\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n dispatch(setLoadingVersions(false));\n });\n }\n }, [loadingVersions, bucketName, internalPaths, dispatch, distributedSetup]);\n\n const shareObject = () => {\n setShareFileModalOpen(true);\n };\n\n const closeShareModal = () => {\n setObjectToShare(null);\n setShareFileModalOpen(false);\n setPreviewOpen(false);\n };\n\n const onShareItem = (item: BucketObject) => {\n setObjectToShare(item);\n shareObject();\n };\n\n const onPreviewItem = (item: BucketObject) => {\n setObjectToShare(item);\n setPreviewOpen(true);\n };\n\n const onRestoreItem = (item: BucketObject) => {\n setRestoreVersion(item);\n setRestoreVersionOpen(true);\n };\n\n const onDownloadItem = (item: BucketObject) => {\n downloadObject(dispatch, bucketName, internalPaths, item);\n };\n\n const onGlobalClick = (item: BucketObject) => {\n dispatch(setSelectedVersion(item.version_id || \"\"));\n };\n\n const filteredRecords = versions.filter((version) => {\n if (version.version_id) {\n return version.version_id.includes(searchVersions);\n }\n return false;\n });\n\n const closeRestoreModal = (reloadObjectData: boolean) => {\n setRestoreVersionOpen(false);\n setRestoreVersion(null);\n\n if (reloadObjectData) {\n dispatch(setLoadingVersions(true));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeDeleteNonCurrent = (reloadAfterDelete: boolean) => {\n setDeleteNonCurrentOpen(false);\n\n if (reloadAfterDelete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n }\n };\n\n const closeSelectedVersions = (reloadOnComplete: boolean) => {\n setDelSelectedVOpen(false);\n\n if (reloadOnComplete) {\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedVersion(\"\"));\n dispatch(setLoadingObjectInfo(true));\n setSelectedItems([]);\n }\n };\n\n const totalSpace = versions.reduce((acc: number, currValue: BucketObject) => {\n if (currValue.size) {\n return acc + currValue.size;\n }\n return acc;\n }, 0);\n\n filteredRecords.sort((a, b) => {\n switch (sortValue) {\n case \"size\":\n if (a.size && b.size) {\n if (a.size < b.size) {\n return -1;\n }\n if (a.size > b.size) {\n return 1;\n }\n return 0;\n }\n return 0;\n default:\n const dateA = new Date(a.last_modified || \"\").getTime();\n const dateB = new Date(b.last_modified || \"\").getTime();\n\n if (dateA < dateB) {\n return 1;\n }\n if (dateA > dateB) {\n return -1;\n }\n return 0;\n }\n });\n\n const onCheckVersion = (selectedVersion: string) => {\n if (selectedItems.includes(selectedVersion)) {\n const filteredItems = selectedItems.filter(\n (element) => element !== selectedVersion,\n );\n\n setSelectedItems(filteredItems);\n\n return;\n }\n\n const cloneState = [...selectedItems];\n cloneState.push(selectedVersion);\n\n setSelectedItems(cloneState);\n };\n\n const rowRenderer = ({\n key, // Unique key within array of rows\n index, // Index of row within collection\n isScrolling, // The List is currently being scrolled\n isVisible, // This row is visible within the List (eg it is not an overscanned row)\n style, // Style object to be applied to row (to position it)\n }: ListRowProps) => {\n const versOrd = versions.length - index;\n return (\n \n );\n };\n\n return (\n \n {shareFileModalOpen && actualInfo && (\n \n )}\n {restoreVersionOpen && actualInfo && restoreVersion && (\n \n )}\n {previewOpen && actualInfo && (\n {\n setPreviewOpen(false);\n }}\n />\n )}\n {deleteNonCurrentOpen && (\n \n )}\n {delSelectedVOpen && (\n \n )}\n \n {!actualInfo && (\n \n \n \n )}\n\n {actualInfo && (\n \n \n \n \n \n \n \n \n }\n title={`${\n objectNameArray.length > 0\n ? objectNameArray[objectNameArray.length - 1]\n : actualInfo.name\n } Versions`}\n subTitle={\n \n \n \n {versions.length} Version\n {versions.length === 1 ? \"\" : \"s\"}   \n \n \n \n {niceBytesInt(totalSpace)}\n \n \n }\n actions={\n \n \n {\n setSelectEnabled(!selectEnabled);\n }}\n icon={}\n variant={selectEnabled ? \"callAction\" : \"regular\"}\n style={{ marginRight: 8 }}\n />\n \n {selectEnabled && (\n \n {\n setDelSelectedVOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 8 }}\n disabled={selectedItems.length === 0}\n />\n \n )}\n \n {\n setDeleteNonCurrentOpen(true);\n }}\n icon={}\n variant={\"secondary\"}\n style={{ marginRight: 15 }}\n disabled={versions.length <= 1}\n />\n \n {\n setSortValue(newValue);\n }}\n noLabelMinWidth\n />\n \n }\n bottomBorder={false}\n />\n \n \n {actualInfo.version_id && actualInfo.version_id !== \"null\" && (\n // @ts-ignore\n \n )}\n \n \n )}\n \n \n );\n};\n\nexport default VersionsNavigator;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { DateTime } from \"luxon\";\nimport { BucketObjectItem } from \"./types\";\nimport { niceBytes } from \"../../../../../../common/utils\";\nimport { displayFileIconName } from \"./utils\";\n\n// Functions\n\nconst displayParsedDate = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\")) {\n return \"\";\n }\n\n const currTime = DateTime.now();\n const objectTime = DateTime.fromISO(object.last_modified);\n\n const isToday =\n currTime.hasSame(objectTime, \"day\") &&\n currTime.hasSame(objectTime, \"month\") &&\n currTime.hasSame(objectTime, \"year\");\n\n if (isToday) {\n return `Today, ${objectTime.toFormat(\"HH:mm\")}`;\n }\n\n return objectTime.toFormat(\"ccc, LLL dd yyyy HH:mm (ZZZZ)\");\n};\n\nconst displayNiceBytes = (object: BucketObjectItem) => {\n if (object.name.endsWith(\"/\") || !object.size) {\n return \"-\";\n }\n return niceBytes(String(object.size));\n};\n\nconst displayDeleteFlag = (state: boolean) => {\n return state ? \"Yes\" : \"No\";\n};\n\n// Table Props\n\nexport const listModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Last Modified\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n];\n\nexport const rewindModeColumns = [\n {\n label: \"Name\",\n elementKey: \"name\",\n renderFunction: displayFileIconName,\n enableSort: true,\n },\n {\n label: \"Object Date\",\n elementKey: \"last_modified\",\n renderFunction: displayParsedDate,\n renderFullObject: true,\n enableSort: true,\n },\n {\n label: \"Size\",\n elementKey: \"size\",\n renderFunction: displayNiceBytes,\n renderFullObject: true,\n width: 100,\n enableSort: true,\n },\n {\n label: \"Deleted\",\n elementKey: \"delete_flag\",\n renderFunction: displayDeleteFlag,\n width: 60,\n },\n];\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { listModeColumns, rewindModeColumns } from \"./ListObjectsHelpers\";\nimport { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport { selFeatures } from \"../../../../consoleSlice\";\nimport {\n setLoadingVersions,\n setObjectDetailsView,\n setReloadObjectsList,\n setSelectedObjects,\n setSelectedObjectView,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport get from \"lodash/get\";\nimport { sortListObjects } from \"../utils\";\nimport { BucketObjectItem } from \"./types\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport { hasPermission } from \"../../../../../../common/SecureComponent\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { DataTable, ItemActions } from \"mds\";\nimport { BucketObject } from \"api/consoleApi\";\n\nconst ListObjectsTable = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n\n const [sortDirection, setSortDirection] = useState<\n \"ASC\" | \"DESC\" | undefined\n >(\"ASC\");\n const [currentSortField, setCurrentSortField] = useState(\"name\");\n\n const bucketName = params.bucketName || \"\";\n\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n\n const requestInProgress = useSelector(\n (state: AppState) => state.objectBrowser.requestInProgress,\n );\n\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const records = useSelector((state: AppState) => state.objectBrowser.records);\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n const connectionError = useSelector(\n (state: AppState) => state.objectBrowser.connectionError,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n\n const displayListObjects = hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]);\n\n const plSelect = records.filter((b: BucketObjectItem) => {\n if (searchObjects === \"\") {\n return true;\n } else {\n const objectName = b.name.toLowerCase();\n return objectName.indexOf(searchObjects.toLowerCase()) >= 0;\n }\n });\n const sortASC = plSelect.sort(sortListObjects(currentSortField));\n\n let payload: BucketObjectItem[] = [];\n\n if (sortDirection === \"ASC\") {\n payload = sortASC;\n } else {\n payload = sortASC.reverse();\n }\n\n const openPath = (object: BucketObject) => {\n const idElement = object.name || \"\";\n const newPath = `/browser/${encodeURIComponent(bucketName)}${\n idElement ? `/${encodeURIComponent(idElement)}` : ``\n }`;\n\n // for anonymous start download\n if (anonymousMode && !object.name?.endsWith(\"/\")) {\n downloadObject(dispatch, bucketName, idElement, object);\n return;\n }\n dispatch(setSelectedObjects([]));\n\n navigate(newPath);\n\n if (!anonymousMode) {\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n }\n dispatch(setSelectedObjectView(idElement));\n };\n const tableActions: ItemActions[] = [\n {\n type: \"view\",\n tooltip: \"View\",\n onClick: openPath,\n sendOnlyId: false,\n },\n ];\n\n const sortChange = (sortData: any) => {\n const newSortDirection = get(sortData, \"sortDirection\", \"DESC\");\n setCurrentSortField(sortData.sortBy);\n setSortDirection(newSortDirection);\n dispatch(setReloadObjectsList(true));\n };\n\n const selectAllItems = () => {\n dispatch(setSelectedObjectView(null));\n\n if (selectedObjects.length === payload.length) {\n dispatch(setSelectedObjects([]));\n return;\n }\n\n const elements = payload.map((item) => item.name);\n dispatch(setSelectedObjects(elements));\n };\n\n const selectListObjects = (e: React.ChangeEvent) => {\n const targetD = e.target;\n const value = targetD.value;\n const checked = targetD.checked;\n\n let elements: string[] = [...selectedObjects]; // 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 dispatch(setSelectedObjects(elements));\n dispatch(setSelectedObjectView(null));\n\n return elements;\n };\n\n let errorMessage =\n !displayListObjects && !anonymousMode\n ? permissionTooltipHelper(\n [IAM_SCOPES.S3_LIST_BUCKET, IAM_SCOPES.S3_ALL_LIST_BUCKET],\n \"view Objects in this bucket\",\n )\n : `This location is empty${\n !rewindEnabled ? \", please try uploading a new file\" : \"\"\n }`;\n\n if (connectionError) {\n errorMessage =\n \"Objects List unavailable. Please review your WebSockets configuration and try again\";\n }\n\n let customPaperHeight = \"calc(100vh - 290px)\";\n\n if (obOnly) {\n customPaperHeight = \"calc(100vh - 315px)\";\n }\n\n return (\n {\n if (payload[index]?.delete_flag) {\n return \"deleted\";\n }\n\n return \"\";\n }}\n sx={{\n minHeight: detailsOpen ? \"100%\" : \"initial\",\n }}\n noBackground\n />\n );\n};\nexport default ListObjectsTable;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { setSearchObjects } from \"./objectBrowserSlice\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { useSelector } from \"react-redux\";\n\nconst FilterObjectsSB = () => {\n const dispatch = useAppDispatch();\n\n const searchObjects = useSelector(\n (state: AppState) => state.objectBrowser.searchObjects,\n );\n return (\n {\n dispatch(setSearchObjects(value));\n }}\n value={searchObjects}\n />\n );\n};\nexport default FilterObjectsSB;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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, {\n Fragment,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport get from \"lodash/get\";\nimport {\n AccessRuleIcon,\n ActionsList,\n Badge,\n Box,\n BucketsIcon,\n Button,\n Checkbox,\n DeleteIcon,\n DownloadIcon,\n Grid,\n HistoryIcon,\n PageLayout,\n PreviewIcon,\n RefreshIcon,\n ScreenTitle,\n ShareIcon,\n} from \"mds\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { BucketQuota } from \"api/consoleApi\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useNavigate, useParams } from \"react-router-dom\";\nimport { useDropzone } from \"react-dropzone\";\nimport { DateTime } from \"luxon\";\nimport { niceBytesInt } from \"../../../../../../common/utils\";\nimport BrowserBreadcrumbs from \"../../../../ObjectBrowser/BrowserBreadcrumbs\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../../common/types\";\nimport { AppState, useAppDispatch } from \"../../../../../../store\";\nimport {\n IAM_SCOPES,\n permissionTooltipHelper,\n} from \"../../../../../../common/SecureComponent/permissions\";\nimport {\n hasPermission,\n SecureComponent,\n} from \"../../../../../../common/SecureComponent\";\nimport {\n setErrorSnackMessage,\n setSnackBarMessage,\n} from \"../../../../../../systemSlice\";\nimport { isVersionedMode } from \"../../../../../../utils/validationFunctions\";\nimport {\n extractFileExtn,\n getPolicyAllowedFileExtensions,\n getSessionGrantsWildCard,\n} from \"../../UploadPermissionUtils\";\nimport {\n makeid,\n removeTrace,\n storeCallForObjectWithID,\n storeFormDataWithID,\n} from \"../../../../ObjectBrowser/transferManager\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n openList,\n resetMessages,\n resetRewind,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setLoadingVersions,\n setNewObject,\n setObjectDetailsView,\n setPreviewOpen,\n setReloadObjectsList,\n setRetentionConfig,\n setSelectedObjects,\n setSelectedObjectView,\n setSelectedPreview,\n setShareFileModalOpen,\n setShowDeletedObjects,\n setVersionsModeEnabled,\n updateProgress,\n} from \"../../../../ObjectBrowser/objectBrowserSlice\";\nimport {\n selBucketDetailsInfo,\n selBucketDetailsLoading,\n setBucketDetailsLoad,\n setBucketInfo,\n} from \"../../../BucketDetails/bucketDetailsSlice\";\nimport {\n downloadSelected,\n openAnonymousAccess,\n openPreview,\n openShare,\n} from \"../../../../ObjectBrowser/objectBrowserThunks\";\nimport withSuspense from \"../../../../Common/Components/withSuspense\";\nimport UploadFilesButton from \"../../UploadFilesButton\";\nimport DetailsListPanel from \"./DetailsListPanel\";\nimport ObjectDetailPanel from \"./ObjectDetailPanel\";\nimport VersionsNavigator from \"../ObjectDetails/VersionsNavigator\";\nimport RenameLongFileName from \"../../../../ObjectBrowser/RenameLongFilename\";\nimport TooltipWrapper from \"../../../../Common/TooltipWrapper/TooltipWrapper\";\nimport ListObjectsTable from \"./ListObjectsTable\";\nimport FilterObjectsSB from \"../../../../ObjectBrowser/FilterObjectsSB\";\nimport AddAccessRule from \"../../../BucketDetails/AddAccessRule\";\n\nconst DeleteMultipleObjects = withSuspense(\n React.lazy(() => import(\"./DeleteMultipleObjects\")),\n);\nconst ShareFile = withSuspense(\n React.lazy(() => import(\"../ObjectDetails/ShareFile\")),\n);\nconst RewindEnable = withSuspense(React.lazy(() => import(\"./RewindEnable\")));\nconst PreviewFileModal = withSuspense(\n React.lazy(() => import(\"../Preview/PreviewFileModal\")),\n);\n\nconst baseDnDStyle = {\n borderWidth: 2,\n borderRadius: 2,\n borderColor: \"transparent\",\n outline: \"none\",\n};\n\nconst activeDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"transparent\",\n borderColor: \"#2196f3\",\n};\n\nconst acceptDnDStyle = {\n borderStyle: \"dashed\",\n backgroundColor: \"transparent\",\n borderColor: \"#00e676\",\n};\n\nconst ListObjects = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const navigate = useNavigate();\n const location = useLocation();\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const bucketToRewind = useSelector(\n (state: AppState) => state.objectBrowser.rewind.bucketToRewind,\n );\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const detailsOpen = useSelector(\n (state: AppState) => state.objectBrowser.objectDetailsOpen,\n );\n const selectedInternalPaths = useSelector(\n (state: AppState) => state.objectBrowser.selectedInternalPaths,\n );\n const requestInProgress = useSelector(\n (state: AppState) => state.objectBrowser.requestInProgress,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n const versioningConfig = useSelector(\n (state: AppState) => state.objectBrowser.versionInfo,\n );\n const lockingEnabled = useSelector(\n (state: AppState) => state.objectBrowser.lockingEnabled,\n );\n const downloadRenameModal = useSelector(\n (state: AppState) => state.objectBrowser.downloadRenameModal,\n );\n const selectedPreview = useSelector(\n (state: AppState) => state.objectBrowser.selectedPreview,\n );\n const shareFileModalOpen = useSelector(\n (state: AppState) => state.objectBrowser.shareFileModalOpen,\n );\n const previewOpen = useSelector(\n (state: AppState) => state.objectBrowser.previewOpen,\n );\n const selectedBucket = useSelector(\n (state: AppState) => state.objectBrowser.selectedBucket,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n const anonymousAccessOpen = useSelector(\n (state: AppState) => state.objectBrowser.anonymousAccessOpen,\n );\n\n const records = useSelector(\n (state: AppState) => state.objectBrowser?.records || [],\n );\n\n const loadingBucket = useSelector(selBucketDetailsLoading);\n const bucketInfo = useSelector(selBucketDetailsInfo);\n\n const [deleteMultipleOpen, setDeleteMultipleOpen] = useState(false);\n const [rewindSelect, setRewindSelect] = useState(false);\n const [iniLoad, setIniLoad] = useState(false);\n const [canShareFile, setCanShareFile] = useState(false);\n const [canPreviewFile, setCanPreviewFile] = useState(false);\n const [quota, setQuota] = useState(null);\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const isVersioningApplied = isVersionedMode(versioningConfig.status);\n\n const bucketName = params.bucketName || \"\";\n const pathSegment = location.pathname.split(`/browser/${bucketName}/`);\n const internalPaths =\n pathSegment.length === 2 ? decodeURIComponent(pathSegment[1]) : \"\";\n\n const currentPath = internalPaths.split(\"/\").filter((i: string) => i !== \"\");\n\n let uploadPath = [bucketName];\n if (currentPath.length > 0) {\n uploadPath = uploadPath.concat(currentPath);\n }\n\n const fileUpload = useRef(null);\n const folderUpload = useRef(null);\n\n const sessionGrants = useSelector((state: AppState) =>\n state.console.session ? state.console.session.permissions || {} : {},\n );\n\n const putObjectPermScopes = [\n IAM_SCOPES.S3_PUT_OBJECT,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ];\n\n const pathAsResourceInPolicy = uploadPath.join(\"/\");\n const allowedFileExtensions = getPolicyAllowedFileExtensions(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const sessionGrantWildCards = getSessionGrantsWildCard(\n sessionGrants,\n pathAsResourceInPolicy,\n putObjectPermScopes,\n );\n\n const canDownload = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n );\n const canRewind = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_OBJECT,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n ]);\n const canDelete = hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n [IAM_SCOPES.S3_DELETE_OBJECT],\n );\n const canUpload =\n hasPermission(\n [pathAsResourceInPolicy, ...sessionGrantWildCards],\n putObjectPermScopes,\n ) || anonymousMode;\n\n const canSetAnonymousAccess = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const selectedObjects = useSelector(\n (state: AppState) => state.objectBrowser.selectedObjects,\n );\n\n const checkForDelMarker = (): boolean => {\n let isObjDelMarker = false;\n if (selectedObjects.length === 1) {\n let matchingRec = records.find((obj) => {\n return obj.name === `${selectedObjects[0]}` && obj.delete_flag;\n });\n\n isObjDelMarker = !!matchingRec;\n }\n return isObjDelMarker;\n };\n\n const isSelObjectDelMarker = checkForDelMarker();\n\n const fetchMetadata = useCallback(() => {\n const objectName = selectedObjects[0];\n\n if (!isMetaDataLoaded && objectName) {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: objectName,\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, selectedObjects, isMetaDataLoaded]);\n\n useEffect(() => {\n if (bucketName && !isSelObjectDelMarker) {\n fetchMetadata();\n }\n }, [bucketName, selectedObjects, fetchMetadata, isSelObjectDelMarker]);\n\n useEffect(() => {\n if (rewindEnabled) {\n if (bucketToRewind !== bucketName) {\n dispatch(resetRewind());\n return;\n }\n }\n }, [rewindEnabled, bucketToRewind, bucketName, dispatch]);\n\n useEffect(() => {\n if (folderUpload.current !== null) {\n folderUpload.current.setAttribute(\"directory\", \"\");\n folderUpload.current.setAttribute(\"webkitdirectory\", \"\");\n }\n }, [folderUpload]);\n\n useEffect(() => {\n if (selectedObjects.length === 1) {\n const objectName = selectedObjects[0];\n const isPrefix = objectName.endsWith(\"/\");\n\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n if (objectType !== \"none\" && canDownload) {\n setCanPreviewFile(true);\n } else {\n setCanPreviewFile(false);\n }\n\n if (canDownload && !isPrefix) {\n setCanShareFile(true);\n } else {\n setCanShareFile(false);\n }\n } else {\n setCanShareFile(false);\n setCanPreviewFile(false);\n }\n }, [selectedObjects, canDownload, metaData]);\n\n useEffect(() => {\n if (!quota && !anonymousMode) {\n api.buckets\n .getBucketQuota(bucketName)\n .then((res) => {\n let quotaVals = null;\n\n if (res.data.quota) {\n quotaVals = res.data;\n }\n\n setQuota(quotaVals);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Quota Status: \",\n err.error.detailedMessage,\n );\n setQuota(null);\n });\n }\n }, [quota, bucketName, anonymousMode]);\n\n useEffect(() => {\n if (selectedObjects.length > 0) {\n dispatch(setObjectDetailsView(true));\n return;\n }\n\n if (\n selectedObjects.length === 0 &&\n selectedInternalPaths === null &&\n !requestInProgress\n ) {\n dispatch(setObjectDetailsView(false));\n }\n }, [selectedObjects, selectedInternalPaths, dispatch, requestInProgress]);\n\n useEffect(() => {\n if (!iniLoad) {\n dispatch(setBucketDetailsLoad(true));\n setIniLoad(true);\n }\n }, [iniLoad, dispatch, setIniLoad]);\n\n // bucket info\n useEffect(() => {\n if ((requestInProgress || loadingBucket) && !anonymousMode) {\n api.buckets\n .bucketInfo(bucketName)\n .then((res) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setBucketInfo(res.data));\n })\n .catch((err) => {\n dispatch(setBucketDetailsLoad(false));\n dispatch(setErrorSnackMessage(errorToHandler(err)));\n });\n }\n }, [bucketName, loadingBucket, dispatch, anonymousMode, requestInProgress]);\n\n // Load retention Config\n\n useEffect(() => {\n if (selectedBucket !== \"\") {\n api.buckets\n .getBucketRetentionConfig(selectedBucket)\n .then((res) => {\n dispatch(setRetentionConfig(res.data));\n })\n .catch(() => {\n dispatch(setRetentionConfig(null));\n });\n }\n }, [selectedBucket, dispatch]);\n\n const closeDeleteMultipleModalAndRefresh = (refresh: boolean) => {\n setDeleteMultipleOpen(false);\n\n if (refresh) {\n dispatch(setSnackBarMessage(`Objects deleted successfully.`));\n dispatch(setSelectedObjects([]));\n dispatch(setReloadObjectsList(true));\n }\n };\n\n const handleUploadButton = (e: any) => {\n if (\n e === null ||\n e === undefined ||\n e.target.files === null ||\n e.target.files === undefined\n ) {\n return;\n }\n e.preventDefault();\n var newFiles: File[] = [];\n\n for (let i = 0; i < e.target.files.length; i++) {\n newFiles.push(e.target.files[i]);\n }\n uploadObject(newFiles, \"\");\n\n e.target.value = \"\";\n };\n\n const uploadObject = useCallback(\n (files: File[], folderPath: string): void => {\n let pathPrefix = \"\";\n if (simplePath) {\n pathPrefix = simplePath.endsWith(\"/\") ? simplePath : simplePath + \"/\";\n }\n\n const upload = (\n files: File[],\n bucketName: string,\n path: string,\n folderPath: string,\n ) => {\n let uploadPromise = (file: File) => {\n return new Promise((resolve, reject) => {\n let uploadUrl = `api/v1/buckets/${bucketName}/objects/upload`;\n const fileName = file.name;\n\n const blobFile = new Blob([file], { type: file.type });\n\n const filePath = get(file, \"path\", \"\");\n const fileWebkitRelativePath = get(file, \"webkitRelativePath\", \"\");\n\n let relativeFolderPath = folderPath;\n const ID = makeid(8);\n\n // File was uploaded via drag & drop\n if (filePath !== \"\") {\n relativeFolderPath = filePath;\n } else if (fileWebkitRelativePath !== \"\") {\n // File was uploaded using upload button\n relativeFolderPath = fileWebkitRelativePath;\n }\n\n let prefixPath = \"\";\n\n if (path !== \"\" || relativeFolderPath !== \"\") {\n const finalFolderPath = relativeFolderPath\n .split(\"/\")\n .slice(0, -1)\n .join(\"/\");\n\n const pathClean = path.endsWith(\"/\") ? path.slice(0, -1) : path;\n\n prefixPath = `${pathClean}${\n !pathClean.endsWith(\"/\") &&\n finalFolderPath !== \"\" &&\n !finalFolderPath.startsWith(\"/\")\n ? \"/\"\n : \"\"\n }${finalFolderPath}${\n !finalFolderPath.endsWith(\"/\") ||\n (finalFolderPath.trim() === \"\" && !path.endsWith(\"/\"))\n ? \"/\"\n : \"\"\n }`;\n }\n\n if (prefixPath !== \"\") {\n uploadUrl = `${uploadUrl}?prefix=${encodeURIComponent(\n prefixPath + fileName,\n )}`;\n } else {\n uploadUrl = `${uploadUrl}?prefix=${encodeURIComponent(fileName)}`;\n }\n\n const identity = encodeURIComponent(\n `${bucketName}-${prefixPath}-${new Date().getTime()}-${Math.random()}`,\n );\n\n let xhr = new XMLHttpRequest();\n xhr.open(\"POST\", uploadUrl, true);\n if (anonymousMode) {\n xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n }\n // xhr.setRequestHeader(\"X-Anonymous\", \"1\");\n\n const areMultipleFiles = files.length > 1;\n let errorMessage = `An error occurred while uploading the file${\n areMultipleFiles ? \"s\" : \"\"\n }.`;\n\n const errorMessages: any = {\n 413: \"Error - File size too large\",\n };\n\n xhr.withCredentials = false;\n xhr.onload = function () {\n // resolve promise only when HTTP code is ok\n if (xhr.status >= 200 && xhr.status < 300) {\n dispatch(completeObject(identity));\n resolve({ status: xhr.status });\n\n removeTrace(ID);\n } else {\n // reject promise if there was a server error\n if (errorMessages[xhr.status]) {\n errorMessage = errorMessages[xhr.status];\n } else if (xhr.response) {\n try {\n const err = JSON.parse(xhr.response);\n errorMessage = err.detailedMessage;\n } catch (e) {\n errorMessage = \"something went wrong\";\n }\n }\n\n dispatch(\n failObject({\n instanceID: identity,\n msg: errorMessage,\n }),\n );\n reject({ status: xhr.status, message: errorMessage });\n\n removeTrace(ID);\n }\n };\n\n xhr.upload.addEventListener(\"error\", () => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n });\n\n xhr.upload.addEventListener(\"progress\", (event) => {\n const progress = Math.floor((event.loaded * 100) / event.total);\n\n dispatch(\n updateProgress({\n instanceID: identity,\n progress: progress,\n }),\n );\n });\n\n xhr.onerror = () => {\n reject(errorMessage);\n dispatch(\n failObject({\n instanceID: identity,\n msg: \"A network error occurred.\",\n }),\n );\n return;\n };\n xhr.onloadend = () => {\n if (files.length === 0) {\n dispatch(setReloadObjectsList(true));\n }\n };\n xhr.onabort = () => {\n dispatch(cancelObjectInList(identity));\n };\n\n const formData = new FormData();\n if (file.size !== undefined) {\n formData.append(file.size.toString(), blobFile, fileName);\n storeCallForObjectWithID(ID, xhr);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identity,\n percentage: 0,\n prefix: `${prefixPath}${fileName}`,\n type: \"upload\",\n waitingForFile: false,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n storeFormDataWithID(ID, formData);\n }\n });\n };\n\n const uploadFilePromises: any = [];\n // open object manager\n dispatch(openList());\n for (let i = 0; i < files.length; i++) {\n const file = files[i];\n uploadFilePromises.push(uploadPromise(file));\n }\n Promise.allSettled(uploadFilePromises).then((results: Array) => {\n const errors = results.filter(\n (result) => result.status === \"rejected\",\n );\n if (errors.length > 0) {\n const totalFiles = uploadFilePromises.length;\n const successUploadedFiles =\n uploadFilePromises.length - errors.length;\n const err: ErrorResponseHandler = {\n errorMessage: \"There were some errors during file upload\",\n detailedError: `Uploaded files ${successUploadedFiles}/${totalFiles}`,\n };\n dispatch(setErrorSnackMessage(err));\n }\n // We force objects list reload after all promises were handled\n dispatch(setReloadObjectsList(true));\n });\n };\n\n upload(files, bucketName, pathPrefix, folderPath);\n },\n [bucketName, dispatch, simplePath, anonymousMode],\n );\n\n const onDrop = useCallback(\n (acceptedFiles: any[]) => {\n if (acceptedFiles && acceptedFiles.length > 0 && canUpload) {\n let newFolderPath: string = acceptedFiles[0].path;\n //Should we filter by allowed file extensions if any?.\n let allowedFiles = acceptedFiles;\n\n if (allowedFileExtensions.length > 0) {\n allowedFiles = acceptedFiles.filter((file) => {\n const fileExtn = extractFileExtn(file.name);\n return allowedFileExtensions.includes(fileExtn);\n });\n }\n\n if (allowedFiles.length) {\n uploadObject(allowedFiles, newFolderPath);\n console.log(\n `${allowedFiles.length} Allowed Files Processed out of ${acceptedFiles.length}.`,\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n\n if (allowedFiles.length !== acceptedFiles.length) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload is restricted.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n } else {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Could not process drag and drop.\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n\n console.error(\n \"Could not process drag and drop . upload may be restricted.\",\n pathAsResourceInPolicy,\n ...sessionGrantWildCards,\n );\n }\n }\n if (!canUpload) {\n dispatch(\n setErrorSnackMessage({\n errorMessage: \"Upload not allowed\",\n detailedError: permissionTooltipHelper(\n [IAM_SCOPES.S3_PUT_OBJECT, IAM_SCOPES.S3_PUT_ACTIONS],\n \"upload objects to this location\",\n ),\n }),\n );\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [uploadObject],\n );\n\n const { getRootProps, getInputProps, isDragActive, isDragAccept } =\n useDropzone({\n noClick: true,\n onDrop,\n });\n\n const dndStyles = useMemo(\n () => ({\n ...baseDnDStyle,\n ...(isDragActive ? activeDnDStyle : {}),\n ...(isDragAccept ? acceptDnDStyle : {}),\n }),\n [isDragActive, isDragAccept],\n );\n\n const closeShareModal = () => {\n dispatch(setShareFileModalOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const rewindCloseModal = () => {\n setRewindSelect(false);\n };\n\n const closePreviewWindow = () => {\n dispatch(setPreviewOpen(false));\n dispatch(setSelectedPreview(null));\n };\n\n const onClosePanel = (forceRefresh: boolean) => {\n dispatch(setSelectedObjectView(null));\n dispatch(setVersionsModeEnabled({ status: false }));\n if (detailsOpen && selectedInternalPaths !== null) {\n // We change URL to be the contained folder\n\n const splitURLS = internalPaths.split(\"/\");\n\n // We remove the last section of the URL as it should be a file\n splitURLS.pop();\n\n let URLItem = \"\";\n\n if (splitURLS && splitURLS.length > 0) {\n URLItem = `${splitURLS.join(\"/\")}/`;\n }\n\n navigate(\n `/browser/${encodeURIComponent(bucketName)}/${encodeURIComponent(URLItem)}`,\n );\n }\n\n dispatch(setObjectDetailsView(false));\n\n if (forceRefresh) {\n dispatch(setReloadObjectsList(true));\n }\n };\n\n const setDeletedAction = () => {\n dispatch(resetMessages());\n dispatch(setShowDeletedObjects(!showDeleted));\n onClosePanel(true);\n };\n\n const closeRenameModal = () => {\n dispatch(setDownloadRenameModal(null));\n };\n\n const closeAddAccessRule = () => {\n dispatch(setAnonymousAccessOpen(false));\n };\n\n let createdTime = DateTime.now();\n\n if (bucketInfo?.creation_date) {\n createdTime = DateTime.fromISO(bucketInfo.creation_date) as DateTime;\n }\n\n const downloadToolTip =\n selectedObjects?.length <= 1\n ? \"Download Selected\"\n : ` Download selected objects as Zip. Any Deleted objects in the selection would be skipped from download.`;\n\n const multiActionButtons = [\n {\n action: () => {\n dispatch(downloadSelected(bucketName));\n },\n label: \"Download\",\n disabled: !canDownload || isSelObjectDelMarker,\n icon: ,\n tooltip: canDownload\n ? downloadToolTip\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_GET_OBJECT, IAM_SCOPES.S3_GET_ACTIONS],\n \"download objects from this bucket\",\n ),\n },\n {\n action: () => {\n dispatch(openShare());\n },\n label: \"Share\",\n disabled:\n selectedObjects.length !== 1 || !canShareFile || isSelObjectDelMarker,\n icon: ,\n tooltip: canShareFile ? \"Share Selected File\" : \"Sharing unavailable\",\n },\n {\n action: () => {\n dispatch(openPreview());\n },\n label: \"Preview\",\n disabled:\n selectedObjects.length !== 1 || !canPreviewFile || isSelObjectDelMarker,\n icon: ,\n tooltip: canPreviewFile ? \"Preview Selected File\" : \"Preview unavailable\",\n },\n {\n action: () => {\n dispatch(openAnonymousAccess());\n },\n label: \"Anonymous Access\",\n disabled:\n selectedObjects.length !== 1 ||\n !selectedObjects[0].endsWith(\"/\") ||\n !canSetAnonymousAccess,\n icon: ,\n tooltip:\n selectedObjects.length === 1 && selectedObjects[0].endsWith(\"/\")\n ? \"Set Anonymous Access to this Folder\"\n : \"Anonymous Access unavailable\",\n },\n {\n action: () => {\n setDeleteMultipleOpen(true);\n },\n label: \"Delete\",\n icon: ,\n disabled: !canDelete || selectedObjects.length === 0,\n tooltip: canDelete\n ? \"Delete Selected Files\"\n : permissionTooltipHelper(\n [IAM_SCOPES.S3_DELETE_OBJECT],\n \"delete objects in this bucket\",\n ),\n },\n ];\n\n return (\n \n {shareFileModalOpen && selectedPreview && (\n \n )}\n {deleteMultipleOpen && (\n \n )}\n {rewindSelect && (\n \n )}\n {previewOpen && selectedPreview && (\n \n )}\n {!!downloadRenameModal && (\n \n )}\n {anonymousAccessOpen && (\n \n )}\n\n \n {anonymousMode && (\n
\n \n
\n )}\n \n \n \n \n }\n title={bucketName}\n subTitle={\n !anonymousMode ? (\n \n \n Created on: \n \n {bucketInfo?.creation_date\n ? createdTime.toFormat(\n \"ccc, LLL dd yyyy HH:mm:ss (ZZZZ)\",\n )\n : \"\"}\n \n \n \n Access:  \n {bucketInfo?.access || \"\"}\n \n {bucketInfo && (\n \n \n {bucketInfo.size && (\n {niceBytesInt(bucketInfo.size)}\n )}\n {bucketInfo.size && quota && (\n \n {\" \"}\n / {niceBytesInt(quota.quota || 0)}\n \n )}\n {bucketInfo.size && bucketInfo.objects ? \" - \" : \"\"}\n {bucketInfo.objects && (\n \n {bucketInfo.objects} Object\n {bucketInfo.objects && bucketInfo.objects !== 1\n ? \"s\"\n : \"\"}\n \n )}\n \n \n )}\n \n ) : null\n }\n actions={\n \n {!anonymousMode && (\n \n \n \n \n }\n variant={\"regular\"}\n onClick={() => {\n setRewindSelect(true);\n }}\n disabled={!isVersioningApplied || !canRewind}\n />\n \n )}\n \n }\n variant={\"regular\"}\n onClick={() => {\n if (versionsMode) {\n dispatch(setLoadingVersions(true));\n } else {\n dispatch(resetMessages());\n dispatch(setReloadObjectsList(true));\n }\n }}\n disabled={\n anonymousMode\n ? false\n : !hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || rewindEnabled\n }\n />\n \n \n \n {\n if (fileUpload && fileUpload.current) {\n fileUpload.current.click();\n }\n closeMenu();\n }}\n uploadFolderFunction={(closeMenu) => {\n if (folderUpload && folderUpload.current) {\n folderUpload.current.click();\n }\n closeMenu();\n }}\n />\n \n }\n bottomBorder={false}\n />\n \n \n \n \n {versionsMode ? (\n \n {selectedInternalPaths !== null && (\n \n )}\n \n ) : (\n \n \n {!anonymousMode && (\n \n \n )\n }\n hidePathButton={false}\n />\n \n )}\n \n \n \n )}\n {!anonymousMode && (\n \n {\n onClosePanel(false);\n }}\n className={`${versionsMode ? \"hideListOnSmall\" : \"\"}`}\n >\n {selectedObjects.length > 0 && (\n \n )}\n {selectedInternalPaths !== null && (\n \n )}\n \n \n )}\n \n \n
\n
\n );\n};\n\nexport default ListObjects;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 } from \"react\";\nimport {\n IAM_PAGES,\n IAM_PERMISSIONS,\n IAM_ROLES,\n IAM_SCOPES,\n} from \"../../../common/SecureComponent/permissions\";\nimport { SecureComponent } from \"../../../common/SecureComponent\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\nimport { BackLink, Button, SettingsIcon, Grid } from \"mds\";\nimport AutoColorIcon from \"../Common/Components/AutoColorIcon\";\nimport { useSelector } from \"react-redux\";\nimport { selFeatures } from \"../consoleSlice\";\nimport hasPermission from \"../../../common/SecureComponent/accessControl\";\nimport { useNavigate } from \"react-router-dom\";\nimport SearchBox from \"../Common/SearchBox\";\nimport { setSearchVersions } from \"./objectBrowserSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport FilterObjectsSB from \"./FilterObjectsSB\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport ObjectManagerButton from \"../Common/ObjectManager/ObjectManagerButton\";\nimport HelpMenu from \"../HelpMenu\";\nimport { setHelpName } from \"../../../systemSlice\";\n\ninterface IOBHeader {\n bucketName: string;\n}\n\nconst OBHeader = ({ bucketName }: IOBHeader) => {\n const dispatch = useAppDispatch();\n const features = useSelector(selFeatures);\n\n const versionsMode = useSelector(\n (state: AppState) => state.objectBrowser.versionsMode,\n );\n const versionedFile = useSelector(\n (state: AppState) => state.objectBrowser.versionedFile,\n );\n const searchVersions = useSelector(\n (state: AppState) => state.objectBrowser.searchVersions,\n );\n\n const obOnly = !!features?.includes(\"object-browser-only\");\n\n const navigate = useNavigate();\n\n const configureBucketAllowed = hasPermission(bucketName, [\n IAM_SCOPES.S3_GET_BUCKET_POLICY,\n IAM_SCOPES.S3_PUT_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_BUCKET_VERSIONING,\n IAM_SCOPES.S3_PUT_BUCKET_VERSIONING,\n IAM_SCOPES.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,\n IAM_SCOPES.S3_DELETE_BUCKET,\n IAM_SCOPES.S3_GET_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_PUT_BUCKET_NOTIFICATIONS,\n IAM_SCOPES.S3_GET_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_PUT_REPLICATION_CONFIGURATION,\n IAM_SCOPES.S3_GET_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.S3_PUT_LIFECYCLE_CONFIGURATION,\n IAM_SCOPES.ADMIN_GET_BUCKET_QUOTA,\n IAM_SCOPES.ADMIN_SET_BUCKET_QUOTA,\n IAM_SCOPES.S3_PUT_BUCKET_TAGGING,\n IAM_SCOPES.S3_GET_BUCKET_TAGGING,\n IAM_SCOPES.S3_LIST_BUCKET_VERSIONS,\n IAM_SCOPES.S3_GET_BUCKET_POLICY_STATUS,\n IAM_SCOPES.S3_DELETE_BUCKET_POLICY,\n IAM_SCOPES.S3_GET_ACTIONS,\n IAM_SCOPES.S3_PUT_ACTIONS,\n ]);\n\n const searchBar = (\n \n {!versionsMode ? (\n \n \n \n ) : (\n \n {\n dispatch(setSearchVersions(value));\n }}\n value={searchVersions}\n />\n \n )}\n \n );\n\n useEffect(() => {\n dispatch(setHelpName(\"object_browser\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n {!obOnly ? (\n {\n navigate(IAM_PAGES.OBJECT_BROWSER_VIEW);\n }}\n />\n }\n actions={\n \n \n \n navigate(`/buckets/${bucketName}/admin`)}\n icon={\n \n }\n style={{\n padding: \"0 10px\",\n }}\n />\n \n \n \n \n }\n middleComponent={searchBar}\n />\n ) : (\n \n \n \n \n \n {searchBar}\n \n \n \n )}\n \n );\n};\n\nexport default OBHeader;\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, useCallback, useEffect } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useLocation, useParams } from \"react-router-dom\";\nimport { api } from \"api\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { IAM_SCOPES } from \"../../../../common/SecureComponent/permissions\";\nimport {\n resetMessages,\n setIsVersioned,\n setLoadingLocking,\n setLoadingObjectInfo,\n setLoadingVersioning,\n setLoadingVersions,\n setLockingEnabled,\n setObjectDetailsView,\n setRequestInProgress,\n setSelectedObjectView,\n setVersionsModeEnabled,\n} from \"../../ObjectBrowser/objectBrowserSlice\";\nimport ListObjects from \"../ListBuckets/Objects/ListObjects/ListObjects\";\nimport hasPermission from \"../../../../common/SecureComponent/accessControl\";\nimport OBHeader from \"../../ObjectBrowser/OBHeader\";\n\nconst BrowserHandler = () => {\n const dispatch = useAppDispatch();\n const params = useParams();\n const location = useLocation();\n\n const loadingVersioning = useSelector(\n (state: AppState) => state.objectBrowser.loadingVersioning,\n );\n\n const rewindEnabled = useSelector(\n (state: AppState) => state.objectBrowser.rewind.rewindEnabled,\n );\n const rewindDate = useSelector(\n (state: AppState) => state.objectBrowser.rewind.dateToRewind,\n );\n const showDeleted = useSelector(\n (state: AppState) => state.objectBrowser.showDeleted,\n );\n const requestInProgress = useSelector(\n (state: AppState) => state.objectBrowser.requestInProgress,\n );\n const loadingLocking = useSelector(\n (state: AppState) => state.objectBrowser.loadingLocking,\n );\n const reloadObjectsList = useSelector(\n (state: AppState) => state.objectBrowser.reloadObjectsList,\n );\n const simplePath = useSelector(\n (state: AppState) => state.objectBrowser.simplePath,\n );\n const anonymousMode = useSelector(\n (state: AppState) => state.system.anonymousMode,\n );\n const selectedBucket = useSelector(\n (state: AppState) => state.objectBrowser.selectedBucket,\n );\n const records = useSelector((state: AppState) => state.objectBrowser.records);\n\n const bucketName = params.bucketName || \"\";\n const pathSegment = location.pathname.split(\n `/browser/${encodeURIComponent(bucketName)}/`,\n );\n const internalPaths =\n pathSegment.length === 2 ? decodeURIComponent(pathSegment[1]) : \"\";\n\n const initWSRequest = useCallback(\n (path: string) => {\n let currDate = new Date();\n\n let date = currDate.toISOString();\n\n if (rewindDate !== null && rewindEnabled) {\n date = rewindDate;\n }\n\n const payloadData = {\n bucketName,\n path,\n rewindMode: rewindEnabled || showDeleted,\n date: date,\n };\n\n dispatch({ type: \"socket/OBRequest\", payload: payloadData });\n },\n [bucketName, showDeleted, rewindDate, rewindEnabled, dispatch],\n );\n\n // Common path load\n const pathLoad = useCallback(\n (forceLoad: boolean = false) => {\n // We exit Versions mode in case of path change\n dispatch(setVersionsModeEnabled({ status: false }));\n\n let searchPath = internalPaths;\n\n if (!internalPaths.endsWith(\"/\") && internalPaths !== \"\") {\n searchPath = `${internalPaths.split(\"/\").slice(0, -1).join(\"/\")}/`;\n }\n\n if (searchPath === \"/\") {\n searchPath = \"\";\n }\n\n // If the path is different of the actual path or reload objects list is requested, then we initialize a new request to load a new record set.\n if (\n searchPath !== simplePath ||\n bucketName !== selectedBucket ||\n forceLoad\n ) {\n dispatch(setRequestInProgress(true));\n initWSRequest(searchPath);\n }\n },\n [\n internalPaths,\n dispatch,\n simplePath,\n selectedBucket,\n bucketName,\n initWSRequest,\n ],\n );\n\n useEffect(() => {\n return () => {\n dispatch({ type: \"socket/OBCancelLast\" });\n };\n }, [dispatch]);\n\n // Object Details handler\n useEffect(() => {\n dispatch(setLoadingVersioning(true));\n\n if (internalPaths.endsWith(\"/\") || internalPaths === \"\") {\n dispatch(setObjectDetailsView(false));\n dispatch(setSelectedObjectView(null));\n dispatch(setLoadingLocking(true));\n } else {\n dispatch(setLoadingObjectInfo(true));\n dispatch(setObjectDetailsView(true));\n dispatch(setLoadingVersions(true));\n dispatch(setSelectedObjectView(internalPaths || \"\"));\n }\n }, [bucketName, internalPaths, rewindDate, rewindEnabled, dispatch]);\n\n // Navigation Listing Request\n useEffect(() => {\n pathLoad(false);\n }, [pathLoad]);\n\n // Reload Handler\n useEffect(() => {\n if (reloadObjectsList && records.length === 0 && !requestInProgress) {\n pathLoad(true);\n }\n }, [reloadObjectsList, records, requestInProgress, pathLoad]);\n\n const displayListObjects =\n hasPermission(bucketName, [\n IAM_SCOPES.S3_LIST_BUCKET,\n IAM_SCOPES.S3_ALL_LIST_BUCKET,\n ]) || anonymousMode;\n\n useEffect(() => {\n if (loadingVersioning && !anonymousMode) {\n if (displayListObjects) {\n api.buckets\n .getBucketVersioning(bucketName)\n .then((res) => {\n dispatch(setIsVersioned(res.data));\n dispatch(setLoadingVersioning(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Versioning Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingVersioning(false));\n });\n } else {\n dispatch(setLoadingVersioning(false));\n dispatch(resetMessages());\n }\n }\n }, [\n bucketName,\n loadingVersioning,\n dispatch,\n displayListObjects,\n anonymousMode,\n ]);\n\n useEffect(() => {\n if (loadingLocking) {\n if (displayListObjects) {\n api.buckets\n .getBucketObjectLockingStatus(bucketName)\n .then((res) => {\n dispatch(setLockingEnabled(res.data.object_locking_enabled));\n dispatch(setLoadingLocking(false));\n })\n .catch((err) => {\n console.error(\n \"Error Getting Object Locking Status: \",\n err.error.detailedMessage,\n );\n dispatch(setLoadingLocking(false));\n });\n } else {\n dispatch(resetMessages());\n dispatch(setLoadingLocking(false));\n }\n }\n }, [bucketName, loadingLocking, dispatch, displayListObjects]);\n\n return (\n \n {!anonymousMode && }\n \n \n );\n};\n\nexport default BrowserHandler;\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 { DateTime } from \"luxon\";\nimport { Box, InputBox, InputLabel, LinkIcon } from \"mds\";\n\nconst DAY_SECONDS = 86400;\nconst HOUR_SECONDS = 3600;\nconst HOUR_MINUTES = 60;\n\ninterface IDaysSelector {\n id: string;\n maxSeconds: number;\n label: string;\n entity: string;\n onChange: (newDate: string, isValid: boolean) => void;\n}\n\nconst calculateNewTime = (days: number, hours: number, minutes: number) => {\n return DateTime.now()\n .plus({\n hours: hours + days * 24,\n minutes,\n })\n .toISO(); // Lump days into hours to avoid daylight savings causing issues\n};\n\nconst DaysSelector = ({\n id,\n label,\n maxSeconds,\n entity,\n onChange,\n}: IDaysSelector) => {\n const maxDays = Math.floor(maxSeconds / DAY_SECONDS);\n const maxHours = Math.floor((maxSeconds % DAY_SECONDS) / HOUR_SECONDS);\n const maxMinutes = Math.floor((maxSeconds % HOUR_SECONDS) / HOUR_MINUTES);\n\n const [selectedDays, setSelectedDays] = useState(0);\n const [selectedHours, setSelectedHours] = useState(0);\n const [selectedMinutes, setSelectedMinutes] = useState(0);\n const [validDate, setValidDate] = useState(true);\n const [dateSelected, setDateSelected] = useState(null);\n\n // Set initial values\n useEffect(() => {\n setSelectedDays(maxDays);\n setSelectedHours(maxHours);\n setSelectedMinutes(maxMinutes);\n }, [maxDays, maxHours, maxMinutes]);\n\n useEffect(() => {\n if (\n !isNaN(selectedHours) &&\n !isNaN(selectedDays) &&\n !isNaN(selectedMinutes)\n ) {\n setDateSelected(\n calculateNewTime(selectedDays, selectedHours, selectedMinutes),\n );\n }\n }, [selectedDays, selectedHours, selectedMinutes]);\n\n useEffect(() => {\n if (validDate && dateSelected) {\n const formattedDate = DateTime.fromISO(dateSelected).toFormat(\n \"yyyy-MM-dd HH:mm:ss\",\n );\n onChange(formattedDate.split(\" \").join(\"T\"), true);\n } else {\n onChange(\"0000-00-00\", false);\n }\n }, [dateSelected, onChange, validDate]);\n\n // Basic validation for inputs\n useEffect(() => {\n let valid = true;\n\n if (\n selectedDays < 0 ||\n selectedDays > 7 ||\n selectedDays > maxDays ||\n isNaN(selectedDays)\n ) {\n valid = false;\n }\n\n if (selectedHours < 0 || selectedHours > 23 || isNaN(selectedHours)) {\n valid = false;\n }\n\n if (selectedMinutes < 0 || selectedMinutes > 59 || isNaN(selectedMinutes)) {\n valid = false;\n }\n\n if (selectedDays === maxDays) {\n if (selectedHours > maxHours) {\n valid = false;\n }\n\n if (selectedHours === maxHours) {\n if (selectedMinutes > maxMinutes) {\n valid = false;\n }\n }\n }\n\n if (selectedDays <= 0 && selectedHours <= 0 && selectedMinutes <= 0) {\n valid = false;\n }\n\n setValidDate(valid);\n }, [\n dateSelected,\n maxDays,\n maxHours,\n maxMinutes,\n onChange,\n selectedDays,\n selectedHours,\n selectedMinutes,\n ]);\n\n const extraStyles = {\n \"& .textBoxContainer\": {\n minWidth: 0,\n },\n \"& input\": {\n textAlign: \"center\" as const,\n paddingRight: 10,\n paddingLeft: 10,\n width: 40,\n },\n };\n\n return (\n \n \n {label}\n \n label\": {\n fontWeight: 400,\n marginLeft: 15,\n marginRight: 25,\n },\n },\n }}\n >\n \n {\n setSelectedDays(parseInt(e.target.value));\n }}\n value={selectedDays.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedHours(parseInt(e.target.value));\n }}\n value={selectedHours.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n {\n setSelectedMinutes(parseInt(e.target.value));\n }}\n value={selectedMinutes.toString()}\n sx={extraStyles}\n noLabelMinWidth\n />\n \n \n .min-icon\": {\n color: \"#5E5E5E\",\n width: 15,\n height: 15,\n marginRight: 10,\n },\n },\n \"& .validTill\": {\n fontWeight: \"bold\",\n marginLeft: 15,\n },\n \"& .invalidDurationText\": {\n marginTop: 15,\n display: \"flex\",\n color: \"red\",\n fontSize: 11,\n },\n }}\n >\n {validDate && dateSelected ? (\n
\n \n
{entity} will be available until:
{\" \"}\n
\n {DateTime.fromISO(dateSelected).toFormat(\n \"MM/dd/yyyy HH:mm:ss ZZZZ\",\n )}\n
\n
\n ) : (\n
\n Please select a valid duration.\n
\n )}\n \n \n );\n};\n\nexport default DaysSelector;\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 { useSelector } from \"react-redux\";\nimport {\n Button,\n CopyIcon,\n ReadBox,\n ShareIcon,\n Grid,\n ProgressBar,\n Tooltip,\n} from \"mds\";\nimport CopyToClipboard from \"react-copy-to-clipboard\";\nimport ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport DaysSelector from \"../../../../Common/FormComponents/DaysSelector/DaysSelector\";\nimport { niceTimeFromSeconds } from \"../../../../../../common/utils\";\nimport {\n selDistSet,\n setModalErrorSnackMessage,\n setModalSnackMessage,\n} from \"../../../../../../systemSlice\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"api/consoleApi\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport { getMaxShareLinkExpTime } from \"screens/Console/ObjectBrowser/objectBrowserThunks\";\nimport { maxShareLinkExpTime } from \"screens/Console/ObjectBrowser/objectBrowserSlice\";\nimport debounce from \"lodash/debounce\";\n\ninterface IShareFileProps {\n open: boolean;\n bucketName: string;\n dataObject: BucketObject;\n closeModalAndRefresh: () => void;\n}\n\nconst ShareFile = ({\n open,\n closeModalAndRefresh,\n bucketName,\n dataObject,\n}: IShareFileProps) => {\n const dispatch = useAppDispatch();\n const distributedSetup = useSelector(selDistSet);\n const maxShareLinkExpTimeVal = useSelector(maxShareLinkExpTime);\n const [shareURL, setShareURL] = useState(\"\");\n const [isLoadingVersion, setIsLoadingVersion] = useState(true);\n const [isLoadingFile, setIsLoadingFile] = useState(false);\n const [selectedDate, setSelectedDate] = useState(\"\");\n const [dateValid, setDateValid] = useState(true);\n const [versionID, setVersionID] = useState(\"null\");\n\n const debouncedDateChange = debounce((newDate: string, isValid: boolean) => {\n setDateValid(isValid);\n if (isValid) {\n setSelectedDate(newDate);\n return;\n }\n setSelectedDate(\"\");\n setShareURL(\"\");\n }, 300);\n\n useEffect(() => {\n dispatch(getMaxShareLinkExpTime());\n }, [dispatch]);\n\n useEffect(() => {\n // In case version is undefined, we get the latest version of the object\n if (dataObject.version_id === undefined) {\n // In case it is not distributed setup, then we default to \"null\";\n if (distributedSetup) {\n api.buckets\n .listObjects(bucketName, {\n prefix: dataObject.name || \"\",\n with_versions: distributedSetup,\n })\n .then((res) => {\n const result: BucketObject[] = res.data.objects || [];\n\n const latestVersion: BucketObject | undefined = result.find(\n (elem: BucketObject) => elem.is_latest,\n );\n\n if (latestVersion) {\n setVersionID(`${latestVersion.version_id}`);\n return;\n }\n\n // Version couldn't be retrieved, we default\n setVersionID(\"null\");\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n });\n\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(\"null\");\n setIsLoadingVersion(false);\n return;\n }\n setVersionID(dataObject.version_id || \"null\");\n setIsLoadingVersion(false);\n }, [bucketName, dataObject, distributedSetup, dispatch]);\n\n useEffect(() => {\n if (dateValid && !isLoadingVersion) {\n setIsLoadingFile(true);\n setShareURL(\"\");\n\n const slDate = new Date(`${selectedDate}`);\n const currDate = new Date();\n\n const diffDate = Math.ceil(\n (slDate.getTime() - currDate.getTime()) / 1000,\n );\n\n if (diffDate > 0) {\n api.buckets\n .shareObject(bucketName, {\n prefix: dataObject.name || \"\",\n version_id: versionID,\n expires: selectedDate !== \"\" ? `${diffDate}s` : \"\",\n })\n .then((res) => {\n setShareURL(res.data);\n setIsLoadingFile(false);\n })\n .catch((err) => {\n dispatch(setModalErrorSnackMessage(errorToHandler(err.error)));\n setShareURL(\"\");\n setIsLoadingFile(false);\n });\n }\n }\n }, [\n dataObject,\n selectedDate,\n bucketName,\n dateValid,\n setShareURL,\n dispatch,\n distributedSetup,\n isLoadingVersion,\n versionID,\n ]);\n\n return (\n \n }\n modalOpen={open}\n onClose={() => {\n closeModalAndRefresh();\n }}\n >\n {isLoadingVersion && (\n \n \n \n )}\n {!isLoadingVersion && (\n \n \n \n You can reset your session by logging out and logging back\n in to the web UI.

\n You can increase the maximum configuration time by setting\n the MINIO_STS_DURATION environment variable on all your\n nodes.

\n You can use mc share as an alternative to this UI,\n where the session length does not limit the URL validity.\n \n }\n >\n \n The following URL lets you share this object without requiring\n a login.
\n The URL expires automatically at the earlier of your\n configured time ({niceTimeFromSeconds(maxShareLinkExpTimeVal)}\n ) or the expiration of your current web session.\n
\n \n \n
\n \n \n \n \n \n {\n dispatch(\n setModalSnackMessage(\"Share URL Copied to clipboard\"),\n );\n }}\n disabled={shareURL === \"\" || isLoadingFile}\n style={{\n width: \"28px\",\n height: \"28px\",\n padding: \"0px\",\n }}\n icon={}\n />\n \n }\n >\n {shareURL}\n \n \n
\n )}\n \n
\n );\n};\n\nexport default ShareFile;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { Document, Page, pdfjs } from \"react-pdf\";\nimport { Box, Button, InformativeMessage } from \"mds\";\n\npdfjs.GlobalWorkerOptions.workerSrc = \"./scripts/pdf.worker.min.mjs\";\n\ninterface IPreviewPDFProps {\n path: string;\n loading: boolean;\n onLoad: () => void;\n downloadFile: () => void;\n}\n\nconst PreviewPDF = ({\n path,\n loading,\n onLoad,\n downloadFile,\n}: IPreviewPDFProps) => {\n const [errorState, setErrorState] = useState(false);\n const [totalPages, setTotalPages] = useState(0);\n\n if (!path) {\n return null;\n }\n\n const renderPages = totalPages > 5 ? 5 : totalPages;\n const arrayCreate = Array.from(Array(renderPages).keys());\n\n return (\n \n {errorState && totalPages === 0 && (\n \n File preview couldn't be displayed, Please try Download instead.\n \n \n Download File\n \n \n \n }\n sx={{ marginBottom: 10 }}\n />\n )}\n {!loading && !errorState && (\n \n This is a File Preview for the first {arrayCreate.length} pages of\n the document, if you wish to work with the full document please\n download instead.\n \n \n Download File\n \n \n \n }\n sx={{ marginBottom: 10 }}\n />\n )}\n {!errorState && (\n \n {\n setTotalPages(_pdfInfo.numPages || 0);\n setErrorState(false);\n onLoad();\n }}\n onLoadError={(error) => {\n setErrorState(true);\n onLoad();\n console.error(error);\n }}\n >\n {arrayCreate.map((item) => (\n \n ))}\n \n \n )}\n \n );\n};\n\nexport default PreviewPDF;\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, useCallback, useEffect, useState } from \"react\";\nimport { ProgressBar, Grid, Box, InformativeMessage } from \"mds\";\nimport get from \"lodash/get\";\nimport { AllowedPreviews, previewObjectType } from \"../utils\";\nimport { api } from \"../../../../../../api\";\nimport PreviewPDF from \"./PreviewPDF\";\nimport { downloadObject } from \"../../../../ObjectBrowser/utils\";\nimport { useAppDispatch } from \"../../../../../../store\";\nimport { BucketObject } from \"../../../../../../api/consoleApi\";\n\ninterface IPreviewFileProps {\n bucketName: string;\n actualInfo: BucketObject;\n isFullscreen?: boolean;\n}\n\nconst PreviewFile = ({\n bucketName,\n actualInfo,\n isFullscreen = false,\n}: IPreviewFileProps) => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(true);\n\n const [metaData, setMetaData] = useState(null);\n const [isMetaDataLoaded, setIsMetaDataLoaded] = useState(false);\n\n const objectName = actualInfo?.name || \"\";\n\n const fetchMetadata = useCallback(() => {\n if (!isMetaDataLoaded) {\n api.buckets\n .getObjectMetadata(bucketName, {\n prefix: objectName,\n versionID: actualInfo.version_id || \"\",\n })\n .then((res) => {\n let metadata = get(res.data, \"objectMetadata\", {});\n setIsMetaDataLoaded(true);\n setMetaData(metadata);\n })\n .catch((err) => {\n console.error(\n \"Error Getting Metadata Status: \",\n err,\n err?.detailedError,\n );\n setIsMetaDataLoaded(true);\n });\n }\n }, [bucketName, objectName, isMetaDataLoaded, actualInfo.version_id]);\n\n useEffect(() => {\n if (bucketName && objectName) {\n fetchMetadata();\n }\n }, [bucketName, objectName, fetchMetadata]);\n\n let path = \"\";\n\n if (actualInfo) {\n let basename = document.baseURI.replace(window.location.origin, \"\");\n path = `${window.location.origin}${basename}api/v1/buckets/${encodeURIComponent(bucketName)}/objects/download?preview=true&prefix=${encodeURIComponent(actualInfo.name || \"\")}`;\n if (actualInfo.version_id) {\n path = path.concat(`&version_id=${actualInfo.version_id}`);\n }\n }\n\n let objectType: AllowedPreviews = previewObjectType(metaData, objectName);\n\n const iframeLoaded = () => {\n setLoading(false);\n };\n\n return (\n \n {objectType !== \"none\" && loading && (\n \n \n \n )}\n {isMetaDataLoaded ? (\n \n {objectType === \"video\" && (\n \n \n \n )}\n {objectType === \"audio\" && (\n \n \n \n )}\n {objectType === \"image\" && (\n \n )}\n {objectType === \"pdf\" && (\n \n \n downloadObject(dispatch, bucketName, path, actualInfo)\n }\n />\n \n )}\n {objectType === \"none\" && (\n
\n \n
\n )}\n {objectType !== \"none\" &&\n objectType !== \"video\" &&\n objectType !== \"audio\" &&\n objectType !== \"image\" &&\n objectType !== \"pdf\" && (\n
\n \n File couldn't be loaded. Please try Download instead\n \n
\n )}\n \n ) : null}\n
\n );\n};\nexport default PreviewFile;\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 ModalWrapper from \"../../../../Common/ModalWrapper/ModalWrapper\";\nimport PreviewFileContent from \"./PreviewFileContent\";\nimport { ObjectPreviewIcon } from \"mds\";\nimport { BucketObject } from \"../../../../../../api/consoleApi\";\n\ninterface IPreviewFileProps {\n open: boolean;\n bucketName: string;\n actualInfo: BucketObject;\n onClosePreview: () => void;\n}\n\nconst PreviewFileModal = ({\n open,\n bucketName,\n actualInfo,\n onClosePreview,\n}: IPreviewFileProps) => {\n return (\n \n }\n >\n \n \n \n );\n};\n\nexport default PreviewFileModal;\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, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\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 { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default ModalWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { createAsyncThunk } from \"@reduxjs/toolkit\";\nimport { AppState } from \"../../../store\";\nimport { getClientOS } from \"../../../common/utils\";\nimport { BucketObjectItem } from \"../Buckets/ListBuckets/Objects/ListObjects/types\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport {\n download,\n downloadSelectedAsZip,\n} from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setAnonymousAccessOpen,\n setDownloadRenameModal,\n setMaxShareLinkExpTime,\n setNewObject,\n setPreviewOpen,\n setSelectedPreview,\n setShareFileModalOpen,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { DateTime } from \"luxon\";\nimport { api } from \"api\";\n\nexport const downloadSelected = createAsyncThunk(\n \"objectBrowser/downloadSelected\",\n async (bucketName: string, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n const downloadObject = (object: BucketObjectItem) => {\n const identityDownload = encodeURIComponent(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n object.name,\n object.version_id,\n object.size,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name,\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n };\n\n if (state.objectBrowser.selectedObjects.length !== 0) {\n let itemsToDownload: BucketObjectItem[] = [];\n\n const filterFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n itemsToDownload = state.objectBrowser.records.filter(filterFunction);\n\n // In case just one element is selected, then we trigger download modal validation.\n if (itemsToDownload.length === 1) {\n if (\n itemsToDownload[0].name.length > 200 &&\n getClientOS().toLowerCase().includes(\"win\")\n ) {\n dispatch(setDownloadRenameModal(itemsToDownload[0]));\n return;\n } else {\n downloadObject(itemsToDownload[0]);\n }\n } else {\n if (itemsToDownload.length === 1) {\n downloadObject(itemsToDownload[0]);\n } else if (itemsToDownload.length > 1) {\n const fileName = `${DateTime.now().toFormat(\n \"LL-dd-yyyy-HH-mm-ss\",\n )}_files_list.zip`;\n\n // We are enforcing zip download when multiple files are selected for better user experience\n const multiObjList = itemsToDownload.reduce((dwList: any[], bi) => {\n // Download objects/prefixes(recursively) as zip\n // Skip any deleted files selected via \"Show deleted objects\" in selection and log for debugging\n const isDeleted = bi?.delete_flag;\n if (bi && !isDeleted) {\n dwList.push(bi.name);\n } else {\n console.log(`Skipping ${bi?.name} from download.`);\n }\n return dwList;\n }, []);\n\n await downloadSelectedAsZip(bucketName, multiObjList, fileName);\n return;\n }\n }\n }\n },\n);\n\nexport const openPreview = createAsyncThunk(\n \"objectBrowser/openPreview\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setPreviewOpen(true));\n }\n }\n },\n);\n\nexport const openShare = createAsyncThunk(\n \"objectBrowser/openShare\",\n async (_, { getState, rejectWithValue, dispatch }) => {\n const state = getState() as AppState;\n\n if (state.objectBrowser.selectedObjects.length === 1) {\n let fileObject: BucketObjectItem | undefined;\n\n const findFunction = (currValue: BucketObjectItem) =>\n state.objectBrowser.selectedObjects.includes(currValue.name);\n\n fileObject = state.objectBrowser.records.find(findFunction);\n\n if (fileObject) {\n dispatch(setSelectedPreview(fileObject));\n dispatch(setShareFileModalOpen(true));\n }\n }\n },\n);\n\nexport const openAnonymousAccess = createAsyncThunk(\n \"objectBrowser/openAnonymousAccess\",\n async (_, { getState, dispatch }) => {\n const state = getState() as AppState;\n\n if (\n state.objectBrowser.selectedObjects.length === 1 &&\n state.objectBrowser.selectedObjects[0].endsWith(\"/\")\n ) {\n dispatch(setAnonymousAccessOpen(true));\n }\n },\n);\n\nexport const getMaxShareLinkExpTime = createAsyncThunk(\n \"objectBrowser/maxShareLinkExpTime\",\n async (_, { rejectWithValue, dispatch }) => {\n return api.buckets\n .getMaxShareLinkExp()\n .then((res) => {\n dispatch(setMaxShareLinkExpTime(res.data.exp));\n })\n .catch(async (res) => {\n return rejectWithValue(res.error);\n });\n },\n);\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 { getClientOS } from \"../../../common/utils\";\nimport { makeid, storeCallForObjectWithID } from \"./transferManager\";\nimport { download } from \"../Buckets/ListBuckets/Objects/utils\";\nimport {\n cancelObjectInList,\n completeObject,\n failObject,\n setLongFileOpen,\n setNewObject,\n updateProgress,\n} from \"./objectBrowserSlice\";\nimport { AppDispatch } from \"../../../store\";\nimport { setSnackBarMessage } from \"../../../systemSlice\";\nimport { BucketObject } from \"api/consoleApi\";\n\nexport const downloadObject = (\n dispatch: AppDispatch,\n bucketName: string,\n internalPaths: string,\n object: BucketObject,\n) => {\n const identityDownload = encodeURIComponent(\n `${bucketName}-${object.name}-${new Date().getTime()}-${Math.random()}`,\n );\n\n const isWinOs = getClientOS().toLowerCase().includes(\"win\");\n\n if ((object.name?.length || 0) > 200 && isWinOs) {\n dispatch(setLongFileOpen(true));\n return;\n }\n\n const ID = makeid(8);\n\n const downloadCall = download(\n bucketName,\n internalPaths,\n object.version_id,\n object.size || 0,\n null,\n ID,\n (progress) => {\n dispatch(\n updateProgress({\n instanceID: identityDownload,\n progress: progress,\n }),\n );\n },\n () => {\n dispatch(completeObject(identityDownload));\n },\n (msg: string) => {\n dispatch(failObject({ instanceID: identityDownload, msg }));\n },\n () => {\n dispatch(cancelObjectInList(identityDownload));\n },\n () => {\n dispatch(\n setSnackBarMessage(\n \"File download will be handled directly by the browser.\",\n ),\n );\n },\n );\n\n storeCallForObjectWithID(ID, downloadCall);\n dispatch(\n setNewObject({\n ID,\n bucketName,\n done: false,\n instanceID: identityDownload,\n percentage: 0,\n prefix: object.name || \"\",\n type: \"download\",\n waitingForFile: true,\n failed: false,\n cancelled: false,\n errorMessage: \"\",\n }),\n );\n};\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Button, CopyIcon, InputBox, Box, breakPoints } from \"mds\";\n\nconst KeyRevealer = ({ value }: { value: string }) => {\n const [shown, setShown] = useState(false);\n\n return (\n \n {}}\n value={value}\n overlayIcon={}\n readOnly={true}\n overlayAction={() => navigator.clipboard.writeText(value)}\n />\n\n setShown(!shown)}\n label={\"Show/Hide\"}\n />\n \n );\n};\n\nexport default KeyRevealer;\n"],"names":["_ref","modalOpen","onClose","bucket","prefilledRoute","dispatch","useAppDispatch","prefix","setPrefix","useState","selectedAccess","setSelectedAccess","useEffect","_jsx","ModalWrapper","title","titleIcon","AddAccessRuleIcon","children","_jsxs","FormLayout","withBorders","containerPadding","InputBox","value","label","id","name","placeholder","onChange","e","target","tooltip","Select","options","disabled","helpTip","Fragment","helpTipPlacement","Grid","item","xs","sx","modalStyleUtils","modalButtonBar","Button","type","variant","onClick","resetForm","trim","createProcess","api","setAccessRuleWithBucket","access","then","res","setSnackBarMessage","catch","setErrorSnackMessage","errorToHandler","error","extractFileExtn","resourceStr","match","getSessionGrantsWildCard","sessionGrants","uploadPath","scopes","arguments","length","undefined","grantsWithExtension","Object","keys","reduce","acc","grantKey","includes","filter","sessionGrantKey","hasScope","some","actionKey","find","scopeKey","wildCardMatch","indexOf","scopeActionKey","substring","isUploadPathMatching","concat","CreatePathModal","withSuspense","React","BreadcrumbsMain","styled","div","display","paddingRight","alignItems","breakPoints","lg","margin","bucketName","internalPaths","hidePathButton","additionalOptions","navigate","useNavigate","rewindEnabled","useSelector","state","objectBrowser","rewind","versionsMode","versionedFile","anonymousMode","system","createFolderOpen","setCreateFolderOpen","canCreateSubpath","setCanCreateSubpath","putObjectPermScopes","IAM_SCOPES","S3_PUT_OBJECT","S3_PUT_ACTIONS","console","session","permissions","paths","splitPaths","split","path","lastBreadcrumbsIndex","pathToCheckPerms","sessionGrantWildCards","forEach","grant","canCreatePath","hasPermission","breadcrumbsMap","map","objectItem","index","subSplit","slice","join","route","encodeURIComponent","className","style","cursor","whiteSpace","safeDecodeURIComponent","Link","to","setVersionsModeEnabled","status","objectName","toString","versionsItem","listBreadcrumbs","folderName","closeAddFolderModal","limitedSubPath","Breadcrumbs","goBackFunction","prevPath","CopyToClipboard","text","icon","CopyIcon","width","height","fill","marginTop","color","border","marginRight","Box","Tooltip","permissionTooltipHelper","NewPathIcon","marginBottom","justifyContent","fontSize","fontWeight","flexDirection","flexWrap","isVersionedMode","forceDisable","uploadFileFunction","uploadFolderFunction","overrideStyles","anchorEl","setAnchorEl","uploadOptionsOpen","uploadOptionsSetOpen","openUploadMenu","Boolean","handleCloseUpload","uploadObjectAllowed","uploadFolderAllowed","uploadEnabled","TooltipWrapper","event","currentTarget","UploadIcon","DropdownSelector","UploadFolderIcon","selectedOption","onSelect","nValue","hideTriggerAction","open","anchorOrigin","useAnchorWidth","closePanel","borderColor","borderWidth","borderStyle","borderRadius","borderBottomLeftRadius","borderBottomRightRadius","transitionDuration","overflowX","overflowY","position","opacity","marginLeft","minWidth","borderLeftWidth","ClosePanelIcon","right","top","padding","backgroundColor","strings","minHeight","overflow","textOverflow","replaceUnicodeChar","extensionToIcon","FileVideoIcon","extensions","FileMusicIcon","FilePdfIcon","FilePptIcon","FileXlsIcon","FileLockIcon","FileCodeIcon","FileConfigIcon","FileDbIcon","FileFontIcon","FileTxtIcon","FileZipIcon","FileBookIcon","FileImageIcon","displayFileIconName","element","returnOnlyIcon","elementString","FileNonType","endsWith","FolderBrowserIcon","lowercaseElement","toLowerCase","etc","ext","FileMissingIcon","splitItem","IconWithLabel","metaData","metaKeys","renderItem","Array","isArray","itemRendererFn","maxHeight","months","days","from","_","num","currentYear","Date","getFullYear","years","numYear","forwardRef","ref","disableOptions","borderBottom","onDateChange","useImperativeHandle","resetDate","month","setMonth","day","setDay","year","setYear","valueSplit","parseInt","isValid","dateString","validDate","currentDate","parse","isNaN","parsedMonth","parsedDay","monthForString","dayForString","parsedDate","toISOString","isDateDisabled","monthForDropDown","daysForDrop","yearsForDrop","gap","InputLabel","htmlFor","placement","HelpIcon","newValue","closeModalAndRefresh","objectInfo","retentionConfig","statusEnabled","setStatusEnabled","setType","date","setDate","isDateValid","setIsDateValid","isSaving","setIsSaving","alreadyConfigured","setAlreadyConfigured","retention_mode","mode","ObjectRetentionMode","Governance","retention_until_date","valueDate","getMonth","getDate","dateElement","useRef","current","showSwitcher","noValidate","autoComplete","onSubmit","preventDefault","Switch","checked","indicatorLabels","RadioGroup","currentValue","selectorOptions","Compliance","DateSelector","saveNewRetentionPolicy","selectedObject","versionId","version_id","expireDate","addRetention","buckets","putObjectRetention","expires","err","setModalErrorSnackMessage","disableRetention","deleteObjectRetention","closeDeleteModalAndRefresh","deleteOpen","selectedBucket","versioningInfo","selectedVersion","deleteLoading","invokeDeleteApi","useApi","onDelSuccess","detailedError","deleteVersions","setDeleteVersions","bypassGovernance","setBypassGovernance","canBypass","S3_BYPASS_GOVERNANCE_RETENTION","ConfirmDialog","confirmText","isOpen","ConfirmDeleteIcon","isLoading","onConfirm","onConfirmDelete","recursive","confirmationContent","description","actualInfo","legalHoldEnabled","setLegalHoldEnabled","get","putObjectLegalHold","ObjectLegalHoldStatus","Enabled","Disabled","DeleteTag","b","theme","_ref2","_actualInfo$name","onCloseAndUpdate","distributedSetup","selDistSet","newKey","setNewKey","newLabel","setNewLabel","isSending","setIsSending","deleteEnabled","setDeleteEnabled","deleteKey","setDeleteKey","deleteLabel","setDeleteLabel","currentTags","tags","currTagKeys","allPathData","currentItem","pop","tagsFor","plural","iconColor","DisabledIcon","EditTagIcon","container","cancelDelete","deleteTagProcess","cleanObject","verID","putObjectTags","SecureComponent","S3_GET_OBJECT_TAGGING","S3_GET_ACTIONS","resource","flexFlow","tagKey","tag","S3_DELETE_OBJECT_TAGGING","errorProps","deleteIcon","onDelete","Tag","onDeleteTag","S3_PUT_OBJECT_TAGGING","SectionTitle","AddNewTagIcon","separator","addTagProcess","newTag","newTagList","closeInspectModalAndRefresh","inspectOpen","inspectPath","volumeName","isEncrypt","setIsEncrypt","decryptionKey","setDecryptionKey","insFileName","setInsFileName","InspectMenuIcon","async","basename","document","baseURI","replace","window","location","origin","fetch","url","method","makeRequest","ok","resErr","json","errorMessage","message","code","blob","filename","headers","decryptKey","getCookieValue","performDownload","onCloseDecKeyModal","deleteCookie","PasswordKeyIcon","KeyRevealer","closeModal","newFileName","setNewFileName","acceptLongName","setAcceptLongName","EditIcon","downloadObject","doDownload","emptyFile","is_latest","last_modified","legal_hold_status","size","locking","onClosePanel","loadingObjectInfo","shareFileModalOpen","setShareFileModalOpen","retentionModalOpen","setRetentionModalOpen","tagModalOpen","setTagModalOpen","legalholdOpen","setLegalholdOpen","inspectModalOpen","setInspectModalOpen","setActualInfo","allInfoElements","setAllInfoElements","objectToShare","setObjectToShare","versions","setVersions","setDeleteOpen","previewOpen","setPreviewOpen","totalVersionsSize","setTotalVersionsSize","longFileOpen","setLongFileOpen","setMetaData","loadMetadata","setLoadingMetadata","objectNameArray","infoElement","el","is_delete_marker","listObjects","with_versions","result","data","objects","tVersionSize","currValue","resInfo","setLoadingObjectInfo","getObjectMetadata","versionID","metadata","tagKeys","loaderForContainer","textAlign","Loader","objectResources","canSetLegalHold","S3_PUT_OBJECT_LEGAL_HOLD","canSetTags","canChangeRetention","S3_GET_OBJECT_RETENTION","S3_PUT_OBJECT_RETENTION","canInspect","ADMIN_INSPECT_DATA","canChangeVersioning","S3_GET_BUCKET_VERSIONING","S3_PUT_BUCKET_VERSIONING","S3_GET_OBJECT_VERSION","canGetObject","S3_GET_OBJECT","canDelete","S3_DELETE_OBJECT","objectType","previewObjectType","multiActionButtons","action","DownloadIcon","ShareIcon","PreviewIcon","LegalHoldIcon","openRetentionModal","RetentionIcon","TagsIcon","VersionsIcon","ShareFile","closeShareModal","dataObject","SetRetention","updateInfo","DeleteObject","closeAndReload","setLoadingVersions","setSelectedVersion","SetLegalHoldModal","reload","PreviewFileModal","onClosePreview","TagsModal","reloadObjectData","InspectObject","RenameLongFileName","closeFileOpen","textTransform","ActionsList","items","DeleteIcon","iconLocation","fullWidth","SimpleHeader","ObjectInfoIcon","overflowWrap","niceBytes","niceBytesInt","lastModified","currentTime","modifiedTime","difTime","getTime","formatTime","niceDaysInt","calculateLastModifyTime","etag","S3_GET_OBJECT_LEGAL_HOLD","MetadataIcon","ObjectMetaData","versionToRestore","objectPath","restoreOpen","restoreLoading","setRestoreLoading","RecoverIcon","restoreVersion","putObjectRestore","restoreLocalObjectList","confirmButtonProps","bgColor","FileVersionStyled","content","left","borderBottomColor","maxWidth","fileName","versionInfo","isSelected","checkable","isChecked","onCheck","onShare","onDownload","onRestore","onPreview","globalClick","key","disableButtons","versionItemButtons","pill","DateTime","now","fromISO","md","Checkbox","stopPropagation","SpecificVersionPill","button","IconButton","toFormat","setDeleteLoading","typeConfirm","setTypeConfirm","deleteObject","non_current_versions","bypass","selectedVersions","selectedObjectsRequest","deleteMultipleObjects","all_versions","searchVersions","loadingVersions","restoreVersionOpen","setRestoreVersionOpen","setRestoreVersion","sortValue","setSortValue","deleteNonCurrentOpen","setDeleteNonCurrentOpen","selectEnabled","setSelectEnabled","selectedItems","setSelectedItems","delSelectedVOpen","setDelSelectedVOpen","filteredPrefixes","onShareItem","onPreviewItem","onRestoreItem","onDownloadItem","onGlobalClick","filteredRecords","version","totalSpace","sort","a","dateA","dateB","onCheckVersion","filteredItems","cloneState","push","RestoreFileVersion","content_type","DeleteNonCurrent","reloadAfterDelete","DeleteSelectedVersions","reloadOnComplete","ProgressBar","BrowserBreadcrumbs","ScreenTitle","subTitle","actions","SelectMultipleIcon","DeleteNonCurrentIcon","noLabelMinWidth","bottomBorder","flexGrow","List","containerStyle","rowCount","rowHeight","rowRenderer","isScrolling","isVisible","versOrd","FileVersionItem","displayParsedDate","object","currTime","objectTime","hasSame","displayNiceBytes","String","listModeColumns","elementKey","renderFunction","enableSort","renderFullObject","rewindModeColumns","ListObjectsTable","params","useParams","sortDirection","setSortDirection","currentSortField","setCurrentSortField","detailsOpen","objectDetailsOpen","requestInProgress","features","selFeatures","obOnly","records","searchObjects","selectedObjects","connectionError","displayListObjects","S3_LIST_BUCKET","S3_ALL_LIST_BUCKET","sortASC","sortListObjects","payload","reverse","tableActions","_object$name","idElement","newPath","setSelectedObjects","setObjectDetailsView","setSelectedObjectView","sendOnlyId","customPaperHeight","DataTable","itemActions","columns","entityName","idField","targetD","elements","customEmptyMessage","sortEnabled","currentSort","currentDirection","onSortClick","sortData","newSortDirection","sortBy","setReloadObjectsList","onSelectAll","selectAllItems","rowStyle","_payload$index","delete_flag","noBackground","FilterObjectsSB","SearchBox","setSearchObjects","DeleteMultipleObjects","RewindEnable","baseDnDStyle","outline","activeDnDStyle","acceptDnDStyle","ListObjects","_downloadRenameModal$","useLocation","bucketToRewind","showDeleted","selectedInternalPaths","simplePath","versioningConfig","lockingEnabled","downloadRenameModal","selectedPreview","anonymousAccessOpen","_state$objectBrowser","loadingBucket","selBucketDetailsLoading","bucketInfo","selBucketDetailsInfo","deleteMultipleOpen","setDeleteMultipleOpen","rewindSelect","setRewindSelect","iniLoad","setIniLoad","canShareFile","setCanShareFile","canPreviewFile","setCanPreviewFile","quota","setQuota","isMetaDataLoaded","setIsMetaDataLoaded","isVersioningApplied","pathSegment","pathname","decodeURIComponent","currentPath","i","fileUpload","folderUpload","pathAsResourceInPolicy","allowedFileExtensions","cv","extension","Set","getPolicyAllowedFileExtensions","canDownload","canRewind","canUpload","canSetAnonymousAccess","S3_GET_BUCKET_POLICY","S3_PUT_BUCKET_POLICY","isSelObjectDelMarker","checkForDelMarker","isObjDelMarker","obj","fetchMetadata","useCallback","resetRewind","setAttribute","isPrefix","getBucketQuota","quotaVals","detailedMessage","setBucketDetailsLoad","setBucketInfo","getBucketRetentionConfig","setRetentionConfig","handleUploadButton","files","newFiles","uploadObject","folderPath","pathPrefix","upload","uploadPromise","file","Promise","resolve","reject","uploadUrl","blobFile","Blob","filePath","fileWebkitRelativePath","relativeFolderPath","ID","makeid","prefixPath","finalFolderPath","pathClean","startsWith","identity","Math","random","xhr","XMLHttpRequest","setRequestHeader","areMultipleFiles","errorMessages","withCredentials","onload","completeObject","removeTrace","response","JSON","failObject","instanceID","msg","addEventListener","progress","floor","loaded","total","updateProgress","onerror","onloadend","onabort","cancelObjectInList","formData","FormData","append","storeCallForObjectWithID","setNewObject","done","percentage","waitingForFile","failed","cancelled","storeFormDataWithID","uploadFilePromises","openList","allSettled","results","errors","totalFiles","successUploadedFiles","onDrop","acceptedFiles","newFolderPath","allowedFiles","fileExtn","log","getRootProps","getInputProps","isDragActive","isDragAccept","useDropzone","noClick","dndStyles","useMemo","forceRefresh","splitURLS","URLItem","createdTime","creation_date","downloadToolTip","downloadSelected","openShare","openPreview","openAnonymousAccess","AccessRuleIcon","setSelectedPreview","refresh","versioning","rewindCloseModal","closePreviewWindow","closeRenameModal","setDownloadRenameModal","AddAccessRule","closeAddAccessRule","setAnonymousAccessOpen","PageLayout","paddingBottom","BucketsIcon","Badge","dotOnly","invisible","HistoryIcon","RefreshIcon","resetMessages","multiple","accept","UploadFilesButton","closeMenu","click","borderTop","VersionsNavigator","setDeletedAction","setShowDeletedObjects","DetailsListPanel","ObjectDetailPanel","configureBucketAllowed","S3_GET_BUCKET_ENCRYPTION_CONFIGURATION","S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION","S3_DELETE_BUCKET","S3_GET_BUCKET_NOTIFICATIONS","S3_PUT_BUCKET_NOTIFICATIONS","S3_GET_REPLICATION_CONFIGURATION","S3_PUT_REPLICATION_CONFIGURATION","S3_GET_LIFECYCLE_CONFIGURATION","S3_PUT_LIFECYCLE_CONFIGURATION","ADMIN_GET_BUCKET_QUOTA","ADMIN_SET_BUCKET_QUOTA","S3_PUT_BUCKET_TAGGING","S3_GET_BUCKET_TAGGING","S3_LIST_BUCKET_VERSIONS","S3_GET_BUCKET_POLICY_STATUS","S3_DELETE_BUCKET_POLICY","searchBar","setSearchVersions","setHelpName","AutoColorIcon","ObjectManagerButton","PageHeaderWrapper","BackLink","IAM_PAGES","OBJECT_BROWSER_VIEW","IAM_PERMISSIONS","IAM_ROLES","BUCKET_ADMIN","SettingsIcon","HelpMenu","middleComponent","BrowserHandler","loadingVersioning","rewindDate","dateToRewind","loadingLocking","reloadObjectsList","initWSRequest","rewindMode","pathLoad","forceLoad","searchPath","setRequestInProgress","setLoadingVersioning","setLoadingLocking","getBucketVersioning","setIsVersioned","getBucketObjectLockingStatus","setLockingEnabled","object_locking_enabled","OBHeader","maxSeconds","entity","maxDays","maxHours","maxMinutes","selectedDays","setSelectedDays","selectedHours","setSelectedHours","selectedMinutes","setSelectedMinutes","setValidDate","dateSelected","setDateSelected","calculateNewTime","hours","minutes","plus","toISO","formattedDate","valid","extraStyles","paddingLeft","min","max","LinkIcon","maxShareLinkExpTimeVal","maxShareLinkExpTime","shareURL","setShareURL","isLoadingVersion","setIsLoadingVersion","isLoadingFile","setIsLoadingFile","selectedDate","setSelectedDate","dateValid","setDateValid","setVersionID","debouncedDateChange","debounce","newDate","getMaxShareLinkExpTime","latestVersion","elem","slDate","currDate","diffDate","ceil","shareObject","niceTimeFromSeconds","DaysSelector","ReadBox","actionButton","setModalSnackMessage","pdfjs","workerSrc","loading","onLoad","downloadFile","errorState","setErrorState","totalPages","setTotalPages","renderPages","arrayCreate","InformativeMessage","Document","onLoadSuccess","_pdfInfo","numPages","onLoadError","Page","pageNumber","renderAnnotationLayer","renderTextLayer","renderForms","isFullscreen","setLoading","iframeLoaded","flex","autoPlay","controls","muted","playsInline","onPlay","src","alt","PreviewPDF","allowTransparency","wideLimit","ObjectPreviewIcon","PreviewFileContent","WrappedComponent","fallback","props","Suspense","openSnackbar","setOpenSnackbar","modalSnackMessage","modalSnackBar","detailedErrorMsg","ModalBox","widthLimit","MainError","isModal","Snackbar","closeSnackBar","autoHideDuration","condensed","createAsyncThunk","getState","rejectWithValue","identityDownload","downloadCall","download","itemsToDownload","filterFunction","getClientOS","multiObjList","dwList","bi","isDeleted","downloadSelectedAsZip","fileObject","findFunction","_ref3","_ref4","_ref5","getMaxShareLinkExp","setMaxShareLinkExpTime","exp","isWinOs","shown","setShown","sm","overlayIcon","readOnly","overlayAction","navigator","clipboard","writeText"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/8017.04f38735.chunk.js b/web-app/build/static/js/8017.04f38735.chunk.js deleted file mode 100644 index 4b38e6a39f..0000000000 --- a/web-app/build/static/js/8017.04f38735.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[8017],{38017:(e,t,o)=>{o.r(t),o.d(t,{default:()=>A});var n=o(65043),a=o(89923),i=o(22166),r=o(73216),l=o(56629),s=o(53518),c=o(94574),p=o(33097),d=o.n(p),u=o(67433),m=o(77403),g=o(99161),h=o(64159),f=o(21383),y=o(39161),b=o(64681),S=o(58661),v=o(70579);const T=e=>{let{onConfirm:t,onClose:o,serviceName:i,status:r}=e;return(0,v.jsx)(S.A,{title:"Delete Endpoint",confirmText:"Delete",isOpen:!0,titleIcon:(0,v.jsx)(a.$rg,{}),isLoading:!1,onConfirm:t,onClose:o,confirmationContent:(0,v.jsxs)(n.Fragment,{children:["Are you sure you want to delete the event destination ?",(0,v.jsx)("br",{}),(0,v.jsx)("b",{children:i})," which is ",(0,v.jsx)("b",{children:r})]})})};var x=o(6681);const _=c.Ay.div((e=>{let{theme:t}=e;return{display:"flex",alignItems:"center","& svg":{width:16,marginRight:5,fill:d()(t,"signalColors.good","#4CCB92")},"& svg.offline":{fill:d()(t,"signalColors.danger","#C51B3F")}}})),A=()=>{const e=(0,f.jL)(),t=(0,r.Zp)(),o=(0,i.d4)((e=>e.destination.loading)),[c,p]=(0,n.useState)([]),[d,S]=(0,n.useState)(""),[A,k]=(0,n.useState)(!1),[E,j]=(0,n.useState)();(0,n.useEffect)((()=>{if(o){(()=>{l.F.admin.notificationEndpointList().then((t=>{let o=[];t.data.notification_endpoints&&(o=t.data.notification_endpoints),p((0,u.Es)(o)),e((0,y.$Y)(!1))})).catch((t=>{e((0,h.C9)((0,s.S)(t.error))),e((0,y.$Y)(!1))}))})()}}),[o,e]),(0,n.useEffect)((()=>{e((0,y.$Y)(!0))}),[e]);const C=[{type:"delete",onClick:e=>{j(e),k(!0)}}],L=c.filter((e=>""===d||e.service_name.indexOf(d)>=0));return(0,v.jsx)(n.Fragment,{children:(0,v.jsxs)(a.Mxu,{children:[(0,v.jsxs)(a.xA9,{item:!0,xs:12,sx:m._0.actionsTray,children:[(0,v.jsx)(b.A,{placeholder:"Search target",onChange:S,value:d,sx:{maxWidth:380}}),(0,v.jsxs)(a.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:5},children:[(0,v.jsx)(x.A,{tooltip:"Refresh List",children:(0,v.jsx)(a.$nd,{id:"reload-event-destinations",label:"Refresh",variant:"regular",icon:(0,v.jsx)(a.fNY,{}),onClick:()=>{e((0,y.$Y)(!0))}})}),(0,v.jsx)(x.A,{tooltip:"Add Event Destination",children:(0,v.jsx)(a.$nd,{id:"add-notification-target",label:"Add Event Destination",variant:"callAction",icon:(0,v.jsx)(a.REV,{}),onClick:()=>{t(g.zZ.EVENT_DESTINATIONS_ADD)}})})]})]}),o&&(0,v.jsx)(a.z21,{}),!o&&(0,v.jsxs)(n.Fragment,{children:[c.length>0&&(0,v.jsxs)(n.Fragment,{children:[(0,v.jsx)(a.azJ,{sx:{width:"100%"},children:(0,v.jsx)(a.bQt,{itemActions:C,columns:[{label:"Status",elementKey:"status",renderFunction:e=>(0,v.jsxs)(_,{children:[(0,v.jsx)(a.GQ2,{className:"Offline"===e?"offline":""}),e]}),width:150},{label:"Service",elementKey:"service_name"}],isLoading:o,records:L,entityName:"Event Destinations",idField:"service_name",customPaperHeight:"400px"})}),(0,v.jsx)(a.xA9,{item:!0,xs:12,sx:{marginTop:15},children:(0,v.jsx)(a.lVp,{title:"Event Destinations",iconComponent:(0,v.jsx)(a.PI5,{}),help:(0,v.jsxs)(n.Fragment,{children:["MinIO bucket notifications allow administrators to send notifications to supported external services on certain object or bucket events. MinIO supports bucket and object-level S3 events similar to the Amazon S3 Event Notifications.",(0,v.jsx)("br",{}),(0,v.jsx)("br",{}),"You can learn more at our"," ",(0,v.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/monitoring/bucket-notifications.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]}),0===c.length&&(0,v.jsx)(a.xA9,{container:!0,sx:{justifyContent:"center",alignContent:"center",alignItems:"center"},children:(0,v.jsx)(a.xA9,{item:!0,xs:8,children:(0,v.jsx)(a.lVp,{title:"Event Destinations",iconComponent:(0,v.jsx)(a.PI5,{}),help:(0,v.jsxs)(n.Fragment,{children:["MinIO bucket notifications allow administrators to send notifications to supported external services on certain object or bucket events. MinIO supports bucket and object-level S3 events similar to the Amazon S3 Event Notifications.",(0,v.jsx)("br",{}),(0,v.jsx)("br",{}),"To get started,"," ",(0,v.jsx)(a.t53,{onClick:()=>{t(g.zZ.EVENT_DESTINATIONS_ADD)},children:"Add an Event Destination"}),"."]})})})})]}),A?(0,v.jsx)(T,{onConfirm:()=>{(t=>{if(null!==t&&void 0!==t&&t.name){const o=(0,u.h4)(t.name);let n=":".concat(t.account_id);o?l.F.configs.resetConfig("".concat(o).concat(n)).then((()=>{e((0,h.YR)(!0)),j(null),k(!1),e((0,y.$Y)(!0))})).catch((t=>{k(!1),e((0,h.C9)((0,s.S)(t.error)))})):(j(null),k(!1),console.log("Unable to find Config key for ".concat(t.name)))}})(E)},status:"".concat(null===E||void 0===E?void 0:E.status),serviceName:"".concat(null===E||void 0===E?void 0:E.service_name),onClose:()=>{k(!1)}}):null]})})}},67433:(e,t,o)=>{o.d(t,{AU:()=>a,D3:()=>g,Es:()=>m,P4:()=>n,Xm:()=>b,bo:()=>f,fx:()=>S,h4:()=>T});const n="notify_postgres",a="notify_mysql",i="notify_kafka",r="notify_amqp",l="notify_mqtt",s="notify_redis",c="notify_nats",p="notify_elasticsearch",d="notify_webhook",u="notify_nsq",m=e=>e.map((e=>({service_name:"".concat(e.service,":").concat(e.account_id),name:e.service,account_id:e.account_id,status:e.status})));class g{}g.DB="database",g.Queue="queue",g.Func="functions";const h=()=>"".concat(document.baseURI),f=[{actionTrigger:n,targetTitle:"PostgreSQL",logo:"".concat(h(),"postgres-logo.svg"),category:g.DB},{actionTrigger:i,targetTitle:"Kafka",logo:"".concat(h(),"kafka-logo.svg"),category:g.Queue},{actionTrigger:r,targetTitle:"AMQP",logo:"".concat(h(),"amqp-logo.svg"),category:g.Queue},{actionTrigger:l,targetTitle:"MQTT",logo:"".concat(h(),"mqtt-logo.svg"),category:g.Queue},{actionTrigger:s,targetTitle:"Redis",logo:"".concat(h(),"redis-logo.svg"),category:g.Queue},{actionTrigger:c,targetTitle:"NATS",logo:"".concat(h(),"nats-logo.svg"),category:g.Queue},{actionTrigger:a,targetTitle:"Mysql",logo:"".concat(h(),"mysql-logo.svg"),category:g.DB},{actionTrigger:p,targetTitle:"Elastic Search",logo:"".concat(h(),"elasticsearch-logo.svg"),category:g.DB},{actionTrigger:d,targetTitle:"Webhook",logo:"".concat(h(),"webhooks-logo.svg"),category:g.Func},{actionTrigger:u,targetTitle:"NSQ",logo:"".concat(h(),"nsq-logo.svg"),category:g.Queue}],y=[{name:"queue_dir",label:"Queue Directory",required:!1,tooltip:"Staging directory 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 custom notes if any"}],b=e=>e.filter((e=>""!==e.value)),S={[i]:[{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 authorization",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 authorization",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS authorization",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"},...y],[r]:[{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"},...y],[s]:[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address e.g. `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"},...y],[l]:[{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 Interval"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"},...y],[c]:[{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 authorization",type:"string",placeholder:"Enter Client Key"},...y],[p]:[{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"},...y],[d]:[{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"},...y],[u]:[{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"},...y]},v={webhook:"notify_webhook",amqp:"notify_amqp",kafka:"notify_kafka",mqtt:"notify_mqtt",nats:"notify_nats",nsq:"notify_nsq",mysql:"notify_mysql",postgresql:"notify_postgres",elasticsearch:"notify_elasticsearch",redis:"notify_redis"},T=e=>v[e]}}]); -//# sourceMappingURL=8017.04f38735.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/8017.04f38735.chunk.js.map b/web-app/build/static/js/8017.04f38735.chunk.js.map deleted file mode 100644 index 5107969a36..0000000000 --- a/web-app/build/static/js/8017.04f38735.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/8017.04f38735.chunk.js","mappings":"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","sources":["screens/Console/EventDestinations/ConfirmDeleteDestinationModal.tsx","screens/Console/EventDestinations/ListEventDestinations.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmModalIcon } from \"mds\";\n\nconst ConfirmDeleteDestinationModal = ({\n onConfirm,\n onClose,\n serviceName,\n status,\n}: {\n onConfirm: () => void;\n onClose: () => void;\n serviceName: string;\n status: string;\n}) => {\n return (\n }\n isLoading={false}\n onConfirm={onConfirm}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the event destination ?\n
\n {serviceName} which is {status}\n
\n }\n />\n );\n};\n\nexport default ConfirmDeleteDestinationModal;\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 {\n ActionLink,\n AddIcon,\n Box,\n Button,\n CircleIcon,\n DataTable,\n Grid,\n HelpBox,\n LambdaIcon,\n PageLayout,\n ProgressBar,\n RefreshIcon,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { api } from \"api\";\nimport { NotificationEndpointItem } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { TransformedEndpointItem } from \"./types\";\nimport { getNotificationConfigKey, notificationTransform } from \"./utils\";\nimport { actionsTray } from \"../Common/FormComponents/common/styleLibrary\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setDestinationLoading } from \"./destinationsSlice\";\nimport SearchBox from \"../Common/SearchBox\";\nimport ConfirmDeleteDestinationModal from \"./ConfirmDeleteDestinationModal\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\n\nconst StatusDisplay = styled.div(({ theme }) => ({\n display: \"flex\",\n alignItems: \"center\",\n \"& svg\": {\n width: 16,\n marginRight: 5,\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n \"& svg.offline\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n}));\n\nconst ListEventDestinations = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n // Reducer States\n const isLoading = useSelector((state: AppState) => state.destination.loading);\n\n //Local States\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n\n const [isDelConfirmOpen, setIsDelConfirmOpen] = useState(false);\n const [selNotifyEndPoint, setSelNotifyEndpoint] =\n useState();\n\n //Effects\n // load records on mount\n useEffect(() => {\n if (isLoading) {\n const fetchRecords = () => {\n api.admin\n .notificationEndpointList()\n .then((res) => {\n let resNotEndList: NotificationEndpointItem[] = [];\n if (res.data.notification_endpoints) {\n resNotEndList = res.data.notification_endpoints;\n }\n setRecords(notificationTransform(resNotEndList));\n dispatch(setDestinationLoading(false));\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n dispatch(setDestinationLoading(false));\n });\n };\n fetchRecords();\n }\n }, [isLoading, dispatch]);\n\n useEffect(() => {\n dispatch(setDestinationLoading(true));\n }, [dispatch]);\n\n const resetNotificationConfig = (\n ep: TransformedEndpointItem | undefined | null,\n ) => {\n if (ep?.name) {\n const configKey = getNotificationConfigKey(ep.name);\n let accountId = `:${ep.account_id}`;\n if (configKey) {\n api.configs\n .resetConfig(`${configKey}${accountId}`)\n .then(() => {\n dispatch(setServerNeedsRestart(true));\n setSelNotifyEndpoint(null);\n setIsDelConfirmOpen(false);\n dispatch(setDestinationLoading(true));\n })\n .catch((err) => {\n setIsDelConfirmOpen(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n } else {\n setSelNotifyEndpoint(null);\n setIsDelConfirmOpen(false);\n console.log(`Unable to find Config key for ${ep.name}`);\n }\n }\n };\n\n const confirmDelNotifyEndpoint = (record: TransformedEndpointItem) => {\n setSelNotifyEndpoint(record);\n setIsDelConfirmOpen(true);\n };\n\n const tableActions = [{ type: \"delete\", onClick: confirmDelNotifyEndpoint }];\n\n const filteredRecords = records.filter((b: TransformedEndpointItem) => {\n if (filter === \"\") {\n return true;\n }\n return b.service_name.indexOf(filter) >= 0;\n });\n\n const statusDisplay = (status: string) => {\n return (\n \n \n {status}\n \n );\n };\n\n return (\n \n \n \n \n \n \n }\n onClick={() => {\n dispatch(setDestinationLoading(true));\n }}\n />\n \n \n }\n onClick={() => {\n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD);\n }}\n />\n \n \n \n {isLoading && }\n {!isLoading && (\n \n {records.length > 0 && (\n \n \n \n \n \n }\n help={\n \n MinIO bucket notifications allow administrators to send\n notifications to supported external services on certain\n object or bucket events. MinIO supports bucket and\n object-level S3 events similar to the Amazon S3 Event\n Notifications.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n )}\n {records.length === 0 && (\n \n \n }\n help={\n \n MinIO bucket notifications allow administrators to send\n notifications to supported external services on certain\n object or bucket events. MinIO supports bucket and\n object-level S3 events similar to the Amazon S3 Event\n Notifications.\n
\n
\n To get started,{\" \"}\n {\n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD);\n }}\n >\n Add an Event Destination\n \n .\n
\n }\n />\n
\n \n )}\n
\n )}\n\n {isDelConfirmOpen ? (\n {\n resetNotificationConfig(selNotifyEndPoint);\n }}\n status={`${selNotifyEndPoint?.status}`}\n serviceName={`${selNotifyEndPoint?.service_name}`}\n onClose={() => {\n setIsDelConfirmOpen(false);\n }}\n />\n ) : null}\n
\n
\n );\n};\n\nexport default ListEventDestinations;\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 { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nexport const notifyKafka = \"notify_kafka\";\nexport const notifyAmqp = \"notify_amqp\";\nexport const notifyMqtt = \"notify_mqtt\";\nexport const notifyRedis = \"notify_redis\";\nexport const notifyNats = \"notify_nats\";\nexport const notifyElasticsearch = \"notify_elasticsearch\";\nexport const notifyWebhooks = \"notify_webhook\";\nexport const notifyNsq = \"notify_nsq\";\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nconst getImgBaseURL = () => {\n return `${document.baseURI}`;\n};\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: `${getImgBaseURL()}postgres-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: `${getImgBaseURL()}kafka-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: `${getImgBaseURL()}amqp-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: `${getImgBaseURL()}mqtt-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: `${getImgBaseURL()}redis-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: `${getImgBaseURL()}nats-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: `${getImgBaseURL()}mysql-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: `${getImgBaseURL()}elasticsearch-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: `${getImgBaseURL()}webhooks-logo.svg`,\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: `${getImgBaseURL()}nsq-logo.svg`,\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from api/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["_ref","onConfirm","onClose","serviceName","status","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmModalIcon","isLoading","confirmationContent","_jsxs","React","children","StatusDisplay","styled","div","theme","display","alignItems","width","marginRight","fill","get","ListEventDestinations","dispatch","useAppDispatch","navigate","useNavigate","useSelector","state","destination","loading","records","setRecords","useState","filter","setFilter","isDelConfirmOpen","setIsDelConfirmOpen","selNotifyEndPoint","setSelNotifyEndpoint","useEffect","fetchRecords","api","admin","notificationEndpointList","then","res","resNotEndList","data","notification_endpoints","notificationTransform","setDestinationLoading","catch","err","setErrorSnackMessage","errorToHandler","error","tableActions","type","onClick","record","filteredRecords","b","service_name","indexOf","Fragment","PageLayout","Grid","item","xs","sx","actionsTray","SearchBox","placeholder","onChange","value","maxWidth","Box","justifyContent","gap","TooltipWrapper","tooltip","Button","id","label","variant","icon","RefreshIcon","AddIcon","IAM_PAGES","EVENT_DESTINATIONS_ADD","ProgressBar","length","DataTable","itemActions","columns","elementKey","renderFunction","CircleIcon","className","entityName","idField","customPaperHeight","marginTop","HelpBox","iconComponent","LambdaIcon","help","href","target","rel","container","alignContent","ActionLink","ConfirmDeleteDestinationModal","ep","name","configKey","getNotificationConfigKey","accountId","concat","account_id","configs","resetConfig","setServerNeedsRestart","console","log","resetNotificationConfig","notifyPostgres","notifyMysql","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationElements","map","element","service","DestType","DB","Queue","Func","getImgBaseURL","document","baseURI","destinationList","actionTrigger","targetTitle","logo","category","commonFields","required","removeEmptyFields","formFields","field","notificationEndpointsFields","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/8017.3aca489e.chunk.js b/web-app/build/static/js/8017.3aca489e.chunk.js new file mode 100644 index 0000000000..491b0417e6 --- /dev/null +++ b/web-app/build/static/js/8017.3aca489e.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[8017],{38017:(e,t,o)=>{o.r(t),o.d(t,{default:()=>A});var n=o(65043),a=o(89923),i=o(22166),r=o(73216),l=o(56629),s=o(53518),c=o(94574),p=o(33097),d=o.n(p),u=o(67433),m=o(77403),g=o(99161),h=o(64159),f=o(21383),y=o(39161),b=o(64681),S=o(58661),v=o(70579);const T=e=>{let{onConfirm:t,onClose:o,serviceName:i,status:r}=e;return(0,v.jsx)(S.A,{title:"Delete Endpoint",confirmText:"Delete",isOpen:!0,titleIcon:(0,v.jsx)(a.$rg,{}),isLoading:!1,onConfirm:t,onClose:o,confirmationContent:(0,v.jsxs)(n.Fragment,{children:["Are you sure you want to delete the event destination ?",(0,v.jsx)("br",{}),(0,v.jsx)("b",{children:i})," which is ",(0,v.jsx)("b",{children:r})]})})};var x=o(6681);const _=c.Ay.div((e=>{let{theme:t}=e;return{display:"flex",alignItems:"center","& svg":{width:16,marginRight:5,fill:d()(t,"signalColors.good","#4CCB92")},"& svg.offline":{fill:d()(t,"signalColors.danger","#C51B3F")}}})),A=()=>{const e=(0,f.jL)(),t=(0,r.Zp)(),o=(0,i.d4)((e=>e.destination.loading)),[c,p]=(0,n.useState)([]),[d,S]=(0,n.useState)(""),[A,k]=(0,n.useState)(!1),[E,j]=(0,n.useState)();(0,n.useEffect)((()=>{if(o){(()=>{l.F.admin.notificationEndpointList().then((t=>{let o=[];t.data.notification_endpoints&&(o=t.data.notification_endpoints),p((0,u.Es)(o)),e((0,y.$)(!1))})).catch((t=>{e((0,h.C9)((0,s.S)(t.error))),e((0,y.$)(!1))}))})()}}),[o,e]),(0,n.useEffect)((()=>{e((0,y.$)(!0))}),[e]);const C=[{type:"delete",onClick:e=>{j(e),k(!0)}}],L=c.filter((e=>""===d||e.service_name.indexOf(d)>=0));return(0,v.jsx)(n.Fragment,{children:(0,v.jsxs)(a.Mxu,{children:[(0,v.jsxs)(a.xA9,{item:!0,xs:12,sx:m._0.actionsTray,children:[(0,v.jsx)(b.A,{placeholder:"Search target",onChange:S,value:d,sx:{maxWidth:380}}),(0,v.jsxs)(a.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:5},children:[(0,v.jsx)(x.A,{tooltip:"Refresh List",children:(0,v.jsx)(a.$nd,{id:"reload-event-destinations",label:"Refresh",variant:"regular",icon:(0,v.jsx)(a.fNY,{}),onClick:()=>{e((0,y.$)(!0))}})}),(0,v.jsx)(x.A,{tooltip:"Add Event Destination",children:(0,v.jsx)(a.$nd,{id:"add-notification-target",label:"Add Event Destination",variant:"callAction",icon:(0,v.jsx)(a.REV,{}),onClick:()=>{t(g.zZ.EVENT_DESTINATIONS_ADD)}})})]})]}),o&&(0,v.jsx)(a.z21,{}),!o&&(0,v.jsxs)(n.Fragment,{children:[c.length>0&&(0,v.jsxs)(n.Fragment,{children:[(0,v.jsx)(a.azJ,{sx:{width:"100%"},children:(0,v.jsx)(a.bQt,{itemActions:C,columns:[{label:"Status",elementKey:"status",renderFunction:e=>(0,v.jsxs)(_,{children:[(0,v.jsx)(a.GQ2,{className:"Offline"===e?"offline":""}),e]}),width:150},{label:"Service",elementKey:"service_name"}],isLoading:o,records:L,entityName:"Event Destinations",idField:"service_name",customPaperHeight:"400px"})}),(0,v.jsx)(a.xA9,{item:!0,xs:12,sx:{marginTop:15},children:(0,v.jsx)(a.lVp,{title:"Event Destinations",iconComponent:(0,v.jsx)(a.PI5,{}),help:(0,v.jsxs)(n.Fragment,{children:["MinIO bucket notifications allow administrators to send notifications to supported external services on certain object or bucket events. MinIO supports bucket and object-level S3 events similar to the Amazon S3 Event Notifications.",(0,v.jsx)("br",{}),(0,v.jsx)("br",{}),"You can learn more at our"," ",(0,v.jsx)("a",{href:"https://min.io/docs/minio/linux/administration/monitoring/bucket-notifications.html?ref=con",target:"_blank",rel:"noopener",children:"documentation"}),"."]})})})]}),0===c.length&&(0,v.jsx)(a.xA9,{container:!0,sx:{justifyContent:"center",alignContent:"center",alignItems:"center"},children:(0,v.jsx)(a.xA9,{item:!0,xs:8,children:(0,v.jsx)(a.lVp,{title:"Event Destinations",iconComponent:(0,v.jsx)(a.PI5,{}),help:(0,v.jsxs)(n.Fragment,{children:["MinIO bucket notifications allow administrators to send notifications to supported external services on certain object or bucket events. MinIO supports bucket and object-level S3 events similar to the Amazon S3 Event Notifications.",(0,v.jsx)("br",{}),(0,v.jsx)("br",{}),"To get started,"," ",(0,v.jsx)(a.t53,{onClick:()=>{t(g.zZ.EVENT_DESTINATIONS_ADD)},children:"Add an Event Destination"}),"."]})})})})]}),A?(0,v.jsx)(T,{onConfirm:()=>{(t=>{if(null!==t&&void 0!==t&&t.name){const o=(0,u.h4)(t.name);let n=":".concat(t.account_id);o?l.F.configs.resetConfig("".concat(o).concat(n)).then((()=>{e((0,h.YR)(!0)),j(null),k(!1),e((0,y.$)(!0))})).catch((t=>{k(!1),e((0,h.C9)((0,s.S)(t.error)))})):(j(null),k(!1),console.log("Unable to find Config key for ".concat(t.name)))}})(E)},status:"".concat(null===E||void 0===E?void 0:E.status),serviceName:"".concat(null===E||void 0===E?void 0:E.service_name),onClose:()=>{k(!1)}}):null]})})}},67433:(e,t,o)=>{o.d(t,{AU:()=>a,D3:()=>g,Es:()=>m,P4:()=>n,Xm:()=>b,bo:()=>f,fx:()=>S,h4:()=>T});const n="notify_postgres",a="notify_mysql",i="notify_kafka",r="notify_amqp",l="notify_mqtt",s="notify_redis",c="notify_nats",p="notify_elasticsearch",d="notify_webhook",u="notify_nsq",m=e=>e.map((e=>({service_name:"".concat(e.service,":").concat(e.account_id),name:e.service,account_id:e.account_id,status:e.status})));class g{}g.DB="database",g.Queue="queue",g.Func="functions";const h=()=>"".concat(document.baseURI),f=[{actionTrigger:n,targetTitle:"PostgreSQL",logo:"".concat(h(),"postgres-logo.svg"),category:g.DB},{actionTrigger:i,targetTitle:"Kafka",logo:"".concat(h(),"kafka-logo.svg"),category:g.Queue},{actionTrigger:r,targetTitle:"AMQP",logo:"".concat(h(),"amqp-logo.svg"),category:g.Queue},{actionTrigger:l,targetTitle:"MQTT",logo:"".concat(h(),"mqtt-logo.svg"),category:g.Queue},{actionTrigger:s,targetTitle:"Redis",logo:"".concat(h(),"redis-logo.svg"),category:g.Queue},{actionTrigger:c,targetTitle:"NATS",logo:"".concat(h(),"nats-logo.svg"),category:g.Queue},{actionTrigger:a,targetTitle:"Mysql",logo:"".concat(h(),"mysql-logo.svg"),category:g.DB},{actionTrigger:p,targetTitle:"Elastic Search",logo:"".concat(h(),"elasticsearch-logo.svg"),category:g.DB},{actionTrigger:d,targetTitle:"Webhook",logo:"".concat(h(),"webhooks-logo.svg"),category:g.Func},{actionTrigger:u,targetTitle:"NSQ",logo:"".concat(h(),"nsq-logo.svg"),category:g.Queue}],y=[{name:"queue_dir",label:"Queue Directory",required:!1,tooltip:"Staging directory 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 custom notes if any"}],b=e=>e.filter((e=>""!==e.value)),S={[i]:[{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 authorization",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 authorization",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS authorization",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"},...y],[r]:[{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"},...y],[s]:[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address e.g. `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"},...y],[l]:[{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 Interval"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"},...y],[c]:[{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 authorization",type:"string",placeholder:"Enter Client Key"},...y],[p]:[{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"},...y],[d]:[{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"},...y],[u]:[{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"},...y]},v={webhook:"notify_webhook",amqp:"notify_amqp",kafka:"notify_kafka",mqtt:"notify_mqtt",nats:"notify_nats",nsq:"notify_nsq",mysql:"notify_mysql",postgresql:"notify_postgres",elasticsearch:"notify_elasticsearch",redis:"notify_redis"},T=e=>v[e]}}]); +//# sourceMappingURL=8017.3aca489e.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/8017.3aca489e.chunk.js.map b/web-app/build/static/js/8017.3aca489e.chunk.js.map new file mode 100644 index 0000000000..819c262694 --- /dev/null +++ b/web-app/build/static/js/8017.3aca489e.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/8017.3aca489e.chunk.js","mappings":"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","sources":["screens/Console/EventDestinations/ConfirmDeleteDestinationModal.tsx","screens/Console/EventDestinations/ListEventDestinations.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 ConfirmDialog from \"../Common/ModalWrapper/ConfirmDialog\";\nimport { ConfirmModalIcon } from \"mds\";\n\nconst ConfirmDeleteDestinationModal = ({\n onConfirm,\n onClose,\n serviceName,\n status,\n}: {\n onConfirm: () => void;\n onClose: () => void;\n serviceName: string;\n status: string;\n}) => {\n return (\n }\n isLoading={false}\n onConfirm={onConfirm}\n onClose={onClose}\n confirmationContent={\n \n Are you sure you want to delete the event destination ?\n
\n {serviceName} which is {status}\n
\n }\n />\n );\n};\n\nexport default ConfirmDeleteDestinationModal;\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 {\n ActionLink,\n AddIcon,\n Box,\n Button,\n CircleIcon,\n DataTable,\n Grid,\n HelpBox,\n LambdaIcon,\n PageLayout,\n ProgressBar,\n RefreshIcon,\n} from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { api } from \"api\";\nimport { NotificationEndpointItem } from \"api/consoleApi\";\nimport { errorToHandler } from \"api/errors\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { TransformedEndpointItem } from \"./types\";\nimport { getNotificationConfigKey, notificationTransform } from \"./utils\";\nimport { actionsTray } from \"../Common/FormComponents/common/styleLibrary\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport {\n setErrorSnackMessage,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { setDestinationLoading } from \"./destinationsSlice\";\nimport SearchBox from \"../Common/SearchBox\";\nimport ConfirmDeleteDestinationModal from \"./ConfirmDeleteDestinationModal\";\nimport TooltipWrapper from \"../Common/TooltipWrapper/TooltipWrapper\";\n\nconst StatusDisplay = styled.div(({ theme }) => ({\n display: \"flex\",\n alignItems: \"center\",\n \"& svg\": {\n width: 16,\n marginRight: 5,\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n \"& svg.offline\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n}));\n\nconst ListEventDestinations = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n // Reducer States\n const isLoading = useSelector((state: AppState) => state.destination.loading);\n\n //Local States\n const [records, setRecords] = useState([]);\n const [filter, setFilter] = useState(\"\");\n\n const [isDelConfirmOpen, setIsDelConfirmOpen] = useState(false);\n const [selNotifyEndPoint, setSelNotifyEndpoint] =\n useState();\n\n //Effects\n // load records on mount\n useEffect(() => {\n if (isLoading) {\n const fetchRecords = () => {\n api.admin\n .notificationEndpointList()\n .then((res) => {\n let resNotEndList: NotificationEndpointItem[] = [];\n if (res.data.notification_endpoints) {\n resNotEndList = res.data.notification_endpoints;\n }\n setRecords(notificationTransform(resNotEndList));\n dispatch(setDestinationLoading(false));\n })\n .catch((err) => {\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n dispatch(setDestinationLoading(false));\n });\n };\n fetchRecords();\n }\n }, [isLoading, dispatch]);\n\n useEffect(() => {\n dispatch(setDestinationLoading(true));\n }, [dispatch]);\n\n const resetNotificationConfig = (\n ep: TransformedEndpointItem | undefined | null,\n ) => {\n if (ep?.name) {\n const configKey = getNotificationConfigKey(ep.name);\n let accountId = `:${ep.account_id}`;\n if (configKey) {\n api.configs\n .resetConfig(`${configKey}${accountId}`)\n .then(() => {\n dispatch(setServerNeedsRestart(true));\n setSelNotifyEndpoint(null);\n setIsDelConfirmOpen(false);\n dispatch(setDestinationLoading(true));\n })\n .catch((err) => {\n setIsDelConfirmOpen(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n } else {\n setSelNotifyEndpoint(null);\n setIsDelConfirmOpen(false);\n console.log(`Unable to find Config key for ${ep.name}`);\n }\n }\n };\n\n const confirmDelNotifyEndpoint = (record: TransformedEndpointItem) => {\n setSelNotifyEndpoint(record);\n setIsDelConfirmOpen(true);\n };\n\n const tableActions = [{ type: \"delete\", onClick: confirmDelNotifyEndpoint }];\n\n const filteredRecords = records.filter((b: TransformedEndpointItem) => {\n if (filter === \"\") {\n return true;\n }\n return b.service_name.indexOf(filter) >= 0;\n });\n\n const statusDisplay = (status: string) => {\n return (\n \n \n {status}\n \n );\n };\n\n return (\n \n \n \n \n \n \n }\n onClick={() => {\n dispatch(setDestinationLoading(true));\n }}\n />\n \n \n }\n onClick={() => {\n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD);\n }}\n />\n \n \n \n {isLoading && }\n {!isLoading && (\n \n {records.length > 0 && (\n \n \n \n \n \n }\n help={\n \n MinIO bucket notifications allow administrators to send\n notifications to supported external services on certain\n object or bucket events. MinIO supports bucket and\n object-level S3 events similar to the Amazon S3 Event\n Notifications.\n
\n
\n You can learn more at our{\" \"}\n \n documentation\n \n .\n
\n }\n />\n
\n
\n )}\n {records.length === 0 && (\n \n \n }\n help={\n \n MinIO bucket notifications allow administrators to send\n notifications to supported external services on certain\n object or bucket events. MinIO supports bucket and\n object-level S3 events similar to the Amazon S3 Event\n Notifications.\n
\n
\n To get started,{\" \"}\n {\n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD);\n }}\n >\n Add an Event Destination\n \n .\n
\n }\n />\n
\n \n )}\n
\n )}\n\n {isDelConfirmOpen ? (\n {\n resetNotificationConfig(selNotifyEndPoint);\n }}\n status={`${selNotifyEndPoint?.status}`}\n serviceName={`${selNotifyEndPoint?.service_name}`}\n onClose={() => {\n setIsDelConfirmOpen(false);\n }}\n />\n ) : null}\n
\n
\n );\n};\n\nexport default ListEventDestinations;\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 { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nconst notifyKafka = \"notify_kafka\";\nconst notifyAmqp = \"notify_amqp\";\nconst notifyMqtt = \"notify_mqtt\";\nconst notifyRedis = \"notify_redis\";\nconst notifyNats = \"notify_nats\";\nconst notifyElasticsearch = \"notify_elasticsearch\";\nconst notifyWebhooks = \"notify_webhook\";\nconst notifyNsq = \"notify_nsq\";\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nconst getImgBaseURL = () => {\n return `${document.baseURI}`;\n};\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: `${getImgBaseURL()}postgres-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: `${getImgBaseURL()}kafka-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: `${getImgBaseURL()}amqp-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: `${getImgBaseURL()}mqtt-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: `${getImgBaseURL()}redis-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: `${getImgBaseURL()}nats-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: `${getImgBaseURL()}mysql-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: `${getImgBaseURL()}elasticsearch-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: `${getImgBaseURL()}webhooks-logo.svg`,\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: `${getImgBaseURL()}nsq-logo.svg`,\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from api/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["_ref","onConfirm","onClose","serviceName","status","_jsx","ConfirmDialog","title","confirmText","isOpen","titleIcon","ConfirmModalIcon","isLoading","confirmationContent","_jsxs","React","children","StatusDisplay","styled","div","theme","display","alignItems","width","marginRight","fill","get","ListEventDestinations","dispatch","useAppDispatch","navigate","useNavigate","useSelector","state","destination","loading","records","setRecords","useState","filter","setFilter","isDelConfirmOpen","setIsDelConfirmOpen","selNotifyEndPoint","setSelNotifyEndpoint","useEffect","fetchRecords","api","admin","notificationEndpointList","then","res","resNotEndList","data","notification_endpoints","notificationTransform","setDestinationLoading","catch","err","setErrorSnackMessage","errorToHandler","error","tableActions","type","onClick","record","filteredRecords","b","service_name","indexOf","Fragment","PageLayout","Grid","item","xs","sx","actionsTray","SearchBox","placeholder","onChange","value","maxWidth","Box","justifyContent","gap","TooltipWrapper","tooltip","Button","id","label","variant","icon","RefreshIcon","AddIcon","IAM_PAGES","EVENT_DESTINATIONS_ADD","ProgressBar","length","DataTable","itemActions","columns","elementKey","renderFunction","CircleIcon","className","entityName","idField","customPaperHeight","marginTop","HelpBox","iconComponent","LambdaIcon","help","href","target","rel","container","alignContent","ActionLink","ConfirmDeleteDestinationModal","ep","name","configKey","getNotificationConfigKey","accountId","concat","account_id","configs","resetConfig","setServerNeedsRestart","console","log","resetNotificationConfig","notifyPostgres","notifyMysql","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationElements","map","element","service","DestType","DB","Queue","Func","getImgBaseURL","document","baseURI","destinationList","actionTrigger","targetTitle","logo","category","commonFields","required","removeEmptyFields","formFields","field","notificationEndpointsFields","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/8769.58bd5ad6.chunk.js b/web-app/build/static/js/8769.58bd5ad6.chunk.js deleted file mode 100644 index 751af3878c..0000000000 --- a/web-app/build/static/js/8769.58bd5ad6.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[8769],{72237:(e,t,o)=>{o.d(t,{A:()=>r});var n=o(65043),a=o(70579);const r=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(o){return(0,a.jsx)(n.Suspense,{fallback:t,children:(0,a.jsx)(e,{...o})})}}},68769:(e,t,o)=>{o.r(t),o.d(t,{default:()=>E});var n=o(65043),a=o(33097),r=o.n(a),l=o(89923),i=o(73216),s=o(56629),c=o(53518),p=o(67433),d=o(99161),u=o(64159),g=o(21383),m=o(39161),f=o(72237),h=o(48793),y=o(94574),b=o(70579);const S=y.Ay.div((e=>{let{theme:t}=e;return{background:r()(t,"boxBackground","#fff"),border:"".concat(r()(t,"borderColor","#E5E5E5")," 1px solid"),borderRadius:5,height:80,display:"flex",alignItems:"center",justifyContent:"start",marginBottom:16,cursor:"pointer",padding:0,overflow:"hidden","& .logoButton":{height:"80px"},"& .imageContainer":{backgroundColor:r()(t,"bgColor","#fff"),display:"flex",alignItems:"center",justifyContent:"center",width:80,height:80,"& img":{maxWidth:46,maxHeight:46,filter:"drop-shadow(1px 1px 8px #fff)"}},"& .titleBox":{color:r()(t,"fontColor","#000"),fontSize:16,fontFamily:"Inter,sans-serif",paddingLeft:18}}})),T=e=>{let{logoSrc:t,title:o}=e;return(0,b.jsxs)(S,{children:[(0,b.jsx)(l.azJ,{className:"imageContainer",children:(0,b.jsx)("img",{src:t,className:"logoButton",alt:o})}),(0,b.jsx)(l.azJ,{className:"titleBox",children:(0,b.jsxs)("b",{children:[o," Event Destination"]})})]})};var v=o(55968);const _=(0,f.A)(n.lazy((()=>o.e(3323).then(o.bind(o,43323))))),k=(0,f.A)(n.lazy((()=>o.e(5128).then(o.bind(o,5128))))),A=(0,f.A)(n.lazy((()=>o.e(6140).then(o.bind(o,13759))))),E=e=>{let{saveAndRefresh:t}=e;const o=(0,g.jL)(),a=(0,i.Zp)(),f=(0,i.g)(),[y,S]=(0,n.useState)([]),[E,x]=(0,n.useState)(""),[q,L]=(0,n.useState)(!1),C=f.service||"";(0,n.useEffect)((()=>{if(q){const e={key_values:(0,p.Xm)(y)};s.F.configs.setConfig("".concat(C,":").concat(E),e).then((()=>{L(!1),o((0,u.YR)(!0)),o((0,m.$Y)(!0)),a(d.zZ.EVENT_DESTINATIONS)})).catch((e=>{L(!1),o((0,u.C9)((0,c.S)(e.error)))}))}}),[q,C,y,t,o,a,E]);const w=(0,n.useCallback)((e=>{S(e)}),[S]);let j;switch(C){case p.P4:j=(0,b.jsx)(A,{onChange:w});break;case p.AU:j=(0,b.jsx)(_,{onChange:w});break;default:{const e=r()(p.fx,C,[]);j=(0,b.jsx)(k,{fields:e,onChange:w})}}const N=p.bo.find((e=>e.actionTrigger===C));return(0,n.useEffect)((()=>{o((0,u.ph)("add_notification_endpoint"))}),[]),(0,b.jsxs)(n.Fragment,{children:[(0,b.jsx)(h.A,{label:(0,b.jsx)(n.Fragment,{children:(0,b.jsx)(l.EGL,{label:"Event Destinations",onClick:()=>a(d.zZ.EVENT_DESTINATIONS_ADD)})}),actions:(0,b.jsx)(v.A,{})}),(0,b.jsx)(l.Mxu,{children:(0,b.jsx)("form",{noValidate:!0,onSubmit:e=>{e.preventDefault(),L(!0)},children:""!==C&&(0,b.jsxs)(n.Fragment,{children:[(0,b.jsx)(l.xA9,{item:!0,xs:12,children:N&&(0,b.jsx)(T,{logoSrc:N.logo,title:N?N.targetTitle:""})}),(0,b.jsxs)(l.Hbc,{children:[(0,b.jsx)(l.cl_,{id:"identifier-field",name:"identifier-field",label:"Identifier",value:E,onChange:e=>x(e.target.value),tooltip:"Unique descriptive string for this destination",placeholder:"Enter Destination Identifier",required:!0}),(0,b.jsx)(l.xA9,{item:!0,xs:12,children:j}),(0,b.jsx)(l.xA9,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end",marginTop:15},children:(0,b.jsx)(l.$nd,{id:"save-notification-target",type:"submit",variant:"callAction",disabled:q||""===E.trim(),label:"Save Event Destination"})})]})]})})})]})}},67433:(e,t,o)=>{o.d(t,{AU:()=>a,D3:()=>m,Es:()=>g,P4:()=>n,Xm:()=>b,bo:()=>h,fx:()=>S,h4:()=>v});const n="notify_postgres",a="notify_mysql",r="notify_kafka",l="notify_amqp",i="notify_mqtt",s="notify_redis",c="notify_nats",p="notify_elasticsearch",d="notify_webhook",u="notify_nsq",g=e=>e.map((e=>({service_name:"".concat(e.service,":").concat(e.account_id),name:e.service,account_id:e.account_id,status:e.status})));class m{}m.DB="database",m.Queue="queue",m.Func="functions";const f=()=>"".concat(document.baseURI),h=[{actionTrigger:n,targetTitle:"PostgreSQL",logo:"".concat(f(),"postgres-logo.svg"),category:m.DB},{actionTrigger:r,targetTitle:"Kafka",logo:"".concat(f(),"kafka-logo.svg"),category:m.Queue},{actionTrigger:l,targetTitle:"AMQP",logo:"".concat(f(),"amqp-logo.svg"),category:m.Queue},{actionTrigger:i,targetTitle:"MQTT",logo:"".concat(f(),"mqtt-logo.svg"),category:m.Queue},{actionTrigger:s,targetTitle:"Redis",logo:"".concat(f(),"redis-logo.svg"),category:m.Queue},{actionTrigger:c,targetTitle:"NATS",logo:"".concat(f(),"nats-logo.svg"),category:m.Queue},{actionTrigger:a,targetTitle:"Mysql",logo:"".concat(f(),"mysql-logo.svg"),category:m.DB},{actionTrigger:p,targetTitle:"Elastic Search",logo:"".concat(f(),"elasticsearch-logo.svg"),category:m.DB},{actionTrigger:d,targetTitle:"Webhook",logo:"".concat(f(),"webhooks-logo.svg"),category:m.Func},{actionTrigger:u,targetTitle:"NSQ",logo:"".concat(f(),"nsq-logo.svg"),category:m.Queue}],y=[{name:"queue_dir",label:"Queue Directory",required:!1,tooltip:"Staging directory 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 custom notes if any"}],b=e=>e.filter((e=>""!==e.value)),S={[r]:[{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 authorization",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 authorization",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS authorization",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"},...y],[l]:[{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"},...y],[s]:[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address e.g. `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"},...y],[i]:[{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 Interval"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"},...y],[c]:[{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 authorization",type:"string",placeholder:"Enter Client Key"},...y],[p]:[{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"},...y],[d]:[{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"},...y],[u]:[{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"},...y]},T={webhook:"notify_webhook",amqp:"notify_amqp",kafka:"notify_kafka",mqtt:"notify_mqtt",nats:"notify_nats",nsq:"notify_nsq",mysql:"notify_mysql",postgresql:"notify_postgres",elasticsearch:"notify_elasticsearch",redis:"notify_redis"},v=e=>T[e]}}]); -//# sourceMappingURL=8769.58bd5ad6.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/8769.58bd5ad6.chunk.js.map b/web-app/build/static/js/8769.58bd5ad6.chunk.js.map deleted file mode 100644 index e6a92dcecd..0000000000 --- a/web-app/build/static/js/8769.58bd5ad6.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/8769.58bd5ad6.chunk.js","mappings":"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","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/EventDestinations/TargetTitle.tsx","screens/Console/EventDestinations/AddEventDestination.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// 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, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 styled from \"styled-components\";\nimport { Box } from \"mds\";\n\ninterface ITargetTitle {\n logoSrc: string;\n title: string;\n}\n\nconst TargetBase = styled.div(({ theme }) => ({\n background: get(theme, \"boxBackground\", \"#fff\"),\n border: `${get(theme, \"borderColor\", \"#E5E5E5\")} 1px solid`,\n borderRadius: 5,\n height: 80,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"start\",\n marginBottom: 16,\n cursor: \"pointer\",\n padding: 0,\n overflow: \"hidden\",\n \"& .logoButton\": {\n height: \"80px\",\n },\n \"& .imageContainer\": {\n backgroundColor: get(theme, \"bgColor\", \"#fff\"),\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: 80,\n height: 80,\n\n \"& img\": {\n maxWidth: 46,\n maxHeight: 46,\n filter: \"drop-shadow(1px 1px 8px #fff)\",\n },\n },\n \"& .titleBox\": {\n color: get(theme, \"fontColor\", \"#000\"),\n fontSize: 16,\n fontFamily: \"Inter,sans-serif\",\n paddingLeft: 18,\n },\n}));\n\nconst TargetTitle = ({ logoSrc, title }: ITargetTitle) => {\n return (\n \n \n {title}\n \n\n \n {title} Event Destination\n \n \n );\n};\n\nexport default TargetTitle;\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, useCallback, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { BackLink, Button, FormLayout, Grid, InputBox, PageLayout } from \"mds\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n destinationList,\n notificationEndpointsFields,\n notifyMysql,\n notifyPostgres,\n removeEmptyFields,\n} from \"./utils\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport {\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setDestinationLoading } from \"./destinationsSlice\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport TargetTitle from \"./TargetTitle\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst ConfMySql = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfMySql\")),\n);\n\nconst ConfTargetGeneric = withSuspense(\n React.lazy(() => import(\"./ConfTargetGeneric\")),\n);\n\nconst ConfPostgres = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfPostgres\")),\n);\n\ninterface IAddNotificationEndpointProps {\n saveAndRefresh: any;\n}\n\nconst AddEventDestination = ({\n saveAndRefresh,\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n //Local States\n const [valuesArr, setValueArr] = useState([]);\n const [identifier, setIdentifier] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const service = params.service || \"\";\n\n //Effects\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesArr),\n };\n api.configs\n .setConfig(`${service}:${identifier}`, payload)\n .then(() => {\n setSaving(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(setDestinationLoading(true));\n navigate(IAM_PAGES.EVENT_DESTINATIONS);\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [\n saving,\n service,\n valuesArr,\n saveAndRefresh,\n dispatch,\n navigate,\n identifier,\n ]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueArr(newValue);\n },\n [setValueArr],\n );\n\n let srvComponent;\n switch (service) {\n case notifyPostgres: {\n srvComponent = ;\n break;\n }\n case notifyMysql: {\n srvComponent = ;\n break;\n }\n default: {\n const fields = get(notificationEndpointsFields, service, []);\n\n srvComponent = (\n \n );\n }\n }\n\n const targetElement = destinationList.find(\n (element) => element.actionTrigger === service,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"add_notification_endpoint\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD)}\n />\n \n }\n actions={}\n />\n\n \n

\n {service !== \"\" && (\n \n \n {targetElement && (\n \n )}\n \n \n setIdentifier(e.target.value)}\n tooltip={\"Unique descriptive string for this destination\"}\n placeholder=\"Enter Destination Identifier\"\n required\n />\n \n {srvComponent}\n \n \n \n \n \n \n )}\n
\n \n \n );\n};\n\nexport default AddEventDestination;\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 { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nexport const notifyKafka = \"notify_kafka\";\nexport const notifyAmqp = \"notify_amqp\";\nexport const notifyMqtt = \"notify_mqtt\";\nexport const notifyRedis = \"notify_redis\";\nexport const notifyNats = \"notify_nats\";\nexport const notifyElasticsearch = \"notify_elasticsearch\";\nexport const notifyWebhooks = \"notify_webhook\";\nexport const notifyNsq = \"notify_nsq\";\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nconst getImgBaseURL = () => {\n return `${document.baseURI}`;\n};\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: `${getImgBaseURL()}postgres-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: `${getImgBaseURL()}kafka-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: `${getImgBaseURL()}amqp-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: `${getImgBaseURL()}mqtt-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: `${getImgBaseURL()}redis-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: `${getImgBaseURL()}nats-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: `${getImgBaseURL()}mysql-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: `${getImgBaseURL()}elasticsearch-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: `${getImgBaseURL()}webhooks-logo.svg`,\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: `${getImgBaseURL()}nsq-logo.svg`,\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from api/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","TargetBase","styled","div","_ref","theme","background","get","border","concat","borderRadius","height","display","alignItems","justifyContent","marginBottom","cursor","padding","overflow","backgroundColor","width","maxWidth","maxHeight","filter","color","fontSize","fontFamily","paddingLeft","_ref2","logoSrc","title","_jsxs","Box","className","src","alt","ConfMySql","withSuspense","React","ConfTargetGeneric","ConfPostgres","saveAndRefresh","dispatch","useAppDispatch","navigate","useNavigate","params","useParams","valuesArr","setValueArr","useState","identifier","setIdentifier","saving","setSaving","service","useEffect","payload","key_values","removeEmptyFields","api","configs","setConfig","then","setServerNeedsRestart","setDestinationLoading","IAM_PAGES","EVENT_DESTINATIONS","catch","err","setErrorSnackMessage","errorToHandler","error","onValueChange","useCallback","newValue","srvComponent","notifyPostgres","onChange","notifyMysql","fields","notificationEndpointsFields","targetElement","destinationList","find","element","actionTrigger","setHelpName","Fragment","PageHeaderWrapper","label","BackLink","onClick","EVENT_DESTINATIONS_ADD","actions","HelpMenu","PageLayout","noValidate","onSubmit","event","preventDefault","Grid","item","xs","TargetTitle","logo","targetTitle","FormLayout","InputBox","id","name","value","e","target","tooltip","placeholder","required","sx","marginTop","Button","type","variant","disabled","trim","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationTransform","notificationElements","map","service_name","account_id","status","DestType","DB","Queue","Func","getImgBaseURL","document","baseURI","category","commonFields","formFields","field","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis","getNotificationConfigKey","serviceName"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/8769.c419bb08.chunk.js b/web-app/build/static/js/8769.c419bb08.chunk.js new file mode 100644 index 0000000000..fbe4f8dd07 --- /dev/null +++ b/web-app/build/static/js/8769.c419bb08.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkweb_app=self.webpackChunkweb_app||[]).push([[8769],{72237:(e,t,o)=>{o.d(t,{A:()=>r});var n=o(65043),a=o(70579);const r=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;return function(o){return(0,a.jsx)(n.Suspense,{fallback:t,children:(0,a.jsx)(e,{...o})})}}},68769:(e,t,o)=>{o.r(t),o.d(t,{default:()=>E});var n=o(65043),a=o(33097),r=o.n(a),l=o(89923),i=o(73216),s=o(56629),c=o(53518),p=o(67433),d=o(99161),u=o(64159),g=o(21383),m=o(39161),f=o(72237),h=o(48793),y=o(94574),b=o(70579);const S=y.Ay.div((e=>{let{theme:t}=e;return{background:r()(t,"boxBackground","#fff"),border:"".concat(r()(t,"borderColor","#E5E5E5")," 1px solid"),borderRadius:5,height:80,display:"flex",alignItems:"center",justifyContent:"start",marginBottom:16,cursor:"pointer",padding:0,overflow:"hidden","& .logoButton":{height:"80px"},"& .imageContainer":{backgroundColor:r()(t,"bgColor","#fff"),display:"flex",alignItems:"center",justifyContent:"center",width:80,height:80,"& img":{maxWidth:46,maxHeight:46,filter:"drop-shadow(1px 1px 8px #fff)"}},"& .titleBox":{color:r()(t,"fontColor","#000"),fontSize:16,fontFamily:"Inter,sans-serif",paddingLeft:18}}})),T=e=>{let{logoSrc:t,title:o}=e;return(0,b.jsxs)(S,{children:[(0,b.jsx)(l.azJ,{className:"imageContainer",children:(0,b.jsx)("img",{src:t,className:"logoButton",alt:o})}),(0,b.jsx)(l.azJ,{className:"titleBox",children:(0,b.jsxs)("b",{children:[o," Event Destination"]})})]})};var v=o(55968);const _=(0,f.A)(n.lazy((()=>o.e(3323).then(o.bind(o,43323))))),k=(0,f.A)(n.lazy((()=>o.e(5128).then(o.bind(o,5128))))),A=(0,f.A)(n.lazy((()=>o.e(6140).then(o.bind(o,13759))))),E=e=>{let{saveAndRefresh:t}=e;const o=(0,g.jL)(),a=(0,i.Zp)(),f=(0,i.g)(),[y,S]=(0,n.useState)([]),[E,x]=(0,n.useState)(""),[q,L]=(0,n.useState)(!1),C=f.service||"";(0,n.useEffect)((()=>{if(q){const e={key_values:(0,p.Xm)(y)};s.F.configs.setConfig("".concat(C,":").concat(E),e).then((()=>{L(!1),o((0,u.YR)(!0)),o((0,m.$)(!0)),a(d.zZ.EVENT_DESTINATIONS)})).catch((e=>{L(!1),o((0,u.C9)((0,c.S)(e.error)))}))}}),[q,C,y,t,o,a,E]);const w=(0,n.useCallback)((e=>{S(e)}),[S]);let j;switch(C){case p.P4:j=(0,b.jsx)(A,{onChange:w});break;case p.AU:j=(0,b.jsx)(_,{onChange:w});break;default:{const e=r()(p.fx,C,[]);j=(0,b.jsx)(k,{fields:e,onChange:w})}}const N=p.bo.find((e=>e.actionTrigger===C));return(0,n.useEffect)((()=>{o((0,u.ph)("add_notification_endpoint"))}),[]),(0,b.jsxs)(n.Fragment,{children:[(0,b.jsx)(h.A,{label:(0,b.jsx)(n.Fragment,{children:(0,b.jsx)(l.EGL,{label:"Event Destinations",onClick:()=>a(d.zZ.EVENT_DESTINATIONS_ADD)})}),actions:(0,b.jsx)(v.A,{})}),(0,b.jsx)(l.Mxu,{children:(0,b.jsx)("form",{noValidate:!0,onSubmit:e=>{e.preventDefault(),L(!0)},children:""!==C&&(0,b.jsxs)(n.Fragment,{children:[(0,b.jsx)(l.xA9,{item:!0,xs:12,children:N&&(0,b.jsx)(T,{logoSrc:N.logo,title:N?N.targetTitle:""})}),(0,b.jsxs)(l.Hbc,{children:[(0,b.jsx)(l.cl_,{id:"identifier-field",name:"identifier-field",label:"Identifier",value:E,onChange:e=>x(e.target.value),tooltip:"Unique descriptive string for this destination",placeholder:"Enter Destination Identifier",required:!0}),(0,b.jsx)(l.xA9,{item:!0,xs:12,children:j}),(0,b.jsx)(l.xA9,{item:!0,xs:12,sx:{display:"flex",justifyContent:"flex-end",marginTop:15},children:(0,b.jsx)(l.$nd,{id:"save-notification-target",type:"submit",variant:"callAction",disabled:q||""===E.trim(),label:"Save Event Destination"})})]})]})})})]})}},67433:(e,t,o)=>{o.d(t,{AU:()=>a,D3:()=>m,Es:()=>g,P4:()=>n,Xm:()=>b,bo:()=>h,fx:()=>S,h4:()=>v});const n="notify_postgres",a="notify_mysql",r="notify_kafka",l="notify_amqp",i="notify_mqtt",s="notify_redis",c="notify_nats",p="notify_elasticsearch",d="notify_webhook",u="notify_nsq",g=e=>e.map((e=>({service_name:"".concat(e.service,":").concat(e.account_id),name:e.service,account_id:e.account_id,status:e.status})));class m{}m.DB="database",m.Queue="queue",m.Func="functions";const f=()=>"".concat(document.baseURI),h=[{actionTrigger:n,targetTitle:"PostgreSQL",logo:"".concat(f(),"postgres-logo.svg"),category:m.DB},{actionTrigger:r,targetTitle:"Kafka",logo:"".concat(f(),"kafka-logo.svg"),category:m.Queue},{actionTrigger:l,targetTitle:"AMQP",logo:"".concat(f(),"amqp-logo.svg"),category:m.Queue},{actionTrigger:i,targetTitle:"MQTT",logo:"".concat(f(),"mqtt-logo.svg"),category:m.Queue},{actionTrigger:s,targetTitle:"Redis",logo:"".concat(f(),"redis-logo.svg"),category:m.Queue},{actionTrigger:c,targetTitle:"NATS",logo:"".concat(f(),"nats-logo.svg"),category:m.Queue},{actionTrigger:a,targetTitle:"Mysql",logo:"".concat(f(),"mysql-logo.svg"),category:m.DB},{actionTrigger:p,targetTitle:"Elastic Search",logo:"".concat(f(),"elasticsearch-logo.svg"),category:m.DB},{actionTrigger:d,targetTitle:"Webhook",logo:"".concat(f(),"webhooks-logo.svg"),category:m.Func},{actionTrigger:u,targetTitle:"NSQ",logo:"".concat(f(),"nsq-logo.svg"),category:m.Queue}],y=[{name:"queue_dir",label:"Queue Directory",required:!1,tooltip:"Staging directory 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 custom notes if any"}],b=e=>e.filter((e=>""!==e.value)),S={[r]:[{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 authorization",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 authorization",type:"path",placeholder:"Enter TLS Client Cert"},{name:"client_tls_key",label:"client TLS key",tooltip:"Path to client key for mTLS authorization",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"},...y],[l]:[{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"},...y],[s]:[{name:"address",required:!0,label:"Address",tooltip:"Redis server's address e.g. `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"},...y],[i]:[{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 Interval"},{name:"reconnect_interval",label:"Reconnect Interval",tooltip:"Reconnect interval for MQTT connections in s,m,h,d",type:"duration",placeholder:"Enter Reconnect Interval"},...y],[c]:[{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 authorization",type:"string",placeholder:"Enter Client Key"},...y],[p]:[{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"},...y],[d]:[{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"},...y],[u]:[{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"},...y]},T={webhook:"notify_webhook",amqp:"notify_amqp",kafka:"notify_kafka",mqtt:"notify_mqtt",nats:"notify_nats",nsq:"notify_nsq",mysql:"notify_mysql",postgresql:"notify_postgres",elasticsearch:"notify_elasticsearch",redis:"notify_redis"},v=e=>T[e]}}]); +//# sourceMappingURL=8769.c419bb08.chunk.js.map \ No newline at end of file diff --git a/web-app/build/static/js/8769.c419bb08.chunk.js.map b/web-app/build/static/js/8769.c419bb08.chunk.js.map new file mode 100644 index 0000000000..f1cb5572c2 --- /dev/null +++ b/web-app/build/static/js/8769.c419bb08.chunk.js.map @@ -0,0 +1 @@ +{"version":3,"file":"static/js/8769.c419bb08.chunk.js","mappings":"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","sources":["screens/Console/Common/Components/withSuspense.tsx","screens/Console/EventDestinations/TargetTitle.tsx","screens/Console/EventDestinations/AddEventDestination.tsx","screens/Console/EventDestinations/utils.ts"],"sourcesContent":["// 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, { ComponentType, Suspense, SuspenseProps } from \"react\";\n\nfunction withSuspense

(\n WrappedComponent: ComponentType

,\n fallback: SuspenseProps[\"fallback\"] = null,\n) {\n function ComponentWithSuspense(props: P) {\n return (\n \n \n \n );\n }\n\n return ComponentWithSuspense;\n}\n\nexport default withSuspense;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2023 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 styled from \"styled-components\";\nimport { Box } from \"mds\";\n\ninterface ITargetTitle {\n logoSrc: string;\n title: string;\n}\n\nconst TargetBase = styled.div(({ theme }) => ({\n background: get(theme, \"boxBackground\", \"#fff\"),\n border: `${get(theme, \"borderColor\", \"#E5E5E5\")} 1px solid`,\n borderRadius: 5,\n height: 80,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"start\",\n marginBottom: 16,\n cursor: \"pointer\",\n padding: 0,\n overflow: \"hidden\",\n \"& .logoButton\": {\n height: \"80px\",\n },\n \"& .imageContainer\": {\n backgroundColor: get(theme, \"bgColor\", \"#fff\"),\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n width: 80,\n height: 80,\n\n \"& img\": {\n maxWidth: 46,\n maxHeight: 46,\n filter: \"drop-shadow(1px 1px 8px #fff)\",\n },\n },\n \"& .titleBox\": {\n color: get(theme, \"fontColor\", \"#000\"),\n fontSize: 16,\n fontFamily: \"Inter,sans-serif\",\n paddingLeft: 18,\n },\n}));\n\nconst TargetTitle = ({ logoSrc, title }: ITargetTitle) => {\n return (\n \n \n {title}\n \n\n \n {title} Event Destination\n \n \n );\n};\n\nexport default TargetTitle;\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, useCallback, useEffect, useState } from \"react\";\nimport get from \"lodash/get\";\nimport { BackLink, Button, FormLayout, Grid, InputBox, PageLayout } from \"mds\";\nimport { useNavigate, useParams } from \"react-router-dom\";\nimport { api } from \"api\";\nimport { errorToHandler } from \"api/errors\";\nimport {\n destinationList,\n notificationEndpointsFields,\n notifyMysql,\n notifyPostgres,\n removeEmptyFields,\n} from \"./utils\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { IAM_PAGES } from \"../../../common/SecureComponent/permissions\";\nimport {\n setErrorSnackMessage,\n setHelpName,\n setServerNeedsRestart,\n} from \"../../../systemSlice\";\nimport { useAppDispatch } from \"../../../store\";\nimport { setDestinationLoading } from \"./destinationsSlice\";\nimport withSuspense from \"../Common/Components/withSuspense\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport TargetTitle from \"./TargetTitle\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst ConfMySql = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfMySql\")),\n);\n\nconst ConfTargetGeneric = withSuspense(\n React.lazy(() => import(\"./ConfTargetGeneric\")),\n);\n\nconst ConfPostgres = withSuspense(\n React.lazy(() => import(\"./CustomForms/ConfPostgres\")),\n);\n\ninterface IAddNotificationEndpointProps {\n saveAndRefresh: any;\n}\n\nconst AddEventDestination = ({\n saveAndRefresh,\n}: IAddNotificationEndpointProps) => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n const params = useParams();\n\n //Local States\n const [valuesArr, setValueArr] = useState([]);\n const [identifier, setIdentifier] = useState(\"\");\n const [saving, setSaving] = useState(false);\n const service = params.service || \"\";\n\n //Effects\n useEffect(() => {\n if (saving) {\n const payload = {\n key_values: removeEmptyFields(valuesArr),\n };\n api.configs\n .setConfig(`${service}:${identifier}`, payload)\n .then(() => {\n setSaving(false);\n dispatch(setServerNeedsRestart(true));\n dispatch(setDestinationLoading(true));\n navigate(IAM_PAGES.EVENT_DESTINATIONS);\n })\n .catch((err) => {\n setSaving(false);\n dispatch(setErrorSnackMessage(errorToHandler(err.error)));\n });\n }\n }, [\n saving,\n service,\n valuesArr,\n saveAndRefresh,\n dispatch,\n navigate,\n identifier,\n ]);\n\n //Fetch Actions\n const submitForm = (event: React.FormEvent) => {\n event.preventDefault();\n setSaving(true);\n };\n\n const onValueChange = useCallback(\n (newValue: IElementValue[]) => {\n setValueArr(newValue);\n },\n [setValueArr],\n );\n\n let srvComponent;\n switch (service) {\n case notifyPostgres: {\n srvComponent = ;\n break;\n }\n case notifyMysql: {\n srvComponent = ;\n break;\n }\n default: {\n const fields = get(notificationEndpointsFields, service, []);\n\n srvComponent = (\n \n );\n }\n }\n\n const targetElement = destinationList.find(\n (element) => element.actionTrigger === service,\n );\n\n useEffect(() => {\n dispatch(setHelpName(\"add_notification_endpoint\"));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return (\n \n \n navigate(IAM_PAGES.EVENT_DESTINATIONS_ADD)}\n />\n \n }\n actions={}\n />\n\n \n

\n {service !== \"\" && (\n \n \n {targetElement && (\n \n )}\n \n \n setIdentifier(e.target.value)}\n tooltip={\"Unique descriptive string for this destination\"}\n placeholder=\"Enter Destination Identifier\"\n required\n />\n \n {srvComponent}\n \n \n \n \n \n \n )}\n
\n \n \n );\n};\n\nexport default AddEventDestination;\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 { NotificationEndpointItem } from \"api/consoleApi\";\nimport { IElementValue } from \"../Configurations/types\";\nimport { TransformedEndpointItem } from \"./types\";\n\nexport const notifyPostgres = \"notify_postgres\";\nexport const notifyMysql = \"notify_mysql\";\nconst notifyKafka = \"notify_kafka\";\nconst notifyAmqp = \"notify_amqp\";\nconst notifyMqtt = \"notify_mqtt\";\nconst notifyRedis = \"notify_redis\";\nconst notifyNats = \"notify_nats\";\nconst notifyElasticsearch = \"notify_elasticsearch\";\nconst notifyWebhooks = \"notify_webhook\";\nconst notifyNsq = \"notify_nsq\";\nexport const notificationTransform = (\n notificationElements: NotificationEndpointItem[],\n) => {\n return notificationElements.map((element) => {\n return {\n service_name: `${element.service}:${element.account_id}`,\n name: element.service,\n account_id: element.account_id,\n status: element.status,\n };\n }) as TransformedEndpointItem[];\n};\n\nexport class DestType {\n static DB: string = \"database\";\n static Queue: string = \"queue\";\n static Func: string = \"functions\";\n}\n\nconst getImgBaseURL = () => {\n return `${document.baseURI}`;\n};\n\nexport const destinationList = [\n {\n actionTrigger: notifyPostgres,\n targetTitle: \"PostgreSQL\",\n logo: `${getImgBaseURL()}postgres-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyKafka,\n targetTitle: \"Kafka\",\n logo: `${getImgBaseURL()}kafka-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyAmqp,\n targetTitle: \"AMQP\",\n logo: `${getImgBaseURL()}amqp-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMqtt,\n targetTitle: \"MQTT\",\n logo: `${getImgBaseURL()}mqtt-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyRedis,\n targetTitle: \"Redis\",\n logo: `${getImgBaseURL()}redis-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyNats,\n targetTitle: \"NATS\",\n logo: `${getImgBaseURL()}nats-logo.svg`,\n category: DestType.Queue,\n },\n {\n actionTrigger: notifyMysql,\n targetTitle: \"Mysql\",\n logo: `${getImgBaseURL()}mysql-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyElasticsearch,\n targetTitle: \"Elastic Search\",\n logo: `${getImgBaseURL()}elasticsearch-logo.svg`,\n category: DestType.DB,\n },\n {\n actionTrigger: notifyWebhooks,\n targetTitle: \"Webhook\",\n logo: `${getImgBaseURL()}webhooks-logo.svg`,\n category: DestType.Func,\n },\n {\n actionTrigger: notifyNsq,\n targetTitle: \"NSQ\",\n logo: `${getImgBaseURL()}nsq-logo.svg`,\n category: DestType.Queue,\n },\n];\n\nconst commonFields = [\n {\n name: \"queue_dir\",\n label: \"Queue Directory\",\n required: false,\n\n tooltip: \"Staging directory for undelivered messages e.g. '/home/events'\",\n type: \"string\",\n placeholder: \"Enter Queue Directory\",\n },\n {\n name: \"queue_limit\",\n label: \"Queue Limit\",\n required: false,\n\n tooltip: \"Maximum limit for undelivered messages, defaults to '10000'\",\n type: \"number\",\n placeholder: \"Enter Queue Limit\",\n },\n {\n name: \"comment\",\n label: \"Comment\",\n required: false,\n type: \"comment\",\n placeholder: \"Enter custom notes if any\",\n },\n];\n\nexport const removeEmptyFields = (formFields: IElementValue[]) => {\n const nonEmptyFields = formFields.filter((field) => field.value !== \"\");\n\n return nonEmptyFields;\n};\n\nexport const notificationEndpointsFields: any = {\n [notifyKafka]: [\n {\n name: \"brokers\",\n label: \"Brokers\",\n required: true,\n\n tooltip: \"Comma separated list of Kafka broker addresses\",\n type: \"string\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n label: \"Topic\",\n tooltip: \"Kafka topic used for bucket notifications\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"sasl_username\",\n label: \"SASL Username\",\n tooltip: \"Username for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Username\",\n },\n {\n name: \"sasl_password\",\n label: \"SASL Password\",\n tooltip: \"Password for SASL/PLAIN or SASL/SCRAM authentication\",\n type: \"string\",\n placeholder: \"Enter SASL Password\",\n },\n {\n name: \"sasl_mechanism\",\n label: \"SASL Mechanism\",\n tooltip: \"SASL authentication mechanism, default 'PLAIN'\",\n type: \"string\",\n },\n {\n name: \"tls_client_auth\",\n label: \"TLS Client Auth\",\n tooltip:\n \"Client Auth determines the Kafka server's policy for TLS client authorization\",\n type: \"string\",\n placeholder: \"Enter TLS Client Auth\",\n },\n {\n name: \"sasl\",\n label: \"SASL\",\n tooltip: \"Set to 'on' to enable SASL authentication\",\n type: \"on|off\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS skip verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"client_tls_cert\",\n label: \"client TLS cert\",\n tooltip: \"Path to client certificate for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Cert\",\n },\n {\n name: \"client_tls_key\",\n label: \"client TLS key\",\n tooltip: \"Path to client key for mTLS authorization\",\n type: \"path\",\n placeholder: \"Enter TLS Client Key\",\n },\n {\n name: \"version\",\n label: \"Version\",\n tooltip: \"Specify the version of the Kafka cluster e.g '2.2.0'\",\n type: \"string\",\n placeholder: \"Enter Kafka Version\",\n },\n ...commonFields,\n ],\n [notifyAmqp]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"AMQP server endpoint e.g. `amqp://myuser:mypassword@localhost:5672`\",\n type: \"url\",\n },\n {\n name: \"exchange\",\n label: \"Exchange\",\n tooltip: \"Name of the AMQP exchange\",\n type: \"string\",\n placeholder: \"Enter Exchange\",\n },\n {\n name: \"exchange_type\",\n label: \"Exchange Type\",\n tooltip: \"AMQP exchange type\",\n type: \"string\",\n placeholder: \"Enter Exchange Type\",\n },\n {\n name: \"routing_key\",\n label: \"Routing Key\",\n tooltip: \"Routing key for publishing\",\n type: \"string\",\n placeholder: \"Enter Routing Key\",\n },\n {\n name: \"mandatory\",\n label: \"Mandatory\",\n tooltip:\n \"Quietly ignore undelivered messages when set to 'off', default is 'on'\",\n type: \"on|off\",\n },\n {\n name: \"durable\",\n label: \"Durable\",\n tooltip:\n \"Persist queue across broker restarts when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"no_wait\",\n label: \"No Wait\",\n tooltip:\n \"Non-blocking message delivery when set to 'on', default is 'off'\",\n type: \"on|off\",\n },\n {\n name: \"internal\",\n label: \"Internal\",\n tooltip:\n \"Set to 'on' for exchange to be not used directly by publishers, but only when bound to other exchanges\",\n type: \"on|off\",\n },\n {\n name: \"auto_deleted\",\n label: \"Auto Deleted\",\n tooltip:\n \"Auto delete queue when set to 'on', when there are no consumers\",\n type: \"on|off\",\n },\n {\n name: \"delivery_mode\",\n label: \"Delivery Mode\",\n tooltip: \"Set to '1' for non-persistent or '2' for persistent queue\",\n type: \"number\",\n placeholder: \"Enter Delivery Mode\",\n },\n ...commonFields,\n ],\n [notifyRedis]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"Redis server's address e.g. `localhost:6379`\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"key\",\n required: true,\n label: \"Key\",\n tooltip: \"Redis key to store/update events, key is auto-created\",\n type: \"string\",\n placeholder: \"Enter Key\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"Redis server password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n ...commonFields,\n ],\n [notifyMqtt]: [\n {\n name: \"broker\",\n required: true,\n label: \"Broker\",\n tooltip: \"MQTT server endpoint e.g. `tcp://localhost:1883`\",\n type: \"uri\",\n placeholder: \"Enter Brokers\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"Name of the MQTT topic to publish\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"MQTT username\",\n type: \"string\",\n placeholder: \"Enter Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"MQTT password\",\n type: \"string\",\n placeholder: \"Enter Password\",\n },\n {\n name: \"qos\",\n label: \"QOS\",\n tooltip: \"Set the quality of service priority, defaults to '0'\",\n type: \"number\",\n placeholder: \"Enter QOS\",\n },\n {\n name: \"keep_alive_interval\",\n label: \"Keep Alive Interval\",\n tooltip: \"Keep-alive interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Keep Alive Interval\",\n },\n {\n name: \"reconnect_interval\",\n label: \"Reconnect Interval\",\n tooltip: \"Reconnect interval for MQTT connections in s,m,h,d\",\n type: \"duration\",\n placeholder: \"Enter Reconnect Interval\",\n },\n ...commonFields,\n ],\n [notifyNats]: [\n {\n name: \"address\",\n required: true,\n label: \"Address\",\n tooltip: \"NATS server address e.g. '0.0.0.0:4222'\",\n type: \"address\",\n placeholder: \"Enter Address\",\n },\n {\n name: \"subject\",\n required: true,\n label: \"Subject\",\n tooltip: \"NATS subscription subject\",\n type: \"string\",\n placeholder: \"Enter NATS Subject\",\n },\n {\n name: \"username\",\n label: \"Username\",\n tooltip: \"NATS username\",\n type: \"string\",\n placeholder: \"Enter NATS Username\",\n },\n {\n name: \"password\",\n label: \"Password\",\n tooltip: \"NATS password\",\n type: \"string\",\n placeholder: \"Enter NATS password\",\n },\n {\n name: \"token\",\n label: \"Token\",\n tooltip: \"NATS token\",\n type: \"string\",\n placeholder: \"Enter NATS token\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n {\n name: \"ping_interval\",\n label: \"Ping Interval\",\n tooltip: \"Client ping commands interval in s,m,h,d. Disabled by default\",\n type: \"duration\",\n placeholder: \"Enter Ping Interval\",\n },\n {\n name: \"streaming\",\n label: \"Streaming\",\n tooltip: \"Set to 'on' to use streaming NATS server\",\n type: \"on|off\",\n },\n {\n name: \"streaming_async\",\n label: \"Streaming async\",\n tooltip: \"Set to 'on' to enable asynchronous publish\",\n type: \"on|off\",\n },\n {\n name: \"streaming_max_pub_acks_in_flight\",\n label: \"Streaming max publish ACKS in flight\",\n tooltip: \"Number of messages to publish without waiting for ACKs\",\n type: \"number\",\n placeholder: \"Enter Streaming in flight value\",\n },\n {\n name: \"streaming_cluster_id\",\n label: \"Streaming Cluster ID\",\n tooltip: \"Unique ID for NATS streaming cluster\",\n type: \"string\",\n placeholder: \"Enter Streaming Cluster ID\",\n },\n {\n name: \"cert_authority\",\n label: \"Cert Authority\",\n tooltip: \"Path to certificate chain of the target NATS server\",\n type: \"string\",\n placeholder: \"Enter Cert Authority\",\n },\n {\n name: \"client_cert\",\n label: \"Client Cert\",\n tooltip: \"Client cert for NATS mTLS auth\",\n type: \"string\",\n placeholder: \"Enter Client Cert\",\n },\n {\n name: \"client_key\",\n label: \"Client Key\",\n tooltip: \"Client cert key for NATS mTLS authorization\",\n type: \"string\",\n placeholder: \"Enter Client Key\",\n },\n ...commonFields,\n ],\n [notifyElasticsearch]: [\n {\n name: \"url\",\n required: true,\n label: \"URL\",\n tooltip:\n \"Elasticsearch server's address, with optional authentication info\",\n type: \"url\",\n placeholder: \"Enter URL\",\n },\n {\n name: \"index\",\n required: true,\n label: \"Index\",\n tooltip:\n \"Elasticsearch index to store/update events, index is auto-created\",\n type: \"string\",\n placeholder: \"Enter Index\",\n },\n {\n name: \"format\",\n required: true,\n label: \"Format\",\n tooltip:\n \"'namespace' reflects current bucket/object list and 'access' reflects a journal of object operations, defaults to 'namespace'\",\n type: \"enum\",\n placeholder: \"Enter Format\",\n },\n ...commonFields,\n ],\n [notifyWebhooks]: [\n {\n name: \"endpoint\",\n required: true,\n label: \"Endpoint\",\n tooltip:\n \"Webhook server endpoint e.g. http://localhost:8080/minio/events\",\n type: \"url\",\n placeholder: \"Enter Endpoint\",\n },\n {\n name: \"auth_token\",\n label: \"Auth Token\",\n tooltip: \"Opaque string or JWT authorization token\",\n type: \"string\",\n placeholder: \"Enter auth_token\",\n },\n ...commonFields,\n ],\n [notifyNsq]: [\n {\n name: \"nsqd_address\",\n required: true,\n label: \"NSQD Address\",\n tooltip: \"NSQ server address e.g. '127.0.0.1:4150'\",\n type: \"address\",\n placeholder: \"Enter nsqd_address\",\n },\n {\n name: \"topic\",\n required: true,\n label: \"Topic\",\n tooltip: \"NSQ topic\",\n type: \"string\",\n placeholder: \"Enter Topic\",\n },\n {\n name: \"tls\",\n label: \"TLS\",\n tooltip: \"Set to 'on' to enable TLS\",\n type: \"on|off\",\n },\n {\n name: \"tls_skip_verify\",\n label: \"TLS Skip Verify\",\n tooltip:\n 'Trust server TLS without verification, defaults to \"on\" (verify)',\n type: \"on|off\",\n },\n ...commonFields,\n ],\n};\n\nconst serviceToConfigMap: Record = {\n webhook: \"notify_webhook\",\n amqp: \"notify_amqp\",\n kafka: \"notify_kafka\",\n mqtt: \"notify_mqtt\",\n nats: \"notify_nats\",\n nsq: \"notify_nsq\",\n mysql: \"notify_mysql\",\n postgresql: \"notify_postgres\", //looks different in server response(postgresql as opposed to postgres) from api/admin_notification_endpoints.go\n elasticsearch: \"notify_elasticsearch\",\n redis: \"notify_redis\",\n};\n\nexport const getNotificationConfigKey = (serviceName: string) => {\n return serviceToConfigMap[serviceName];\n};\n"],"names":["WrappedComponent","fallback","arguments","length","undefined","props","_jsx","Suspense","children","TargetBase","styled","div","_ref","theme","background","get","border","concat","borderRadius","height","display","alignItems","justifyContent","marginBottom","cursor","padding","overflow","backgroundColor","width","maxWidth","maxHeight","filter","color","fontSize","fontFamily","paddingLeft","_ref2","logoSrc","title","_jsxs","Box","className","src","alt","ConfMySql","withSuspense","React","ConfTargetGeneric","ConfPostgres","saveAndRefresh","dispatch","useAppDispatch","navigate","useNavigate","params","useParams","valuesArr","setValueArr","useState","identifier","setIdentifier","saving","setSaving","service","useEffect","payload","key_values","removeEmptyFields","api","configs","setConfig","then","setServerNeedsRestart","setDestinationLoading","IAM_PAGES","EVENT_DESTINATIONS","catch","err","setErrorSnackMessage","errorToHandler","error","onValueChange","useCallback","newValue","srvComponent","notifyPostgres","onChange","notifyMysql","fields","notificationEndpointsFields","targetElement","destinationList","find","element","actionTrigger","setHelpName","Fragment","PageHeaderWrapper","label","BackLink","onClick","EVENT_DESTINATIONS_ADD","actions","HelpMenu","PageLayout","noValidate","onSubmit","event","preventDefault","Grid","item","xs","TargetTitle","logo","targetTitle","FormLayout","InputBox","id","name","value","e","target","tooltip","placeholder","required","sx","marginTop","Button","type","variant","disabled","trim","notifyKafka","notifyAmqp","notifyMqtt","notifyRedis","notifyNats","notifyElasticsearch","notifyWebhooks","notifyNsq","notificationTransform","notificationElements","map","service_name","account_id","status","DestType","DB","Queue","Func","getImgBaseURL","document","baseURI","category","commonFields","formFields","field","serviceToConfigMap","webhook","amqp","kafka","mqtt","nats","nsq","mysql","postgresql","elasticsearch","redis","getNotificationConfigKey","serviceName"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/9340.9df4309b.chunk.js.map b/web-app/build/static/js/9340.9df4309b.chunk.js.map index 784326dc48..1b6eec130f 100644 --- a/web-app/build/static/js/9340.9df4309b.chunk.js.map +++ b/web-app/build/static/js/9340.9df4309b.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/9340.9df4309b.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/DateRangeSelector/DateRangeSelector.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/Dashboard/BasicDashboard/StatusCountCard.tsx","screens/Console/Dashboard/BasicDashboard/Utils.tsx","screens/Console/Dashboard/Prometheus/types.ts","screens/Console/Dashboard/Prometheus/utils.tsx","screens/Console/Dashboard/Prometheus/Widgets/ExpandGraphLink.tsx","screens/Console/Dashboard/DownloadWidgetDataButton.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/BarChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/BarChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/LineChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/LinearGraphWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/PieChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/SimpleWidget.tsx","screens/Console/Dashboard/DashboardItemBox.tsx","screens/Console/Dashboard/Prometheus/Widgets/NumericStatCard.tsx","screens/Console/Dashboard/Prometheus/Widgets/BucketsCountItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/ObjectsCountItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/SingleRepWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/SingleValueWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/CapacityItem.tsx","screens/Console/Dashboard/TimeStatItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/HealActivityRenderer.tsx","screens/Console/Dashboard/Prometheus/Widgets/ScanActivityRenderer.tsx","screens/Console/Dashboard/Prometheus/Widgets/UptimeActivityRenderer.tsx","screens/Console/Dashboard/Prometheus/widgetUtils.tsx","screens/Console/Dashboard/Prometheus/Widgets/LayoutUtil.tsx","screens/Console/Dashboard/Prometheus/ZoomWidget.tsx","screens/Console/Dashboard/CommonCard.tsx","screens/Console/Dashboard/Prometheus/MergedWidgets.tsx","screens/Console/Dashboard/Prometheus/Widgets/EntityStateStatItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/DualStatCard.tsx","screens/Console/Dashboard/Prometheus/Widgets/EntityStateItemRenderer.tsx","screens/Console/Dashboard/Prometheus/Widgets/NetworkGetItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/NetworkPutItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/NetworkItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/MergedWidgetsRenderer.tsx","screens/Console/Dashboard/BasicDashboard/ServerInfoItem.tsx","screens/Console/Dashboard/BasicDashboard/DriveInfoItem.tsx","screens/Console/Dashboard/BasicDashboard/ServersList.tsx","screens/Console/Dashboard/BasicDashboard/CounterCard.tsx","screens/Console/Dashboard/BasicDashboard/BasicDashboard.tsx","screens/Console/Dashboard/Prometheus/PrDashboard.tsx","screens/Console/Dashboard/Dashboard.tsx"],"sourcesContent":["// 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 {\n Button,\n SyncIcon,\n Grid,\n Box,\n breakPoints,\n TimeIcon,\n DateTimeInput,\n} from \"mds\";\nimport { DateTime } from \"luxon\";\n\ninterface IDateRangeSelector {\n timeStart: DateTime | null;\n setTimeStart: (value: DateTime | null) => void;\n timeEnd: DateTime | null;\n setTimeEnd: (value: DateTime | null) => void;\n triggerSync?: () => void;\n label?: string;\n startLabel?: string;\n endLabel?: string;\n}\n\nconst DateRangeSelector = ({\n timeStart,\n setTimeStart,\n timeEnd,\n setTimeEnd,\n triggerSync,\n label = \"Filter:\",\n startLabel = \"Start Time:\",\n endLabel = \"End Time:\",\n}: IDateRangeSelector) => {\n return (\n \n \n \n {label}\n \n \n \n \n {startLabel}\n \n }\n />\n \n \n {endLabel}\n \n }\n />\n \n\n {triggerSync && (\n \n }\n label={\"Sync\"}\n />\n \n )}\n \n \n );\n};\n\nexport default DateRangeSelector;\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 { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default ModalWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, CircleIcon } from \"mds\";\n\nconst StatusCountBase = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n maxWidth: \"321px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n \"& .mainBox\": {\n flex: 1,\n display: \"flex\",\n padding: \"0 8px 0 8px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n padding: \"0 10px 0 10px\",\n },\n \"& .indicatorIcon\": {\n width: \"20px\",\n height: \"20px\",\n marginTop: \"8px\",\n maxWidth: \"26px\",\n \"& .min-icon\": {\n width: \"16px\",\n height: \"16px\",\n },\n },\n \"& .indicatorContainer\": {\n flex: 1,\n display: \"flex\",\n flexFlow: \"column\",\n \"& .indicatorLabel\": {\n fontSize: \"16px\",\n fontWeight: 600,\n },\n \"& .counterIndicator\": {\n display: \"flex\",\n alignItems: \"center\",\n gap: \"5px\",\n justifyContent: \"space-between\",\n paddingBottom: 0,\n fontSize: \"55px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n paddingBottom: 10,\n fontSize: \"35px\",\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n fontSize: \"45px\",\n },\n [`@media (max-width: ${breakPoints.xl}px)`]: {\n fontSize: \"50px\",\n },\n flexFlow: \"row\",\n fontWeight: 600,\n\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888D\"),\n fontSize: \"12px\",\n marginTop: \"8px\",\n },\n \"& .stat-value\": {\n textAlign: \"center\",\n height: \"50px\",\n },\n \"& .min-icon\": {\n marginRight: \"8px\",\n marginTop: \"8px\",\n height: \"10px\",\n width: \"10px\",\n },\n },\n \"& .onlineCounter\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"5px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"& .offlineCount\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"8px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n}));\n\nexport const StatusCountCard = ({\n onlineCount = 0,\n offlineCount = 0,\n icon = null,\n label = \"\",\n okStatusText = \"Online\",\n notOkStatusText = \"Offline\",\n}: {\n icon: any;\n onlineCount: number;\n offlineCount: number;\n label: string;\n okStatusText?: string;\n notOkStatusText?: string;\n}) => {\n return (\n \n \n \n {label}\n\n \n \n {onlineCount}\n \n \n
{okStatusText}
\n
\n
\n\n \n {offlineCount}\n \n {\" \"}\n
{notOkStatusText}
\n
\n
\n
\n
\n {icon}\n
\n
\n );\n};\n\nexport default StatusCountCard;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 STATUS_COLORS = {\n RED: \"#C83B51\",\n GREEN: \"#4CCB92\",\n YELLOW: \"#FFBD62\",\n};\n\nexport const getDriveStatusColor = (\n activeDisks: number,\n totalDrives: number,\n) => {\n if (activeDisks <= totalDrives / 2) {\n return \"bad\";\n }\n if (totalDrives !== 2 && activeDisks === totalDrives / 2 + 1) {\n return \"warn\";\n }\n if (activeDisks === totalDrives) {\n return \"good\";\n }\n};\n\nexport const serverStatusColor = (health_status: string) => {\n switch (health_status) {\n case \"offline\":\n return \"bad\";\n case \"online\":\n return \"good\";\n default:\n return \"warn\";\n }\n};\nexport const getNetworkStatusColor = (\n activeNetwork: number,\n networkTotal: number,\n) => {\n if (activeNetwork <= networkTotal / 2) {\n return \"bad\";\n }\n if (activeNetwork === networkTotal / 2 + 1) {\n return \"warn\";\n }\n if (activeNetwork === networkTotal) {\n return \"good\";\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 IBarChartConfiguration,\n IBarChartRelation,\n IDataSRep,\n ILinearGraphConfiguration,\n IPieChartConfiguration,\n} from \"./Widgets/types\";\n\nexport enum widgetType {\n singleValue = \"singleValue\",\n linearGraph = \"linearGraph\",\n areaGraph = \"areaGraph\",\n barChart = \"barChart\",\n pieChart = \"pieChart\",\n singleRep = \"singleRep\",\n simpleWidget = \"simpleWidget\",\n}\n\nexport interface IDashboardPanel {\n id: number;\n mergedPanels?: IDashboardPanel[];\n title: string;\n data?: string | object[] | IDataSRep[];\n dataOuter?: string | object[];\n type?: widgetType;\n widgetIcon?: any;\n widgetConfiguration?:\n | ILinearGraphConfiguration[]\n | IBarChartConfiguration[]\n | IPieChartConfiguration;\n color?: string;\n fillColor?: string;\n innerLabel?: string;\n labelDisplayFunction?: (value: string) => any;\n disableYAxis?: boolean;\n xAxisFormatter?: (item: string) => string;\n yAxisFormatter?: (item: string) => string;\n customStructure?: IBarChartRelation[];\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 } from \"react\";\nimport get from \"lodash/get\";\nimport { IDashboardPanel, widgetType } from \"./types\";\nimport {\n getTimeFromTimestamp,\n niceBytes,\n niceDays,\n representationNumber,\n textToRGBColor,\n units,\n} from \"../../../../common/utils\";\nimport { DiagnosticsIcon, HealIcon, UptimeIcon } from \"mds\";\n\nconst colorsMain = [\n \"#C4D4E9\",\n \"#DCD1EE\",\n \"#D1EEE7\",\n \"#EEDED1\",\n \"#AAF38F\",\n \"#F9E6C5\",\n \"#C83B51\",\n \"#F4CECE\",\n \"#D6D6D6\",\n];\n\nconst niceDaysFromNS = (seconds: string) => {\n return niceDays(seconds, \"ns\");\n};\n\nconst roundNumber = (value: string) => {\n return parseInt(value).toString(10);\n};\n\nexport const panelsConfiguration: IDashboardPanel[] = [\n {\n id: 1,\n title: \"Uptime\",\n data: \"N/A\",\n type: widgetType.simpleWidget,\n widgetIcon: ,\n labelDisplayFunction: niceDays,\n },\n {\n id: 50,\n title: \"Capacity\",\n data: [],\n dataOuter: [{ name: \"outer\", value: 100 }],\n widgetConfiguration: {\n outerChart: {\n colorList: [\"#9c9c9c\"],\n innerRadius: 0,\n outerRadius: 0,\n startAngle: 0,\n endAngle: 0,\n },\n innerChart: {\n colorList: colorsMain,\n innerRadius: 20,\n outerRadius: 50,\n startAngle: 90,\n endAngle: -200,\n },\n },\n type: widgetType.pieChart,\n innerLabel: \"N/A\",\n labelDisplayFunction: niceBytes,\n },\n {\n id: 51,\n title: \"Usable Capacity\",\n data: [],\n dataOuter: [{ name: \"outer\", value: 100 }],\n widgetConfiguration: {\n outerChart: {\n colorList: [\"#9c9c9c\"],\n innerRadius: 0,\n outerRadius: 0,\n startAngle: 0,\n endAngle: 0,\n },\n innerChart: {\n colorList: colorsMain,\n innerRadius: 20,\n outerRadius: 50,\n startAngle: 90,\n endAngle: -200,\n },\n },\n type: widgetType.pieChart,\n innerLabel: \"N/A\",\n labelDisplayFunction: niceBytes,\n },\n {\n id: 68,\n title: \"Data Usage Growth\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.areaGraph,\n yAxisFormatter: niceBytes,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 52,\n title: \"Object size distribution\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"a\",\n color: \"#2781B0\",\n background: {\n fill: \"#EEF1F4\",\n },\n greatestColor: \"#081C42\",\n },\n ],\n customStructure: [\n { originTag: \"LESS_THAN_1024_B\", displayTag: \"Less than 1024B\" },\n {\n originTag: \"BETWEEN_1024_B_AND_1_MB\",\n displayTag: \"Between 1024B and 1MB\",\n },\n {\n originTag: \"BETWEEN_1_MB_AND_10_MB\",\n displayTag: \"Between 1MB and 10MB\",\n },\n {\n originTag: \"BETWEEN_10_MB_AND_64_MB\",\n displayTag: \"Between 10MB and 64MB\",\n },\n {\n originTag: \"BETWEEN_64_MB_AND_128_MB\",\n displayTag: \"Between 64MB and 128MB\",\n },\n {\n originTag: \"BETWEEN_128_MB_AND_512_MB\",\n displayTag: \"Between 128MB and 512MB\",\n },\n {\n originTag: \"GREATER_THAN_512_MB\",\n displayTag: \"Greater than 512MB\",\n },\n ],\n type: widgetType.barChart,\n },\n {\n id: 66,\n title: \"Buckets\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#0071BC\",\n fillColor: \"#ADD5E0\",\n },\n {\n id: 44,\n title: \"Objects\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#0071BC\",\n fillColor: \"#ADD5E0\",\n },\n {\n id: 63,\n title: \"API Data Received Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n strokeWidth: 3,\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 61,\n title: \"Total Open FDs\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#22B573\",\n fillColor: \"#A6E8C4\",\n },\n {\n id: 62,\n title: \"Total Goroutines\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#F7655E\",\n fillColor: \"#F4CECE\",\n },\n {\n id: 77,\n title: \"Node CPU Usage\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 60,\n title: \"API Request Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 70,\n title: \"API Data Sent Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 17,\n title: \"Internode Data Transfer\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n yAxisFormatter: niceBytes,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 73,\n title: \"Node IO\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n yAxisFormatter: niceBytes,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 80,\n title: \"Time Since Last Heal Activity\",\n data: \"N/A\",\n type: widgetType.simpleWidget,\n widgetIcon: ,\n labelDisplayFunction: niceDaysFromNS,\n },\n {\n id: 81,\n title: \"Time Since Last Scan Activity\",\n data: \"N/A\",\n type: widgetType.simpleWidget,\n widgetIcon: ,\n labelDisplayFunction: niceDaysFromNS,\n },\n {\n id: 71,\n title: \"API Request Error Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 76,\n title: \"Node Memory Usage\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 74,\n title: \"Drive Used Capacity\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 82,\n title: \"Drives Free Inodes\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n disableYAxis: true,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 11,\n title: \"Node Syscalls\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 8,\n title: \"Node File Descriptors\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 500,\n mergedPanels: [\n {\n id: 53,\n title: \"Online\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n {\n id: 69,\n title: \"Offline\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n ],\n title: \"Servers\",\n },\n {\n id: 501,\n mergedPanels: [\n {\n id: 9,\n title: \"Online\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n {\n id: 78,\n title: \"Offline\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n ],\n title: \"Drives\",\n },\n {\n id: 502,\n mergedPanels: [\n {\n id: 65,\n title: \"Upload\",\n data: \"N/A\",\n type: widgetType.singleValue,\n\n labelDisplayFunction: niceBytes,\n },\n {\n id: 64,\n title: \"Download\",\n data: \"N/A\",\n type: widgetType.singleValue,\n\n labelDisplayFunction: niceBytes,\n },\n ],\n title: \"Network\",\n },\n];\n\nconst calculateMainValue = (elements: any[], metricCalc: string) => {\n if (elements.length === 0) {\n return [\"\", \"0\"];\n }\n\n switch (metricCalc) {\n case \"mean\":\n const sumValues = elements.reduce((accumulator, currValue) => {\n return accumulator + parseFloat(currValue[1]);\n }, 0);\n\n const mean = Math.floor(sumValues / elements.length);\n\n return [\"\", mean.toString()];\n default:\n const sortResult = elements.sort(\n (value1: any[], value2: any[]) => value1[0] - value2[0],\n );\n\n return sortResult[sortResult.length - 1];\n }\n};\n\nconst constructLabelNames = (metrics: any, legendFormat: string) => {\n const keysToReplace = Object.keys(metrics);\n const expToReplace = new RegExp(`{{(${keysToReplace.join(\"|\")})}}`, \"g\");\n\n let replacedLegend = legendFormat.replace(expToReplace, (matchItem) => {\n const nwMatchItem = matchItem.replace(/({{|}})/g, \"\");\n return metrics[nwMatchItem];\n });\n\n const countVarsOpen = (replacedLegend.match(/{{/g) || []).length;\n const countVarsClose = (replacedLegend.match(/}}/g) || []).length;\n\n let cleanLegend = replacedLegend.replace(/{{(.*?)}}/g, \"\");\n\n if (\n countVarsOpen === countVarsClose &&\n countVarsOpen !== 0 &&\n countVarsClose !== 0\n ) {\n keysToReplace.forEach((element) => {\n replacedLegend = replacedLegend.replace(element, metrics[element]);\n });\n\n cleanLegend = replacedLegend;\n }\n\n // In case not all the legends were replaced, we remove the placeholders.\n return cleanLegend;\n};\n\nexport const widgetDetailsToPanel = (\n payloadData: any,\n panelItem: IDashboardPanel,\n) => {\n if (!payloadData) {\n return panelItem;\n }\n\n const typeOfPayload = payloadData.type;\n\n switch (panelItem.type) {\n case widgetType.singleValue:\n case widgetType.simpleWidget:\n if (typeOfPayload === \"stat\" || typeOfPayload === \"singlestat\") {\n // We sort values & get the last value\n let elements = get(payloadData, \"targets[0].result[0].values\", []);\n\n if (elements === null) {\n elements = [];\n }\n\n const metricCalc = get(\n payloadData,\n \"options.reduceOptions.calcs[0]\",\n \"lastNotNull\",\n );\n\n const valueDisplay = calculateMainValue(elements, metricCalc);\n\n const data = panelItem.labelDisplayFunction\n ? panelItem.labelDisplayFunction(valueDisplay[1])\n : valueDisplay[1];\n\n return {\n ...panelItem,\n data,\n };\n }\n break;\n case widgetType.pieChart:\n if (typeOfPayload === \"gauge\") {\n const metricCalc = get(\n payloadData,\n \"options.reduceOptions.calcs[0]\",\n \"lastNotNull\",\n );\n\n let chartSeries = get(payloadData, \"targets\", []).filter(\n (seriesItem: any) => seriesItem !== null,\n );\n\n const values = chartSeries.map((chartTarget: any) => {\n const resultMap =\n chartTarget.result && Array.isArray(chartTarget.result)\n ? chartTarget.result\n : [];\n\n const values = resultMap.map((elementValue: any) => {\n const values = get(elementValue, \"values\", []);\n const metricKeyItem = Object.keys(elementValue.metric);\n const sortResult = values.sort(\n (value1: any[], value2: any[]) =>\n parseInt(value1[0][1]) - parseInt(value2[0][1]),\n );\n\n const metricName = elementValue.metric[metricKeyItem[0]];\n const value = sortResult[sortResult.length - 1];\n return {\n name: metricName,\n value: parseInt(value[1]),\n legend: chartTarget.legendFormat,\n };\n });\n\n return values;\n });\n\n const firstTarget =\n chartSeries[0].result && chartSeries[0].result.length > 0\n ? chartSeries[0].result[0].values\n : [];\n\n const totalValues = calculateMainValue(firstTarget, metricCalc);\n\n const innerLabel = panelItem.labelDisplayFunction\n ? panelItem.labelDisplayFunction(totalValues[1])\n : totalValues[1];\n\n return {\n ...panelItem,\n data: values,\n innerLabel,\n };\n }\n break;\n case widgetType.linearGraph:\n case widgetType.areaGraph:\n if (typeOfPayload === \"graph\") {\n let targets = get(payloadData, \"targets\", []);\n if (targets === null) {\n targets = [];\n }\n\n const series: any[] = [];\n const plotValues: any[] = [];\n\n targets.forEach(\n (\n targetMaster: { legendFormat: string; result: any[] },\n index: number,\n ) => {\n // Add a new serie to plot variables in case it is not from multiple values\n let results = get(targetMaster, \"result\", []);\n const legendFormat = targetMaster.legendFormat;\n if (results === null) {\n results = [];\n }\n\n results.forEach((itemVals: { metric: object; values: any[] }) => {\n // Label Creation\n const labelName = constructLabelNames(\n itemVals.metric,\n legendFormat,\n );\n const keyName = `key_${index}${labelName}`;\n\n // series creation with recently created label\n series.push({\n dataKey: keyName,\n keyLabel: labelName,\n lineColor: \"\",\n fillColor: \"\",\n });\n\n // we iterate over values and create elements\n let values = get(itemVals, \"values\", []);\n if (values === null) {\n values = [];\n }\n\n values.forEach((valInfo: any[]) => {\n const itemIndex = plotValues.findIndex(\n (element) => element.name === valInfo[0],\n );\n\n // Element not exists yet\n if (itemIndex === -1) {\n let itemToPush: any = { name: valInfo[0] };\n itemToPush[keyName] = valInfo[1];\n\n plotValues.push(itemToPush);\n } else {\n plotValues[itemIndex][keyName] = valInfo[1];\n }\n });\n });\n },\n );\n\n const sortedSeries = series.sort((series1: any, series2: any) => {\n if (series1.keyLabel < series2.keyLabel) {\n return -1;\n }\n if (series1.keyLabel > series2.keyLabel) {\n return 1;\n }\n return 0;\n });\n\n const seriesWithColors = sortedSeries.map(\n (serialC: any, index: number) => {\n return {\n ...serialC,\n lineColor: colorsMain[index] || textToRGBColor(serialC.keyLabel),\n fillColor: colorsMain[index] || textToRGBColor(serialC.keyLabel),\n };\n },\n );\n\n const sortedVals = plotValues.sort(\n (value1: any, value2: any) => value1.name - value2.name,\n );\n\n return {\n ...panelItem,\n widgetConfiguration: seriesWithColors,\n data: sortedVals,\n };\n }\n break;\n case widgetType.barChart:\n if (typeOfPayload === \"bargauge\") {\n let chartBars = get(payloadData, \"targets[0].result\", []);\n\n if (chartBars === null) {\n chartBars = [];\n }\n\n const sortFunction = (value1: any[], value2: any[]) =>\n value1[0] - value2[0];\n\n let values = [];\n if (panelItem.customStructure) {\n values = panelItem.customStructure.map((structureItem) => {\n const metricTake = chartBars.find((element: any) => {\n return element.metric.range === structureItem.originTag;\n });\n\n const elements = get(metricTake, \"values\", []);\n\n const sortResult = elements.sort(sortFunction);\n const lastValue = sortResult[sortResult.length - 1] || [\"\", \"0\"];\n\n return {\n name: structureItem.displayTag,\n a: parseInt(lastValue[1]),\n };\n });\n } else {\n // If no configuration is set, we construct the series for bar chart and return the element\n values = chartBars.map((elementValue: any) => {\n const metricKeyItem = Object.keys(elementValue.metric);\n\n const metricName = elementValue.metric[metricKeyItem[0]];\n\n const elements = get(elementValue, \"values\", []);\n\n const sortResult = elements.sort(sortFunction);\n const lastValue = sortResult[sortResult.length - 1] || [\"\", \"0\"];\n return { name: metricName, a: parseInt(lastValue[1]) };\n });\n }\n\n return {\n ...panelItem,\n data: values,\n };\n }\n break;\n case widgetType.singleRep:\n if (typeOfPayload === \"stat\") {\n // We sort values & get the last value\n let elements = get(payloadData, \"targets[0].result[0].values\", []);\n if (elements === null) {\n elements = [];\n }\n const metricCalc = get(\n payloadData,\n \"options.reduceOptions.calcs[0]\",\n \"lastNotNull\",\n );\n\n const valueDisplay = calculateMainValue(elements, metricCalc);\n\n const sortResult = elements.sort(\n (value1: any[], value2: any[]) => value1[0] - value2[0],\n );\n\n let valuesForBackground = [];\n\n if (sortResult.length === 1) {\n valuesForBackground.push({ value: 0 });\n }\n\n sortResult.forEach((eachVal: any) => {\n valuesForBackground.push({ value: parseInt(eachVal[1]) });\n });\n\n const innerLabel = panelItem.labelDisplayFunction\n ? panelItem.labelDisplayFunction(valueDisplay[1])\n : valueDisplay[1];\n\n return {\n ...panelItem,\n data: valuesForBackground,\n innerLabel,\n };\n }\n break;\n }\n\n return panelItem;\n};\n\nconst verifyNumeric = (item: string) => {\n return !isNaN(parseFloat(item));\n};\n\nexport const splitSizeMetric = (val: string) => {\n const splittedText = val.split(\" \");\n // Value is not a size metric, we return as common string\n\n const singleValue = () => {\n let vl = val;\n\n if (verifyNumeric(val)) {\n vl = representationNumber(parseFloat(val));\n }\n return {vl};\n };\n\n if (splittedText.length !== 2) {\n return singleValue();\n }\n\n if (!units.includes(splittedText[1])) {\n return singleValue();\n }\n\n return (\n \n {splittedText[0]}\n {splittedText[1]}\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 { Box, ExpandIcon } from \"mds\";\n\nimport { IDashboardPanel } from \"../types\";\n\nimport { openZoomPage } from \"../../dashboardSlice\";\nimport { useAppDispatch } from \"../../../../../store\";\n\nconst ExpandGraphLink = ({ panelItem }: { panelItem: IDashboardPanel }) => {\n const dispatch = useAppDispatch();\n return (\n \n {\n dispatch(openZoomPage(panelItem));\n }}\n className={\"zoom-graph-icon\"}\n >\n \n \n \n );\n};\n\nexport default ExpandGraphLink;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, DownloadIcon, DropdownSelector } from \"mds\";\nimport { exportComponentAsPNG } from \"react-component-export-image\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useAppDispatch } from \"../../../../src/store\";\nimport { setErrorSnackMessage } from \"../../../../src/systemSlice\";\n\ninterface IDownloadWidgetDataButton {\n title: any;\n componentRef: any;\n data: any;\n}\n\nconst DownloadWidgetDataButton = ({\n title,\n componentRef,\n data,\n}: IDownloadWidgetDataButton) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const openDownloadMenu = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleCloseDownload = () => {\n setAnchorEl(null);\n };\n const download = (filename: string, text: string) => {\n let element = document.createElement(\"a\");\n element.setAttribute(\"href\", \"data:text/plain;charset=utf-8,\" + text);\n element.setAttribute(\"download\", filename);\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n document.body.removeChild(element);\n };\n\n const dispatch = useAppDispatch();\n const onDownloadError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n const convertToCSV = (objectToConvert: any) => {\n const array = [Object.keys(objectToConvert[0])].concat(objectToConvert);\n return array\n .map((it) => {\n return Object.values(it).toString();\n })\n .join(\"\\n\");\n };\n\n const widgetDataCSVFileName = () => {\n if (title !== null) {\n return (title + \"_\" + Date.now().toString() + \".csv\")\n .replace(/\\s+/g, \"\")\n .trim()\n .toLowerCase();\n } else {\n return \"widgetData_\" + Date.now().toString() + \".csv\";\n }\n };\n\n const downloadAsCSV = () => {\n if (data !== null && data.length > 0) {\n download(widgetDataCSVFileName(), convertToCSV(data));\n } else {\n let err: ErrorResponseHandler;\n err = {\n errorMessage: \"Unable to download widget data\",\n detailedError: \"Unable to download widget data - data not available\",\n };\n onDownloadError(err);\n }\n };\n\n const downloadAsPNG = () => {\n if (title !== null) {\n const pngFileName = (title + \"_\" + Date.now().toString() + \".png\")\n .replace(/\\s+/g, \"\")\n .trim()\n .toLowerCase();\n exportComponentAsPNG(componentRef, { fileName: pngFileName });\n } else {\n const pngFileName = \"widgetData_\" + Date.now().toString() + \".png\";\n exportComponentAsPNG(componentRef, { fileName: pngFileName });\n }\n };\n\n const handleSelectedOption = (selectOption: string) => {\n if (selectOption === \"csv\") {\n downloadAsCSV();\n } else if (selectOption === \"png\") {\n downloadAsPNG();\n }\n };\n\n return (\n \n \n \n handleSelectedOption(value)}\n hideTriggerAction={() => {\n handleCloseDownload();\n }}\n open={openDownloadMenu}\n anchorEl={anchorEl}\n anchorOrigin={\"end\"}\n />\n \n \n );\n};\n\nexport default DownloadWidgetDataButton;\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 { Box } from \"mds\";\nimport { tooltipCommon } from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nconst BarChartTooltip = ({\n active,\n payload,\n label,\n barChartConfiguration,\n}: any) => {\n if (active) {\n return (\n \n {label}\n {payload &&\n payload.map((pl: any, index: number) => {\n return (\n \n \n \n {pl.value}\n \n \n );\n })}\n \n );\n }\n\n return null;\n};\n\nexport default BarChartTooltip;\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, useRef, useState } from \"react\";\nimport styled from \"styled-components\";\nimport { Box, breakPoints, Grid, Loader } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport {\n Bar,\n BarChart,\n Cell,\n ResponsiveContainer,\n Tooltip,\n XAxis,\n YAxis,\n} from \"recharts\";\nimport { IBarChartConfiguration } from \"./types\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport ExpandGraphLink from \"./ExpandGraphLink\";\nimport DownloadWidgetDataButton from \"../../DownloadWidgetDataButton\";\nimport BarChartTooltip from \"./tooltips/BarChartTooltip\";\nimport api from \"../../../../../common/api\";\n\ninterface IBarChartWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n zoomActivated?: boolean;\n}\n\nconst BarChartMain = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n loadingAlign: {\n width: \"100%\",\n paddingTop: \"15px\",\n textAlign: \"center\",\n margin: \"auto\",\n },\n}));\n\nconst CustomizedAxisTick = ({ y, payload }: any) => {\n return (\n \n {payload.value}\n \n );\n};\n\nconst BarChartWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n zoomActivated = false,\n}: IBarChartWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState([]);\n const [result, setResult] = useState(null);\n const [hover, setHover] = useState(false);\n const [biggerThanMd, setBiggerThanMd] = useState(\n window.innerWidth >= breakPoints.md,\n );\n\n const componentRef = useRef();\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n const onHover = () => {\n setHover(true);\n };\n const onStopHover = () => {\n setHover(false);\n };\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n const handleWindowResize = () => {\n let extMD = false;\n if (window.innerWidth >= breakPoints.md) {\n extMD = true;\n }\n setBiggerThanMd(extMD);\n };\n\n window.addEventListener(\"resize\", handleWindowResize);\n\n return () => {\n window.removeEventListener(\"resize\", handleWindowResize);\n };\n }, []);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setResult(widgetsWithValue);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const barChartConfiguration = result\n ? (result.widgetConfiguration as IBarChartConfiguration[])\n : [];\n\n let greatestIndex = 0;\n let currentValue = 0;\n\n if (barChartConfiguration.length === 1) {\n const dataGraph = barChartConfiguration[0];\n data.forEach((item: any, index: number) => {\n if (item[dataGraph.dataKey] > currentValue) {\n currentValue = item[dataGraph.dataKey];\n greatestIndex = index;\n }\n });\n }\n\n return (\n \n \n {!zoomActivated && (\n \n \n
{title}
\n
\n \n {hover && }\n \n \n \n \n \n )}\n {loading && (\n \n \n \n )}\n {!loading && (\n }\n className={zoomActivated ? \"zoomChartCont\" : \"contentContainer\"}\n >\n \n \n \n }\n tickLine={false}\n axisLine={false}\n width={150}\n hide={!biggerThanMd}\n style={{\n fontSize: \"12px\",\n fontWeight: 100,\n }}\n />\n {barChartConfiguration.map((bar) => (\n \n {barChartConfiguration.length === 1 ? (\n \n {data.map((_: any, index: number) => (\n \n ))}\n \n ) : null}\n \n ))}\n \n }\n />\n \n \n \n )}\n \n
\n );\n};\n\nexport default BarChartWidget;\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 { Box } from \"mds\";\nimport { getTimeFromTimestamp } from \"../../../../../../common/utils\";\nimport { tooltipCommon } from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nconst LineChartTooltip = ({\n active,\n payload,\n label,\n linearConfiguration,\n yAxisFormatter,\n}: any) => {\n if (active) {\n return (\n \n \n {getTimeFromTimestamp(label, true)}\n \n {payload &&\n payload.map((pl: any, index: number) => {\n return (\n \n \n \n \n {linearConfiguration[index].keyLabel}:{\" \"}\n {yAxisFormatter(pl.value)}\n \n \n \n );\n })}\n \n );\n }\n\n return null;\n};\n\nexport default LineChartTooltip;\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, useRef, useState } from \"react\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport {\n Area,\n AreaChart,\n CartesianGrid,\n ResponsiveContainer,\n Tooltip,\n XAxis,\n YAxis,\n} from \"recharts\";\nimport { Box, breakPoints, Grid, Loader } from \"mds\";\nimport { ILinearGraphConfiguration } from \"./types\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport api from \"../../../../../common/api\";\nimport LineChartTooltip from \"./tooltips/LineChartTooltip\";\nimport ExpandGraphLink from \"./ExpandGraphLink\";\nimport DownloadWidgetDataButton from \"../../DownloadWidgetDataButton\";\n\ninterface ILinearGraphWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n hideYAxis?: boolean;\n yAxisFormatter?: (item: string) => string;\n xAxisFormatter?: (item: string, var1: boolean, var2: boolean) => string;\n areaWidget?: boolean;\n zoomActivated?: boolean;\n}\n\nconst LinearGraphMain = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n \"& .chartCont\": {\n position: \"relative\",\n height: 140,\n width: \"100%\",\n },\n \"& .legendChart\": {\n display: \"flex\",\n flexDirection: \"column\",\n flex: \"0 1 auto\",\n maxHeight: 130,\n margin: 0,\n overflowY: \"auto\",\n position: \"relative\",\n textAlign: \"center\",\n width: \"100%\",\n justifyContent: \"flex-start\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: 12,\n [`@media (max-width: ${breakPoints.md}px)`]: {\n display: \"none\",\n },\n },\n \"& .loadingAlign\": {\n width: 40,\n height: 40,\n textAlign: \"center\",\n margin: \"15px auto\",\n },\n}));\n\nconst LinearGraphWidget = ({\n title,\n timeStart,\n timeEnd,\n panelItem,\n apiPrefix,\n hideYAxis = false,\n areaWidget = false,\n yAxisFormatter = (item: string) => item,\n xAxisFormatter = (item: string, var1: boolean, var2: boolean) => item,\n zoomActivated = false,\n}: ILinearGraphWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [hover, setHover] = useState(false);\n const [data, setData] = useState([]);\n const [csvData, setCsvData] = useState([]);\n const [dataMax, setDataMax] = useState(0);\n const [result, setResult] = useState(null);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n const componentRef = useRef(null);\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setResult(widgetsWithValue);\n setLoading(false);\n let maxVal = 0;\n for (const dp of widgetsWithValue.data) {\n for (const key in dp) {\n if (key === \"name\") {\n continue;\n }\n let val = parseInt(dp[key]);\n\n if (isNaN(val)) {\n val = 0;\n }\n\n if (maxVal < val) {\n maxVal = val;\n }\n }\n }\n setDataMax(maxVal);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n let intervalCount = Math.floor(data.length / 5);\n\n const onHover = () => {\n setHover(true);\n };\n\n const onStopHover = () => {\n setHover(false);\n };\n\n useEffect(() => {\n const fmtData = data.map((el: any) => {\n const date = new Date(el?.name * 1000);\n return {\n ...el,\n name: date,\n };\n });\n\n setCsvData(fmtData);\n }, [data]);\n\n const linearConfiguration = result\n ? (result?.widgetConfiguration as ILinearGraphConfiguration[])\n : [];\n\n const CustomizedDot = (prop: any) => {\n const { cx, cy, index } = prop;\n\n if (index % 3 !== 0) {\n return null;\n }\n return ;\n };\n\n let dspLongDate = false;\n\n if (zoomActivated) {\n dspLongDate = true;\n }\n\n return (\n \n \n {!zoomActivated && (\n \n \n {title}\n \n \n {hover && }\n \n \n {componentRef !== null && (\n \n )}\n \n \n )}\n
\n \n {loading && }\n {!loading && (\n \n \n \n \n {areaWidget && (\n \n \n \n \n\n \n \n \n )}\n \n \n xAxisFormatter(value, dspLongDate, true)\n }\n interval={intervalCount}\n tick={{\n fontSize: \"68%\",\n fontWeight: \"normal\",\n color: \"#404143\",\n }}\n tickCount={10}\n stroke={\"#082045\"}\n />\n yAxisFormatter(value)}\n tick={{\n fontSize: \"68%\",\n fontWeight: \"normal\",\n color: \"#404143\",\n }}\n stroke={\"#082045\"}\n />\n {linearConfiguration.map((section, index) => {\n return (\n : false}\n />\n );\n })}\n \n }\n wrapperStyle={{\n zIndex: 5000,\n }}\n />\n \n \n \n {!areaWidget && (\n \n {zoomActivated && (\n \n Series\n
\n
\n
\n )}\n\n \n {linearConfiguration.map((section, index) => {\n return (\n \n \n \n {section.keyLabel}\n \n \n );\n })}\n \n
\n )}\n
\n )}\n \n
\n \n
\n );\n};\n\nexport default LinearGraphWidget;\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 get from \"lodash/get\";\nimport styled from \"styled-components\";\nimport { Box, Loader } from \"mds\";\nimport { Cell, Pie, PieChart, ResponsiveContainer } from \"recharts\";\nimport { useSelector } from \"react-redux\";\nimport api from \"../../../../../common/api\";\nimport { IPieChartConfiguration } from \"./types\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { IDashboardPanel } from \"../types\";\nimport { splitSizeMetric, widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\ninterface IPieChartWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}\n\nconst PieChartMain = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n \"& .loadingAlign\": {\n width: \"100%\",\n paddingTop: \"15px\",\n textAlign: \"center\",\n margin: \"auto\",\n },\n \"& .pieChartLabel\": {\n fontSize: 60,\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fontWeight: \"bold\",\n width: \"100%\",\n \"& .unitText\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: 12,\n },\n },\n \"& .chartContainer\": {\n width: \"100%\",\n height: 140,\n },\n}));\n\nconst PieChartWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n}: IPieChartWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [dataInner, setDataInner] = useState([]);\n const [dataOuter, setDataOuter] = useState([]);\n const [result, setResult] = useState(null);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setDataInner(widgetsWithValue.data);\n setDataOuter(widgetsWithValue.dataOuter as object[]);\n setResult(widgetsWithValue);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const pieChartConfiguration = result\n ? (result.widgetConfiguration as IPieChartConfiguration)\n : [];\n const middleLabel = result?.innerLabel;\n\n const innerColors = get(pieChartConfiguration, \"innerChart.colorList\", []);\n const outerColors = get(pieChartConfiguration, \"outerChart.colorList\", []);\n\n return (\n \n \n {title}\n {loading && (\n \n \n \n )}\n {!loading && (\n \n \n {middleLabel && splitSizeMetric(middleLabel)}\n \n \n \n \n {dataOuter && (\n \n {dataOuter.map((entry, index) => (\n \n ))}\n \n )}\n {dataInner && (\n \n {dataInner.map((entry, index) => {\n return (\n \n );\n })}\n \n )}\n \n \n \n \n )}\n \n \n );\n};\n\nexport default PieChartWidget;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { Loader } from \"mds\";\nimport api from \"../../../../../common/api\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { IDashboardPanel } from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\ninterface ISimpleWidget {\n iconWidget: any;\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n renderFn?: undefined | null | ((arg: Record) => any);\n}\n\nconst SimpleWidgetMain = styled.span(({ theme }) => ({\n display: \"inline-flex\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n alignItems: \"center\",\n \"& .icon\": {\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fill: get(theme, \"signalColors.main\", \"#07193E\"),\n marginRight: 5,\n marginLeft: 12,\n },\n \"& .widgetLabel\": {\n fontWeight: \"bold\",\n textTransform: \"uppercase\",\n marginRight: 10,\n },\n \"& .widgetValue\": {\n marginRight: 25,\n },\n}));\n\nconst SimpleWidget = ({\n iconWidget,\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n renderFn,\n}: ISimpleWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(\"\");\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n if (renderFn) {\n return renderFn({\n valueToRender: data,\n loading,\n title,\n id: panelItem.id,\n iconWidget: iconWidget,\n });\n }\n return (\n \n {loading && (\n
\n \n
\n )}\n {!loading && (\n \n {iconWidget ? iconWidget : null}\n {title}: \n {data}\n \n )}\n
\n );\n};\n\nexport default SimpleWidget;\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 { Box, breakPoints } from \"mds\";\n\nconst DashboardItemBox = ({ children }: { children: any }) => {\n return (\n \n {children}\n \n );\n};\n\nexport default DashboardItemBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, Loader, Tooltip } from \"mds\";\n\nconst StatCardMain = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n maxWidth: \"300px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n position: \"relative\",\n width: \"100%\",\n}));\n\nconst NumericStatCard = ({\n value,\n label = \"\",\n icon = null,\n loading = false,\n}: {\n value: string | number;\n label?: any;\n icon?: any;\n loading?: boolean;\n}) => {\n const getContent = () => {\n return (\n \n \n \n {label}\n \n\n \n \n {value}\n \n \n \n \n {}\n {loading ? (\n \n ) : (\n icon\n )}\n \n \n );\n };\n\n return {getContent()};\n};\n\nexport default NumericStatCard;\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 NumericStatCard from \"./NumericStatCard\";\nimport { BucketsIcon } from \"mds\";\n\nconst BucketsCountItem = ({\n title,\n value,\n loading,\n}: {\n title: string;\n value: string;\n loading?: boolean;\n}) => {\n return (\n }\n value={value}\n loading={loading}\n />\n );\n};\n\nexport default BucketsCountItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 NumericStatCard from \"./NumericStatCard\";\nimport { TotalObjectsIcon } from \"mds\";\n\nconst ObjectsCountItem = ({\n title,\n value,\n loading,\n}: {\n title: string;\n value: string;\n loading?: boolean;\n}) => {\n return (\n }\n value={value}\n loading={loading}\n />\n );\n};\n\nexport default ObjectsCountItem;\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, useSelector } from \"react-redux\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { representationNumber } from \"../../../../../common/utils\";\nimport api from \"../../../../../common/api\";\nimport DashboardItemBox from \"../../DashboardItemBox\";\nimport BucketsCountItem from \"./BucketsCountItem\";\nimport ObjectsCountItem from \"./ObjectsCountItem\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\ninterface ISingleRepWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n propLoading: boolean;\n\n color?: string;\n fillColor?: string;\n apiPrefix: string;\n}\n\nconst SingleRepWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n propLoading,\n\n apiPrefix,\n}: ISingleRepWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [result, setResult] = useState(null);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setResult(widgetsWithValue);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n let repNumber = \"\";\n\n if (result) {\n const resultRep = parseInt(result.innerLabel || \"0\");\n\n if (!isNaN(resultRep)) {\n repNumber = representationNumber(resultRep);\n } else {\n repNumber = \"0\";\n }\n }\n\n const renderById = (id: number) => {\n if (id === 66) {\n return (\n \n \n \n );\n }\n if (id === 44) {\n return (\n \n \n \n );\n }\n\n return null;\n };\n\n return renderById(panelItem.id);\n};\n\nconst connector = connect(null, {\n setErrorSnackMessage: setErrorSnackMessage,\n});\n\nexport default connector(SingleRepWidget);\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 { useSelector } from \"react-redux\";\nimport { Box, Loader } from \"mds\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { splitSizeMetric, widgetDetailsToPanel } from \"../utils\";\nimport { IDashboardPanel } from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport api from \"../../../../../common/api\";\n\ninterface ISingleValueWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n renderFn?: (arg: Record) => any;\n}\n\nconst SingleValueWidgetMain = styled.div(({ theme }) => ({\n display: \"flex\",\n height: 140,\n flexDirection: \"column\",\n justifyContent: \"center\",\n \"& .unitText\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: 12,\n },\n \"& .loadingAlign\": {\n width: \"100%\",\n textAlign: \"center\",\n margin: \"auto\",\n },\n \"& .metric\": {\n fontSize: 60,\n lineHeight: 1,\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fontWeight: 700,\n },\n \"& .titleElement\": {\n fontSize: 10,\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: 700,\n },\n ...widgetCommon(theme),\n}));\n\nconst SingleValueWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n renderFn,\n}: ISingleValueWidget) => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(\"\");\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const valueToRender = splitSizeMetric(data);\n\n if (renderFn) {\n return renderFn({ valueToRender, loading, title, id: panelItem.id });\n }\n return (\n \n {loading && (\n \n \n \n )}\n {!loading && (\n \n {splitSizeMetric(data)}\n {title}\n \n )}\n \n );\n};\n\nexport default SingleValueWidget;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, Loader, ReportedUsageIcon } from \"mds\";\nimport { Cell, Pie, PieChart } from \"recharts\";\nimport { useSelector } from \"react-redux\";\nimport api from \"../../../../../common/api\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport {\n calculateBytes,\n capacityColors,\n niceBytesInt,\n} from \"../../../../../common/utils\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\nconst CapacityItemMain = styled.div(({ theme }) => ({\n flex: 1,\n display: \"flex\",\n alignItems: \"center\",\n flexFlow: \"row\",\n \"& .usableLabel\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"10px\",\n display: \"flex\",\n flexFlow: \"column\",\n alignItems: \"center\",\n textAlign: \"center\",\n },\n \"& .usedLabel\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: \"14px\",\n },\n \"& .totalUsed\": {\n display: \"flex\",\n \"& .value\": {\n fontSize: \"50px\",\n fontFamily: \"Inter\",\n fontWeight: 600,\n alignSelf: \"flex-end\",\n lineHeight: 1,\n },\n \"& .unit\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: \"14px\",\n marginLeft: \"12px\",\n alignSelf: \"flex-end\",\n },\n },\n \"& .ofUsed\": {\n marginTop: \"5px\",\n \"& .value\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: \"14px\",\n textAlign: \"right\",\n },\n },\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n flexFlow: \"column\",\n },\n}));\n\nconst CapacityItem = ({\n value,\n timeStart,\n timeEnd,\n apiPrefix,\n}: {\n value: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n\n const [totalUsableFree, setTotalUsableFree] = useState(0);\n const [totalUsableFreeRatio, setTotalUsableFreeRatio] = useState(0);\n const [totalUsed, setTotalUsed] = useState(0);\n const [totalUsable, setTotalUsable] = useState(0);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${value.id}/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, value);\n\n let tUsable = 0;\n let tUsed = 0;\n let tFree = 0;\n\n widgetsWithValue.data.forEach((eachArray: any[]) => {\n eachArray.forEach((itemSum) => {\n switch (itemSum.legend) {\n case \"Total Usable\":\n tUsable += itemSum.value;\n break;\n case \"Used Space\":\n tUsed += itemSum.value;\n break;\n case \"Usable Free\":\n tFree += itemSum.value;\n break;\n }\n });\n });\n\n const freeRatio = Math.round((tFree / tUsable) * 100);\n\n setTotalUsableFree(tFree);\n setTotalUsableFreeRatio(freeRatio);\n setTotalUsed(tUsed);\n setTotalUsable(tUsable);\n\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, value, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const usedConvert = calculateBytes(totalUsed, true, false);\n\n const plotValues = [\n {\n value: totalUsableFree,\n color: \"#D6D6D6\",\n label: \"Usable Available Space\",\n },\n {\n value: totalUsed,\n color: capacityColors(totalUsed, totalUsable),\n label: \"Used Space\",\n },\n ];\n return (\n \n \n Capacity\n \n \n \n {`${totalUsableFreeRatio}%`}\n
\n Free\n \n \n \n {plotValues.map((entry, index) => (\n \n ))}\n \n \n \n \n \n Used:\n \n
{usedConvert.total}
\n
{usedConvert.unit}
\n
\n \n
Of: {niceBytesInt(totalUsable)}
\n
\n
\n\n \n \n {loading ? (\n \n ) : (\n \n )}\n \n \n \n
\n );\n};\n\nexport default CapacityItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, Loader, SuccessIcon } from \"mds\";\n\nconst TimeStatBase = styled.div(({ theme }) => ({\n display: \"grid\",\n alignItems: \"center\",\n gap: 8,\n height: 33,\n paddingLeft: 15,\n gridTemplateColumns: \"20px 1.5fr .5fr 20px\",\n background: get(theme, \"boxBackground\", \"#FBFAFA\"), // #EBF9EE\n \"& .min-icon\": {\n height: \"12px\",\n width: \"12px\",\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n \"& .ok-icon\": {\n height: \"8px\",\n width: \"8px\",\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n color: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n \"& .timeStatLabel\": {\n fontSize: \"12px\",\n color: get(theme, \"signalColors.good\", \"#4CCB92\"),\n fontWeight: 600,\n },\n \"& .timeStatValue\": {\n fontSize: \"12px\",\n color: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n}));\n\nconst TimeStatItem = ({\n icon,\n label,\n value,\n loading = false,\n}: {\n icon: any;\n label: any;\n value: string;\n loading?: boolean;\n}) => {\n return (\n \n {loading ? : icon}\n {label}\n {value}\n {value !== \"n/a\" ? : null}\n \n );\n};\n\nexport default TimeStatItem;\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 { Box, breakPoints } from \"mds\";\nimport TimeStatItem from \"../../TimeStatItem\";\n\nexport type SimpleWidgetRenderProps = {\n valueToRender?: any;\n loading?: boolean;\n title?: any;\n id?: number;\n iconWidget?: any;\n};\nconst HealActivityRenderer = ({\n valueToRender = \"\",\n loading = false,\n iconWidget = null,\n}: SimpleWidgetRenderProps) => {\n return (\n \n \n \n Time since last\n {\" \"}\n Heal Activity\n \n }\n value={valueToRender}\n />\n \n );\n};\n\nexport default HealActivityRenderer;\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 { Box, breakPoints } from \"mds\";\nimport TimeStatItem from \"../../TimeStatItem\";\nimport { SimpleWidgetRenderProps } from \"./HealActivityRenderer\";\n\nconst ScanActivityRenderer = ({\n valueToRender = \"\",\n loading = false,\n iconWidget = null,\n}: SimpleWidgetRenderProps) => {\n return (\n \n \n \n Time since last\n {\" \"}\n Scan Activity\n \n }\n value={valueToRender}\n />\n \n );\n};\n\nexport default ScanActivityRenderer;\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 { Box } from \"mds\";\nimport TimeStatItem from \"../../TimeStatItem\";\n\nexport type SimpleWidgetRenderProps = {\n valueToRender?: any;\n loading?: boolean;\n title?: any;\n id?: number;\n iconWidget?: any;\n};\nconst UptimeActivityRenderer = ({\n valueToRender = \"\",\n loading = false,\n iconWidget = null,\n}: SimpleWidgetRenderProps) => {\n return (\n \n Uptime}\n value={valueToRender}\n />\n \n );\n};\n\nexport default UptimeActivityRenderer;\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 { IDashboardPanel, widgetType } from \"./types\";\nimport BarChartWidget from \"./Widgets/BarChartWidget\";\nimport LinearGraphWidget from \"./Widgets/LinearGraphWidget\";\nimport PieChartWidget from \"./Widgets/PieChartWidget\";\nimport SimpleWidget from \"./Widgets/SimpleWidget\";\nimport SingleRepWidget from \"./Widgets/SingleRepWidget\";\nimport SingleValueWidget from \"./Widgets/SingleValueWidget\";\nimport CapacityItem from \"./Widgets/CapacityItem\";\nimport DashboardItemBox from \"../DashboardItemBox\";\nimport HealActivityRenderer, {\n SimpleWidgetRenderProps,\n} from \"./Widgets/HealActivityRenderer\";\nimport ScanActivityRenderer from \"./Widgets/ScanActivityRenderer\";\nimport UptimeActivityRenderer from \"./Widgets/UptimeActivityRenderer\";\n\nexport const componentToUse = (\n value: IDashboardPanel,\n timeStart: any,\n timeEnd: any,\n loading: boolean,\n apiPrefix: string,\n zoomActivated: boolean = false,\n) => {\n switch (value.type) {\n case widgetType.singleValue:\n return (\n \n );\n case widgetType.simpleWidget:\n let renderFn;\n let CmpToRender: any = null;\n if (value.id === 80) {\n CmpToRender = HealActivityRenderer;\n } else if (value.id === 81) {\n CmpToRender = ScanActivityRenderer;\n } else if (value.id === 1) {\n CmpToRender = UptimeActivityRenderer;\n }\n\n if ([80, 81, 1].includes(value.id)) {\n renderFn = ({\n valueToRender,\n loading,\n title,\n id,\n iconWidget,\n }: SimpleWidgetRenderProps) => {\n return (\n \n );\n };\n }\n return (\n \n );\n case widgetType.pieChart:\n if (value.id === 50) {\n return (\n \n \n \n );\n }\n return (\n \n );\n case widgetType.linearGraph:\n case widgetType.areaGraph:\n return (\n \n );\n case widgetType.barChart:\n return (\n \n );\n case widgetType.singleRep:\n const fillColor = value.fillColor ? value.fillColor : value.color;\n return (\n \n );\n default:\n return null;\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 { Box } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { breakPoints } from \"mds\";\n\nexport type DLayoutColumnProps = {\n componentId: number;\n sx?: CSSObject;\n};\nexport type DLayoutRowProps = {\n sx?: CSSObject;\n columns: DLayoutColumnProps[];\n};\n\nexport const summaryPanelsLayout: DLayoutRowProps[] = [\n {\n sx: {\n minWidth: 0,\n display: \"grid\",\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr 1fr 1fr\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr 1fr\",\n },\n },\n columns: [\n {\n componentId: 66,\n },\n {\n componentId: 44,\n },\n {\n componentId: 500,\n },\n {\n componentId: 501,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0, // important to avoid css grid blow out.\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 50,\n },\n {\n componentId: 502,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 80,\n },\n {\n componentId: 81,\n },\n {\n componentId: 1,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 68,\n },\n {\n componentId: 52,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 63,\n },\n {\n componentId: 70,\n },\n ],\n },\n];\n\nexport const trafficPanelsLayout: DLayoutRowProps[] = [\n {\n sx: {\n display: \"grid\",\n gridTemplateColumns: \"1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 60,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 71,\n sx: {\n flex: 1,\n width: \"50%\",\n flexShrink: 0,\n },\n },\n {\n componentId: 17,\n sx: {\n flex: 1,\n width: \"50%\",\n flexShrink: 0,\n },\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n gridTemplateColumns: \"1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 73,\n },\n ],\n },\n];\n\nexport const resourcesPanelsLayout: DLayoutRowProps[] = [\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gridTemplateColumns: \"1fr 1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 76,\n },\n {\n componentId: 77,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gridTemplateColumns: \"1fr 1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 82,\n },\n {\n componentId: 74,\n },\n ],\n },\n];\nexport const resourcesPanelsLayoutAdvanced: DLayoutRowProps[] = [\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gridTemplateColumns: \"1fr 1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 11,\n },\n {\n componentId: 8,\n },\n ],\n },\n];\n\nexport const RowPanelLayout = ({ children }: { children: any }) => {\n return (\n \n {children}\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, { Fragment } from \"react\";\n\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { IDashboardPanel } from \"./types\";\nimport { componentToUse } from \"./widgetUtils\";\nimport { closeZoomPage } from \"../dashboardSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IZoomWidget {\n widgetRender: number;\n value: IDashboardPanel | null;\n modalOpen: boolean;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}\n\nconst ZoomWidget = ({\n value,\n modalOpen,\n timeStart,\n timeEnd,\n apiPrefix,\n}: IZoomWidget) => {\n const dispatch = useAppDispatch();\n if (!value) {\n return null;\n }\n\n return (\n {\n dispatch(closeZoomPage());\n }}\n modalOpen={modalOpen}\n wideLimit={false}\n sx={{\n padding: 0,\n }}\n >\n \n {componentToUse(value, timeStart, timeEnd, true, apiPrefix, true)}\n \n \n );\n};\n\nexport default ZoomWidget;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box } from \"mds\";\nimport { Link } from \"react-router-dom\";\nimport { widgetCommon } from \"../Common/FormComponents/common/styleLibrary\";\n\nexport interface ISubInterface {\n message: string;\n fontWeight?: \"normal\" | \"bold\";\n}\n\ninterface ICommonCard {\n title: string;\n metricValue: any;\n metricUnit?: string;\n subMessage?: ISubInterface;\n moreLink?: string;\n rightComponent?: any;\n extraMargin?: boolean;\n}\n\nconst CommonCardItem = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n \"& .metricText\": {\n fontSize: 70,\n lineHeight: 1.1,\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fontWeight: \"bold\",\n },\n \"& .unitText\": {\n fontSize: 10,\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"normal\",\n },\n \"& .subHeaderContainer\": {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n },\n \"& .subMessage\": {\n fontSize: 10,\n color: get(theme, \"mutedText\", \"#87888d\"),\n \"&.bold\": {\n fontWeight: \"bold\",\n },\n },\n \"& .headerContainer\": {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n \"& .viewAll\": {\n fontSize: 10,\n color: get(theme, \"signalColors.danger\", \"#C83B51\"),\n textTransform: \"capitalize\",\n\n \"& a, & a:hover, & a:visited, & a:active\": {\n color: get(theme, \"signalColors.danger\", \"#C83B51\"),\n },\n },\n}));\n\nconst CommonCard = ({\n title,\n metricValue,\n metricUnit,\n subMessage,\n moreLink,\n rightComponent,\n extraMargin = false,\n}: ICommonCard) => {\n const SubHeader = () => {\n return (\n \n
\n
\n
\n \n {metricValue}\n {metricUnit}\n \n
\n {subMessage && (\n \n {subMessage.message}\n \n )}\n
\n
{rightComponent}
\n
\n
\n );\n };\n\n const Header = () => {\n return (\n \n
\n {title}\n {moreLink && (\n \n \n View All\n \n \n )}\n
\n
\n );\n };\n\n return (\n \n \n {metricValue !== \"\" && (\n \n
\n \n \n )}\n \n \n );\n};\n\nexport default CommonCard;\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 CommonCard from \"../CommonCard\";\n\ninterface IMergedWidgets {\n title: string;\n leftComponent: any;\n rightComponent: any;\n}\n\nconst MergedWidgets = ({\n title,\n leftComponent,\n rightComponent,\n}: IMergedWidgets) => {\n return (\n \n \n \n );\n};\n\nexport default MergedWidgets;\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 { Loader, Box } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { IDashboardPanel } from \"../types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport api from \"../../../../../common/api\";\n\nconst EntityStateStatItem = ({\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n statLabel,\n}: {\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n statLabel: any;\n}) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(\"\");\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n let toRender = loading ? (\n \n \n \n ) : (\n \n {data}\n {statLabel}\n \n );\n\n return toRender;\n};\n\nexport default EntityStateStatItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints } from \"mds\";\n\nconst DualSTCardContent = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n maxWidth: \"321px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"12px\",\n marginTop: \"8px\",\n },\n}));\n\nconst DualStatCard = ({\n statItemLeft = null,\n statItemRight = null,\n icon = null,\n label = \"\",\n}: {\n statItemLeft: any;\n statItemRight: any;\n icon: any;\n label: string;\n}) => {\n const getContent = () => {\n return (\n \n \n \n {label}\n \n\n \n {statItemLeft}\n {statItemRight}\n \n \n \n {icon}\n \n \n );\n };\n\n return {getContent()};\n};\n\nexport default DualStatCard;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { CircleIcon, DrivesIcon, ServersIcon, Box } from \"mds\";\nimport EntityStateStatItem from \"./EntityStateStatItem\";\nimport DualStatCard from \"./DualStatCard\";\nimport { IDashboardPanel } from \"../types\";\n\nconst StateIndicator = styled.div(({ theme }) => ({\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"5px\",\n gap: 8,\n \"&.online\": {\n \"& .min-icon\": {\n margin: 0,\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.offline\": {\n \"& .min-icon\": {\n margin: 0,\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n \"& .indicatorText\": {\n color: get(theme, \"mutedText\", \"#C51B3F\"),\n fontSize: 12,\n },\n}));\n\nconst EntityStateItemRenderer = ({\n info,\n timeStart,\n timeEnd,\n apiPrefix,\n}: {\n info: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}) => {\n const { mergedPanels = [], id } = info;\n const [leftPanel, rightPanel] = mergedPanels;\n\n const lStatItem = (\n \n \n Online\n \n }\n />\n );\n const rStatItem = (\n \n \n Offline\n \n }\n />\n );\n\n let statIcon = null;\n let statLabel = \"\";\n if (id === 500) {\n statIcon = ;\n statLabel = \"Servers\";\n } else if (id === 501) {\n statIcon = ;\n statLabel = \"Drives\";\n }\n\n return (\n \n );\n};\nexport default EntityStateItemRenderer;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Loader, NetworkGetIcon, Box } from \"mds\";\n\nconst NetworkGetBase = styled.div(({ theme }) => ({\n \"& .putLabel\": {\n display: \"flex\",\n gap: 10,\n alignItems: \"center\",\n marginTop: \"10px\",\n\n \"& .min-icon\": {\n height: 15,\n width: 15,\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n\n \"& .getText\": {\n fontSize: \"18px\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n },\n \"& .valueText\": {\n fontSize: 50,\n fontFamily: \"Inter\",\n fontWeight: 600,\n },\n },\n}));\n\nconst NetworkGetItem = ({\n value,\n loading,\n}: {\n value: any;\n loading: boolean;\n title?: any;\n id?: number;\n}) => {\n return (\n \n \n GET\n {loading ? (\n \n ) : (\n \n )}\n \n {value}\n \n );\n};\n\nexport default NetworkGetItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, Loader, NetworkPutIcon } from \"mds\";\n\nconst NetworkPutBase = styled.div(({ theme }) => ({\n \"& .putLabel\": {\n display: \"flex\",\n gap: 10,\n alignItems: \"center\",\n marginTop: \"10px\",\n\n \"& .min-icon\": {\n height: 15,\n width: 15,\n fill: get(theme, \"signalColors.info\", \"#2781B0\"),\n },\n\n \"& .putText\": {\n fontSize: \"18px\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n },\n \"& .valueText\": {\n fontSize: 50,\n fontFamily: \"Inter\",\n fontWeight: 600,\n },\n },\n}));\n\nconst NetworkPutItem = ({\n value,\n loading,\n}: {\n value: any;\n loading: boolean;\n title?: any;\n id?: number;\n}) => {\n return (\n \n \n PUT\n {loading ? (\n \n ) : (\n \n )}\n \n {value}\n \n );\n};\n\nexport default NetworkPutItem;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, SpeedtestIcon } from \"mds\";\nimport { IDashboardPanel } from \"../types\";\nimport SingleValueWidget from \"./SingleValueWidget\";\nimport NetworkGetItem from \"./NetworkGetItem\";\nimport NetworkPutItem from \"./NetworkPutItem\";\n\nconst NetworkItemBase = styled.div(({ theme }) => ({\n flex: 1,\n display: \"flex\",\n alignItems: \"center\",\n flexFlow: \"row\",\n gap: \"15px\",\n \"& .unitText\": {\n fontSize: \"14px\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n marginLeft: \"5px\",\n },\n \"& .unit\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"18px\",\n marginLeft: \"12px\",\n marginTop: \"10px\",\n },\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n flexFlow: \"column\",\n },\n}));\n\nconst NetworkItem = ({\n value,\n timeStart,\n timeEnd,\n apiPrefix,\n}: {\n value: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}) => {\n const { mergedPanels = [] } = value;\n const [leftPanel, rightPanel] = mergedPanels;\n\n const rightCmp = (\n {\n return (\n \n );\n }}\n />\n );\n const leftCmp = (\n {\n return (\n \n );\n }}\n />\n );\n\n return (\n \n \n Network\n \n \n \n {leftCmp}\n \n \n \n \n {rightCmp}\n \n \n \n \n \n \n );\n};\n\nexport default NetworkItem;\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 { componentToUse } from \"../widgetUtils\";\nimport { IDashboardPanel } from \"../types\";\nimport MergedWidgets from \"../MergedWidgets\";\nimport EntityStateItemRenderer from \"./EntityStateItemRenderer\";\nimport NetworkItem from \"./NetworkItem\";\nimport DashboardItemBox from \"../../DashboardItemBox\";\n\nconst MergedWidgetsRenderer = ({\n info,\n timeStart,\n timeEnd,\n loading,\n apiPrefix,\n}: {\n info: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n loading: boolean;\n apiPrefix: string;\n}) => {\n const { mergedPanels = [], title = \"\", id } = info;\n const [leftPanel, rightPanel] = mergedPanels;\n\n const renderById = () => {\n if ([500, 501].includes(id)) {\n return (\n \n \n \n );\n }\n\n if (id === 502) {\n return (\n \n \n \n );\n }\n\n return (\n \n );\n };\n\n return renderById();\n};\n\nexport default MergedWidgetsRenderer;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, CircleIcon } from \"mds\";\nimport { niceDays } from \"../../../../common/utils\";\nimport {\n getDriveStatusColor,\n getNetworkStatusColor,\n serverStatusColor,\n} from \"./Utils\";\nimport { ServerProperties } from \"api/consoleApi\";\n\ninterface ICardProps {\n server: ServerProperties;\n index: number;\n}\n\nconst ServerStatItemMain = styled.div(({ theme }) => ({\n alignItems: \"baseline\",\n padding: \"5px\",\n display: \"flex\",\n gap: \"5px\",\n \"& .StatBox\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexFlow: \"column\",\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"12px\",\n },\n \"& .stat-value\": {\n fontSize: \"18px\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n display: \"flex\",\n fontWeight: 500,\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n \"& .stat-container\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexFlow: \"column\",\n marginLeft: \"5px\",\n maxWidth: \"40px\",\n \"&:first-of-type(svg)\": {\n fill: get(theme, \"mutedText\", \"#87888d\"),\n },\n \"& .stat-indicator\": {\n marginRight: \"0px\",\n justifyContent: \"center\",\n alignItems: \"center\",\n textAlign: \"center\",\n \"& svg.min-icon\": {\n width: \"10px\",\n height: \"10px\",\n },\n \"&.good\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.warn\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.warning\", \"#FFBD62\"),\n },\n },\n \"&.bad\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n },\n },\n}));\n\nconst ServerInfoItemMain = styled.div(({ theme }) => ({\n display: \"flex\",\n alignItems: \"flex-start\",\n flexFlow: \"column\",\n flex: 1,\n \"& .server-state\": {\n marginLeft: \"8px\",\n \"& .min-icon\": {\n height: \"14px\",\n width: \"14px\",\n },\n \"&.good\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.warn\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.warning\", \"#FFBD62\"),\n },\n },\n \"&.bad\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n}));\n\nconst ServerStatItem = ({\n label = \"\",\n value = \"\",\n statusColor = \"warn\",\n hasStatus = false,\n}: {\n label?: string;\n value?: any;\n hasStatus?: boolean;\n statusColor?: \"good\" | \"warn\" | \"bad\";\n}) => {\n return (\n \n \n
\n {value}{\" \"}\n \n {hasStatus ? (\n \n \n \n ) : (\n \n )}\n \n
\n
{label}
\n
\n
\n );\n};\n\nconst ServerInfoItem = ({ server }: ICardProps) => {\n const networkKeys = Object.keys(get(server, \"network\", {}));\n const networkTotal = networkKeys.length;\n const totalDrives = server.drives ? server.drives.length : 0;\n const activeNetwork = networkKeys.reduce((acc: number, currValue: string) => {\n const item = server.network ? server.network[currValue] : \"\";\n if (item === \"online\") {\n return acc + 1;\n }\n return acc;\n }, 0);\n const activeDisks = server.drives\n ? server.drives.filter((element) => element.state === \"ok\").length\n : 0;\n return (\n \n \n \n \n {server.endpoint || \"\"}\n \n {server?.state && (\n \n \n \n )}\n \n\n \n \n \n \n \n \n Version:\n {server.version ? server.version : \"N/A\"}\n \n }\n />\n \n \n );\n};\nexport default ServerInfoItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { useTheme } from \"styled-components\";\nimport { niceBytes } from \"../../../../common/utils\";\nimport { Box, breakPoints, CircleIcon, SizeChart } from \"mds\";\nimport { ServerDrives } from \"api/consoleApi\";\nimport { STATUS_COLORS } from \"./Utils\";\n\ninterface ICardProps {\n drive: ServerDrives;\n}\n\nconst DriveInfoItem = ({ drive }: ICardProps) => {\n const theme = useTheme();\n\n const totalSpace = drive.totalSpace ?? 0;\n const usedSpace = drive.usedSpace ?? 0;\n const usedPercentage =\n totalSpace !== 0 ? Math.max((usedSpace / totalSpace) * 100, 0) : 0;\n const availableSpace = drive.availableSpace ?? 0;\n const availablePercentage =\n totalSpace !== 0 ? Math.max((availableSpace / totalSpace) * 100, 0) : 0;\n\n const driveStatusColor = useMemo(() => {\n switch (drive.state) {\n case \"offline\":\n return STATUS_COLORS.RED;\n case \"ok\":\n return STATUS_COLORS.GREEN;\n default:\n return STATUS_COLORS.YELLOW;\n }\n }, [drive.state]);\n\n const driveStatusText = useMemo(() => {\n switch (drive.state) {\n case \"offline\":\n return \"Offline Drive\";\n case \"ok\":\n return \"Online Drive\";\n default:\n return \"Unknown\";\n }\n }, [drive.state]);\n\n return (\n \n \n \n \n \n \n {drive.endpoint ?? \"\"}\n \n \n \n \n \n {driveStatusText}\n \n \n \n \n \n \n {niceBytes(usedSpace.toString())}\n \n \n {usedPercentage.toFixed(2)}%\n \n of {niceBytes(totalSpace.toString())}\n \n \n \n \n \n \n {niceBytes(availableSpace.toString())}\n \n \n \n {availablePercentage.toFixed(2)}%\n \n of {niceBytes(totalSpace.toString())}\n \n \n \n \n \n );\n};\n\nexport default DriveInfoItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Accordion, Box, breakPoints } from \"mds\";\nimport ServerInfoItem from \"./ServerInfoItem\";\nimport DriveInfoItem from \"./DriveInfoItem\";\nimport { ServerProperties } from \"api/consoleApi\";\n\nconst ServersList = ({ data }: { data: ServerProperties[] }) => {\n const [expanded, setExpanded] = React.useState(\n data.length > 1 ? \"\" : data[0].endpoint + \"-0\",\n );\n\n const handleClick = (key: string) => {\n setExpanded(key);\n };\n\n return (\n \n \n Servers ({data.length})\n \n \n {data.map((serverInfo, index) => {\n const key = `${serverInfo.endpoint}-${index}`;\n const isExpanded = expanded === key;\n return (\n {\n if (!isExpanded) {\n handleClick(key);\n } else {\n handleClick(\"\");\n }\n }}\n id={\"key\"}\n title={}\n sx={{ marginBottom: 15 }}\n >\n \n Drives ({serverInfo.drives?.length})\n \n \n {serverInfo.drives?.map((driveInfo, index) => {\n return (\n \n );\n })}\n \n \n );\n })}\n \n \n );\n};\n\nexport default ServersList;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport { Box, breakPoints, Tooltip } from \"mds\";\n\nconst CounterCardMain = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n maxWidth: \"300px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n position: \"relative\",\n width: \"100%\",\n}));\n\nconst CounterCard = ({\n counterValue,\n label = \"\",\n icon = null,\n actions = null,\n}: {\n counterValue: string | number;\n label?: any;\n icon?: any;\n actions?: any;\n}) => {\n return (\n \n \n \n \n {label}\n \n\n \n = 5 ? 50 : 55,\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n flexFlow: \"column\",\n maxWidth: 200,\n fontSize: counterValue.toString().length >= 5 ? 20 : 35,\n },\n [`@media (max-width: ${breakPoints.md}px)`]: {\n fontSize: counterValue.toString().length >= 5 ? 28 : 35,\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n fontSize: counterValue.toString().length >= 5 ? 28 : 36,\n },\n [`@media (max-width: ${breakPoints.xl}px)`]: {\n fontSize: counterValue.toString().length >= 5 ? 45 : 50,\n },\n }}\n >\n {counterValue}\n \n \n \n \n {icon}\n\n \n {actions}\n \n \n \n \n );\n};\n\nexport default CounterCard;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n ArrowRightIcon,\n Box,\n breakPoints,\n BucketsIcon,\n Button,\n DiagnosticsMenuIcon,\n DrivesIcon,\n FormatDrivesIcon,\n HealIcon,\n HelpBox,\n PrometheusErrorIcon,\n ServersIcon,\n StorageIcon,\n TotalObjectsIcon,\n UptimeIcon,\n} from \"mds\";\nimport { calculateBytes, representationNumber } from \"../../../../common/utils\";\nimport StatusCountCard from \"./StatusCountCard\";\nimport groupBy from \"lodash/groupBy\";\nimport ServersList from \"./ServersList\";\nimport CounterCard from \"./CounterCard\";\nimport ReportedUsage from \"./ReportedUsage\";\nimport { Link } from \"react-router-dom\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport TimeStatItem from \"../TimeStatItem\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { AdminInfoResponse, ServerDrives } from \"api/consoleApi\";\n\nconst BoxItem = ({ children }: { children: any }) => {\n return (\n \n {children}\n \n );\n};\n\ninterface IDashboardProps {\n usage: AdminInfoResponse | undefined;\n}\n\nconst getServersList = (usage: AdminInfoResponse | undefined) => {\n if (usage && usage.servers) {\n return [...usage.servers].sort(function (a, b) {\n const nameA = a.endpoint?.toLowerCase() || \"\";\n const nameB = b.endpoint?.toLowerCase() || \"\";\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n }\n\n return [];\n};\n\nconst prettyUsage = (usage: string | undefined) => {\n if (usage === undefined) {\n return { total: \"0\", unit: \"Mi\" };\n }\n\n return calculateBytes(usage);\n};\n\nconst BasicDashboard = ({ usage }: IDashboardProps) => {\n const usageValue = usage && usage.usage ? usage.usage.toString() : \"0\";\n const usageToRepresent = prettyUsage(usageValue);\n\n const { lastScan = \"n/a\", lastHeal = \"n/a\", upTime = \"n/a\" } = {};\n\n const serverList = getServersList(usage);\n\n let allDrivesArray: ServerDrives[] = [];\n\n serverList.forEach((server) => {\n const drivesInput = server.drives?.map((drive) => {\n return drive;\n });\n if (drivesInput) {\n allDrivesArray = [...allDrivesArray, ...drivesInput];\n }\n });\n\n const serversGroup = groupBy(serverList, \"state\");\n const { offline: offlineServers = [], online: onlineServers = [] } =\n serversGroup;\n const drivesGroup = groupBy(allDrivesArray, \"state\");\n const { offline: offlineDrives = [], ok: onlineDrives = [] } = drivesGroup;\n return (\n \n \n \n \n \n }\n counterValue={usage ? representationNumber(usage.buckets) : 0}\n actions={\n \n \n {}}\n label={\"Browse\"}\n icon={}\n variant={\"regular\"}\n style={{\n padding: 5,\n height: 30,\n fontSize: 14,\n marginTop: 20,\n }}\n />\n \n \n }\n />\n \n \n }\n counterValue={usage ? representationNumber(usage.objects) : 0}\n />\n \n\n \n }\n />\n \n \n }\n />\n \n\n \n \n\n \n }\n label={\n \n \n Time since last\n {\" \"}\n Heal Activity\n \n }\n value={lastHeal}\n />\n }\n label={\n \n \n Time since last\n {\" \"}\n Scan Activity\n \n }\n value={lastScan}\n />\n }\n label={\"Uptime\"}\n value={upTime}\n />\n \n \n \n \n }\n label={\"Backend type\"}\n value={usage?.backend?.backendType ?? \"Unknown\"}\n />\n }\n label={\"Standard storage class parity\"}\n value={usage?.backend?.standardSCParity?.toString() ?? \"n/a\"}\n />\n }\n label={\"Reduced redundancy storage class parity\"}\n value={usage?.backend?.rrSCParity?.toString() ?? \"n/a\"}\n />\n \n\n \n \n \n \n {usage?.advancedMetricsStatus === \"not configured\" && (\n \n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n \n MinIO Dashboard will display basic metrics as we couldn’t\n connect to Prometheus successfully. Please try again in a\n few minutes. If the problem persists, you can review your\n configuration and confirm that Prometheus server is up and\n running.\n \n \n \n Read more about Prometheus on our Docs site.\n \n \n \n }\n />\n \n )}\n \n \n );\n};\n\nexport default BasicDashboard;\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 } from \"react\";\nimport {\n Box,\n Button,\n Grid,\n HelpBox,\n PageLayout,\n ProgressBar,\n PrometheusErrorIcon,\n SyncIcon,\n TabItemProps,\n Tabs,\n} from \"mds\";\nimport { IDashboardPanel } from \"./types\";\nimport { panelsConfiguration } from \"./utils\";\nimport { componentToUse } from \"./widgetUtils\";\nimport { useAppDispatch, useAppSelector } from \"../../../../store\";\nimport {\n DLayoutColumnProps,\n DLayoutRowProps,\n resourcesPanelsLayout,\n resourcesPanelsLayoutAdvanced,\n RowPanelLayout,\n summaryPanelsLayout,\n trafficPanelsLayout,\n} from \"./Widgets/LayoutUtil\";\nimport { getUsageAsync } from \"../dashboardThunks\";\nimport { reloadWidgets } from \"../dashboardSlice\";\nimport { selFeatures } from \"../../consoleSlice\";\nimport { AdminInfoResponse } from \"api/consoleApi\";\nimport ZoomWidget from \"./ZoomWidget\";\nimport DateRangeSelector from \"../../Common/FormComponents/DateRangeSelector/DateRangeSelector\";\nimport MergedWidgetsRenderer from \"./Widgets/MergedWidgetsRenderer\";\nimport BasicDashboard from \"../BasicDashboard/BasicDashboard\";\n\ninterface IPrDashboard {\n apiPrefix?: string;\n usage: AdminInfoResponse | null;\n}\n\nconst PrDashboard = ({ apiPrefix = \"admin\", usage }: IPrDashboard) => {\n const dispatch = useAppDispatch();\n const status = useAppSelector((state) => state.dashboard.status);\n const zoomOpen = useAppSelector((state) => state.dashboard.zoom.openZoom);\n const zoomWidget = useAppSelector(\n (state) => state.dashboard.zoom.widgetRender,\n );\n const features = useAppSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n let hideMenu = false;\n if (features?.includes(\"hide-menu\")) {\n hideMenu = true;\n } else if (obOnly) {\n hideMenu = true;\n }\n\n const [timeStart, setTimeStart] = useState(null);\n const [timeEnd, setTimeEnd] = useState(null);\n const panelInformation = panelsConfiguration;\n const [curTab, setCurTab] = useState(\"info\");\n\n const getPanelDetails = (id: number) => {\n return panelInformation.find((panel) => panel.id === id);\n };\n\n const triggerLoad = () => {\n dispatch(reloadWidgets());\n };\n\n const renderCmpByConfig = (\n panelInfo: IDashboardPanel | undefined,\n key: string,\n ) => {\n return (\n \n {panelInfo ? (\n \n \n {panelInfo.mergedPanels ? (\n \n ) : (\n componentToUse(\n panelInfo,\n timeStart,\n timeEnd,\n true,\n apiPrefix,\n zoomOpen,\n )\n )}\n \n \n ) : null}\n \n );\n };\n\n const renderPanelItems = (layoutRows: DLayoutRowProps[]) => {\n return layoutRows.reduce((prev: any[], rowItem, rIdx) => {\n const { columns = [] } = rowItem;\n const cellItems: any[] = columns.map(\n (cellItem: DLayoutColumnProps, colIdx: number) => {\n const panelInfo = getPanelDetails(cellItem.componentId);\n return renderCmpByConfig(panelInfo, `${rIdx}-${colIdx}`);\n },\n );\n const rowConfig = (\n \n {cellItems}\n \n );\n return [...prev, rowConfig];\n }, []);\n };\n\n const renderSummaryPanels = () => {\n return renderPanelItems(summaryPanelsLayout);\n };\n\n const renderTrafficPanels = () => {\n return renderPanelItems(trafficPanelsLayout);\n };\n\n const renderResourcesPanels = () => {\n return renderPanelItems(resourcesPanelsLayout);\n };\n\n const renderAdvancedResourcesPanels = () => {\n return renderPanelItems(resourcesPanelsLayoutAdvanced);\n };\n\n const prometheusOptionsDisabled =\n usage?.advancedMetricsStatus === \"not configured\";\n\n const searchBox = (\n \n {curTab === \"info\" ? (\n \n \n \n Server Information\n \n \n \n \n \n {\n dispatch(getUsageAsync());\n }}\n disabled={status === \"loading\"}\n icon={}\n label={\"Sync\"}\n />\n \n \n \n \n ) : (\n \n )}\n \n );\n\n const infoTab: TabItemProps = {\n tabConfig: { label: \"Info\", id: \"info\", disabled: false },\n content: (\n \n {(!usage || status === \"loading\") && }\n {usage && status === \"idle\" && (\n \n {searchBox}\n \n \n )}\n \n ),\n };\n\n const prometheusTabs: TabItemProps[] = [\n {\n tabConfig: {\n label: \"Usage\",\n id: \"usage\",\n disabled: prometheusOptionsDisabled,\n },\n content: (\n \n {searchBox}\n \n {usage?.advancedMetricsStatus === \"unavailable\" && (\n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n It looks like Prometheus is not available or reachable at\n the moment.\n \n }\n />\n )}\n {panelInformation.length ? renderSummaryPanels() : null}\n \n \n ),\n },\n {\n tabConfig: {\n label: \"Traffic\",\n id: \"traffic\",\n disabled: prometheusOptionsDisabled,\n },\n content: (\n \n {searchBox}\n \n {usage?.advancedMetricsStatus === \"unavailable\" && (\n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n It looks like Prometheus is not available or reachable at\n the moment.\n \n }\n />\n )}\n {panelInformation.length ? renderTrafficPanels() : null}\n \n \n ),\n },\n {\n tabConfig: {\n label: \"Resources\",\n id: \"resources\",\n disabled: prometheusOptionsDisabled,\n },\n content: (\n \n {searchBox}\n \n {usage?.advancedMetricsStatus === \"unavailable\" && (\n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n It looks like Prometheus is not available or reachable at\n the moment.\n \n }\n />\n )}\n {panelInformation.length ? renderResourcesPanels() : null}\n

\n Advanced\n

\n {panelInformation.length ? renderAdvancedResourcesPanels() : null}\n
\n
\n ),\n },\n ];\n\n let tabsOptions: TabItemProps[] = [infoTab, ...prometheusTabs];\n\n return (\n \n {zoomOpen && (\n \n )}\n\n {\n setCurTab(newValue);\n }}\n />\n \n );\n};\n\nexport default PrDashboard;\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 { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { getUsageAsync } from \"./dashboardThunks\";\nimport { selFeatures } from \"../consoleSlice\";\nimport { setHelpName } from \"../../../systemSlice\";\nimport PrDashboard from \"./Prometheus/PrDashboard\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst Dashboard = () => {\n const dispatch = useAppDispatch();\n const [iniLoad, setIniLoad] = useState(false);\n\n const usage = useSelector((state: AppState) => state.dashboard.usage);\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n let hideMenu = false;\n if (features?.includes(\"hide-menu\")) {\n hideMenu = true;\n } else if (obOnly) {\n hideMenu = true;\n }\n\n useEffect(() => {\n if (!iniLoad) {\n setIniLoad(true);\n dispatch(getUsageAsync());\n }\n }, [iniLoad, dispatch]);\n\n useEffect(() => {\n dispatch(setHelpName(\"metrics\"));\n }, [dispatch]);\n\n return (\n \n {!hideMenu && (\n } />\n )}\n \n \n );\n};\n\nexport default Dashboard;\n"],"names":["_ref","timeStart","setTimeStart","timeEnd","setTimeEnd","triggerSync","label","startLabel","endLabel","_jsx","Grid","item","xs","sx","display","width","border","paddingLeft","paddingRight","borderRadius","height","marginRight","color","WebkitTextFillColor","children","_jsxs","Box","alignItems","gridTemplateColumns","padding","concat","breakPoints","sm","md","gap","fontSize","fontWeight","className","customBorderPadding","DateTimeInput","value","onChange","id","secondsSelector","pickerStartComponent","Fragment","TimeIcon","justifyContent","Button","type","variant","onClick","icon","SyncIcon","onClose","modalOpen","title","wideLimit","titleIcon","iconColor","dispatch","useAppDispatch","openSnackbar","setOpenSnackbar","useState","modalSnackMessage","useSelector","state","system","modalSnackBar","useEffect","setModalSnackMessage","message","detailedErrorMsg","length","ModalBox","open","widthLimit","MainError","isModal","Snackbar","closeSnackBar","mode","autoHideDuration","condensed","StatusCountBase","styled","div","theme","fontFamily","maxWidth","marginLeft","cursor","get","flex","marginTop","flexFlow","paddingBottom","lg","xl","textAlign","fill","_ref2","onlineCount","offlineCount","okStatusText","notOkStatusText","CircleIcon","STATUS_COLORS","RED","GREEN","YELLOW","getDriveStatusColor","activeDisks","totalDrives","serverStatusColor","health_status","getNetworkStatusColor","activeNetwork","networkTotal","widgetType","colorsMain","niceDaysFromNS","seconds","niceDays","roundNumber","parseInt","toString","panelsConfiguration","data","simpleWidget","widgetIcon","UptimeIcon","labelDisplayFunction","dataOuter","name","widgetConfiguration","outerChart","colorList","innerRadius","outerRadius","startAngle","endAngle","innerChart","pieChart","innerLabel","niceBytes","dataKey","keyLabel","lineColor","fillColor","areaGraph","yAxisFormatter","xAxisFormatter","getTimeFromTimestamp","background","greatestColor","customStructure","originTag","displayTag","barChart","singleRep","strokeWidth","linearGraph","HealIcon","DiagnosticsIcon","disableYAxis","mergedPanels","singleValue","calculateMainValue","elements","metricCalc","sumValues","reduce","accumulator","currValue","parseFloat","Math","floor","sortResult","sort","value1","value2","widgetDetailsToPanel","payloadData","panelItem","typeOfPayload","valueDisplay","chartSeries","filter","seriesItem","values","map","chartTarget","result","Array","isArray","elementValue","metricKeyItem","Object","keys","metric","metricName","legend","legendFormat","firstTarget","totalValues","targets","series","plotValues","forEach","targetMaster","index","results","itemVals","labelName","constructLabelNames","metrics","keysToReplace","expToReplace","RegExp","join","replacedLegend","replace","matchItem","nwMatchItem","countVarsOpen","match","countVarsClose","cleanLegend","element","keyName","push","valInfo","itemIndex","findIndex","itemToPush","seriesWithColors","series1","series2","serialC","textToRGBColor","sortedVals","chartBars","sortFunction","structureItem","metricTake","find","range","lastValue","a","valuesForBackground","eachVal","splitSizeMetric","val","splittedText","split","vl","isNaN","representationNumber","units","includes","backgroundColor","openZoomPage","ExpandIcon","componentRef","anchorEl","setAnchorEl","React","openDownloadMenu","Boolean","downloadAsCSV","download","filename","text","document","createElement","setAttribute","style","body","appendChild","click","removeChild","Date","now","trim","toLowerCase","objectToConvert","it","err","errorMessage","detailedError","setErrorSnackMessage","onDownloadError","handleSelectedOption","selectOption","downloadAsPNG","pngFileName","exportComponentAsPNG","fileName","justifyItems","event","currentTarget","DownloadIcon","DropdownSelector","options","selectedOption","onSelect","hideTriggerAction","anchorOrigin","active","payload","barChartConfiguration","tooltipCommon","customTooltip","timeStampTitle","pl","labelContainer","labelColor","itemValue","valueContainer","BarChartMain","widgetCommon","loadingAlign","paddingTop","margin","CustomizedAxisTick","y","textAnchor","transform","dy","_ref3","apiPrefix","zoomActivated","loading","setLoading","setData","setResult","hover","setHover","biggerThanMd","setBiggerThanMd","window","innerWidth","useRef","widgetVersion","dashboard","widgetLoadVersion","handleWindowResize","extMD","addEventListener","removeEventListener","stepCalc","secondsInPeriod","toUnixInteger","periods","api","invoke","then","res","widgetsWithValue","catch","greatestIndex","currentValue","dataGraph","onMouseOver","onHover","onMouseLeave","onStopHover","container","ExpandGraphLink","DownloadWidgetDataButton","Loader","ref","ResponsiveContainer","BarChart","layout","barCategoryGap","XAxis","hide","YAxis","interval","tick","tickLine","axisLine","bar","Bar","barSize","_","Cell","Tooltip","content","BarChartTooltip","linearConfiguration","LinearGraphMain","position","flexDirection","maxHeight","overflowY","hideYAxis","areaWidget","var1","var2","csvData","setCsvData","dataMax","setDataMax","maxVal","dp","key","intervalCount","fmtData","el","date","CustomizedDot","prop","cx","cy","r","dspLongDate","alignContent","AreaChart","top","right","left","bottom","x1","y1","x2","y2","offset","stopColor","stopOpacity","CartesianGrid","strokeDasharray","strokeOpacity","stroke","vertical","tickFormatter","tickCount","domain","section","Area","isAnimationActive","fillOpacity","strokeLinecap","dot","LineChartTooltip","wrapperStyle","zIndex","PieChartMain","dataInner","setDataInner","setDataOuter","pieChartConfiguration","middleLabel","innerColors","outerColors","PieChart","Pie","entry","SimpleWidgetMain","span","textTransform","iconWidget","renderFn","valueToRender","withBorders","StatCardMain","overflow","tooltip","placement","textOverflow","NumericStatCard","BucketsIcon","TotalObjectsIcon","connect","propLoading","repNumber","resultRep","DashboardItemBox","BucketsCountItem","ObjectsCountItem","SingleValueWidgetMain","lineHeight","CapacityItemMain","alignSelf","totalUsableFree","setTotalUsableFree","totalUsableFreeRatio","setTotalUsableFreeRatio","totalUsed","setTotalUsed","totalUsable","setTotalUsable","tUsable","tUsed","tFree","eachArray","itemSum","freeRatio","round","usedConvert","calculateBytes","capacityColors","animationDuration","total","unit","niceBytesInt","ReportedUsageIcon","TimeStatBase","SuccessIcon","TimeStatItem","componentToUse","arguments","undefined","SingleValueWidget","CmpToRender","HealActivityRenderer","ScanActivityRenderer","UptimeActivityRenderer","SimpleWidget","CapacityItem","PieChartWidget","LinearGraphWidget","BarChartWidget","SingleRepWidget","summaryPanelsLayout","minWidth","columns","componentId","trafficPanelsLayout","flexShrink","resourcesPanelsLayout","resourcesPanelsLayoutAdvanced","RowPanelLayout","ModalWrapper","closeZoomPage","CommonCardItem","metricValue","metricUnit","subMessage","moreLink","rightComponent","extraMargin","SubHeader","Header","Link","to","leftComponent","CommonCard","statLabel","DualSTCardContent","statItemLeft","statItemRight","StateIndicator","info","leftPanel","rightPanel","lStatItem","EntityStateStatItem","rStatItem","statIcon","ServersIcon","DrivesIcon","DualStatCard","NetworkGetBase","NetworkGetIcon","NetworkPutBase","NetworkPutIcon","NetworkItemBase","rightCmp","NetworkPutItem","leftCmp","_ref4","NetworkGetItem","SpeedtestIcon","EntityStateItemRenderer","NetworkItem","MergedWidgets","ServerStatItemMain","whiteSpace","ServerInfoItemMain","ServerStatItem","statusColor","hasStatus","server","networkKeys","drives","acc","network","endpoint","uptime","version","_drive$totalSpace","_drive$usedSpace","_drive$availableSpace","_drive$endpoint","drive","useTheme","totalSpace","usedSpace","usedPercentage","max","availableSpace","availablePercentage","driveStatusColor","useMemo","driveStatusText","wordBreak","SizeChart","chartLabel","usedBytes","totalBytes","toFixed","expanded","setExpanded","handleClick","serverInfo","_serverInfo$drives","_serverInfo$drives2","isExpanded","Accordion","onTitleClick","ServerInfoItem","marginBottom","useBackground","driveInfo","DriveInfoItem","CounterCardMain","counterValue","actions","BoxItem","_usage$backend","_usage$backend2","_usage$backend$backen","_usage$backend3","_usage$backend$standa","_usage$backend4","_usage$backend4$stand","_usage$backend$rrSCPa","_usage$backend5","_usage$backend5$rrSCP","usage","usageValue","usageToRepresent","prettyUsage","lastScan","lastHeal","upTime","serverList","servers","b","_a$endpoint","_b$endpoint","nameA","nameB","getServersList","allDrivesArray","_server$drives","drivesInput","serversGroup","groupBy","offline","offlineServers","online","onlineServers","drivesGroup","offlineDrives","ok","onlineDrives","gridTemplateRows","CounterCard","buckets","IAM_PAGES","BUCKETS","textDecoration","TooltipWrapper","ArrowRightIcon","objects","StatusCountCard","backend","gridRowStart","gridRowEnd","gridColumnStart","ReportedUsage","DiagnosticsMenuIcon","StorageIcon","backendType","FormatDrivesIcon","standardSCParity","rrSCParity","ServersList","advancedMetricsStatus","HelpBox","iconComponent","PrometheusErrorIcon","help","href","target","rel","status","useAppSelector","zoomOpen","zoom","openZoom","zoomWidget","widgetRender","features","selFeatures","obOnly","hideMenu","panelInformation","curTab","setCurTab","renderPanelItems","layoutRows","prev","rowItem","rIdx","cellItems","cellItem","colIdx","renderCmpByConfig","panelInfo","MergedWidgetsRenderer","panel","prometheusOptionsDisabled","searchBox","direction","getUsageAsync","disabled","DateRangeSelector","triggerLoad","reloadWidgets","tabsOptions","tabConfig","ProgressBar","BasicDashboard","borderBottom","PageLayout","ZoomWidget","Tabs","horizontal","currentTabOrPath","onTabClick","newValue","Dashboard","iniLoad","setIniLoad","setHelpName","PageHeaderWrapper","HelpMenu","PrDashboard"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/9340.9df4309b.chunk.js","mappings":"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","sources":["screens/Console/Common/FormComponents/DateRangeSelector/DateRangeSelector.tsx","screens/Console/Common/ModalWrapper/ModalWrapper.tsx","screens/Console/Dashboard/BasicDashboard/StatusCountCard.tsx","screens/Console/Dashboard/BasicDashboard/Utils.tsx","screens/Console/Dashboard/Prometheus/types.ts","screens/Console/Dashboard/Prometheus/utils.tsx","screens/Console/Dashboard/Prometheus/Widgets/ExpandGraphLink.tsx","screens/Console/Dashboard/DownloadWidgetDataButton.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/BarChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/BarChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/tooltips/LineChartTooltip.tsx","screens/Console/Dashboard/Prometheus/Widgets/LinearGraphWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/PieChartWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/SimpleWidget.tsx","screens/Console/Dashboard/DashboardItemBox.tsx","screens/Console/Dashboard/Prometheus/Widgets/NumericStatCard.tsx","screens/Console/Dashboard/Prometheus/Widgets/BucketsCountItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/ObjectsCountItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/SingleRepWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/SingleValueWidget.tsx","screens/Console/Dashboard/Prometheus/Widgets/CapacityItem.tsx","screens/Console/Dashboard/TimeStatItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/HealActivityRenderer.tsx","screens/Console/Dashboard/Prometheus/Widgets/ScanActivityRenderer.tsx","screens/Console/Dashboard/Prometheus/Widgets/UptimeActivityRenderer.tsx","screens/Console/Dashboard/Prometheus/widgetUtils.tsx","screens/Console/Dashboard/Prometheus/Widgets/LayoutUtil.tsx","screens/Console/Dashboard/Prometheus/ZoomWidget.tsx","screens/Console/Dashboard/CommonCard.tsx","screens/Console/Dashboard/Prometheus/MergedWidgets.tsx","screens/Console/Dashboard/Prometheus/Widgets/EntityStateStatItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/DualStatCard.tsx","screens/Console/Dashboard/Prometheus/Widgets/EntityStateItemRenderer.tsx","screens/Console/Dashboard/Prometheus/Widgets/NetworkGetItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/NetworkPutItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/NetworkItem.tsx","screens/Console/Dashboard/Prometheus/Widgets/MergedWidgetsRenderer.tsx","screens/Console/Dashboard/BasicDashboard/ServerInfoItem.tsx","screens/Console/Dashboard/BasicDashboard/DriveInfoItem.tsx","screens/Console/Dashboard/BasicDashboard/ServersList.tsx","screens/Console/Dashboard/BasicDashboard/CounterCard.tsx","screens/Console/Dashboard/BasicDashboard/BasicDashboard.tsx","screens/Console/Dashboard/Prometheus/PrDashboard.tsx","screens/Console/Dashboard/Dashboard.tsx"],"sourcesContent":["// 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 {\n Button,\n SyncIcon,\n Grid,\n Box,\n breakPoints,\n TimeIcon,\n DateTimeInput,\n} from \"mds\";\nimport { DateTime } from \"luxon\";\n\ninterface IDateRangeSelector {\n timeStart: DateTime | null;\n setTimeStart: (value: DateTime | null) => void;\n timeEnd: DateTime | null;\n setTimeEnd: (value: DateTime | null) => void;\n triggerSync?: () => void;\n label?: string;\n startLabel?: string;\n endLabel?: string;\n}\n\nconst DateRangeSelector = ({\n timeStart,\n setTimeStart,\n timeEnd,\n setTimeEnd,\n triggerSync,\n label = \"Filter:\",\n startLabel = \"Start Time:\",\n endLabel = \"End Time:\",\n}: IDateRangeSelector) => {\n return (\n \n \n \n {label}\n \n \n \n \n {startLabel}\n \n }\n />\n \n \n {endLabel}\n \n }\n />\n \n\n {triggerSync && (\n \n }\n label={\"Sync\"}\n />\n \n )}\n \n \n );\n};\n\nexport default DateRangeSelector;\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 { useSelector } from \"react-redux\";\nimport { ModalBox, Snackbar } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { AppState, useAppDispatch } from \"../../../../store\";\nimport { setModalSnackMessage } from \"../../../../systemSlice\";\nimport MainError from \"../MainError/MainError\";\n\ninterface IModalProps {\n onClose: () => void;\n modalOpen: boolean;\n title: string | React.ReactNode;\n children: any;\n wideLimit?: boolean;\n titleIcon?: React.ReactNode;\n iconColor?: \"default\" | \"delete\" | \"accept\";\n sx?: CSSObject;\n}\n\nconst ModalWrapper = ({\n onClose,\n modalOpen,\n title,\n children,\n wideLimit = true,\n titleIcon = null,\n iconColor = \"default\",\n sx,\n}: IModalProps) => {\n const dispatch = useAppDispatch();\n const [openSnackbar, setOpenSnackbar] = useState(false);\n\n const modalSnackMessage = useSelector(\n (state: AppState) => state.system.modalSnackBar,\n );\n\n useEffect(() => {\n dispatch(setModalSnackMessage(\"\"));\n }, [dispatch]);\n\n useEffect(() => {\n if (modalSnackMessage) {\n if (modalSnackMessage.message === \"\") {\n setOpenSnackbar(false);\n return;\n }\n // Open SnackBar\n if (modalSnackMessage.type !== \"error\") {\n setOpenSnackbar(true);\n }\n }\n }, [modalSnackMessage]);\n\n const closeSnackBar = () => {\n setOpenSnackbar(false);\n dispatch(setModalSnackMessage(\"\"));\n };\n\n let message = \"\";\n\n if (modalSnackMessage) {\n message = modalSnackMessage.detailedErrorMsg;\n if (message === \"\" || (message && message.length < 5)) {\n message = modalSnackMessage.message;\n }\n }\n\n return (\n \n \n \n {children}\n \n );\n};\n\nexport default ModalWrapper;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, CircleIcon } from \"mds\";\n\nconst StatusCountBase = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n maxWidth: \"321px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n \"& .mainBox\": {\n flex: 1,\n display: \"flex\",\n padding: \"0 8px 0 8px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n padding: \"0 10px 0 10px\",\n },\n \"& .indicatorIcon\": {\n width: \"20px\",\n height: \"20px\",\n marginTop: \"8px\",\n maxWidth: \"26px\",\n \"& .min-icon\": {\n width: \"16px\",\n height: \"16px\",\n },\n },\n \"& .indicatorContainer\": {\n flex: 1,\n display: \"flex\",\n flexFlow: \"column\",\n \"& .indicatorLabel\": {\n fontSize: \"16px\",\n fontWeight: 600,\n },\n \"& .counterIndicator\": {\n display: \"flex\",\n alignItems: \"center\",\n gap: \"5px\",\n justifyContent: \"space-between\",\n paddingBottom: 0,\n fontSize: \"55px\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n paddingBottom: 10,\n fontSize: \"35px\",\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n fontSize: \"45px\",\n },\n [`@media (max-width: ${breakPoints.xl}px)`]: {\n fontSize: \"50px\",\n },\n flexFlow: \"row\",\n fontWeight: 600,\n\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888D\"),\n fontSize: \"12px\",\n marginTop: \"8px\",\n },\n \"& .stat-value\": {\n textAlign: \"center\",\n height: \"50px\",\n },\n \"& .min-icon\": {\n marginRight: \"8px\",\n marginTop: \"8px\",\n height: \"10px\",\n width: \"10px\",\n },\n },\n \"& .onlineCounter\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"5px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"& .offlineCount\": {\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"8px\",\n \"& .min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n}));\n\nconst StatusCountCard = ({\n onlineCount = 0,\n offlineCount = 0,\n icon = null,\n label = \"\",\n okStatusText = \"Online\",\n notOkStatusText = \"Offline\",\n}: {\n icon: any;\n onlineCount: number;\n offlineCount: number;\n label: string;\n okStatusText?: string;\n notOkStatusText?: string;\n}) => {\n return (\n \n \n \n {label}\n\n \n \n {onlineCount}\n \n \n
{okStatusText}
\n
\n
\n\n \n {offlineCount}\n \n {\" \"}\n
{notOkStatusText}
\n
\n
\n
\n
\n {icon}\n
\n
\n );\n};\n\nexport default StatusCountCard;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 STATUS_COLORS = {\n RED: \"#C83B51\",\n GREEN: \"#4CCB92\",\n YELLOW: \"#FFBD62\",\n};\n\nexport const getDriveStatusColor = (\n activeDisks: number,\n totalDrives: number,\n) => {\n if (activeDisks <= totalDrives / 2) {\n return \"bad\";\n }\n if (totalDrives !== 2 && activeDisks === totalDrives / 2 + 1) {\n return \"warn\";\n }\n if (activeDisks === totalDrives) {\n return \"good\";\n }\n};\n\nexport const serverStatusColor = (health_status: string) => {\n switch (health_status) {\n case \"offline\":\n return \"bad\";\n case \"online\":\n return \"good\";\n default:\n return \"warn\";\n }\n};\nexport const getNetworkStatusColor = (\n activeNetwork: number,\n networkTotal: number,\n) => {\n if (activeNetwork <= networkTotal / 2) {\n return \"bad\";\n }\n if (activeNetwork === networkTotal / 2 + 1) {\n return \"warn\";\n }\n if (activeNetwork === networkTotal) {\n return \"good\";\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 IBarChartConfiguration,\n IBarChartRelation,\n IDataSRep,\n ILinearGraphConfiguration,\n IPieChartConfiguration,\n} from \"./Widgets/types\";\n\nexport enum widgetType {\n singleValue = \"singleValue\",\n linearGraph = \"linearGraph\",\n areaGraph = \"areaGraph\",\n barChart = \"barChart\",\n pieChart = \"pieChart\",\n singleRep = \"singleRep\",\n simpleWidget = \"simpleWidget\",\n}\n\nexport interface IDashboardPanel {\n id: number;\n mergedPanels?: IDashboardPanel[];\n title: string;\n data?: string | object[] | IDataSRep[];\n dataOuter?: string | object[];\n type?: widgetType;\n widgetIcon?: any;\n widgetConfiguration?:\n | ILinearGraphConfiguration[]\n | IBarChartConfiguration[]\n | IPieChartConfiguration;\n color?: string;\n fillColor?: string;\n innerLabel?: string;\n labelDisplayFunction?: (value: string) => any;\n disableYAxis?: boolean;\n xAxisFormatter?: (item: string) => string;\n yAxisFormatter?: (item: string) => string;\n customStructure?: IBarChartRelation[];\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 } from \"react\";\nimport get from \"lodash/get\";\nimport { IDashboardPanel, widgetType } from \"./types\";\nimport {\n getTimeFromTimestamp,\n niceBytes,\n niceDays,\n representationNumber,\n textToRGBColor,\n units,\n} from \"../../../../common/utils\";\nimport { DiagnosticsIcon, HealIcon, UptimeIcon } from \"mds\";\n\nconst colorsMain = [\n \"#C4D4E9\",\n \"#DCD1EE\",\n \"#D1EEE7\",\n \"#EEDED1\",\n \"#AAF38F\",\n \"#F9E6C5\",\n \"#C83B51\",\n \"#F4CECE\",\n \"#D6D6D6\",\n];\n\nconst niceDaysFromNS = (seconds: string) => {\n return niceDays(seconds, \"ns\");\n};\n\nconst roundNumber = (value: string) => {\n return parseInt(value).toString(10);\n};\n\nexport const panelsConfiguration: IDashboardPanel[] = [\n {\n id: 1,\n title: \"Uptime\",\n data: \"N/A\",\n type: widgetType.simpleWidget,\n widgetIcon: ,\n labelDisplayFunction: niceDays,\n },\n {\n id: 50,\n title: \"Capacity\",\n data: [],\n dataOuter: [{ name: \"outer\", value: 100 }],\n widgetConfiguration: {\n outerChart: {\n colorList: [\"#9c9c9c\"],\n innerRadius: 0,\n outerRadius: 0,\n startAngle: 0,\n endAngle: 0,\n },\n innerChart: {\n colorList: colorsMain,\n innerRadius: 20,\n outerRadius: 50,\n startAngle: 90,\n endAngle: -200,\n },\n },\n type: widgetType.pieChart,\n innerLabel: \"N/A\",\n labelDisplayFunction: niceBytes,\n },\n {\n id: 51,\n title: \"Usable Capacity\",\n data: [],\n dataOuter: [{ name: \"outer\", value: 100 }],\n widgetConfiguration: {\n outerChart: {\n colorList: [\"#9c9c9c\"],\n innerRadius: 0,\n outerRadius: 0,\n startAngle: 0,\n endAngle: 0,\n },\n innerChart: {\n colorList: colorsMain,\n innerRadius: 20,\n outerRadius: 50,\n startAngle: 90,\n endAngle: -200,\n },\n },\n type: widgetType.pieChart,\n innerLabel: \"N/A\",\n labelDisplayFunction: niceBytes,\n },\n {\n id: 68,\n title: \"Data Usage Growth\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.areaGraph,\n yAxisFormatter: niceBytes,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 52,\n title: \"Object size distribution\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"a\",\n color: \"#2781B0\",\n background: {\n fill: \"#EEF1F4\",\n },\n greatestColor: \"#081C42\",\n },\n ],\n customStructure: [\n { originTag: \"LESS_THAN_1024_B\", displayTag: \"Less than 1024B\" },\n {\n originTag: \"BETWEEN_1024_B_AND_1_MB\",\n displayTag: \"Between 1024B and 1MB\",\n },\n {\n originTag: \"BETWEEN_1_MB_AND_10_MB\",\n displayTag: \"Between 1MB and 10MB\",\n },\n {\n originTag: \"BETWEEN_10_MB_AND_64_MB\",\n displayTag: \"Between 10MB and 64MB\",\n },\n {\n originTag: \"BETWEEN_64_MB_AND_128_MB\",\n displayTag: \"Between 64MB and 128MB\",\n },\n {\n originTag: \"BETWEEN_128_MB_AND_512_MB\",\n displayTag: \"Between 128MB and 512MB\",\n },\n {\n originTag: \"GREATER_THAN_512_MB\",\n displayTag: \"Greater than 512MB\",\n },\n ],\n type: widgetType.barChart,\n },\n {\n id: 66,\n title: \"Buckets\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#0071BC\",\n fillColor: \"#ADD5E0\",\n },\n {\n id: 44,\n title: \"Objects\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#0071BC\",\n fillColor: \"#ADD5E0\",\n },\n {\n id: 63,\n title: \"API Data Received Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n strokeWidth: 3,\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 61,\n title: \"Total Open FDs\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#22B573\",\n fillColor: \"#A6E8C4\",\n },\n {\n id: 62,\n title: \"Total Goroutines\",\n data: [],\n innerLabel: \"N/A\",\n type: widgetType.singleRep,\n color: \"#F7655E\",\n fillColor: \"#F4CECE\",\n },\n {\n id: 77,\n title: \"Node CPU Usage\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 60,\n title: \"API Request Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 70,\n title: \"API Data Sent Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 17,\n title: \"Internode Data Transfer\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n yAxisFormatter: niceBytes,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 73,\n title: \"Node IO\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n yAxisFormatter: niceBytes,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 80,\n title: \"Time Since Last Heal Activity\",\n data: \"N/A\",\n type: widgetType.simpleWidget,\n widgetIcon: ,\n labelDisplayFunction: niceDaysFromNS,\n },\n {\n id: 81,\n title: \"Time Since Last Scan Activity\",\n data: \"N/A\",\n type: widgetType.simpleWidget,\n widgetIcon: ,\n labelDisplayFunction: niceDaysFromNS,\n },\n {\n id: 71,\n title: \"API Request Error Rate\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 76,\n title: \"Node Memory Usage\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 74,\n title: \"Drive Used Capacity\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n xAxisFormatter: getTimeFromTimestamp,\n yAxisFormatter: niceBytes,\n },\n {\n id: 82,\n title: \"Drives Free Inodes\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n\n disableYAxis: true,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 11,\n title: \"Node Syscalls\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 8,\n title: \"Node File Descriptors\",\n data: [],\n widgetConfiguration: [\n {\n dataKey: \"\",\n keyLabel: \"\",\n lineColor: \"#000\",\n fillColor: \"#000\",\n },\n ],\n type: widgetType.linearGraph,\n yAxisFormatter: roundNumber,\n xAxisFormatter: getTimeFromTimestamp,\n },\n {\n id: 500,\n mergedPanels: [\n {\n id: 53,\n title: \"Online\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n {\n id: 69,\n title: \"Offline\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n ],\n title: \"Servers\",\n },\n {\n id: 501,\n mergedPanels: [\n {\n id: 9,\n title: \"Online\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n {\n id: 78,\n title: \"Offline\",\n data: \"N/A\",\n type: widgetType.singleValue,\n },\n ],\n title: \"Drives\",\n },\n {\n id: 502,\n mergedPanels: [\n {\n id: 65,\n title: \"Upload\",\n data: \"N/A\",\n type: widgetType.singleValue,\n\n labelDisplayFunction: niceBytes,\n },\n {\n id: 64,\n title: \"Download\",\n data: \"N/A\",\n type: widgetType.singleValue,\n\n labelDisplayFunction: niceBytes,\n },\n ],\n title: \"Network\",\n },\n];\n\nconst calculateMainValue = (elements: any[], metricCalc: string) => {\n if (elements.length === 0) {\n return [\"\", \"0\"];\n }\n\n switch (metricCalc) {\n case \"mean\":\n const sumValues = elements.reduce((accumulator, currValue) => {\n return accumulator + parseFloat(currValue[1]);\n }, 0);\n\n const mean = Math.floor(sumValues / elements.length);\n\n return [\"\", mean.toString()];\n default:\n const sortResult = elements.sort(\n (value1: any[], value2: any[]) => value1[0] - value2[0],\n );\n\n return sortResult[sortResult.length - 1];\n }\n};\n\nconst constructLabelNames = (metrics: any, legendFormat: string) => {\n const keysToReplace = Object.keys(metrics);\n const expToReplace = new RegExp(`{{(${keysToReplace.join(\"|\")})}}`, \"g\");\n\n let replacedLegend = legendFormat.replace(expToReplace, (matchItem) => {\n const nwMatchItem = matchItem.replace(/({{|}})/g, \"\");\n return metrics[nwMatchItem];\n });\n\n const countVarsOpen = (replacedLegend.match(/{{/g) || []).length;\n const countVarsClose = (replacedLegend.match(/}}/g) || []).length;\n\n let cleanLegend = replacedLegend.replace(/{{(.*?)}}/g, \"\");\n\n if (\n countVarsOpen === countVarsClose &&\n countVarsOpen !== 0 &&\n countVarsClose !== 0\n ) {\n keysToReplace.forEach((element) => {\n replacedLegend = replacedLegend.replace(element, metrics[element]);\n });\n\n cleanLegend = replacedLegend;\n }\n\n // In case not all the legends were replaced, we remove the placeholders.\n return cleanLegend;\n};\n\nexport const widgetDetailsToPanel = (\n payloadData: any,\n panelItem: IDashboardPanel,\n) => {\n if (!payloadData) {\n return panelItem;\n }\n\n const typeOfPayload = payloadData.type;\n\n switch (panelItem.type) {\n case widgetType.singleValue:\n case widgetType.simpleWidget:\n if (typeOfPayload === \"stat\" || typeOfPayload === \"singlestat\") {\n // We sort values & get the last value\n let elements = get(payloadData, \"targets[0].result[0].values\", []);\n\n if (elements === null) {\n elements = [];\n }\n\n const metricCalc = get(\n payloadData,\n \"options.reduceOptions.calcs[0]\",\n \"lastNotNull\",\n );\n\n const valueDisplay = calculateMainValue(elements, metricCalc);\n\n const data = panelItem.labelDisplayFunction\n ? panelItem.labelDisplayFunction(valueDisplay[1])\n : valueDisplay[1];\n\n return {\n ...panelItem,\n data,\n };\n }\n break;\n case widgetType.pieChart:\n if (typeOfPayload === \"gauge\") {\n const metricCalc = get(\n payloadData,\n \"options.reduceOptions.calcs[0]\",\n \"lastNotNull\",\n );\n\n let chartSeries = get(payloadData, \"targets\", []).filter(\n (seriesItem: any) => seriesItem !== null,\n );\n\n const values = chartSeries.map((chartTarget: any) => {\n const resultMap =\n chartTarget.result && Array.isArray(chartTarget.result)\n ? chartTarget.result\n : [];\n\n const values = resultMap.map((elementValue: any) => {\n const values = get(elementValue, \"values\", []);\n const metricKeyItem = Object.keys(elementValue.metric);\n const sortResult = values.sort(\n (value1: any[], value2: any[]) =>\n parseInt(value1[0][1]) - parseInt(value2[0][1]),\n );\n\n const metricName = elementValue.metric[metricKeyItem[0]];\n const value = sortResult[sortResult.length - 1];\n return {\n name: metricName,\n value: parseInt(value[1]),\n legend: chartTarget.legendFormat,\n };\n });\n\n return values;\n });\n\n const firstTarget =\n chartSeries[0].result && chartSeries[0].result.length > 0\n ? chartSeries[0].result[0].values\n : [];\n\n const totalValues = calculateMainValue(firstTarget, metricCalc);\n\n const innerLabel = panelItem.labelDisplayFunction\n ? panelItem.labelDisplayFunction(totalValues[1])\n : totalValues[1];\n\n return {\n ...panelItem,\n data: values,\n innerLabel,\n };\n }\n break;\n case widgetType.linearGraph:\n case widgetType.areaGraph:\n if (typeOfPayload === \"graph\") {\n let targets = get(payloadData, \"targets\", []);\n if (targets === null) {\n targets = [];\n }\n\n const series: any[] = [];\n const plotValues: any[] = [];\n\n targets.forEach(\n (\n targetMaster: { legendFormat: string; result: any[] },\n index: number,\n ) => {\n // Add a new serie to plot variables in case it is not from multiple values\n let results = get(targetMaster, \"result\", []);\n const legendFormat = targetMaster.legendFormat;\n if (results === null) {\n results = [];\n }\n\n results.forEach((itemVals: { metric: object; values: any[] }) => {\n // Label Creation\n const labelName = constructLabelNames(\n itemVals.metric,\n legendFormat,\n );\n const keyName = `key_${index}${labelName}`;\n\n // series creation with recently created label\n series.push({\n dataKey: keyName,\n keyLabel: labelName,\n lineColor: \"\",\n fillColor: \"\",\n });\n\n // we iterate over values and create elements\n let values = get(itemVals, \"values\", []);\n if (values === null) {\n values = [];\n }\n\n values.forEach((valInfo: any[]) => {\n const itemIndex = plotValues.findIndex(\n (element) => element.name === valInfo[0],\n );\n\n // Element not exists yet\n if (itemIndex === -1) {\n let itemToPush: any = { name: valInfo[0] };\n itemToPush[keyName] = valInfo[1];\n\n plotValues.push(itemToPush);\n } else {\n plotValues[itemIndex][keyName] = valInfo[1];\n }\n });\n });\n },\n );\n\n const sortedSeries = series.sort((series1: any, series2: any) => {\n if (series1.keyLabel < series2.keyLabel) {\n return -1;\n }\n if (series1.keyLabel > series2.keyLabel) {\n return 1;\n }\n return 0;\n });\n\n const seriesWithColors = sortedSeries.map(\n (serialC: any, index: number) => {\n return {\n ...serialC,\n lineColor: colorsMain[index] || textToRGBColor(serialC.keyLabel),\n fillColor: colorsMain[index] || textToRGBColor(serialC.keyLabel),\n };\n },\n );\n\n const sortedVals = plotValues.sort(\n (value1: any, value2: any) => value1.name - value2.name,\n );\n\n return {\n ...panelItem,\n widgetConfiguration: seriesWithColors,\n data: sortedVals,\n };\n }\n break;\n case widgetType.barChart:\n if (typeOfPayload === \"bargauge\") {\n let chartBars = get(payloadData, \"targets[0].result\", []);\n\n if (chartBars === null) {\n chartBars = [];\n }\n\n const sortFunction = (value1: any[], value2: any[]) =>\n value1[0] - value2[0];\n\n let values = [];\n if (panelItem.customStructure) {\n values = panelItem.customStructure.map((structureItem) => {\n const metricTake = chartBars.find((element: any) => {\n return element.metric.range === structureItem.originTag;\n });\n\n const elements = get(metricTake, \"values\", []);\n\n const sortResult = elements.sort(sortFunction);\n const lastValue = sortResult[sortResult.length - 1] || [\"\", \"0\"];\n\n return {\n name: structureItem.displayTag,\n a: parseInt(lastValue[1]),\n };\n });\n } else {\n // If no configuration is set, we construct the series for bar chart and return the element\n values = chartBars.map((elementValue: any) => {\n const metricKeyItem = Object.keys(elementValue.metric);\n\n const metricName = elementValue.metric[metricKeyItem[0]];\n\n const elements = get(elementValue, \"values\", []);\n\n const sortResult = elements.sort(sortFunction);\n const lastValue = sortResult[sortResult.length - 1] || [\"\", \"0\"];\n return { name: metricName, a: parseInt(lastValue[1]) };\n });\n }\n\n return {\n ...panelItem,\n data: values,\n };\n }\n break;\n case widgetType.singleRep:\n if (typeOfPayload === \"stat\") {\n // We sort values & get the last value\n let elements = get(payloadData, \"targets[0].result[0].values\", []);\n if (elements === null) {\n elements = [];\n }\n const metricCalc = get(\n payloadData,\n \"options.reduceOptions.calcs[0]\",\n \"lastNotNull\",\n );\n\n const valueDisplay = calculateMainValue(elements, metricCalc);\n\n const sortResult = elements.sort(\n (value1: any[], value2: any[]) => value1[0] - value2[0],\n );\n\n let valuesForBackground = [];\n\n if (sortResult.length === 1) {\n valuesForBackground.push({ value: 0 });\n }\n\n sortResult.forEach((eachVal: any) => {\n valuesForBackground.push({ value: parseInt(eachVal[1]) });\n });\n\n const innerLabel = panelItem.labelDisplayFunction\n ? panelItem.labelDisplayFunction(valueDisplay[1])\n : valueDisplay[1];\n\n return {\n ...panelItem,\n data: valuesForBackground,\n innerLabel,\n };\n }\n break;\n }\n\n return panelItem;\n};\n\nconst verifyNumeric = (item: string) => {\n return !isNaN(parseFloat(item));\n};\n\nexport const splitSizeMetric = (val: string) => {\n const splittedText = val.split(\" \");\n // Value is not a size metric, we return as common string\n\n const singleValue = () => {\n let vl = val;\n\n if (verifyNumeric(val)) {\n vl = representationNumber(parseFloat(val));\n }\n return {vl};\n };\n\n if (splittedText.length !== 2) {\n return singleValue();\n }\n\n if (!units.includes(splittedText[1])) {\n return singleValue();\n }\n\n return (\n \n {splittedText[0]}\n {splittedText[1]}\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 { Box, ExpandIcon } from \"mds\";\n\nimport { IDashboardPanel } from \"../types\";\n\nimport { openZoomPage } from \"../../dashboardSlice\";\nimport { useAppDispatch } from \"../../../../../store\";\n\nconst ExpandGraphLink = ({ panelItem }: { panelItem: IDashboardPanel }) => {\n const dispatch = useAppDispatch();\n return (\n \n {\n dispatch(openZoomPage(panelItem));\n }}\n className={\"zoom-graph-icon\"}\n >\n \n \n \n );\n};\n\nexport default ExpandGraphLink;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Box, DownloadIcon, DropdownSelector } from \"mds\";\nimport { exportComponentAsPNG } from \"react-component-export-image\";\nimport { ErrorResponseHandler } from \"../../../common/types\";\nimport { useAppDispatch } from \"../../../../src/store\";\nimport { setErrorSnackMessage } from \"../../../../src/systemSlice\";\n\ninterface IDownloadWidgetDataButton {\n title: any;\n componentRef: any;\n data: any;\n}\n\nconst DownloadWidgetDataButton = ({\n title,\n componentRef,\n data,\n}: IDownloadWidgetDataButton) => {\n const [anchorEl, setAnchorEl] = React.useState(null);\n const openDownloadMenu = Boolean(anchorEl);\n const handleClick = (event: React.MouseEvent) => {\n setAnchorEl(event.currentTarget);\n };\n const handleCloseDownload = () => {\n setAnchorEl(null);\n };\n const download = (filename: string, text: string) => {\n let element = document.createElement(\"a\");\n element.setAttribute(\"href\", \"data:text/plain;charset=utf-8,\" + text);\n element.setAttribute(\"download\", filename);\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n document.body.removeChild(element);\n };\n\n const dispatch = useAppDispatch();\n const onDownloadError = (err: ErrorResponseHandler) =>\n dispatch(setErrorSnackMessage(err));\n\n const convertToCSV = (objectToConvert: any) => {\n const array = [Object.keys(objectToConvert[0])].concat(objectToConvert);\n return array\n .map((it) => {\n return Object.values(it).toString();\n })\n .join(\"\\n\");\n };\n\n const widgetDataCSVFileName = () => {\n if (title !== null) {\n return (title + \"_\" + Date.now().toString() + \".csv\")\n .replace(/\\s+/g, \"\")\n .trim()\n .toLowerCase();\n } else {\n return \"widgetData_\" + Date.now().toString() + \".csv\";\n }\n };\n\n const downloadAsCSV = () => {\n if (data !== null && data.length > 0) {\n download(widgetDataCSVFileName(), convertToCSV(data));\n } else {\n let err: ErrorResponseHandler;\n err = {\n errorMessage: \"Unable to download widget data\",\n detailedError: \"Unable to download widget data - data not available\",\n };\n onDownloadError(err);\n }\n };\n\n const downloadAsPNG = () => {\n if (title !== null) {\n const pngFileName = (title + \"_\" + Date.now().toString() + \".png\")\n .replace(/\\s+/g, \"\")\n .trim()\n .toLowerCase();\n exportComponentAsPNG(componentRef, { fileName: pngFileName });\n } else {\n const pngFileName = \"widgetData_\" + Date.now().toString() + \".png\";\n exportComponentAsPNG(componentRef, { fileName: pngFileName });\n }\n };\n\n const handleSelectedOption = (selectOption: string) => {\n if (selectOption === \"csv\") {\n downloadAsCSV();\n } else if (selectOption === \"png\") {\n downloadAsPNG();\n }\n };\n\n return (\n \n \n \n handleSelectedOption(value)}\n hideTriggerAction={() => {\n handleCloseDownload();\n }}\n open={openDownloadMenu}\n anchorEl={anchorEl}\n anchorOrigin={\"end\"}\n />\n \n \n );\n};\n\nexport default DownloadWidgetDataButton;\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 { Box } from \"mds\";\nimport { tooltipCommon } from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nconst BarChartTooltip = ({\n active,\n payload,\n label,\n barChartConfiguration,\n}: any) => {\n if (active) {\n return (\n \n {label}\n {payload &&\n payload.map((pl: any, index: number) => {\n return (\n \n \n \n {pl.value}\n \n \n );\n })}\n \n );\n }\n\n return null;\n};\n\nexport default BarChartTooltip;\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, useRef, useState } from \"react\";\nimport styled from \"styled-components\";\nimport { Box, breakPoints, Grid, Loader } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport {\n Bar,\n BarChart,\n Cell,\n ResponsiveContainer,\n Tooltip,\n XAxis,\n YAxis,\n} from \"recharts\";\nimport { IBarChartConfiguration } from \"./types\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport ExpandGraphLink from \"./ExpandGraphLink\";\nimport DownloadWidgetDataButton from \"../../DownloadWidgetDataButton\";\nimport BarChartTooltip from \"./tooltips/BarChartTooltip\";\nimport api from \"../../../../../common/api\";\n\ninterface IBarChartWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n zoomActivated?: boolean;\n}\n\nconst BarChartMain = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n loadingAlign: {\n width: \"100%\",\n paddingTop: \"15px\",\n textAlign: \"center\",\n margin: \"auto\",\n },\n}));\n\nconst CustomizedAxisTick = ({ y, payload }: any) => {\n return (\n \n {payload.value}\n \n );\n};\n\nconst BarChartWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n zoomActivated = false,\n}: IBarChartWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState([]);\n const [result, setResult] = useState(null);\n const [hover, setHover] = useState(false);\n const [biggerThanMd, setBiggerThanMd] = useState(\n window.innerWidth >= breakPoints.md,\n );\n\n const componentRef = useRef();\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n const onHover = () => {\n setHover(true);\n };\n const onStopHover = () => {\n setHover(false);\n };\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n const handleWindowResize = () => {\n let extMD = false;\n if (window.innerWidth >= breakPoints.md) {\n extMD = true;\n }\n setBiggerThanMd(extMD);\n };\n\n window.addEventListener(\"resize\", handleWindowResize);\n\n return () => {\n window.removeEventListener(\"resize\", handleWindowResize);\n };\n }, []);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setResult(widgetsWithValue);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const barChartConfiguration = result\n ? (result.widgetConfiguration as IBarChartConfiguration[])\n : [];\n\n let greatestIndex = 0;\n let currentValue = 0;\n\n if (barChartConfiguration.length === 1) {\n const dataGraph = barChartConfiguration[0];\n data.forEach((item: any, index: number) => {\n if (item[dataGraph.dataKey] > currentValue) {\n currentValue = item[dataGraph.dataKey];\n greatestIndex = index;\n }\n });\n }\n\n return (\n \n \n {!zoomActivated && (\n \n \n
{title}
\n
\n \n {hover && }\n \n \n \n \n \n )}\n {loading && (\n \n \n \n )}\n {!loading && (\n }\n className={zoomActivated ? \"zoomChartCont\" : \"contentContainer\"}\n >\n \n \n \n }\n tickLine={false}\n axisLine={false}\n width={150}\n hide={!biggerThanMd}\n style={{\n fontSize: \"12px\",\n fontWeight: 100,\n }}\n />\n {barChartConfiguration.map((bar) => (\n \n {barChartConfiguration.length === 1 ? (\n \n {data.map((_: any, index: number) => (\n \n ))}\n \n ) : null}\n \n ))}\n \n }\n />\n \n \n \n )}\n \n
\n );\n};\n\nexport default BarChartWidget;\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 { Box } from \"mds\";\nimport { getTimeFromTimestamp } from \"../../../../../../common/utils\";\nimport { tooltipCommon } from \"../../../../Common/FormComponents/common/styleLibrary\";\n\nconst LineChartTooltip = ({\n active,\n payload,\n label,\n linearConfiguration,\n yAxisFormatter,\n}: any) => {\n if (active) {\n return (\n \n \n {getTimeFromTimestamp(label, true)}\n \n {payload &&\n payload.map((pl: any, index: number) => {\n return (\n \n \n \n \n {linearConfiguration[index].keyLabel}:{\" \"}\n {yAxisFormatter(pl.value)}\n \n \n \n );\n })}\n \n );\n }\n\n return null;\n};\n\nexport default LineChartTooltip;\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, useRef, useState } from \"react\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport {\n Area,\n AreaChart,\n CartesianGrid,\n ResponsiveContainer,\n Tooltip,\n XAxis,\n YAxis,\n} from \"recharts\";\nimport { Box, breakPoints, Grid, Loader } from \"mds\";\nimport { ILinearGraphConfiguration } from \"./types\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport api from \"../../../../../common/api\";\nimport LineChartTooltip from \"./tooltips/LineChartTooltip\";\nimport ExpandGraphLink from \"./ExpandGraphLink\";\nimport DownloadWidgetDataButton from \"../../DownloadWidgetDataButton\";\n\ninterface ILinearGraphWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n hideYAxis?: boolean;\n yAxisFormatter?: (item: string) => string;\n xAxisFormatter?: (item: string, var1: boolean, var2: boolean) => string;\n areaWidget?: boolean;\n zoomActivated?: boolean;\n}\n\nconst LinearGraphMain = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n \"& .chartCont\": {\n position: \"relative\",\n height: 140,\n width: \"100%\",\n },\n \"& .legendChart\": {\n display: \"flex\",\n flexDirection: \"column\",\n flex: \"0 1 auto\",\n maxHeight: 130,\n margin: 0,\n overflowY: \"auto\",\n position: \"relative\",\n textAlign: \"center\",\n width: \"100%\",\n justifyContent: \"flex-start\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: 12,\n [`@media (max-width: ${breakPoints.md}px)`]: {\n display: \"none\",\n },\n },\n \"& .loadingAlign\": {\n width: 40,\n height: 40,\n textAlign: \"center\",\n margin: \"15px auto\",\n },\n}));\n\nconst LinearGraphWidget = ({\n title,\n timeStart,\n timeEnd,\n panelItem,\n apiPrefix,\n hideYAxis = false,\n areaWidget = false,\n yAxisFormatter = (item: string) => item,\n xAxisFormatter = (item: string, var1: boolean, var2: boolean) => item,\n zoomActivated = false,\n}: ILinearGraphWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [hover, setHover] = useState(false);\n const [data, setData] = useState([]);\n const [csvData, setCsvData] = useState([]);\n const [dataMax, setDataMax] = useState(0);\n const [result, setResult] = useState(null);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n const componentRef = useRef(null);\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setResult(widgetsWithValue);\n setLoading(false);\n let maxVal = 0;\n for (const dp of widgetsWithValue.data) {\n for (const key in dp) {\n if (key === \"name\") {\n continue;\n }\n let val = parseInt(dp[key]);\n\n if (isNaN(val)) {\n val = 0;\n }\n\n if (maxVal < val) {\n maxVal = val;\n }\n }\n }\n setDataMax(maxVal);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n let intervalCount = Math.floor(data.length / 5);\n\n const onHover = () => {\n setHover(true);\n };\n\n const onStopHover = () => {\n setHover(false);\n };\n\n useEffect(() => {\n const fmtData = data.map((el: any) => {\n const date = new Date(el?.name * 1000);\n return {\n ...el,\n name: date,\n };\n });\n\n setCsvData(fmtData);\n }, [data]);\n\n const linearConfiguration = result\n ? (result?.widgetConfiguration as ILinearGraphConfiguration[])\n : [];\n\n const CustomizedDot = (prop: any) => {\n const { cx, cy, index } = prop;\n\n if (index % 3 !== 0) {\n return null;\n }\n return ;\n };\n\n let dspLongDate = false;\n\n if (zoomActivated) {\n dspLongDate = true;\n }\n\n return (\n \n \n {!zoomActivated && (\n \n \n {title}\n \n \n {hover && }\n \n \n {componentRef !== null && (\n \n )}\n \n \n )}\n
\n \n {loading && }\n {!loading && (\n \n \n \n \n {areaWidget && (\n \n \n \n \n\n \n \n \n )}\n \n \n xAxisFormatter(value, dspLongDate, true)\n }\n interval={intervalCount}\n tick={{\n fontSize: \"68%\",\n fontWeight: \"normal\",\n color: \"#404143\",\n }}\n tickCount={10}\n stroke={\"#082045\"}\n />\n yAxisFormatter(value)}\n tick={{\n fontSize: \"68%\",\n fontWeight: \"normal\",\n color: \"#404143\",\n }}\n stroke={\"#082045\"}\n />\n {linearConfiguration.map((section, index) => {\n return (\n : false}\n />\n );\n })}\n \n }\n wrapperStyle={{\n zIndex: 5000,\n }}\n />\n \n \n \n {!areaWidget && (\n \n {zoomActivated && (\n \n Series\n
\n
\n
\n )}\n\n \n {linearConfiguration.map((section, index) => {\n return (\n \n \n \n {section.keyLabel}\n \n \n );\n })}\n \n
\n )}\n
\n )}\n \n
\n \n
\n );\n};\n\nexport default LinearGraphWidget;\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 get from \"lodash/get\";\nimport styled from \"styled-components\";\nimport { Box, Loader } from \"mds\";\nimport { Cell, Pie, PieChart, ResponsiveContainer } from \"recharts\";\nimport { useSelector } from \"react-redux\";\nimport api from \"../../../../../common/api\";\nimport { IPieChartConfiguration } from \"./types\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { IDashboardPanel } from \"../types\";\nimport { splitSizeMetric, widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\ninterface IPieChartWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}\n\nconst PieChartMain = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n \"& .loadingAlign\": {\n width: \"100%\",\n paddingTop: \"15px\",\n textAlign: \"center\",\n margin: \"auto\",\n },\n \"& .pieChartLabel\": {\n fontSize: 60,\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fontWeight: \"bold\",\n width: \"100%\",\n \"& .unitText\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: 12,\n },\n },\n \"& .chartContainer\": {\n width: \"100%\",\n height: 140,\n },\n}));\n\nconst PieChartWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n}: IPieChartWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [dataInner, setDataInner] = useState([]);\n const [dataOuter, setDataOuter] = useState([]);\n const [result, setResult] = useState(null);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setDataInner(widgetsWithValue.data);\n setDataOuter(widgetsWithValue.dataOuter as object[]);\n setResult(widgetsWithValue);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const pieChartConfiguration = result\n ? (result.widgetConfiguration as IPieChartConfiguration)\n : [];\n const middleLabel = result?.innerLabel;\n\n const innerColors = get(pieChartConfiguration, \"innerChart.colorList\", []);\n const outerColors = get(pieChartConfiguration, \"outerChart.colorList\", []);\n\n return (\n \n \n {title}\n {loading && (\n \n \n \n )}\n {!loading && (\n \n \n {middleLabel && splitSizeMetric(middleLabel)}\n \n \n \n \n {dataOuter && (\n \n {dataOuter.map((entry, index) => (\n \n ))}\n \n )}\n {dataInner && (\n \n {dataInner.map((entry, index) => {\n return (\n \n );\n })}\n \n )}\n \n \n \n \n )}\n \n \n );\n};\n\nexport default PieChartWidget;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { useSelector } from \"react-redux\";\nimport { Loader } from \"mds\";\nimport api from \"../../../../../common/api\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { IDashboardPanel } from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\ninterface ISimpleWidget {\n iconWidget: any;\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n renderFn?: undefined | null | ((arg: Record) => any);\n}\n\nconst SimpleWidgetMain = styled.span(({ theme }) => ({\n display: \"inline-flex\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n alignItems: \"center\",\n \"& .icon\": {\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fill: get(theme, \"signalColors.main\", \"#07193E\"),\n marginRight: 5,\n marginLeft: 12,\n },\n \"& .widgetLabel\": {\n fontWeight: \"bold\",\n textTransform: \"uppercase\",\n marginRight: 10,\n },\n \"& .widgetValue\": {\n marginRight: 25,\n },\n}));\n\nconst SimpleWidget = ({\n iconWidget,\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n renderFn,\n}: ISimpleWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(\"\");\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n if (renderFn) {\n return renderFn({\n valueToRender: data,\n loading,\n title,\n id: panelItem.id,\n iconWidget: iconWidget,\n });\n }\n return (\n \n {loading && (\n
\n \n
\n )}\n {!loading && (\n \n {iconWidget ? iconWidget : null}\n {title}: \n {data}\n \n )}\n
\n );\n};\n\nexport default SimpleWidget;\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 { Box, breakPoints } from \"mds\";\n\nconst DashboardItemBox = ({ children }: { children: any }) => {\n return (\n \n {children}\n \n );\n};\n\nexport default DashboardItemBox;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, Loader, Tooltip } from \"mds\";\n\nconst StatCardMain = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n maxWidth: \"300px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n position: \"relative\",\n width: \"100%\",\n}));\n\nconst NumericStatCard = ({\n value,\n label = \"\",\n icon = null,\n loading = false,\n}: {\n value: string | number;\n label?: any;\n icon?: any;\n loading?: boolean;\n}) => {\n const getContent = () => {\n return (\n \n \n \n {label}\n \n\n \n \n {value}\n \n \n \n \n {}\n {loading ? (\n \n ) : (\n icon\n )}\n \n \n );\n };\n\n return {getContent()};\n};\n\nexport default NumericStatCard;\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 NumericStatCard from \"./NumericStatCard\";\nimport { BucketsIcon } from \"mds\";\n\nconst BucketsCountItem = ({\n title,\n value,\n loading,\n}: {\n title: string;\n value: string;\n loading?: boolean;\n}) => {\n return (\n }\n value={value}\n loading={loading}\n />\n );\n};\n\nexport default BucketsCountItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 NumericStatCard from \"./NumericStatCard\";\nimport { TotalObjectsIcon } from \"mds\";\n\nconst ObjectsCountItem = ({\n title,\n value,\n loading,\n}: {\n title: string;\n value: string;\n loading?: boolean;\n}) => {\n return (\n }\n value={value}\n loading={loading}\n />\n );\n};\n\nexport default ObjectsCountItem;\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, useSelector } from \"react-redux\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { representationNumber } from \"../../../../../common/utils\";\nimport api from \"../../../../../common/api\";\nimport DashboardItemBox from \"../../DashboardItemBox\";\nimport BucketsCountItem from \"./BucketsCountItem\";\nimport ObjectsCountItem from \"./ObjectsCountItem\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\ninterface ISingleRepWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n propLoading: boolean;\n\n color?: string;\n fillColor?: string;\n apiPrefix: string;\n}\n\nconst SingleRepWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n propLoading,\n\n apiPrefix,\n}: ISingleRepWidget) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [result, setResult] = useState(null);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setResult(widgetsWithValue);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n let repNumber = \"\";\n\n if (result) {\n const resultRep = parseInt(result.innerLabel || \"0\");\n\n if (!isNaN(resultRep)) {\n repNumber = representationNumber(resultRep);\n } else {\n repNumber = \"0\";\n }\n }\n\n const renderById = (id: number) => {\n if (id === 66) {\n return (\n \n \n \n );\n }\n if (id === 44) {\n return (\n \n \n \n );\n }\n\n return null;\n };\n\n return renderById(panelItem.id);\n};\n\nconst connector = connect(null, {\n setErrorSnackMessage: setErrorSnackMessage,\n});\n\nexport default connector(SingleRepWidget);\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 { useSelector } from \"react-redux\";\nimport { Box, Loader } from \"mds\";\nimport styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { widgetCommon } from \"../../../Common/FormComponents/common/styleLibrary\";\nimport { splitSizeMetric, widgetDetailsToPanel } from \"../utils\";\nimport { IDashboardPanel } from \"../types\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport api from \"../../../../../common/api\";\n\ninterface ISingleValueWidget {\n title: string;\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n renderFn?: (arg: Record) => any;\n}\n\nconst SingleValueWidgetMain = styled.div(({ theme }) => ({\n display: \"flex\",\n height: 140,\n flexDirection: \"column\",\n justifyContent: \"center\",\n \"& .unitText\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: 12,\n },\n \"& .loadingAlign\": {\n width: \"100%\",\n textAlign: \"center\",\n margin: \"auto\",\n },\n \"& .metric\": {\n fontSize: 60,\n lineHeight: 1,\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fontWeight: 700,\n },\n \"& .titleElement\": {\n fontSize: 10,\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: 700,\n },\n ...widgetCommon(theme),\n}));\n\nconst SingleValueWidget = ({\n title,\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n renderFn,\n}: ISingleValueWidget) => {\n const dispatch = useAppDispatch();\n\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(\"\");\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const valueToRender = splitSizeMetric(data);\n\n if (renderFn) {\n return renderFn({ valueToRender, loading, title, id: panelItem.id });\n }\n return (\n \n {loading && (\n \n \n \n )}\n {!loading && (\n \n {splitSizeMetric(data)}\n {title}\n \n )}\n \n );\n};\n\nexport default SingleValueWidget;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, Loader, ReportedUsageIcon } from \"mds\";\nimport { Cell, Pie, PieChart } from \"recharts\";\nimport { useSelector } from \"react-redux\";\nimport api from \"../../../../../common/api\";\nimport { IDashboardPanel } from \"../types\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport {\n calculateBytes,\n capacityColors,\n niceBytesInt,\n} from \"../../../../../common/utils\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\n\nconst CapacityItemMain = styled.div(({ theme }) => ({\n flex: 1,\n display: \"flex\",\n alignItems: \"center\",\n flexFlow: \"row\",\n \"& .usableLabel\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"10px\",\n display: \"flex\",\n flexFlow: \"column\",\n alignItems: \"center\",\n textAlign: \"center\",\n },\n \"& .usedLabel\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: \"14px\",\n },\n \"& .totalUsed\": {\n display: \"flex\",\n \"& .value\": {\n fontSize: \"50px\",\n fontFamily: \"Inter\",\n fontWeight: 600,\n alignSelf: \"flex-end\",\n lineHeight: 1,\n },\n \"& .unit\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: \"14px\",\n marginLeft: \"12px\",\n alignSelf: \"flex-end\",\n },\n },\n \"& .ofUsed\": {\n marginTop: \"5px\",\n \"& .value\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n fontSize: \"14px\",\n textAlign: \"right\",\n },\n },\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n flexFlow: \"column\",\n },\n}));\n\nconst CapacityItem = ({\n value,\n timeStart,\n timeEnd,\n apiPrefix,\n}: {\n value: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n\n const [totalUsableFree, setTotalUsableFree] = useState(0);\n const [totalUsableFreeRatio, setTotalUsableFreeRatio] = useState(0);\n const [totalUsed, setTotalUsed] = useState(0);\n const [totalUsable, setTotalUsable] = useState(0);\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${value.id}/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, value);\n\n let tUsable = 0;\n let tUsed = 0;\n let tFree = 0;\n\n widgetsWithValue.data.forEach((eachArray: any[]) => {\n eachArray.forEach((itemSum) => {\n switch (itemSum.legend) {\n case \"Total Usable\":\n tUsable += itemSum.value;\n break;\n case \"Used Space\":\n tUsed += itemSum.value;\n break;\n case \"Usable Free\":\n tFree += itemSum.value;\n break;\n }\n });\n });\n\n const freeRatio = Math.round((tFree / tUsable) * 100);\n\n setTotalUsableFree(tFree);\n setTotalUsableFreeRatio(freeRatio);\n setTotalUsed(tUsed);\n setTotalUsable(tUsable);\n\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, value, timeEnd, timeStart, dispatch, apiPrefix]);\n\n const usedConvert = calculateBytes(totalUsed, true, false);\n\n const plotValues = [\n {\n value: totalUsableFree,\n color: \"#D6D6D6\",\n label: \"Usable Available Space\",\n },\n {\n value: totalUsed,\n color: capacityColors(totalUsed, totalUsable),\n label: \"Used Space\",\n },\n ];\n return (\n \n \n Capacity\n \n \n \n {`${totalUsableFreeRatio}%`}\n
\n Free\n \n \n \n {plotValues.map((entry, index) => (\n \n ))}\n \n \n \n \n \n Used:\n \n
{usedConvert.total}
\n
{usedConvert.unit}
\n
\n \n
Of: {niceBytesInt(totalUsable)}
\n
\n
\n\n \n \n {loading ? (\n \n ) : (\n \n )}\n \n \n \n
\n );\n};\n\nexport default CapacityItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, Loader, SuccessIcon } from \"mds\";\n\nconst TimeStatBase = styled.div(({ theme }) => ({\n display: \"grid\",\n alignItems: \"center\",\n gap: 8,\n height: 33,\n paddingLeft: 15,\n gridTemplateColumns: \"20px 1.5fr .5fr 20px\",\n background: get(theme, \"boxBackground\", \"#FBFAFA\"), // #EBF9EE\n \"& .min-icon\": {\n height: \"12px\",\n width: \"12px\",\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n \"& .ok-icon\": {\n height: \"8px\",\n width: \"8px\",\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n color: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n \"& .timeStatLabel\": {\n fontSize: \"12px\",\n color: get(theme, \"signalColors.good\", \"#4CCB92\"),\n fontWeight: 600,\n },\n \"& .timeStatValue\": {\n fontSize: \"12px\",\n color: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n}));\n\nconst TimeStatItem = ({\n icon,\n label,\n value,\n loading = false,\n}: {\n icon: any;\n label: any;\n value: string;\n loading?: boolean;\n}) => {\n return (\n \n {loading ? : icon}\n {label}\n {value}\n {value !== \"n/a\" ? : null}\n \n );\n};\n\nexport default TimeStatItem;\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 { Box, breakPoints } from \"mds\";\nimport TimeStatItem from \"../../TimeStatItem\";\n\nexport type SimpleWidgetRenderProps = {\n valueToRender?: any;\n loading?: boolean;\n title?: any;\n id?: number;\n iconWidget?: any;\n};\nconst HealActivityRenderer = ({\n valueToRender = \"\",\n loading = false,\n iconWidget = null,\n}: SimpleWidgetRenderProps) => {\n return (\n \n \n \n Time since last\n {\" \"}\n Heal Activity\n \n }\n value={valueToRender}\n />\n \n );\n};\n\nexport default HealActivityRenderer;\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 { Box, breakPoints } from \"mds\";\nimport TimeStatItem from \"../../TimeStatItem\";\nimport { SimpleWidgetRenderProps } from \"./HealActivityRenderer\";\n\nconst ScanActivityRenderer = ({\n valueToRender = \"\",\n loading = false,\n iconWidget = null,\n}: SimpleWidgetRenderProps) => {\n return (\n \n \n \n Time since last\n {\" \"}\n Scan Activity\n \n }\n value={valueToRender}\n />\n \n );\n};\n\nexport default ScanActivityRenderer;\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 { Box } from \"mds\";\nimport TimeStatItem from \"../../TimeStatItem\";\n\ntype SimpleWidgetRenderProps = {\n valueToRender?: any;\n loading?: boolean;\n title?: any;\n id?: number;\n iconWidget?: any;\n};\nconst UptimeActivityRenderer = ({\n valueToRender = \"\",\n loading = false,\n iconWidget = null,\n}: SimpleWidgetRenderProps) => {\n return (\n \n Uptime}\n value={valueToRender}\n />\n \n );\n};\n\nexport default UptimeActivityRenderer;\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 { IDashboardPanel, widgetType } from \"./types\";\nimport BarChartWidget from \"./Widgets/BarChartWidget\";\nimport LinearGraphWidget from \"./Widgets/LinearGraphWidget\";\nimport PieChartWidget from \"./Widgets/PieChartWidget\";\nimport SimpleWidget from \"./Widgets/SimpleWidget\";\nimport SingleRepWidget from \"./Widgets/SingleRepWidget\";\nimport SingleValueWidget from \"./Widgets/SingleValueWidget\";\nimport CapacityItem from \"./Widgets/CapacityItem\";\nimport DashboardItemBox from \"../DashboardItemBox\";\nimport HealActivityRenderer, {\n SimpleWidgetRenderProps,\n} from \"./Widgets/HealActivityRenderer\";\nimport ScanActivityRenderer from \"./Widgets/ScanActivityRenderer\";\nimport UptimeActivityRenderer from \"./Widgets/UptimeActivityRenderer\";\n\nexport const componentToUse = (\n value: IDashboardPanel,\n timeStart: any,\n timeEnd: any,\n loading: boolean,\n apiPrefix: string,\n zoomActivated: boolean = false,\n) => {\n switch (value.type) {\n case widgetType.singleValue:\n return (\n \n );\n case widgetType.simpleWidget:\n let renderFn;\n let CmpToRender: any = null;\n if (value.id === 80) {\n CmpToRender = HealActivityRenderer;\n } else if (value.id === 81) {\n CmpToRender = ScanActivityRenderer;\n } else if (value.id === 1) {\n CmpToRender = UptimeActivityRenderer;\n }\n\n if ([80, 81, 1].includes(value.id)) {\n renderFn = ({\n valueToRender,\n loading,\n title,\n id,\n iconWidget,\n }: SimpleWidgetRenderProps) => {\n return (\n \n );\n };\n }\n return (\n \n );\n case widgetType.pieChart:\n if (value.id === 50) {\n return (\n \n \n \n );\n }\n return (\n \n );\n case widgetType.linearGraph:\n case widgetType.areaGraph:\n return (\n \n );\n case widgetType.barChart:\n return (\n \n );\n case widgetType.singleRep:\n const fillColor = value.fillColor ? value.fillColor : value.color;\n return (\n \n );\n default:\n return null;\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 { Box } from \"mds\";\nimport { CSSObject } from \"styled-components\";\nimport { breakPoints } from \"mds\";\n\nexport type DLayoutColumnProps = {\n componentId: number;\n sx?: CSSObject;\n};\nexport type DLayoutRowProps = {\n sx?: CSSObject;\n columns: DLayoutColumnProps[];\n};\n\nexport const summaryPanelsLayout: DLayoutRowProps[] = [\n {\n sx: {\n minWidth: 0,\n display: \"grid\",\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr 1fr 1fr\",\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr 1fr\",\n },\n },\n columns: [\n {\n componentId: 66,\n },\n {\n componentId: 44,\n },\n {\n componentId: 500,\n },\n {\n componentId: 501,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0, // important to avoid css grid blow out.\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 50,\n },\n {\n componentId: 502,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 80,\n },\n {\n componentId: 81,\n },\n {\n componentId: 1,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 68,\n },\n {\n componentId: 52,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 63,\n },\n {\n componentId: 70,\n },\n ],\n },\n];\n\nexport const trafficPanelsLayout: DLayoutRowProps[] = [\n {\n sx: {\n display: \"grid\",\n gridTemplateColumns: \"1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 60,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gap: \"30px\",\n gridTemplateColumns: \"1fr 1fr\",\n [`@media (max-width: ${breakPoints.md}px)`]: {\n gridTemplateColumns: \"1fr\",\n },\n },\n columns: [\n {\n componentId: 71,\n sx: {\n flex: 1,\n width: \"50%\",\n flexShrink: 0,\n },\n },\n {\n componentId: 17,\n sx: {\n flex: 1,\n width: \"50%\",\n flexShrink: 0,\n },\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n gridTemplateColumns: \"1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 73,\n },\n ],\n },\n];\n\nexport const resourcesPanelsLayout: DLayoutRowProps[] = [\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gridTemplateColumns: \"1fr 1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 76,\n },\n {\n componentId: 77,\n },\n ],\n },\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gridTemplateColumns: \"1fr 1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 82,\n },\n {\n componentId: 74,\n },\n ],\n },\n];\nexport const resourcesPanelsLayoutAdvanced: DLayoutRowProps[] = [\n {\n sx: {\n display: \"grid\",\n minWidth: 0,\n gridTemplateColumns: \"1fr 1fr\",\n gap: \"30px\",\n },\n columns: [\n {\n componentId: 11,\n },\n {\n componentId: 8,\n },\n ],\n },\n];\n\nexport const RowPanelLayout = ({ children }: { children: any }) => {\n return (\n \n {children}\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, { Fragment } from \"react\";\n\nimport ModalWrapper from \"../../Common/ModalWrapper/ModalWrapper\";\nimport { IDashboardPanel } from \"./types\";\nimport { componentToUse } from \"./widgetUtils\";\nimport { closeZoomPage } from \"../dashboardSlice\";\nimport { useAppDispatch } from \"../../../../store\";\n\ninterface IZoomWidget {\n widgetRender: number;\n value: IDashboardPanel | null;\n modalOpen: boolean;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}\n\nconst ZoomWidget = ({\n value,\n modalOpen,\n timeStart,\n timeEnd,\n apiPrefix,\n}: IZoomWidget) => {\n const dispatch = useAppDispatch();\n if (!value) {\n return null;\n }\n\n return (\n {\n dispatch(closeZoomPage());\n }}\n modalOpen={modalOpen}\n wideLimit={false}\n sx={{\n padding: 0,\n }}\n >\n \n {componentToUse(value, timeStart, timeEnd, true, apiPrefix, true)}\n \n \n );\n};\n\nexport default ZoomWidget;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box } from \"mds\";\nimport { Link } from \"react-router-dom\";\nimport { widgetCommon } from \"../Common/FormComponents/common/styleLibrary\";\n\ninterface ISubInterface {\n message: string;\n fontWeight?: \"normal\" | \"bold\";\n}\n\ninterface ICommonCard {\n title: string;\n metricValue: any;\n metricUnit?: string;\n subMessage?: ISubInterface;\n moreLink?: string;\n rightComponent?: any;\n extraMargin?: boolean;\n}\n\nconst CommonCardItem = styled.div(({ theme }) => ({\n ...widgetCommon(theme),\n \"& .metricText\": {\n fontSize: 70,\n lineHeight: 1.1,\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n fontWeight: \"bold\",\n },\n \"& .unitText\": {\n fontSize: 10,\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"normal\",\n },\n \"& .subHeaderContainer\": {\n display: \"flex\",\n flexDirection: \"row\",\n justifyContent: \"space-between\",\n alignItems: \"center\",\n },\n \"& .subMessage\": {\n fontSize: 10,\n color: get(theme, \"mutedText\", \"#87888d\"),\n \"&.bold\": {\n fontWeight: \"bold\",\n },\n },\n \"& .headerContainer\": {\n display: \"flex\",\n justifyContent: \"space-between\",\n },\n \"& .viewAll\": {\n fontSize: 10,\n color: get(theme, \"signalColors.danger\", \"#C83B51\"),\n textTransform: \"capitalize\",\n\n \"& a, & a:hover, & a:visited, & a:active\": {\n color: get(theme, \"signalColors.danger\", \"#C83B51\"),\n },\n },\n}));\n\nconst CommonCard = ({\n title,\n metricValue,\n metricUnit,\n subMessage,\n moreLink,\n rightComponent,\n extraMargin = false,\n}: ICommonCard) => {\n const SubHeader = () => {\n return (\n \n
\n
\n
\n \n {metricValue}\n {metricUnit}\n \n
\n {subMessage && (\n \n {subMessage.message}\n \n )}\n
\n
{rightComponent}
\n
\n
\n );\n };\n\n const Header = () => {\n return (\n \n
\n {title}\n {moreLink && (\n \n \n View All\n \n \n )}\n
\n
\n );\n };\n\n return (\n \n \n {metricValue !== \"\" && (\n \n
\n \n \n )}\n \n \n );\n};\n\nexport default CommonCard;\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 CommonCard from \"../CommonCard\";\n\ninterface IMergedWidgets {\n title: string;\n leftComponent: any;\n rightComponent: any;\n}\n\nconst MergedWidgets = ({\n title,\n leftComponent,\n rightComponent,\n}: IMergedWidgets) => {\n return (\n \n \n \n );\n};\n\nexport default MergedWidgets;\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 { Loader, Box } from \"mds\";\nimport { useSelector } from \"react-redux\";\nimport { widgetDetailsToPanel } from \"../utils\";\nimport { ErrorResponseHandler } from \"../../../../../common/types\";\nimport { IDashboardPanel } from \"../types\";\nimport { setErrorSnackMessage } from \"../../../../../systemSlice\";\nimport { AppState, useAppDispatch } from \"../../../../../store\";\nimport api from \"../../../../../common/api\";\n\nconst EntityStateStatItem = ({\n panelItem,\n timeStart,\n timeEnd,\n apiPrefix,\n statLabel,\n}: {\n panelItem: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n statLabel: any;\n}) => {\n const dispatch = useAppDispatch();\n const [loading, setLoading] = useState(false);\n const [data, setData] = useState(\"\");\n const widgetVersion = useSelector(\n (state: AppState) => state.dashboard.widgetLoadVersion,\n );\n\n useEffect(() => {\n setLoading(true);\n }, [widgetVersion]);\n\n useEffect(() => {\n if (loading) {\n let stepCalc = 0;\n if (timeStart !== null && timeEnd !== null) {\n const secondsInPeriod =\n timeEnd.toUnixInteger() - timeStart.toUnixInteger();\n const periods = Math.floor(secondsInPeriod / 60);\n\n stepCalc = periods < 1 ? 15 : periods;\n }\n\n api\n .invoke(\n \"GET\",\n `/api/v1/${apiPrefix}/info/widgets/${\n panelItem.id\n }/?step=${stepCalc}&${\n timeStart !== null ? `&start=${timeStart.toUnixInteger()}` : \"\"\n }${timeStart !== null && timeEnd !== null ? \"&\" : \"\"}${\n timeEnd !== null ? `end=${timeEnd.toUnixInteger()}` : \"\"\n }`,\n )\n .then((res: any) => {\n const widgetsWithValue = widgetDetailsToPanel(res, panelItem);\n setData(widgetsWithValue.data);\n setLoading(false);\n })\n .catch((err: ErrorResponseHandler) => {\n dispatch(setErrorSnackMessage(err));\n setLoading(false);\n });\n }\n }, [loading, panelItem, timeEnd, timeStart, dispatch, apiPrefix]);\n\n let toRender = loading ? (\n \n \n \n ) : (\n \n {data}\n {statLabel}\n \n );\n\n return toRender;\n};\n\nexport default EntityStateStatItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints } from \"mds\";\n\nconst DualSTCardContent = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n maxWidth: \"321px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"12px\",\n marginTop: \"8px\",\n },\n}));\n\nconst DualStatCard = ({\n statItemLeft = null,\n statItemRight = null,\n icon = null,\n label = \"\",\n}: {\n statItemLeft: any;\n statItemRight: any;\n icon: any;\n label: string;\n}) => {\n const getContent = () => {\n return (\n \n \n \n {label}\n \n\n \n {statItemLeft}\n {statItemRight}\n \n \n \n {icon}\n \n \n );\n };\n\n return {getContent()};\n};\n\nexport default DualStatCard;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { CircleIcon, DrivesIcon, ServersIcon, Box } from \"mds\";\nimport EntityStateStatItem from \"./EntityStateStatItem\";\nimport DualStatCard from \"./DualStatCard\";\nimport { IDashboardPanel } from \"../types\";\n\nconst StateIndicator = styled.div(({ theme }) => ({\n display: \"flex\",\n alignItems: \"center\",\n marginTop: \"5px\",\n gap: 8,\n \"&.online\": {\n \"& .min-icon\": {\n margin: 0,\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.offline\": {\n \"& .min-icon\": {\n margin: 0,\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n \"& .indicatorText\": {\n color: get(theme, \"mutedText\", \"#C51B3F\"),\n fontSize: 12,\n },\n}));\n\nconst EntityStateItemRenderer = ({\n info,\n timeStart,\n timeEnd,\n apiPrefix,\n}: {\n info: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}) => {\n const { mergedPanels = [], id } = info;\n const [leftPanel, rightPanel] = mergedPanels;\n\n const lStatItem = (\n \n \n Online\n \n }\n />\n );\n const rStatItem = (\n \n \n Offline\n \n }\n />\n );\n\n let statIcon = null;\n let statLabel = \"\";\n if (id === 500) {\n statIcon = ;\n statLabel = \"Servers\";\n } else if (id === 501) {\n statIcon = ;\n statLabel = \"Drives\";\n }\n\n return (\n \n );\n};\nexport default EntityStateItemRenderer;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Loader, NetworkGetIcon, Box } from \"mds\";\n\nconst NetworkGetBase = styled.div(({ theme }) => ({\n \"& .putLabel\": {\n display: \"flex\",\n gap: 10,\n alignItems: \"center\",\n marginTop: \"10px\",\n\n \"& .min-icon\": {\n height: 15,\n width: 15,\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n\n \"& .getText\": {\n fontSize: \"18px\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n },\n \"& .valueText\": {\n fontSize: 50,\n fontFamily: \"Inter\",\n fontWeight: 600,\n },\n },\n}));\n\nconst NetworkGetItem = ({\n value,\n loading,\n}: {\n value: any;\n loading: boolean;\n title?: any;\n id?: number;\n}) => {\n return (\n \n \n GET\n {loading ? (\n \n ) : (\n \n )}\n \n {value}\n \n );\n};\n\nexport default NetworkGetItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, Loader, NetworkPutIcon } from \"mds\";\n\nconst NetworkPutBase = styled.div(({ theme }) => ({\n \"& .putLabel\": {\n display: \"flex\",\n gap: 10,\n alignItems: \"center\",\n marginTop: \"10px\",\n\n \"& .min-icon\": {\n height: 15,\n width: 15,\n fill: get(theme, \"signalColors.info\", \"#2781B0\"),\n },\n\n \"& .putText\": {\n fontSize: \"18px\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontWeight: \"bold\",\n },\n \"& .valueText\": {\n fontSize: 50,\n fontFamily: \"Inter\",\n fontWeight: 600,\n },\n },\n}));\n\nconst NetworkPutItem = ({\n value,\n loading,\n}: {\n value: any;\n loading: boolean;\n title?: any;\n id?: number;\n}) => {\n return (\n \n \n PUT\n {loading ? (\n \n ) : (\n \n )}\n \n {value}\n \n );\n};\n\nexport default NetworkPutItem;\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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, SpeedtestIcon } from \"mds\";\nimport { IDashboardPanel } from \"../types\";\nimport SingleValueWidget from \"./SingleValueWidget\";\nimport NetworkGetItem from \"./NetworkGetItem\";\nimport NetworkPutItem from \"./NetworkPutItem\";\n\nconst NetworkItemBase = styled.div(({ theme }) => ({\n flex: 1,\n display: \"flex\",\n alignItems: \"center\",\n flexFlow: \"row\",\n gap: \"15px\",\n \"& .unitText\": {\n fontSize: \"14px\",\n color: get(theme, \"mutedText\", \"#87888d\"),\n marginLeft: \"5px\",\n },\n \"& .unit\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"18px\",\n marginLeft: \"12px\",\n marginTop: \"10px\",\n },\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n flexFlow: \"column\",\n },\n}));\n\nconst NetworkItem = ({\n value,\n timeStart,\n timeEnd,\n apiPrefix,\n}: {\n value: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n apiPrefix: string;\n}) => {\n const { mergedPanels = [] } = value;\n const [leftPanel, rightPanel] = mergedPanels;\n\n const rightCmp = (\n {\n return (\n \n );\n }}\n />\n );\n const leftCmp = (\n {\n return (\n \n );\n }}\n />\n );\n\n return (\n \n \n Network\n \n \n \n {leftCmp}\n \n \n \n \n {rightCmp}\n \n \n \n \n \n \n );\n};\n\nexport default NetworkItem;\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 { componentToUse } from \"../widgetUtils\";\nimport { IDashboardPanel } from \"../types\";\nimport MergedWidgets from \"../MergedWidgets\";\nimport EntityStateItemRenderer from \"./EntityStateItemRenderer\";\nimport NetworkItem from \"./NetworkItem\";\nimport DashboardItemBox from \"../../DashboardItemBox\";\n\nconst MergedWidgetsRenderer = ({\n info,\n timeStart,\n timeEnd,\n loading,\n apiPrefix,\n}: {\n info: IDashboardPanel;\n timeStart: any;\n timeEnd: any;\n loading: boolean;\n apiPrefix: string;\n}) => {\n const { mergedPanels = [], title = \"\", id } = info;\n const [leftPanel, rightPanel] = mergedPanels;\n\n const renderById = () => {\n if ([500, 501].includes(id)) {\n return (\n \n \n \n );\n }\n\n if (id === 502) {\n return (\n \n \n \n );\n }\n\n return (\n \n );\n };\n\n return renderById();\n};\n\nexport default MergedWidgetsRenderer;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport get from \"lodash/get\";\nimport { Box, breakPoints, CircleIcon } from \"mds\";\nimport { niceDays } from \"../../../../common/utils\";\nimport {\n getDriveStatusColor,\n getNetworkStatusColor,\n serverStatusColor,\n} from \"./Utils\";\nimport { ServerProperties } from \"api/consoleApi\";\n\ninterface ICardProps {\n server: ServerProperties;\n index: number;\n}\n\nconst ServerStatItemMain = styled.div(({ theme }) => ({\n alignItems: \"baseline\",\n padding: \"5px\",\n display: \"flex\",\n gap: \"5px\",\n \"& .StatBox\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexFlow: \"column\",\n \"& .stat-text\": {\n color: get(theme, \"mutedText\", \"#87888d\"),\n fontSize: \"12px\",\n },\n \"& .stat-value\": {\n fontSize: \"18px\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n display: \"flex\",\n fontWeight: 500,\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n whiteSpace: \"nowrap\",\n \"& .stat-container\": {\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexFlow: \"column\",\n marginLeft: \"5px\",\n maxWidth: \"40px\",\n \"&:first-of-type(svg)\": {\n fill: get(theme, \"mutedText\", \"#87888d\"),\n },\n \"& .stat-indicator\": {\n marginRight: \"0px\",\n justifyContent: \"center\",\n alignItems: \"center\",\n textAlign: \"center\",\n \"& svg.min-icon\": {\n width: \"10px\",\n height: \"10px\",\n },\n \"&.good\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.warn\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.warning\", \"#FFBD62\"),\n },\n },\n \"&.bad\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n },\n },\n },\n}));\n\nconst ServerInfoItemMain = styled.div(({ theme }) => ({\n display: \"flex\",\n alignItems: \"flex-start\",\n flexFlow: \"column\",\n flex: 1,\n \"& .server-state\": {\n marginLeft: \"8px\",\n \"& .min-icon\": {\n height: \"14px\",\n width: \"14px\",\n },\n \"&.good\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.good\", \"#4CCB92\"),\n },\n },\n \"&.warn\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.warning\", \"#FFBD62\"),\n },\n },\n \"&.bad\": {\n \"& svg.min-icon\": {\n fill: get(theme, \"signalColors.danger\", \"#C51B3F\"),\n },\n },\n },\n}));\n\nconst ServerStatItem = ({\n label = \"\",\n value = \"\",\n statusColor = \"warn\",\n hasStatus = false,\n}: {\n label?: string;\n value?: any;\n hasStatus?: boolean;\n statusColor?: \"good\" | \"warn\" | \"bad\";\n}) => {\n return (\n \n \n
\n {value}{\" \"}\n \n {hasStatus ? (\n \n \n \n ) : (\n \n )}\n \n
\n
{label}
\n
\n
\n );\n};\n\nconst ServerInfoItem = ({ server }: ICardProps) => {\n const networkKeys = Object.keys(get(server, \"network\", {}));\n const networkTotal = networkKeys.length;\n const totalDrives = server.drives ? server.drives.length : 0;\n const activeNetwork = networkKeys.reduce((acc: number, currValue: string) => {\n const item = server.network ? server.network[currValue] : \"\";\n if (item === \"online\") {\n return acc + 1;\n }\n return acc;\n }, 0);\n const activeDisks = server.drives\n ? server.drives.filter((element) => element.state === \"ok\").length\n : 0;\n return (\n \n \n \n \n {server.endpoint || \"\"}\n \n {server?.state && (\n \n \n \n )}\n \n\n \n \n \n \n \n \n Version:\n {server.version ? server.version : \"N/A\"}\n \n }\n />\n \n \n );\n};\nexport default ServerInfoItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { useMemo } from \"react\";\nimport get from \"lodash/get\";\nimport { useTheme } from \"styled-components\";\nimport { niceBytes } from \"../../../../common/utils\";\nimport { Box, breakPoints, CircleIcon, SizeChart } from \"mds\";\nimport { ServerDrives } from \"api/consoleApi\";\nimport { STATUS_COLORS } from \"./Utils\";\n\ninterface ICardProps {\n drive: ServerDrives;\n}\n\nconst DriveInfoItem = ({ drive }: ICardProps) => {\n const theme = useTheme();\n\n const totalSpace = drive.totalSpace ?? 0;\n const usedSpace = drive.usedSpace ?? 0;\n const usedPercentage =\n totalSpace !== 0 ? Math.max((usedSpace / totalSpace) * 100, 0) : 0;\n const availableSpace = drive.availableSpace ?? 0;\n const availablePercentage =\n totalSpace !== 0 ? Math.max((availableSpace / totalSpace) * 100, 0) : 0;\n\n const driveStatusColor = useMemo(() => {\n switch (drive.state) {\n case \"offline\":\n return STATUS_COLORS.RED;\n case \"ok\":\n return STATUS_COLORS.GREEN;\n default:\n return STATUS_COLORS.YELLOW;\n }\n }, [drive.state]);\n\n const driveStatusText = useMemo(() => {\n switch (drive.state) {\n case \"offline\":\n return \"Offline Drive\";\n case \"ok\":\n return \"Online Drive\";\n default:\n return \"Unknown\";\n }\n }, [drive.state]);\n\n return (\n \n \n \n \n \n \n {drive.endpoint ?? \"\"}\n \n \n \n \n \n {driveStatusText}\n \n \n \n \n \n \n {niceBytes(usedSpace.toString())}\n \n \n {usedPercentage.toFixed(2)}%\n \n of {niceBytes(totalSpace.toString())}\n \n \n \n \n \n \n {niceBytes(availableSpace.toString())}\n \n \n \n {availablePercentage.toFixed(2)}%\n \n of {niceBytes(totalSpace.toString())}\n \n \n \n \n \n );\n};\n\nexport default DriveInfoItem;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 { Accordion, Box, breakPoints } from \"mds\";\nimport ServerInfoItem from \"./ServerInfoItem\";\nimport DriveInfoItem from \"./DriveInfoItem\";\nimport { ServerProperties } from \"api/consoleApi\";\n\nconst ServersList = ({ data }: { data: ServerProperties[] }) => {\n const [expanded, setExpanded] = React.useState(\n data.length > 1 ? \"\" : data[0].endpoint + \"-0\",\n );\n\n const handleClick = (key: string) => {\n setExpanded(key);\n };\n\n return (\n \n \n Servers ({data.length})\n \n \n {data.map((serverInfo, index) => {\n const key = `${serverInfo.endpoint}-${index}`;\n const isExpanded = expanded === key;\n return (\n {\n if (!isExpanded) {\n handleClick(key);\n } else {\n handleClick(\"\");\n }\n }}\n id={\"key\"}\n title={}\n sx={{ marginBottom: 15 }}\n >\n \n Drives ({serverInfo.drives?.length})\n \n \n {serverInfo.drives?.map((driveInfo, index) => {\n return (\n \n );\n })}\n \n \n );\n })}\n \n \n );\n};\n\nexport default ServersList;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 styled from \"styled-components\";\nimport { Box, breakPoints, Tooltip } from \"mds\";\n\nconst CounterCardMain = styled.div(({ theme }) => ({\n fontFamily: \"Inter,sans-serif\",\n color: get(theme, \"signalColors.main\", \"#07193E\"),\n maxWidth: \"300px\",\n display: \"flex\",\n marginLeft: \"auto\",\n marginRight: \"auto\",\n cursor: \"default\",\n position: \"relative\",\n width: \"100%\",\n}));\n\nconst CounterCard = ({\n counterValue,\n label = \"\",\n icon = null,\n actions = null,\n}: {\n counterValue: string | number;\n label?: any;\n icon?: any;\n actions?: any;\n}) => {\n return (\n \n \n \n \n {label}\n \n\n \n = 5 ? 50 : 55,\n [`@media (max-width: ${breakPoints.sm}px)`]: {\n flexFlow: \"column\",\n maxWidth: 200,\n fontSize: counterValue.toString().length >= 5 ? 20 : 35,\n },\n [`@media (max-width: ${breakPoints.md}px)`]: {\n fontSize: counterValue.toString().length >= 5 ? 28 : 35,\n },\n [`@media (max-width: ${breakPoints.lg}px)`]: {\n fontSize: counterValue.toString().length >= 5 ? 28 : 36,\n },\n [`@media (max-width: ${breakPoints.xl}px)`]: {\n fontSize: counterValue.toString().length >= 5 ? 45 : 50,\n },\n }}\n >\n {counterValue}\n \n \n \n \n {icon}\n\n \n {actions}\n \n \n \n \n );\n};\n\nexport default CounterCard;\n","// This file is part of MinIO Console Server\n// Copyright (c) 2022 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 {\n ArrowRightIcon,\n Box,\n breakPoints,\n BucketsIcon,\n Button,\n DiagnosticsMenuIcon,\n DrivesIcon,\n FormatDrivesIcon,\n HealIcon,\n HelpBox,\n PrometheusErrorIcon,\n ServersIcon,\n StorageIcon,\n TotalObjectsIcon,\n UptimeIcon,\n} from \"mds\";\nimport { calculateBytes, representationNumber } from \"../../../../common/utils\";\nimport StatusCountCard from \"./StatusCountCard\";\nimport groupBy from \"lodash/groupBy\";\nimport ServersList from \"./ServersList\";\nimport CounterCard from \"./CounterCard\";\nimport ReportedUsage from \"./ReportedUsage\";\nimport { Link } from \"react-router-dom\";\nimport { IAM_PAGES } from \"../../../../common/SecureComponent/permissions\";\nimport TimeStatItem from \"../TimeStatItem\";\nimport TooltipWrapper from \"../../Common/TooltipWrapper/TooltipWrapper\";\nimport { AdminInfoResponse, ServerDrives } from \"api/consoleApi\";\n\nconst BoxItem = ({ children }: { children: any }) => {\n return (\n \n {children}\n \n );\n};\n\ninterface IDashboardProps {\n usage: AdminInfoResponse | undefined;\n}\n\nconst getServersList = (usage: AdminInfoResponse | undefined) => {\n if (usage && usage.servers) {\n return [...usage.servers].sort(function (a, b) {\n const nameA = a.endpoint?.toLowerCase() || \"\";\n const nameB = b.endpoint?.toLowerCase() || \"\";\n if (nameA < nameB) {\n return -1;\n }\n if (nameA > nameB) {\n return 1;\n }\n return 0;\n });\n }\n\n return [];\n};\n\nconst prettyUsage = (usage: string | undefined) => {\n if (usage === undefined) {\n return { total: \"0\", unit: \"Mi\" };\n }\n\n return calculateBytes(usage);\n};\n\nconst BasicDashboard = ({ usage }: IDashboardProps) => {\n const usageValue = usage && usage.usage ? usage.usage.toString() : \"0\";\n const usageToRepresent = prettyUsage(usageValue);\n\n const { lastScan = \"n/a\", lastHeal = \"n/a\", upTime = \"n/a\" } = {};\n\n const serverList = getServersList(usage);\n\n let allDrivesArray: ServerDrives[] = [];\n\n serverList.forEach((server) => {\n const drivesInput = server.drives?.map((drive) => {\n return drive;\n });\n if (drivesInput) {\n allDrivesArray = [...allDrivesArray, ...drivesInput];\n }\n });\n\n const serversGroup = groupBy(serverList, \"state\");\n const { offline: offlineServers = [], online: onlineServers = [] } =\n serversGroup;\n const drivesGroup = groupBy(allDrivesArray, \"state\");\n const { offline: offlineDrives = [], ok: onlineDrives = [] } = drivesGroup;\n return (\n \n \n \n \n \n }\n counterValue={usage ? representationNumber(usage.buckets) : 0}\n actions={\n \n \n {}}\n label={\"Browse\"}\n icon={}\n variant={\"regular\"}\n style={{\n padding: 5,\n height: 30,\n fontSize: 14,\n marginTop: 20,\n }}\n />\n \n \n }\n />\n \n \n }\n counterValue={usage ? representationNumber(usage.objects) : 0}\n />\n \n\n \n }\n />\n \n \n }\n />\n \n\n \n \n\n \n }\n label={\n \n \n Time since last\n {\" \"}\n Heal Activity\n \n }\n value={lastHeal}\n />\n }\n label={\n \n \n Time since last\n {\" \"}\n Scan Activity\n \n }\n value={lastScan}\n />\n }\n label={\"Uptime\"}\n value={upTime}\n />\n \n \n \n \n }\n label={\"Backend type\"}\n value={usage?.backend?.backendType ?? \"Unknown\"}\n />\n }\n label={\"Standard storage class parity\"}\n value={usage?.backend?.standardSCParity?.toString() ?? \"n/a\"}\n />\n }\n label={\"Reduced redundancy storage class parity\"}\n value={usage?.backend?.rrSCParity?.toString() ?? \"n/a\"}\n />\n \n\n \n \n \n \n {usage?.advancedMetricsStatus === \"not configured\" && (\n \n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n \n MinIO Dashboard will display basic metrics as we couldn’t\n connect to Prometheus successfully. Please try again in a\n few minutes. If the problem persists, you can review your\n configuration and confirm that Prometheus server is up and\n running.\n \n \n \n Read more about Prometheus on our Docs site.\n \n \n \n }\n />\n \n )}\n \n \n );\n};\n\nexport default BasicDashboard;\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 } from \"react\";\nimport {\n Box,\n Button,\n Grid,\n HelpBox,\n PageLayout,\n ProgressBar,\n PrometheusErrorIcon,\n SyncIcon,\n TabItemProps,\n Tabs,\n} from \"mds\";\nimport { IDashboardPanel } from \"./types\";\nimport { panelsConfiguration } from \"./utils\";\nimport { componentToUse } from \"./widgetUtils\";\nimport { useAppDispatch, useAppSelector } from \"../../../../store\";\nimport {\n DLayoutColumnProps,\n DLayoutRowProps,\n resourcesPanelsLayout,\n resourcesPanelsLayoutAdvanced,\n RowPanelLayout,\n summaryPanelsLayout,\n trafficPanelsLayout,\n} from \"./Widgets/LayoutUtil\";\nimport { getUsageAsync } from \"../dashboardThunks\";\nimport { reloadWidgets } from \"../dashboardSlice\";\nimport { selFeatures } from \"../../consoleSlice\";\nimport { AdminInfoResponse } from \"api/consoleApi\";\nimport ZoomWidget from \"./ZoomWidget\";\nimport DateRangeSelector from \"../../Common/FormComponents/DateRangeSelector/DateRangeSelector\";\nimport MergedWidgetsRenderer from \"./Widgets/MergedWidgetsRenderer\";\nimport BasicDashboard from \"../BasicDashboard/BasicDashboard\";\n\ninterface IPrDashboard {\n apiPrefix?: string;\n usage: AdminInfoResponse | null;\n}\n\nconst PrDashboard = ({ apiPrefix = \"admin\", usage }: IPrDashboard) => {\n const dispatch = useAppDispatch();\n const status = useAppSelector((state) => state.dashboard.status);\n const zoomOpen = useAppSelector((state) => state.dashboard.zoom.openZoom);\n const zoomWidget = useAppSelector(\n (state) => state.dashboard.zoom.widgetRender,\n );\n const features = useAppSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n let hideMenu = false;\n if (features?.includes(\"hide-menu\")) {\n hideMenu = true;\n } else if (obOnly) {\n hideMenu = true;\n }\n\n const [timeStart, setTimeStart] = useState(null);\n const [timeEnd, setTimeEnd] = useState(null);\n const panelInformation = panelsConfiguration;\n const [curTab, setCurTab] = useState(\"info\");\n\n const getPanelDetails = (id: number) => {\n return panelInformation.find((panel) => panel.id === id);\n };\n\n const triggerLoad = () => {\n dispatch(reloadWidgets());\n };\n\n const renderCmpByConfig = (\n panelInfo: IDashboardPanel | undefined,\n key: string,\n ) => {\n return (\n \n {panelInfo ? (\n \n \n {panelInfo.mergedPanels ? (\n \n ) : (\n componentToUse(\n panelInfo,\n timeStart,\n timeEnd,\n true,\n apiPrefix,\n zoomOpen,\n )\n )}\n \n \n ) : null}\n \n );\n };\n\n const renderPanelItems = (layoutRows: DLayoutRowProps[]) => {\n return layoutRows.reduce((prev: any[], rowItem, rIdx) => {\n const { columns = [] } = rowItem;\n const cellItems: any[] = columns.map(\n (cellItem: DLayoutColumnProps, colIdx: number) => {\n const panelInfo = getPanelDetails(cellItem.componentId);\n return renderCmpByConfig(panelInfo, `${rIdx}-${colIdx}`);\n },\n );\n const rowConfig = (\n \n {cellItems}\n \n );\n return [...prev, rowConfig];\n }, []);\n };\n\n const renderSummaryPanels = () => {\n return renderPanelItems(summaryPanelsLayout);\n };\n\n const renderTrafficPanels = () => {\n return renderPanelItems(trafficPanelsLayout);\n };\n\n const renderResourcesPanels = () => {\n return renderPanelItems(resourcesPanelsLayout);\n };\n\n const renderAdvancedResourcesPanels = () => {\n return renderPanelItems(resourcesPanelsLayoutAdvanced);\n };\n\n const prometheusOptionsDisabled =\n usage?.advancedMetricsStatus === \"not configured\";\n\n const searchBox = (\n \n {curTab === \"info\" ? (\n \n \n \n Server Information\n \n \n \n \n \n {\n dispatch(getUsageAsync());\n }}\n disabled={status === \"loading\"}\n icon={}\n label={\"Sync\"}\n />\n \n \n \n \n ) : (\n \n )}\n \n );\n\n const infoTab: TabItemProps = {\n tabConfig: { label: \"Info\", id: \"info\", disabled: false },\n content: (\n \n {(!usage || status === \"loading\") && }\n {usage && status === \"idle\" && (\n \n {searchBox}\n \n \n )}\n \n ),\n };\n\n const prometheusTabs: TabItemProps[] = [\n {\n tabConfig: {\n label: \"Usage\",\n id: \"usage\",\n disabled: prometheusOptionsDisabled,\n },\n content: (\n \n {searchBox}\n \n {usage?.advancedMetricsStatus === \"unavailable\" && (\n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n It looks like Prometheus is not available or reachable at\n the moment.\n \n }\n />\n )}\n {panelInformation.length ? renderSummaryPanels() : null}\n \n \n ),\n },\n {\n tabConfig: {\n label: \"Traffic\",\n id: \"traffic\",\n disabled: prometheusOptionsDisabled,\n },\n content: (\n \n {searchBox}\n \n {usage?.advancedMetricsStatus === \"unavailable\" && (\n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n It looks like Prometheus is not available or reachable at\n the moment.\n \n }\n />\n )}\n {panelInformation.length ? renderTrafficPanels() : null}\n \n \n ),\n },\n {\n tabConfig: {\n label: \"Resources\",\n id: \"resources\",\n disabled: prometheusOptionsDisabled,\n },\n content: (\n \n {searchBox}\n \n {usage?.advancedMetricsStatus === \"unavailable\" && (\n }\n title={\"We can’t retrieve advanced metrics at this time.\"}\n help={\n \n It looks like Prometheus is not available or reachable at\n the moment.\n \n }\n />\n )}\n {panelInformation.length ? renderResourcesPanels() : null}\n

\n Advanced\n

\n {panelInformation.length ? renderAdvancedResourcesPanels() : null}\n
\n
\n ),\n },\n ];\n\n let tabsOptions: TabItemProps[] = [infoTab, ...prometheusTabs];\n\n return (\n \n {zoomOpen && (\n \n )}\n\n {\n setCurTab(newValue);\n }}\n />\n \n );\n};\n\nexport default PrDashboard;\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 { useSelector } from \"react-redux\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport { getUsageAsync } from \"./dashboardThunks\";\nimport { selFeatures } from \"../consoleSlice\";\nimport { setHelpName } from \"../../../systemSlice\";\nimport PrDashboard from \"./Prometheus/PrDashboard\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst Dashboard = () => {\n const dispatch = useAppDispatch();\n const [iniLoad, setIniLoad] = useState(false);\n\n const usage = useSelector((state: AppState) => state.dashboard.usage);\n const features = useSelector(selFeatures);\n const obOnly = !!features?.includes(\"object-browser-only\");\n let hideMenu = false;\n if (features?.includes(\"hide-menu\")) {\n hideMenu = true;\n } else if (obOnly) {\n hideMenu = true;\n }\n\n useEffect(() => {\n if (!iniLoad) {\n setIniLoad(true);\n dispatch(getUsageAsync());\n }\n }, [iniLoad, dispatch]);\n\n useEffect(() => {\n dispatch(setHelpName(\"metrics\"));\n }, [dispatch]);\n\n return (\n \n {!hideMenu && (\n } />\n )}\n \n \n );\n};\n\nexport default Dashboard;\n"],"names":["_ref","timeStart","setTimeStart","timeEnd","setTimeEnd","triggerSync","label","startLabel","endLabel","_jsx","Grid","item","xs","sx","display","width","border","paddingLeft","paddingRight","borderRadius","height","marginRight","color","WebkitTextFillColor","children","_jsxs","Box","alignItems","gridTemplateColumns","padding","concat","breakPoints","sm","md","gap","fontSize","fontWeight","className","customBorderPadding","DateTimeInput","value","onChange","id","secondsSelector","pickerStartComponent","Fragment","TimeIcon","justifyContent","Button","type","variant","onClick","icon","SyncIcon","onClose","modalOpen","title","wideLimit","titleIcon","iconColor","dispatch","useAppDispatch","openSnackbar","setOpenSnackbar","useState","modalSnackMessage","useSelector","state","system","modalSnackBar","useEffect","setModalSnackMessage","message","detailedErrorMsg","length","ModalBox","open","widthLimit","MainError","isModal","Snackbar","closeSnackBar","mode","autoHideDuration","condensed","StatusCountBase","styled","div","theme","fontFamily","maxWidth","marginLeft","cursor","get","flex","marginTop","flexFlow","paddingBottom","lg","xl","textAlign","fill","_ref2","onlineCount","offlineCount","okStatusText","notOkStatusText","CircleIcon","STATUS_COLORS","RED","GREEN","YELLOW","getDriveStatusColor","activeDisks","totalDrives","serverStatusColor","health_status","getNetworkStatusColor","activeNetwork","networkTotal","widgetType","colorsMain","niceDaysFromNS","seconds","niceDays","roundNumber","parseInt","toString","panelsConfiguration","data","simpleWidget","widgetIcon","UptimeIcon","labelDisplayFunction","dataOuter","name","widgetConfiguration","outerChart","colorList","innerRadius","outerRadius","startAngle","endAngle","innerChart","pieChart","innerLabel","niceBytes","dataKey","keyLabel","lineColor","fillColor","areaGraph","yAxisFormatter","xAxisFormatter","getTimeFromTimestamp","background","greatestColor","customStructure","originTag","displayTag","barChart","singleRep","strokeWidth","linearGraph","HealIcon","DiagnosticsIcon","disableYAxis","mergedPanels","singleValue","calculateMainValue","elements","metricCalc","sumValues","reduce","accumulator","currValue","parseFloat","Math","floor","sortResult","sort","value1","value2","widgetDetailsToPanel","payloadData","panelItem","typeOfPayload","valueDisplay","chartSeries","filter","seriesItem","values","map","chartTarget","result","Array","isArray","elementValue","metricKeyItem","Object","keys","metric","metricName","legend","legendFormat","firstTarget","totalValues","targets","series","plotValues","forEach","targetMaster","index","results","itemVals","labelName","constructLabelNames","metrics","keysToReplace","expToReplace","RegExp","join","replacedLegend","replace","matchItem","nwMatchItem","countVarsOpen","match","countVarsClose","cleanLegend","element","keyName","push","valInfo","itemIndex","findIndex","itemToPush","seriesWithColors","series1","series2","serialC","textToRGBColor","sortedVals","chartBars","sortFunction","structureItem","metricTake","find","range","lastValue","a","valuesForBackground","eachVal","splitSizeMetric","val","splittedText","split","vl","isNaN","representationNumber","units","includes","backgroundColor","openZoomPage","ExpandIcon","componentRef","anchorEl","setAnchorEl","React","openDownloadMenu","Boolean","downloadAsCSV","download","filename","text","document","createElement","setAttribute","style","body","appendChild","click","removeChild","Date","now","trim","toLowerCase","objectToConvert","it","err","errorMessage","detailedError","setErrorSnackMessage","onDownloadError","handleSelectedOption","selectOption","downloadAsPNG","pngFileName","exportComponentAsPNG","fileName","justifyItems","event","currentTarget","DownloadIcon","DropdownSelector","options","selectedOption","onSelect","hideTriggerAction","anchorOrigin","active","payload","barChartConfiguration","tooltipCommon","customTooltip","timeStampTitle","pl","labelContainer","labelColor","itemValue","valueContainer","BarChartMain","widgetCommon","loadingAlign","paddingTop","margin","CustomizedAxisTick","y","textAnchor","transform","dy","_ref3","apiPrefix","zoomActivated","loading","setLoading","setData","setResult","hover","setHover","biggerThanMd","setBiggerThanMd","window","innerWidth","useRef","widgetVersion","dashboard","widgetLoadVersion","handleWindowResize","extMD","addEventListener","removeEventListener","stepCalc","secondsInPeriod","toUnixInteger","periods","api","invoke","then","res","widgetsWithValue","catch","greatestIndex","currentValue","dataGraph","onMouseOver","onHover","onMouseLeave","onStopHover","container","ExpandGraphLink","DownloadWidgetDataButton","Loader","ref","ResponsiveContainer","BarChart","layout","barCategoryGap","XAxis","hide","YAxis","interval","tick","tickLine","axisLine","bar","Bar","barSize","_","Cell","Tooltip","content","BarChartTooltip","linearConfiguration","LinearGraphMain","position","flexDirection","maxHeight","overflowY","hideYAxis","areaWidget","var1","var2","csvData","setCsvData","dataMax","setDataMax","maxVal","dp","key","intervalCount","fmtData","el","date","CustomizedDot","prop","cx","cy","r","dspLongDate","alignContent","AreaChart","top","right","left","bottom","x1","y1","x2","y2","offset","stopColor","stopOpacity","CartesianGrid","strokeDasharray","strokeOpacity","stroke","vertical","tickFormatter","tickCount","domain","section","Area","isAnimationActive","fillOpacity","strokeLinecap","dot","LineChartTooltip","wrapperStyle","zIndex","PieChartMain","dataInner","setDataInner","setDataOuter","pieChartConfiguration","middleLabel","innerColors","outerColors","PieChart","Pie","entry","SimpleWidgetMain","span","textTransform","iconWidget","renderFn","valueToRender","withBorders","StatCardMain","overflow","tooltip","placement","textOverflow","NumericStatCard","BucketsIcon","TotalObjectsIcon","connect","propLoading","repNumber","resultRep","DashboardItemBox","BucketsCountItem","ObjectsCountItem","SingleValueWidgetMain","lineHeight","CapacityItemMain","alignSelf","totalUsableFree","setTotalUsableFree","totalUsableFreeRatio","setTotalUsableFreeRatio","totalUsed","setTotalUsed","totalUsable","setTotalUsable","tUsable","tUsed","tFree","eachArray","itemSum","freeRatio","round","usedConvert","calculateBytes","capacityColors","animationDuration","total","unit","niceBytesInt","ReportedUsageIcon","TimeStatBase","SuccessIcon","TimeStatItem","componentToUse","arguments","undefined","SingleValueWidget","CmpToRender","HealActivityRenderer","ScanActivityRenderer","UptimeActivityRenderer","SimpleWidget","CapacityItem","PieChartWidget","LinearGraphWidget","BarChartWidget","SingleRepWidget","summaryPanelsLayout","minWidth","columns","componentId","trafficPanelsLayout","flexShrink","resourcesPanelsLayout","resourcesPanelsLayoutAdvanced","RowPanelLayout","ModalWrapper","closeZoomPage","CommonCardItem","metricValue","metricUnit","subMessage","moreLink","rightComponent","extraMargin","SubHeader","Header","Link","to","leftComponent","CommonCard","statLabel","DualSTCardContent","statItemLeft","statItemRight","StateIndicator","info","leftPanel","rightPanel","lStatItem","EntityStateStatItem","rStatItem","statIcon","ServersIcon","DrivesIcon","DualStatCard","NetworkGetBase","NetworkGetIcon","NetworkPutBase","NetworkPutIcon","NetworkItemBase","rightCmp","NetworkPutItem","leftCmp","_ref4","NetworkGetItem","SpeedtestIcon","EntityStateItemRenderer","NetworkItem","MergedWidgets","ServerStatItemMain","whiteSpace","ServerInfoItemMain","ServerStatItem","statusColor","hasStatus","server","networkKeys","drives","acc","network","endpoint","uptime","version","_drive$totalSpace","_drive$usedSpace","_drive$availableSpace","_drive$endpoint","drive","useTheme","totalSpace","usedSpace","usedPercentage","max","availableSpace","availablePercentage","driveStatusColor","useMemo","driveStatusText","wordBreak","SizeChart","chartLabel","usedBytes","totalBytes","toFixed","expanded","setExpanded","handleClick","serverInfo","_serverInfo$drives","_serverInfo$drives2","isExpanded","Accordion","onTitleClick","ServerInfoItem","marginBottom","useBackground","driveInfo","DriveInfoItem","CounterCardMain","counterValue","actions","BoxItem","_usage$backend","_usage$backend2","_usage$backend$backen","_usage$backend3","_usage$backend$standa","_usage$backend4","_usage$backend4$stand","_usage$backend$rrSCPa","_usage$backend5","_usage$backend5$rrSCP","usage","usageValue","usageToRepresent","prettyUsage","lastScan","lastHeal","upTime","serverList","servers","b","_a$endpoint","_b$endpoint","nameA","nameB","getServersList","allDrivesArray","_server$drives","drivesInput","serversGroup","groupBy","offline","offlineServers","online","onlineServers","drivesGroup","offlineDrives","ok","onlineDrives","gridTemplateRows","CounterCard","buckets","IAM_PAGES","BUCKETS","textDecoration","TooltipWrapper","ArrowRightIcon","objects","StatusCountCard","backend","gridRowStart","gridRowEnd","gridColumnStart","ReportedUsage","DiagnosticsMenuIcon","StorageIcon","backendType","FormatDrivesIcon","standardSCParity","rrSCParity","ServersList","advancedMetricsStatus","HelpBox","iconComponent","PrometheusErrorIcon","help","href","target","rel","status","useAppSelector","zoomOpen","zoom","openZoom","zoomWidget","widgetRender","features","selFeatures","obOnly","hideMenu","panelInformation","curTab","setCurTab","renderPanelItems","layoutRows","prev","rowItem","rIdx","cellItems","cellItem","colIdx","renderCmpByConfig","panelInfo","MergedWidgetsRenderer","panel","prometheusOptionsDisabled","searchBox","direction","getUsageAsync","disabled","DateRangeSelector","triggerLoad","reloadWidgets","tabsOptions","tabConfig","ProgressBar","BasicDashboard","borderBottom","PageLayout","ZoomWidget","Tabs","horizontal","currentTabOrPath","onTabClick","newValue","Dashboard","iniLoad","setIniLoad","setHelpName","PageHeaderWrapper","HelpMenu","PrDashboard"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/9537.895fc3ff.chunk.js.map b/web-app/build/static/js/9537.895fc3ff.chunk.js.map index fc2e1b8b95..70ec765068 100644 --- a/web-app/build/static/js/9537.895fc3ff.chunk.js.map +++ b/web-app/build/static/js/9537.895fc3ff.chunk.js.map @@ -1 +1 @@ -{"version":3,"file":"static/js/9537.895fc3ff.chunk.js","mappings":"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","sources":["screens/Console/HealthInfo/types.ts","screens/Console/Common/TestWrapper/TestWrapper.tsx","screens/Console/HealthInfo/HealthInfo.tsx","screens/Console/Support/RegisterCluster.tsx"],"sourcesContent":["// 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\";\n\nexport interface HealthInfoMessage {\n timestamp: string;\n error: string;\n perf: perfInfo;\n minio: minioHealthInfo;\n sys: sysHealthInfo;\n}\n\nexport interface ReportMessage {\n encoded: string;\n serverHealthInfo: HealthInfoMessage;\n subnetResponse: string;\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}\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}\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 .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { DrivesIcon, Loader, SectionTitle, VersionIcon, Grid } from \"mds\";\nimport { api } from \"api\";\nimport { ServerProperties } from \"api/consoleApi\";\n\ninterface ITestWrapper {\n title: any;\n children: any;\n}\n\nconst TestWrapper = ({ title, children }: ITestWrapper) => {\n const [version, setVersion] = useState(\"N/A\");\n const [totalNodes, setTotalNodes] = useState(0);\n const [totalDrives, setTotalDrives] = useState(0);\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n if (loading) {\n api.admin\n .adminInfo({\n defaultOnly: true,\n })\n .then((res) => {\n const totalServers = res.data.servers?.length;\n setTotalNodes(totalServers || 0);\n\n if (res.data.servers && res.data.servers.length > 0) {\n setVersion(res.data.servers[0].version || \"N/A\");\n\n const totalServers = res.data.servers.reduce(\n (prevTotal: number, currentElement: ServerProperties) => {\n let c = currentElement.drives\n ? currentElement.drives.length\n : 0;\n return prevTotal + c;\n },\n 0,\n );\n setTotalDrives(totalServers);\n }\n\n setLoading(false);\n })\n .catch(() => {\n setLoading(false);\n });\n }\n }, [loading]);\n\n return (\n \n {title}\n \n \n \n {!loading ? (\n \n \n {totalNodes}\n  nodes, \n {totalDrives}  drives\n \n \n \n \n {\" \"}\n MinIO VERSION {version}\n \n \n ) : (\n \n \n \n \n \n )}\n \n \n {children}\n \n \n );\n};\n\nexport default TestWrapper;\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, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box, Button, Grid, HelpBox, InfoIcon, Loader, PageLayout } from \"mds\";\nimport {\n DiagStatError,\n DiagStatInProgress,\n DiagStatSuccess,\n HealthInfoMessage,\n ReportMessage,\n} from \"./types\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport {\n WSCloseAbnormalClosure,\n WSCloseInternalServerErr,\n WSClosePolicyViolation,\n wsProtocol,\n} from \"../../../utils/wsUtils\";\nimport { setHelpName, setServerDiagStat } from \"../../../systemSlice\";\nimport {\n healthInfoMessageReceived,\n healthInfoResetMessage,\n} from \"./healthInfoSlice\";\nimport { registeredCluster } from \"../../../config\";\nimport TestWrapper from \"../Common/TestWrapper/TestWrapper\";\nimport RegisterCluster from \"../Support/RegisterCluster\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst HealthInfo = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const message = useSelector((state: AppState) => state.healthInfo.message);\n\n const serverDiagnosticStatus = useSelector(\n (state: AppState) => state.system.serverDiagnosticStatus,\n );\n const [startDiagnostic, setStartDiagnostic] = useState(false);\n\n const [downloadDisabled, setDownloadDisabled] = useState(true);\n const [localMessage, setMessage] = useState(\"\");\n const [buttonStartText, setButtonStartText] = useState(\n \"Start Health Report\",\n );\n const [title, setTitle] = useState(\"Health Report\");\n const [diagFileContent, setDiagFileContent] = useState(\"\");\n const [subnetResponse, setSubnetResponse] = useState(\"\");\n const clusterRegistered = registeredCluster();\n\n const download = () => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n `data:application/gzip;base64,${diagFileContent}`,\n );\n element.setAttribute(\"download\", \"diagnostic.json.gz\");\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n };\n\n useEffect(() => {\n if (serverDiagnosticStatus === DiagStatInProgress) {\n setTitle(\"Health Report in progress...\");\n setMessage(\n \"Health Report started. Please do not refresh page during diagnosis.\",\n );\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatSuccess) {\n setTitle(\"Health Report complete\");\n setMessage(\"Health Report file is ready to be downloaded.\");\n setButtonStartText(\"Start Health Report\");\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatError) {\n setTitle(\"Error\");\n setMessage(\"An error occurred while getting the Health Report file.\");\n setButtonStartText(\"Retry Health Report\");\n return;\n }\n }, [serverDiagnosticStatus, startDiagnostic]);\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 Health Report 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 dispatch(healthInfoResetMessage());\n setDiagFileContent(\"\");\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 // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n const socket = new WebSocket(\n `${wsProt}://${url.hostname}:${port}${baseUrl}ws/health-info?deadline=1h`,\n );\n let interval: any | null = null;\n if (socket !== null) {\n socket.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n socket.send(\"ok\");\n interval = setInterval(() => {\n socket.send(\"ok\");\n }, 10 * 1000);\n setMessage(\n \"Health Report started. Please do not refresh page during diagnosis.\",\n );\n dispatch(setServerDiagStat(DiagStatInProgress));\n };\n socket.onmessage = (message: MessageEvent) => {\n let m: ReportMessage = JSON.parse(message.data.toString());\n if (m.serverHealthInfo) {\n dispatch(healthInfoMessageReceived(m.serverHealthInfo));\n }\n if (m.encoded !== \"\") {\n setDiagFileContent(m.encoded);\n }\n if (m.subnetResponse) {\n setSubnetResponse(m.subnetResponse);\n }\n };\n socket.onerror = (error) => {\n console.error(\"error closing websocket:\", error);\n socket.close(1000);\n clearInterval(interval);\n dispatch(setServerDiagStat(DiagStatError));\n };\n socket.onclose = (event: CloseEvent) => {\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 setMessage(\n \"An error occurred while getting the Health Report file.\",\n );\n dispatch(setServerDiagStat(DiagStatError));\n } else {\n console.log(\"connection closed by server\");\n\n setMessage(\"Health Report file is ready to be downloaded.\");\n dispatch(setServerDiagStat(DiagStatSuccess));\n }\n };\n }\n } else {\n // reset start status\n setStartDiagnostic(false);\n }\n }, [startDiagnostic, dispatch]);\n\n const startDiagnosticAction = () => {\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n setStartDiagnostic(true);\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"health_info\"));\n }, [dispatch]);\n\n return (\n \n } />\n\n \n {!clusterRegistered && }\n \n \n \n \n

{localMessage}

\n \n {\" \"}\n {subnetResponse !== \"\" &&\n !subnetResponse.toLowerCase().includes(\"error\") && (\n \n \n Health report uploaded to SUBNET successfully!\n \n  {\" \"}\n \n See the results on your{\" \"}\n SUBNET Dashboard{\" \"}\n \n \n )}\n {(subnetResponse === \"\" ||\n subnetResponse.toLowerCase().includes(\"error\")) &&\n serverDiagnosticStatus === DiagStatSuccess && (\n \n \n Something went wrong uploading your Health report to\n SUBNET.\n \n  {\" \"}\n \n Log into your{\" \"}\n SUBNET Account to\n manually upload your Health report.\n \n \n )}\n
\n {serverDiagnosticStatus === DiagStatInProgress ? (\n \n \n \n ) : (\n \n \n \n {serverDiagnosticStatus !== DiagStatError &&\n !downloadDisabled && (\n download()}\n disabled={downloadDisabled}\n label={\"Download\"}\n />\n )}\n \n \n \n \n \n \n )}\n \n \n \n \n {!startDiagnostic && clusterRegistered && (\n \n
\n }\n help={\n \"If the Health report cannot be generated at this time, please wait a moment and try again.\"\n }\n />\n
\n )}\n
\n
\n );\n};\n\nexport default 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 } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box, breakPoints, Button, Grid, HelpBox, WarnIcon } from \"mds\";\n\ninterface IRegisterCluster {\n compactMode?: boolean;\n}\n\nconst RegisterCluster = ({ compactMode = false }: IRegisterCluster) => {\n const navigate = useNavigate();\n\n const redirectButton = (\n navigate(\"/support/register\")}\n >\n Register your Cluster\n \n );\n\n const registerMessage =\n \"Please use your MinIO Subscription Network login credentials to register this cluster and enable this feature.\";\n\n if (compactMode) {\n return (\n \n \n \n {registerMessage} {redirectButton}\n \n }\n iconComponent={}\n help={null}\n />\n \n
\n
\n );\n }\n\n return (\n \n \n \n \n Register your cluster\n \n \n \n \n \n \n {registerMessage}\n \n \n \n {redirectButton}\n \n \n \n \n \n \n \n );\n};\n\nexport default RegisterCluster;\n"],"names":["DiagStatError","DiagStatSuccess","DiagStatInProgress","_ref","title","children","version","setVersion","useState","totalNodes","setTotalNodes","totalDrives","setTotalDrives","loading","setLoading","useEffect","api","admin","adminInfo","defaultOnly","then","res","_res$data$servers","totalServers","data","servers","length","reduce","prevTotal","currentElement","drives","catch","_jsxs","Grid","item","xs","_jsx","SectionTitle","separator","sx","padding","marginBottom","container","Fragment","textAlign","Loader","style","width","height","md","fontSize","display","alignItems","marginRight","DrivesIcon","justifyContent","alignSelf","VersionIcon","HealthInfo","dispatch","useAppDispatch","navigate","useNavigate","message","useSelector","state","healthInfo","serverDiagnosticStatus","system","startDiagnostic","setStartDiagnostic","downloadDisabled","setDownloadDisabled","localMessage","setMessage","buttonStartText","setButtonStartText","setTitle","diagFileContent","setDiagFileContent","subnetResponse","setSubnetResponse","clusterRegistered","registeredCluster","healthInfoResetMessage","url","URL","window","location","toString","port","process","wsProt","wsProtocol","protocol","baseUrl","document","baseURI","pathname","socket","WebSocket","concat","hostname","interval","onopen","console","log","send","setInterval","setServerDiagStat","onmessage","m","JSON","parse","serverHealthInfo","healthInfoMessageReceived","encoded","onerror","error","close","clearInterval","onclose","event","code","WSCloseInternalServerErr","WSClosePolicyViolation","WSCloseAbnormalClosure","setHelpName","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","RegisterCluster","compactMode","Box","withBorders","TestWrapper","gap","toLowerCase","includes","href","paddingTop","paddingLeft","Button","id","type","variant","onClick","download","element","createElement","setAttribute","body","appendChild","click","removeChild","disabled","startDiagnosticAction","HelpBox","iconComponent","InfoIcon","help","redirectButton","color","registerMessage","flexGrow","WarnIcon","border","flexFlow","breakPoints","sm","fontWeight","marginLeft","flex","marginTop"],"sourceRoot":""} \ No newline at end of file +{"version":3,"file":"static/js/9537.895fc3ff.chunk.js","mappings":"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","sources":["screens/Console/HealthInfo/types.ts","screens/Console/Common/TestWrapper/TestWrapper.tsx","screens/Console/HealthInfo/HealthInfo.tsx","screens/Console/Support/RegisterCluster.tsx"],"sourcesContent":["// 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\";\n\nexport interface HealthInfoMessage {\n timestamp: string;\n error: string;\n perf: perfInfo;\n minio: minioHealthInfo;\n sys: sysHealthInfo;\n}\n\nexport interface ReportMessage {\n encoded: string;\n serverHealthInfo: HealthInfoMessage;\n subnetResponse: string;\n}\n\ninterface perfInfo {\n drives: serverDrivesInfo[];\n net: serverNetHealthInfo[];\n net_parallel: serverNetHealthInfo;\n error: string;\n}\n\ninterface serverDrivesInfo {\n addr: string;\n serial: drivePerfInfo[];\n parallel: drivePerfInfo[];\n error: string;\n}\n\ninterface drivePerfInfo {\n endpoint: string;\n latency: diskLatency;\n throughput: diskThroughput;\n error: string;\n}\n\ninterface 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\ninterface 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\ninterface serverNetHealthInfo {\n addr: string;\n net: netPerfInfo[];\n error: string;\n}\n\ninterface netPerfInfo {\n remote: string;\n latency: netLatency;\n throughput: netThroughput;\n error: string;\n}\n\ninterface 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}\n\ninterface 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\ninterface minioHealthInfo {\n info: infoMessage;\n config: any;\n error: string;\n}\n\ninterface 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\ninterface buckets {\n count: number;\n}\n\ninterface objects {\n count: number;\n}\n\ninterface usage {\n size: number;\n}\n\ninterface services {\n vault: vault;\n ldap: ldap;\n logger: Map[];\n audit: Map[];\n notifications: Map[]>;\n}\n\ninterface vault {\n status: string;\n encrypt: string;\n decrypt: string;\n}\n\ninterface ldap {\n status: string;\n}\n\ninterface status {\n status: string;\n}\n\ninterface serverProperties {\n state: string;\n endpoint: string;\n uptime: number;\n version: string;\n commitID: string;\n network: Map;\n drives: disk[];\n}\n\ninterface 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\ninterface sysHealthInfo {\n cpus: serverCpuInfo[];\n drives: serverDiskHwInfo[];\n osinfos: serverOsInfo[];\n meminfos: serverMemInfo[];\n procinfos: serverProcInfo[];\n error: string;\n}\n\ninterface serverCpuInfo {\n addr: string;\n cpu: cpuInfoStat[];\n time: cpuTimeStat[];\n error: string;\n}\n\ninterface 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\ninterface 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\ninterface serverDiskHwInfo {\n addr: string;\n usages: diskUsageStat[];\n partitions: partitionStat[];\n counters: Map;\n error: string;\n}\n\ninterface 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\ninterface partitionStat {\n device: string;\n mountpoint: string;\n fstype: string;\n opts: string;\n smartInfo: smartInfo;\n}\n\ninterface smartInfo {\n device: string;\n scsi: scsiInfo;\n nvme: nvmeInfo;\n ata: ataInfo;\n error: string;\n}\n\ninterface scsiInfo {\n scsiCapacityBytes: number;\n scsiModeSenseBuf: string;\n scsirespLen: number;\n scsiBdLen: number;\n scsiOffset: number;\n sciRpm: number;\n}\n\ninterface 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\ninterface 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\ninterface 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\ninterface serverOsInfo {\n addr: string;\n info: infoStat;\n sensors: temperatureStat[];\n users: userStat[];\n error: string;\n}\n\ninterface 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\ninterface temperatureStat {\n sensorKey: string;\n sensorTemperature: number;\n}\n\ninterface userStat {\n user: string;\n terminal: string;\n host: string;\n started: number;\n}\n\ninterface serverMemInfo {\n addr: string;\n swap: swapMemoryStat;\n virtualmem: virtualMemoryStat;\n error: string;\n}\n\ninterface 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\ninterface 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\ninterface serverProcInfo {\n addr: string;\n processes: sysProcess[];\n error: string;\n}\n\ninterface 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\ninterface 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\ninterface netAddr {\n ip: string;\n port: number;\n}\n\ninterface processIOCountersStat {\n readCount: number;\n writeCount: number;\n readBytes: number;\n writeBytes: number;\n}\n\ninterface memoryInfoStat {\n rss: number;\n vms: number;\n hwm: number;\n data: number;\n stack: number;\n locked: number;\n swap: number;\n}\n\ninterface 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\ninterface processNmCtxSwitchesStat {\n voluntary: number;\n involuntary: number;\n}\n\ninterface processPageFaultsStat {\n minorFaults: number;\n majorFaults: number;\n childMinorFaults: number;\n childMajorFaults: number;\n}\n\ninterface 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 .\n\nimport React, { Fragment, useEffect, useState } from \"react\";\nimport { DrivesIcon, Loader, SectionTitle, VersionIcon, Grid } from \"mds\";\nimport { api } from \"api\";\nimport { ServerProperties } from \"api/consoleApi\";\n\ninterface ITestWrapper {\n title: any;\n children: any;\n}\n\nconst TestWrapper = ({ title, children }: ITestWrapper) => {\n const [version, setVersion] = useState(\"N/A\");\n const [totalNodes, setTotalNodes] = useState(0);\n const [totalDrives, setTotalDrives] = useState(0);\n const [loading, setLoading] = useState(true);\n\n useEffect(() => {\n if (loading) {\n api.admin\n .adminInfo({\n defaultOnly: true,\n })\n .then((res) => {\n const totalServers = res.data.servers?.length;\n setTotalNodes(totalServers || 0);\n\n if (res.data.servers && res.data.servers.length > 0) {\n setVersion(res.data.servers[0].version || \"N/A\");\n\n const totalServers = res.data.servers.reduce(\n (prevTotal: number, currentElement: ServerProperties) => {\n let c = currentElement.drives\n ? currentElement.drives.length\n : 0;\n return prevTotal + c;\n },\n 0,\n );\n setTotalDrives(totalServers);\n }\n\n setLoading(false);\n })\n .catch(() => {\n setLoading(false);\n });\n }\n }, [loading]);\n\n return (\n \n {title}\n \n \n \n {!loading ? (\n \n \n {totalNodes}\n  nodes, \n {totalDrives}  drives\n \n \n \n \n {\" \"}\n MinIO VERSION {version}\n \n \n ) : (\n \n \n \n \n \n )}\n \n \n {children}\n \n \n );\n};\n\nexport default TestWrapper;\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, useEffect, useState } from \"react\";\nimport { useSelector } from \"react-redux\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box, Button, Grid, HelpBox, InfoIcon, Loader, PageLayout } from \"mds\";\nimport {\n DiagStatError,\n DiagStatInProgress,\n DiagStatSuccess,\n HealthInfoMessage,\n ReportMessage,\n} from \"./types\";\nimport { AppState, useAppDispatch } from \"../../../store\";\nimport {\n WSCloseAbnormalClosure,\n WSCloseInternalServerErr,\n WSClosePolicyViolation,\n wsProtocol,\n} from \"../../../utils/wsUtils\";\nimport { setHelpName, setServerDiagStat } from \"../../../systemSlice\";\nimport {\n healthInfoMessageReceived,\n healthInfoResetMessage,\n} from \"./healthInfoSlice\";\nimport { registeredCluster } from \"../../../config\";\nimport TestWrapper from \"../Common/TestWrapper/TestWrapper\";\nimport RegisterCluster from \"../Support/RegisterCluster\";\nimport PageHeaderWrapper from \"../Common/PageHeaderWrapper/PageHeaderWrapper\";\nimport HelpMenu from \"../HelpMenu\";\n\nconst HealthInfo = () => {\n const dispatch = useAppDispatch();\n const navigate = useNavigate();\n\n const message = useSelector((state: AppState) => state.healthInfo.message);\n\n const serverDiagnosticStatus = useSelector(\n (state: AppState) => state.system.serverDiagnosticStatus,\n );\n const [startDiagnostic, setStartDiagnostic] = useState(false);\n\n const [downloadDisabled, setDownloadDisabled] = useState(true);\n const [localMessage, setMessage] = useState(\"\");\n const [buttonStartText, setButtonStartText] = useState(\n \"Start Health Report\",\n );\n const [title, setTitle] = useState(\"Health Report\");\n const [diagFileContent, setDiagFileContent] = useState(\"\");\n const [subnetResponse, setSubnetResponse] = useState(\"\");\n const clusterRegistered = registeredCluster();\n\n const download = () => {\n let element = document.createElement(\"a\");\n element.setAttribute(\n \"href\",\n `data:application/gzip;base64,${diagFileContent}`,\n );\n element.setAttribute(\"download\", \"diagnostic.json.gz\");\n\n element.style.display = \"none\";\n document.body.appendChild(element);\n\n element.click();\n\n document.body.removeChild(element);\n };\n\n useEffect(() => {\n if (serverDiagnosticStatus === DiagStatInProgress) {\n setTitle(\"Health Report in progress...\");\n setMessage(\n \"Health Report started. Please do not refresh page during diagnosis.\",\n );\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatSuccess) {\n setTitle(\"Health Report complete\");\n setMessage(\"Health Report file is ready to be downloaded.\");\n setButtonStartText(\"Start Health Report\");\n return;\n }\n\n if (serverDiagnosticStatus === DiagStatError) {\n setTitle(\"Error\");\n setMessage(\"An error occurred while getting the Health Report file.\");\n setButtonStartText(\"Retry Health Report\");\n return;\n }\n }, [serverDiagnosticStatus, startDiagnostic]);\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 Health Report 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 dispatch(healthInfoResetMessage());\n setDiagFileContent(\"\");\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 // check if we are using base path, if not this always is `/`\n const baseLocation = new URL(document.baseURI);\n const baseUrl = baseLocation.pathname;\n\n const socket = new WebSocket(\n `${wsProt}://${url.hostname}:${port}${baseUrl}ws/health-info?deadline=1h`,\n );\n let interval: any | null = null;\n if (socket !== null) {\n socket.onopen = () => {\n console.log(\"WebSocket Client Connected\");\n socket.send(\"ok\");\n interval = setInterval(() => {\n socket.send(\"ok\");\n }, 10 * 1000);\n setMessage(\n \"Health Report started. Please do not refresh page during diagnosis.\",\n );\n dispatch(setServerDiagStat(DiagStatInProgress));\n };\n socket.onmessage = (message: MessageEvent) => {\n let m: ReportMessage = JSON.parse(message.data.toString());\n if (m.serverHealthInfo) {\n dispatch(healthInfoMessageReceived(m.serverHealthInfo));\n }\n if (m.encoded !== \"\") {\n setDiagFileContent(m.encoded);\n }\n if (m.subnetResponse) {\n setSubnetResponse(m.subnetResponse);\n }\n };\n socket.onerror = (error) => {\n console.error(\"error closing websocket:\", error);\n socket.close(1000);\n clearInterval(interval);\n dispatch(setServerDiagStat(DiagStatError));\n };\n socket.onclose = (event: CloseEvent) => {\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 setMessage(\n \"An error occurred while getting the Health Report file.\",\n );\n dispatch(setServerDiagStat(DiagStatError));\n } else {\n console.log(\"connection closed by server\");\n\n setMessage(\"Health Report file is ready to be downloaded.\");\n dispatch(setServerDiagStat(DiagStatSuccess));\n }\n };\n }\n } else {\n // reset start status\n setStartDiagnostic(false);\n }\n }, [startDiagnostic, dispatch]);\n\n const startDiagnosticAction = () => {\n if (!clusterRegistered) {\n navigate(\"/support/register\");\n return;\n }\n setStartDiagnostic(true);\n };\n\n useEffect(() => {\n dispatch(setHelpName(\"health_info\"));\n }, [dispatch]);\n\n return (\n \n } />\n\n \n {!clusterRegistered && }\n \n \n \n \n

{localMessage}

\n \n {\" \"}\n {subnetResponse !== \"\" &&\n !subnetResponse.toLowerCase().includes(\"error\") && (\n \n \n Health report uploaded to SUBNET successfully!\n \n  {\" \"}\n \n See the results on your{\" \"}\n SUBNET Dashboard{\" \"}\n \n \n )}\n {(subnetResponse === \"\" ||\n subnetResponse.toLowerCase().includes(\"error\")) &&\n serverDiagnosticStatus === DiagStatSuccess && (\n \n \n Something went wrong uploading your Health report to\n SUBNET.\n \n  {\" \"}\n \n Log into your{\" \"}\n SUBNET Account to\n manually upload your Health report.\n \n \n )}\n
\n {serverDiagnosticStatus === DiagStatInProgress ? (\n \n \n \n ) : (\n \n \n \n {serverDiagnosticStatus !== DiagStatError &&\n !downloadDisabled && (\n download()}\n disabled={downloadDisabled}\n label={\"Download\"}\n />\n )}\n \n \n \n \n \n \n )}\n \n \n \n \n {!startDiagnostic && clusterRegistered && (\n \n
\n }\n help={\n \"If the Health report cannot be generated at this time, please wait a moment and try again.\"\n }\n />\n
\n )}\n
\n
\n );\n};\n\nexport default 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 } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport { Box, breakPoints, Button, Grid, HelpBox, WarnIcon } from \"mds\";\n\ninterface IRegisterCluster {\n compactMode?: boolean;\n}\n\nconst RegisterCluster = ({ compactMode = false }: IRegisterCluster) => {\n const navigate = useNavigate();\n\n const redirectButton = (\n navigate(\"/support/register\")}\n >\n Register your Cluster\n \n );\n\n const registerMessage =\n \"Please use your MinIO Subscription Network login credentials to register this cluster and enable this feature.\";\n\n if (compactMode) {\n return (\n \n \n \n {registerMessage} {redirectButton}\n \n }\n iconComponent={}\n help={null}\n />\n \n
\n
\n );\n }\n\n return (\n \n \n \n \n Register your cluster\n \n \n \n \n \n \n {registerMessage}\n \n \n \n {redirectButton}\n \n \n \n \n \n \n \n );\n};\n\nexport default RegisterCluster;\n"],"names":["DiagStatError","DiagStatSuccess","DiagStatInProgress","_ref","title","children","version","setVersion","useState","totalNodes","setTotalNodes","totalDrives","setTotalDrives","loading","setLoading","useEffect","api","admin","adminInfo","defaultOnly","then","res","_res$data$servers","totalServers","data","servers","length","reduce","prevTotal","currentElement","drives","catch","_jsxs","Grid","item","xs","_jsx","SectionTitle","separator","sx","padding","marginBottom","container","Fragment","textAlign","Loader","style","width","height","md","fontSize","display","alignItems","marginRight","DrivesIcon","justifyContent","alignSelf","VersionIcon","HealthInfo","dispatch","useAppDispatch","navigate","useNavigate","message","useSelector","state","healthInfo","serverDiagnosticStatus","system","startDiagnostic","setStartDiagnostic","downloadDisabled","setDownloadDisabled","localMessage","setMessage","buttonStartText","setButtonStartText","setTitle","diagFileContent","setDiagFileContent","subnetResponse","setSubnetResponse","clusterRegistered","registeredCluster","healthInfoResetMessage","url","URL","window","location","toString","port","process","wsProt","wsProtocol","protocol","baseUrl","document","baseURI","pathname","socket","WebSocket","concat","hostname","interval","onopen","console","log","send","setInterval","setServerDiagStat","onmessage","m","JSON","parse","serverHealthInfo","healthInfoMessageReceived","encoded","onerror","error","close","clearInterval","onclose","event","code","WSCloseInternalServerErr","WSClosePolicyViolation","WSCloseAbnormalClosure","setHelpName","PageHeaderWrapper","label","actions","HelpMenu","PageLayout","RegisterCluster","compactMode","Box","withBorders","TestWrapper","gap","toLowerCase","includes","href","paddingTop","paddingLeft","Button","id","type","variant","onClick","download","element","createElement","setAttribute","body","appendChild","click","removeChild","disabled","startDiagnosticAction","HelpBox","iconComponent","InfoIcon","help","redirectButton","color","registerMessage","flexGrow","WarnIcon","border","flexFlow","breakPoints","sm","fontWeight","marginLeft","flex","marginTop"],"sourceRoot":""} \ No newline at end of file diff --git a/web-app/build/static/js/main.13652d0f.js b/web-app/build/static/js/main.13652d0f.js new file mode 100644 index 0000000000..d9cd0598d0 --- /dev/null +++ b/web-app/build/static/js/main.13652d0f.js @@ -0,0 +1,3 @@ +/*! For license information please see main.13652d0f.js.LICENSE.txt */ +(()=>{var e={85330:(e,t,n)=>{"use strict";n.d(t,{BT:()=>s,M0:()=>r,SW:()=>i,Wj:()=>a,cM:()=>c,jI:()=>d,jz:()=>o,wg:()=>l});let r=function(e){return e.SseS3="sse-s3",e.SseKms="sse-kms",e}({}),o=function(e){return e.PRIVATE="PRIVATE",e.PUBLIC="PUBLIC",e.CUSTOM="CUSTOM",e}({}),a=function(e){return e.Put="put",e.Delete="delete",e.Get="get",e.Replica="replica",e.Ilm="ilm",e.Scanner="scanner",e}({}),i=function(e){return e.Enabled="enabled",e.Disabled="disabled",e}({}),s=function(e){return e.Governance="governance",e.Compliance="compliance",e}({}),l=function(e){return e.Days="days",e.Years="years",e}({}),c=function(e){return e.Json="application/json",e.FormData="multipart/form-data",e.UrlEncoded="application/x-www-form-urlencoded",e.Text="text/plain",e}({});class u{constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.baseUrl="/api/v1",this.securityData=null,this.securityWorker=void 0,this.abortControllers=new Map,this.customFetch=function(){return fetch(...arguments)},this.baseApiParams={credentials:"same-origin",headers:{},redirect:"follow",referrerPolicy:"no-referrer"},this.setSecurityData=e=>{this.securityData=e},this.contentFormatters={[c.Json]:e=>null===e||"object"!==typeof e&&"string"!==typeof e?e:JSON.stringify(e),[c.Text]:e=>null!==e&&"string"!==typeof e?JSON.stringify(e):e,[c.FormData]:e=>Object.keys(e||{}).reduce(((t,n)=>{const r=e[n];return t.append(n,r instanceof Blob?r:"object"===typeof r&&null!==r?JSON.stringify(r):"".concat(r)),t}),new FormData),[c.UrlEncoded]:e=>this.toQueryString(e)},this.createAbortSignal=e=>{if(this.abortControllers.has(e)){const t=this.abortControllers.get(e);return t?t.signal:void 0}const t=new AbortController;return this.abortControllers.set(e,t),t.signal},this.abortRequest=e=>{const t=this.abortControllers.get(e);t&&(t.abort(),this.abortControllers.delete(e))},this.request=async e=>{let{body:t,secure:n,path:r,type:o,query:a,format:i,baseUrl:s,cancelToken:l,...u}=e;const d=("boolean"===typeof n?n:this.baseApiParams.secure)&&this.securityWorker&&await this.securityWorker(this.securityData)||{},p=this.mergeRequestParams(u,d),h=a&&this.toQueryString(a),m=this.contentFormatters[o||c.Json],f=i||p.format;return this.customFetch("".concat(s||this.baseUrl||"").concat(r).concat(h?"?".concat(h):""),{...p,headers:{...p.headers||{},...o&&o!==c.FormData?{"Content-Type":o}:{}},signal:(l?this.createAbortSignal(l):p.signal)||null,body:"undefined"===typeof t||null===t?null:m(t)}).then((async e=>{const t=e.clone();t.data=null,t.error=null;const n=f?await e[f]().then((e=>(t.ok?t.data=e:t.error=e,t))).catch((e=>(t.error=e,t))):t;if(l&&this.abortControllers.delete(l),!e.ok)throw n;return n}))},Object.assign(this,e)}encodeQueryParam(e,t){const n=encodeURIComponent(e);return"".concat(n,"=").concat(encodeURIComponent("number"===typeof t?t:"".concat(t)))}addQueryParam(e,t){return this.encodeQueryParam(t,e[t])}addArrayQueryParam(e,t){return e[t].map((e=>this.encodeQueryParam(t,e))).join("&")}toQueryString(e){const t=e||{};return Object.keys(t).filter((e=>"undefined"!==typeof t[e])).map((e=>Array.isArray(t[e])?this.addArrayQueryParam(t,e):this.addQueryParam(t,e))).join("&")}addQueryParams(e){const t=this.toQueryString(e);return t?"?".concat(t):""}mergeRequestParams(e,t){return{...this.baseApiParams,...e,...t||{},headers:{...this.baseApiParams.headers||{},...e.headers||{},...t&&t.headers||{}}}}}class d extends u{constructor(){var e;super(...arguments),e=this,this.login={loginDetail:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/login",method:"GET",format:"json",...t})},login:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/login",method:"POST",body:t,type:c.Json,...n})},loginOauth2Auth:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/login/oauth2/auth",method:"POST",body:t,type:c.Json,...n})}},this.logout={logout:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/logout",method:"POST",body:t,secure:!0,type:c.Json,...n})}},this.session={sessionCheck:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/session",method:"GET",secure:!0,format:"json",...t})}},this.account={accountChangePassword:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/account/change-password",method:"POST",body:t,secure:!0,type:c.Json,...n})},changeUserPassword:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/account/change-user-password",method:"POST",body:t,secure:!0,type:c.Json,...n})}},this.buckets={listBuckets:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/buckets",method:"GET",secure:!0,format:"json",...t})},makeBucket:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},bucketInfo:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},deleteBucket:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t)),method:"DELETE",secure:!0,...n})},getBucketRetentionConfig:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/retention"),method:"GET",secure:!0,format:"json",...n})},setBucketRetentionConfig:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/retention"),method:"PUT",body:n,secure:!0,type:c.Json,...r})},listObjects:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects"),method:"GET",query:n,secure:!0,format:"json",...r})},deleteObject:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects"),method:"DELETE",query:n,secure:!0,...r})},deleteMultipleObjects:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/delete-objects"),method:"POST",query:r,body:n,secure:!0,type:c.Json,...o})},objectsUploadCreate:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/upload"),method:"POST",query:n,body:r,secure:!0,type:c.FormData,...o})},downloadMultipleObjects:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/download-multiple"),method:"POST",body:n,secure:!0,type:c.Json,...r})},downloadObject:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/download"),method:"GET",query:n,secure:!0,...r})},shareObject:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/share"),method:"GET",query:n,secure:!0,format:"json",...r})},putObjectLegalHold:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/legalhold"),method:"PUT",query:n,body:r,secure:!0,type:c.Json,...o})},putObjectRetention:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/retention"),method:"PUT",query:n,body:r,secure:!0,type:c.Json,...o})},deleteObjectRetention:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/retention"),method:"DELETE",query:n,secure:!0,...r})},putObjectTags:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/tags"),method:"PUT",query:n,body:r,secure:!0,type:c.Json,...o})},putObjectRestore:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/restore"),method:"PUT",query:n,secure:!0,...r})},getObjectMetadata:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/objects/metadata"),method:"GET",query:n,secure:!0,format:"json",...r})},putBucketTags:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/tags"),method:"PUT",body:n,secure:!0,type:c.Json,...r})},bucketSetPolicy:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/set-policy"),method:"PUT",body:n,secure:!0,type:c.Json,format:"json",...r})},getBucketQuota:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/quota"),method:"GET",secure:!0,format:"json",...n})},setBucketQuota:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/quota"),method:"PUT",body:n,secure:!0,type:c.Json,format:"json",...r})},listBucketEvents:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/events"),method:"GET",query:n,secure:!0,format:"json",...r})},createBucketEvent:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/events"),method:"POST",body:n,secure:!0,type:c.Json,...r})},deleteBucketEvent:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/events/").concat(encodeURIComponent(n)),method:"DELETE",body:r,secure:!0,type:c.Json,...o})},getBucketReplication:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/replication"),method:"GET",secure:!0,format:"json",...n})},getBucketReplicationRule:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/replication/").concat(encodeURIComponent(n)),method:"GET",secure:!0,format:"json",...r})},updateMultiBucketReplication:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/replication/").concat(encodeURIComponent(n)),method:"PUT",body:r,secure:!0,type:c.Json,...o})},deleteBucketReplicationRule:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/replication/").concat(encodeURIComponent(n)),method:"DELETE",secure:!0,...r})},deleteAllReplicationRules:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/delete-all-replication-rules"),method:"DELETE",secure:!0,...n})},deleteSelectedReplicationRules:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/delete-selected-replication-rules"),method:"DELETE",body:n,secure:!0,type:c.Json,...r})},getBucketVersioning:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/versioning"),method:"GET",secure:!0,format:"json",...n})},setBucketVersioning:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/versioning"),method:"PUT",body:n,secure:!0,type:c.Json,...r})},getBucketObjectLockingStatus:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/object-locking"),method:"GET",secure:!0,format:"json",...n})},enableBucketEncryption:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/encryption/enable"),method:"POST",body:n,secure:!0,type:c.Json,...r})},disableBucketEncryption:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/encryption/disable"),method:"POST",secure:!0,...n})},getBucketEncryptionInfo:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/encryption/info"),method:"GET",secure:!0,format:"json",...n})},getBucketLifecycle:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/lifecycle"),method:"GET",secure:!0,format:"json",...n})},addBucketLifecycle:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/lifecycle"),method:"POST",body:n,secure:!0,type:c.Json,...r})},addMultiBucketLifecycle:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets/multi-lifecycle",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},updateBucketLifecycle:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/lifecycle/").concat(encodeURIComponent(n)),method:"PUT",body:r,secure:!0,type:c.Json,...o})},deleteBucketLifecycleRule:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/lifecycle/").concat(encodeURIComponent(n)),method:"DELETE",secure:!0,...r})},getBucketRewind:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/buckets/".concat(encodeURIComponent(t),"/rewind/").concat(encodeURIComponent(n)),method:"GET",query:r,secure:!0,format:"json",...o})},getMaxShareLinkExp:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/buckets/max-share-exp",method:"GET",secure:!0,format:"json",...t})}},this.listExternalBuckets={listExternalBuckets:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/list-external-buckets",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})}},this.bucketsReplication={setMultiBucketReplication:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/buckets-replication",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})}},this.serviceAccounts={listUserServiceAccounts:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/service-accounts",method:"GET",query:t,secure:!0,format:"json",...n})},createServiceAccount:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/service-accounts",method:"POST",body:t,secure:!0,format:"json",...n})},deleteMultipleServiceAccounts:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/service-accounts/delete-multi",method:"DELETE",body:t,secure:!0,type:c.Json,...n})},getServiceAccount:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/service-accounts/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},updateServiceAccount:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/service-accounts/".concat(encodeURIComponent(t)),method:"PUT",body:n,secure:!0,type:c.Json,...r})},deleteServiceAccount:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/service-accounts/".concat(encodeURIComponent(t)),method:"DELETE",secure:!0,...n})}},this.serviceAccountCredentials={createServiceAccountCreds:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/service-account-credentials",method:"POST",body:t,secure:!0,format:"json",...n})}},this.users={listUsers:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/users",method:"GET",query:t,secure:!0,format:"json",...n})},addUser:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/users",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},checkUserServiceAccounts:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/users/service-accounts",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})}},this.user={getUserInfo:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/user/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},updateUserInfo:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/user/".concat(encodeURIComponent(t)),method:"PUT",body:n,secure:!0,type:c.Json,format:"json",...r})},removeUser:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/user/".concat(encodeURIComponent(t)),method:"DELETE",secure:!0,...n})},updateUserGroups:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/user/".concat(encodeURIComponent(t),"/groups"),method:"PUT",body:n,secure:!0,type:c.Json,format:"json",...r})},getUserPolicy:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/user/policy",method:"GET",secure:!0,format:"json",...t})},getSaUserPolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/user/".concat(encodeURIComponent(t),"/policies"),method:"GET",secure:!0,format:"json",...n})},listAUserServiceAccounts:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/user/".concat(encodeURIComponent(t),"/service-accounts"),method:"GET",secure:!0,format:"json",...n})},createAUserServiceAccount:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/user/".concat(encodeURIComponent(t),"/service-accounts"),method:"POST",body:n,secure:!0,format:"json",...r})},createServiceAccountCredentials:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/user/".concat(encodeURIComponent(t),"/service-account-credentials"),method:"POST",body:n,secure:!0,format:"json",...r})}},this.usersGroupsBulk={bulkUpdateUsersGroups:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/users-groups-bulk",method:"PUT",body:t,secure:!0,type:c.Json,...n})}},this.groups={listGroups:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/groups",method:"GET",query:t,secure:!0,format:"json",...n})},addGroup:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/groups",method:"POST",body:t,secure:!0,type:c.Json,...n})}},this.group={groupInfo:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/group/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},removeGroup:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/group/".concat(encodeURIComponent(t)),method:"DELETE",secure:!0,...n})},updateGroup:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/group/".concat(encodeURIComponent(t)),method:"PUT",body:n,secure:!0,type:c.Json,format:"json",...r})}},this.policies={listPolicies:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/policies",method:"GET",query:t,secure:!0,format:"json",...n})},addPolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/policies",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},listUsersForPolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/policies/".concat(encodeURIComponent(t),"/users"),method:"GET",secure:!0,format:"json",...n})},listGroupsForPolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/policies/".concat(encodeURIComponent(t),"/groups"),method:"GET",secure:!0,format:"json",...n})}},this.bucketPolicy={listPoliciesWithBucket:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/bucket-policy/".concat(encodeURIComponent(t)),method:"GET",query:n,secure:!0,format:"json",...r})}},this.bucket={setAccessRuleWithBucket:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/bucket/".concat(encodeURIComponent(t),"/access-rules"),method:"PUT",body:n,secure:!0,type:c.Json,format:"json",...r})},listAccessRulesWithBucket:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/bucket/".concat(encodeURIComponent(t),"/access-rules"),method:"GET",query:n,secure:!0,format:"json",...r})},deleteAccessRuleWithBucket:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/bucket/".concat(encodeURIComponent(t),"/access-rules"),method:"DELETE",body:n,secure:!0,type:c.Json,format:"json",...r})}},this.bucketUsers={listUsersWithAccessToBucket:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/bucket-users/".concat(encodeURIComponent(t)),method:"GET",query:n,secure:!0,format:"json",...r})}},this.policy={policyInfo:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/policy/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},removePolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/policy/".concat(encodeURIComponent(t)),method:"DELETE",secure:!0,...n})}},this.configs={listConfig:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/configs",method:"GET",query:t,secure:!0,format:"json",...n})},configInfo:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/configs/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},setConfig:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/configs/".concat(encodeURIComponent(t)),method:"PUT",body:n,secure:!0,type:c.Json,format:"json",...r})},resetConfig:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/configs/".concat(encodeURIComponent(t),"/reset"),method:"POST",secure:!0,format:"json",...n})},exportConfig:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/configs/export",method:"GET",secure:!0,format:"json",...t})},importCreate:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/configs/import",method:"POST",body:t,secure:!0,type:c.FormData,...n})}},this.setPolicy={setPolicy:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/set-policy",method:"PUT",body:t,secure:!0,type:c.Json,...n})}},this.setPolicyMulti={setPolicyMultiple:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/set-policy-multi",method:"PUT",body:t,secure:!0,type:c.Json,...n})}},this.service={restartService:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/service/restart",method:"POST",secure:!0,...t})}},this.profiling={profilingStart:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/profiling/start",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},profilingStop:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/profiling/stop",method:"POST",secure:!0,...t})}},this.subnet={subnetRegToken:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/subnet/registration-token",method:"GET",secure:!0,format:"json",...t})},subnetInfo:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/subnet/info",method:"GET",secure:!0,format:"json",...t})},subnetApiKey:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/subnet/apikey",method:"GET",query:t,secure:!0,format:"json",...n})},subnetRegister:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/subnet/register",method:"POST",body:t,secure:!0,type:c.Json,...n})},subnetLogin:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/subnet/login",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},subnetLoginMfa:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/subnet/login/mfa",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})}},this.admin={adminInfo:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/info",method:"GET",query:t,secure:!0,format:"json",...n})},dashboardWidgetDetails:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/admin/info/widgets/".concat(encodeURIComponent(t)),method:"GET",query:n,secure:!0,format:"json",...r})},arnList:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/admin/arns",method:"GET",secure:!0,format:"json",...t})},notificationEndpointList:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/admin/notification_endpoints",method:"GET",secure:!0,format:"json",...t})},addNotificationEndpoint:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/notification_endpoints",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},getSiteReplicationInfo:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/admin/site-replication",method:"GET",secure:!0,format:"json",...t})},siteReplicationInfoAdd:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/site-replication",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})},siteReplicationEdit:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/site-replication",method:"PUT",body:t,secure:!0,type:c.Json,format:"json",...n})},siteReplicationRemove:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/site-replication",method:"DELETE",body:t,secure:!0,type:c.Json,format:"json",...n})},getSiteReplicationStatus:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/site-replication/status",method:"GET",query:t,secure:!0,format:"json",...n})},tiersList:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/admin/tiers",method:"GET",secure:!0,format:"json",...t})},addTier:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/tiers",method:"POST",body:t,secure:!0,type:c.Json,...n})},tiersListNames:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/admin/tiers/names",method:"GET",secure:!0,format:"json",...t})},getTier:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/admin/tiers/".concat(encodeURIComponent(t),"/").concat(encodeURIComponent(n)),method:"GET",secure:!0,format:"json",...r})},editTierCredentials:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/admin/tiers/".concat(encodeURIComponent(t),"/").concat(encodeURIComponent(n),"/credentials"),method:"PUT",body:r,secure:!0,type:c.Json,...o})},removeTier:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/tiers/".concat(encodeURIComponent(t),"/remove"),method:"DELETE",secure:!0,...n})},inspect:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/admin/inspect",method:"GET",query:t,secure:!0,...n})}},this.nodes={listNodes:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/nodes",method:"GET",secure:!0,format:"json",...t})}},this.remoteBuckets={listRemoteBuckets:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/remote-buckets",method:"GET",secure:!0,format:"json",...t})},addRemoteBucket:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/remote-buckets",method:"POST",body:t,secure:!0,type:c.Json,...n})},remoteBucketDetails:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/remote-buckets/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},deleteRemoteBucket:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/remote-buckets/".concat(encodeURIComponent(t),"/").concat(encodeURIComponent(n)),method:"DELETE",secure:!0,...r})}},this.logs={logSearch:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/logs/search",method:"GET",query:t,secure:!0,format:"json",...n})}},this.kms={kmsStatus:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/kms/status",method:"GET",secure:!0,format:"json",...t})},kmsMetrics:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/kms/metrics",method:"GET",secure:!0,format:"json",...t})},kmsapIs:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/kms/apis",method:"GET",secure:!0,format:"json",...t})},kmsVersion:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/kms/version",method:"GET",secure:!0,format:"json",...t})},kmsCreateKey:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/keys",method:"POST",body:t,secure:!0,type:c.Json,...n})},kmsListKeys:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/keys",method:"GET",query:t,secure:!0,format:"json",...n})},kmsKeyStatus:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/kms/keys/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})}},this.idp={createConfiguration:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/idp/".concat(encodeURIComponent(t)),method:"POST",body:n,secure:!0,type:c.Json,format:"json",...r})},listConfigurations:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/idp/".concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...n})},getConfiguration:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/idp/".concat(encodeURIComponent(n),"/").concat(encodeURIComponent(t)),method:"GET",secure:!0,format:"json",...r})},deleteConfiguration:function(t,n){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return e.request({path:"/idp/".concat(encodeURIComponent(n),"/").concat(encodeURIComponent(t)),method:"DELETE",secure:!0,format:"json",...r})},updateConfiguration:function(t,n,r){let o=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};return e.request({path:"/idp/".concat(encodeURIComponent(n),"/").concat(encodeURIComponent(t)),method:"PUT",body:r,secure:!0,type:c.Json,format:"json",...o})}},this.ldapEntities={getLdapEntities:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/ldap-entities",method:"POST",body:t,secure:!0,type:c.Json,format:"json",...n})}},this.releases={listReleases:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/releases",method:"GET",query:t,secure:!0,format:"json",...n})}},this.support={getCallHomeOptionValue:function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return e.request({path:"/support/callhome",method:"GET",secure:!0,format:"json",...t})},setCallHomeStatus:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/support/callhome",method:"PUT",body:t,secure:!0,type:c.Json,...n})}},this.downloadSharedObject={downloadSharedObject:function(t){let n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.request({path:"/download-shared-object/".concat(encodeURIComponent(t)),method:"GET",...n})}}}}},53518:(e,t,n)=>{"use strict";n.d(t,{S:()=>r});const r=e=>e?{errorMessage:e.message||"",detailedError:e.detailedMessage||""}:{errorMessage:"",detailedError:""}},56629:(e,t,n)=>{"use strict";n.d(t,{F:()=>r});let r=new(n(85330).jI);r.baseUrl="".concat(new URL(document.baseURI).pathname,"api/v1");const o=r.request;r.request=async e=>{let{body:t,secure:n,path:r,type:a,query:i,format:s,baseUrl:l,cancelToken:c,...u}=e;return o({body:t,secure:n,path:r,type:a,query:i,format:s,baseUrl:l,cancelToken:c,...u}).then((e=>function(e){const t=e.error;t&&403===e.status&&"invalid session"===t.message&&"/login"!==window.location.pathname&&(document.location="/login");return e}(e)))}},20685:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(65043);var r=n(89923),o=n(70579);const a=()=>(0,o.jsx)(r.xA9,{container:!0,sx:{height:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center"},children:(0,o.jsx)(r.xA9,{item:!0,xs:3,sx:{display:"flex",justifyContent:"center",alignItems:"center"},children:(0,o.jsx)(r.aHM,{style:{width:35,height:35}})})})},18218:(e,t,n)=>{"use strict";n.d(t,{A:()=>l});var r=n(21383),o=n(33097),a=n.n(o),i=n(99161);const s=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0;if(!e)return!1;const r=e.includes(i.OV.S3_ALL_ACTIONS),o=e.includes(i.OV.ADMIN_ALL_ACTIONS),a=t.filter((function(t){return-1!==e.indexOf(t)||-1!==t.indexOf("s3:")&&r||-1!==t.indexOf("admin:")&&o}));return n?a.length===t.length:a.length>0},l=(e,t,n,o)=>{if(!e)return!1;const i=r.M_.getState(),l=i.console.session&&i.console.session.permissions||{},c=l["arn:aws:s3:::*"]||[];let u=[],d=[],p=[];if(e){Array.isArray(e)?u=[...u,...e]:u.push(e);const t=Object.keys(l).filter((e=>e.includes("*")&&"arn:aws:s3:::*"!==e)),n=e=>t.map((t=>{const n=t.split(":").slice(-1)[0].replace("/","\\/").replace("*","($|\\/?(.*?))");return new RegExp("".concat(n),"gm").test(e)?t:null})).filter((e=>null!==e));u.forEach((e=>{let t=n(e),r=[];t.forEach((e=>{if(e){const t=a()(l,e,[]);r=[...r,...t]}}));let i=a()(l,e,[]);i=i||[];const s=a()(l,"arn:aws:s3:::".concat(e,"/*"),[]),c=a()(l,"arn:aws:s3:::".concat(e,"/"),[]),u=a()(l,"arn:aws:s3:::".concat(e),[]);if(d=[...i,...s,...r,...c,...u],o){const t="arn:aws:s3:::".concat(e);Object.entries(l).forEach((e=>{let[n,r]=e;n.includes(t)&&(p=[...p,...r])}))}}))}let h=[],m=t||[];return"*"===e&&Object.entries(l).forEach((e=>{let[t,n=[]]=e,r=n||[];m.forEach((e=>{r.forEach((t=>{t!==e&&"s3:*"!==t||(h=[...h,e])}))}))})),s([...d,...c,...p,...h],t,n)}},77938:(e,t,n)=>{"use strict";n.d(t,{R:()=>i,_:()=>r.A});var r=n(18218),o=n(65043),a=n(70579);const i=e=>{let{children:t,RenderError:n=(()=>(0,a.jsx)(a.Fragment,{})),errorProps:i=null,matchAll:s=!1,scopes:l=[],resource:c,containsResource:u=!1}=e;const d=(0,r.A)(c,l,s,u);return d||i?!d&&i?Array.isArray(t)?(0,a.jsx)(a.Fragment,{children:t.map((e=>(0,o.cloneElement)(e,{...i})))}):(0,o.cloneElement)(t,{...i}):(0,a.jsx)(a.Fragment,{children:t}):(0,a.jsx)(n,{})}},99161:(e,t,n)=>{"use strict";n.d(t,{$X:()=>b,BD:()=>p,Bc:()=>M,Dg:()=>h,HD:()=>l,Ho:()=>m,Hr:()=>x,Lb:()=>y,Ld:()=>C,Ms:()=>c,Nt:()=>P,OV:()=>o,Oh:()=>v,QR:()=>I,Sg:()=>D,ac:()=>r,bO:()=>S,g:()=>s,k1:()=>T,lP:()=>A,lj:()=>_,m0:()=>f,ni:()=>E,nr:()=>N,pC:()=>i,pf:()=>k,qA:()=>L,tO:()=>g,uA:()=>R,vj:()=>u,x6:()=>d,xw:()=>w,yv:()=>O,zZ:()=>a});const r={BUCKET_OWNER:"BUCKET_OWNER",BUCKET_VIEWER:"BUCKET_VIEWER",BUCKET_ADMIN:"BUCKET_ADMIN",BUCKET_LIFECYCLE:"BUCKET_LIFECYCLE"},o={S3_STAR_BUCKET:"s3:*Bucket",S3_LIST_BUCKET:"s3:ListBucket",S3_ALL_LIST_BUCKET:"s3:List*",S3_GET_BUCKET_POLICY:"s3:GetBucketPolicy",S3_PUT_BUCKET_POLICY:"s3:PutBucketPolicy",S3_GET_OBJECT:"s3:GetObject",S3_PUT_OBJECT:"s3:PutObject",S3_GET_ACTIONS:"s3:Get*",S3_PUT_ACTIONS:"s3:Put*",S3_GET_OBJECT_LEGAL_HOLD:"s3:GetObjectLegalHold",S3_PUT_OBJECT_LEGAL_HOLD:"s3:PutObjectLegalHold",S3_DELETE_OBJECT:"s3:DeleteObject",S3_GET_BUCKET_VERSIONING:"s3:GetBucketVersioning",S3_PUT_BUCKET_VERSIONING:"s3:PutBucketVersioning",S3_GET_OBJECT_RETENTION:"s3:GetObjectRetention",S3_PUT_OBJECT_RETENTION:"s3:PutObjectRetention",S3_GET_OBJECT_TAGGING:"s3:GetObjectTagging",S3_PUT_OBJECT_TAGGING:"s3:PutObjectTagging",S3_DELETE_OBJECT_TAGGING:"s3:DeleteObjectTagging",S3_GET_BUCKET_ENCRYPTION_CONFIGURATION:"s3:GetEncryptionConfiguration",S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION:"s3:PutEncryptionConfiguration",S3_CREATE_BUCKET:"s3:CreateBucket",S3_DELETE_BUCKET:"s3:DeleteBucket",S3_FORCE_DELETE_BUCKET:"s3:ForceDeleteBucket",S3_GET_BUCKET_NOTIFICATIONS:"s3:GetBucketNotification",S3_LISTEN_BUCKET_NOTIFICATIONS:"s3:ListenBucketNotification",S3_PUT_BUCKET_NOTIFICATIONS:"s3:PutBucketNotification",S3_GET_REPLICATION_CONFIGURATION:"s3:GetReplicationConfiguration",S3_PUT_REPLICATION_CONFIGURATION:"s3:PutReplicationConfiguration",S3_GET_LIFECYCLE_CONFIGURATION:"s3:GetLifecycleConfiguration",S3_PUT_LIFECYCLE_CONFIGURATION:"s3:PutLifecycleConfiguration",S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION:"s3:GetBucketObjectLockConfiguration",S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION:"s3:PutBucketObjectLockConfiguration",ADMIN_GET_POLICY:"admin:GetPolicy",ADMIN_LIST_USERS:"admin:ListUsers",ADMIN_CREATE_USER:"admin:CreateUser",ADMIN_DELETE_USER:"admin:DeleteUser",ADMIN_ENABLE_USER:"admin:EnableUser",ADMIN_DISABLE_USER:"admin:DisableUser",ADMIN_GET_USER:"admin:GetUser",ADMIN_LIST_USER_POLICIES:"admin:ListUserPolicies",ADMIN_SERVER_INFO:"admin:ServerInfo",ADMIN_GET_BUCKET_QUOTA:"admin:GetBucketQuota",ADMIN_SET_BUCKET_QUOTA:"admin:SetBucketQuota",ADMIN_LIST_TIERS:"admin:ListTier",ADMIN_SET_TIER:"admin:SetTier",ADMIN_LIST_GROUPS:"admin:ListGroups",S3_GET_OBJECT_VERSION_FOR_REPLICATION:"s3:GetObjectVersionForReplication",S3_REPLICATE_TAGS:"s3:ReplicateTags",S3_REPLICATE_DELETE:"s3:ReplicateDelete",S3_REPLICATE_OBJECT:"s3:ReplicateObject",S3_PUT_OBJECT_VERSION_TAGGING:"s3:PutObjectVersionTagging",S3_DELETE_OBJECT_VERSION_TAGGING:"s3:DeleteObjectVersionTagging",S3_DELETE_OBJECT_VERSION:"s3:DeleteObjectVersion",S3_GET_OBJECT_VERSION_TAGGING:"s3:GetObjectVersionTagging",S3_GET_OBJECT_VERSION:"s3:GetObjectVersion",S3_PUT_BUCKET_TAGGING:"s3:PutBucketTagging",S3_GET_BUCKET_TAGGING:"s3:GetBucketTagging",S3_BYPASS_GOVERNANCE_RETENTION:"s3:BypassGovernanceRetention",S3_LIST_MULTIPART_UPLOAD_PARTS:"s3:ListMultipartUploadParts",S3_LISTEN_NOTIFICATIONS:"s3:ListenNotification",S3_LIST_BUCKET_MULTIPART_UPLOADS:"s3:ListBucketMultipartUploads",S3_LIST_BUCKET_VERSIONS:"s3:ListBucketVersions",S3_GET_BUCKET_POLICY_STATUS:"s3:GetBucketPolicyStatus",S3_LIST_ALL_MY_BUCKETS:"s3:ListAllMyBuckets",S3_HEAD_BUCKET:"s3:HeadBucket",S3_GET_BUCKET_LOCATION:"s3:GetBucketLocation",S3_DELETE_BUCKET_POLICY:"s3:DeleteBucketPolicy",S3_ABORT_MULTIPART_UPLOAD:"s3:AbortMultipartUpload",ADMIN_ADD_USER_TO_GROUP:"admin:AddUserToGroup",ADMIN_REMOVE_USER_FROM_GROUP:"admin:RemoveUserFromGroup",ADMIN_GET_GROUP:"admin:GetGroup",ADMIN_ENABLE_GROUP:"admin:EnableGroup",ADMIN_DISABLE_GROUP:"admin:DisableGroup",ADMIN_CREATE_POLICY:"admin:CreatePolicy",ADMIN_DELETE_POLICY:"admin:DeletePolicy",ADMIN_ATTACH_USER_OR_GROUP_POLICY:"admin:AttachUserOrGroupPolicy",ADMIN_CREATE_SERVICEACCOUNT:"admin:CreateServiceAccount",ADMIN_UPDATE_SERVICEACCOUNT:"admin:UpdateServiceAccount",ADMIN_REMOVE_SERVICEACCOUNT:"admin:RemoveServiceAccount",ADMIN_LIST_SERVICEACCOUNTS:"admin:ListServiceAccounts",ADMIN_CONFIG_UPDATE:"admin:ConfigUpdate",ADMIN_GET_CONSOLE_LOG:"admin:ConsoleLog",ADMIN_SERVER_TRACE:"admin:ServerTrace",ADMIN_HEALTH_INFO:"admin:OBDInfo",ADMIN_HEAL:"admin:Heal",ADMIN_INSPECT_DATA:"admin:InspectData",S3_ALL_ACTIONS:"s3:*",ADMIN_ALL_ACTIONS:"admin:*",KMS_ALL_ACTIONS:"kms:*",KMS_STATUS:"kms:Status",KMS_METRICS:"kms:Metrics",KMS_APIS:"kms:API",KMS_Version:"kms:Version",KMS_CREATE_KEY:"kms:CreateKey",KMS_DELETE_KEY:"kms:DeleteKey",KMS_LIST_KEYS:"kms:ListKeys",KMS_IMPORT_KEY:"kms:ImportKey",KMS_KEY_STATUS:"kms:KeyStatus",KMS_DESCRIBE_POLICY:"kms:DescribePolicy",KMS_ASSIGN_POLICY:"kms:AssignPolicy",KMS_DELETE_POLICY:"kms:DeletePolicy",KMS_SET_POLICY:"kms:SetPolicy",KMS_GET_POLICY:"kms:GetPolicy",KMS_LIST_POLICIES:"kms:ListPolicies",KMS_DESCRIBE_IDENTITY:"kms:DescribeIdentity",KMS_DESCRIBE_SELF_IDENTITY:"kms:DescribeSelfIdentity",KMS_DELETE_IDENTITY:"kms:DeleteIdentity",KMS_LIST_IDENTITIES:"kms:ListIdentities"},a={BUCKETS:"/buckets",ADD_BUCKETS:"add-bucket",BUCKETS_ADD_REPLICATION:"/buckets/add-replication",BUCKETS_ADMIN_VIEW:":bucketName/admin/*",BUCKETS_EDIT_REPLICATION:"/buckets/edit-replication",OBJECT_BROWSER_VIEW:"/browser",OBJECT_BROWSER_BUCKET_VIEW:"/browser/:bucketName",OBJECT_BROWSER_BUCKET_DETAILS_VIEW:"/browser/:bucketName/*",IDENTITY:"/identity",USERS:"/identity/users",USERS_VIEW:"/identity/users/:userName",USER_ADD:"/identity/users/add-user",GROUPS:"/identity/groups",GROUPS_ADD:"/identity/groups/create-group",GROUPS_VIEW:"/identity/groups/:groupName",ACCOUNT:"/access-keys",ACCOUNT_ADD:"/access-keys/new-account",USER_SA_ACCOUNT_ADD:"/identity/users/new-user-sa/:userName",IDP_LDAP_CONFIGURATIONS:"/identity/ldap/configuration",IDP_OPENID_CONFIGURATIONS:"/identity/idp/openid/configurations",IDP_OPENID_CONFIGURATIONS_VIEW:"/identity/idp/openid/configurations/:idpName",IDP_OPENID_CONFIGURATIONS_ADD:"/identity/idp/openid/configurations/add-idp",POLICIES:"/policies",POLICY_ADD:"/add-policy",POLICIES_VIEW:"/policies/*",TOOLS_LOGS:"/tools/logs",TOOLS_AUDITLOGS:"/tools/audit-logs",TOOLS_TRACE:"/tools/trace",DASHBOARD:"/tools/metrics",TOOLS_WATCH:"/tools/watch",KMS:"/kms",KMS_STATUS:"/kms/status",KMS_KEYS:"/kms/keys",KMS_KEYS_ADD:"/kms/add-key/",KMS_KEYS_IMPORT:"/kms/import-key/",TOOLS:"/support",REGISTER_SUPPORT:"/support/register",TOOLS_DIAGNOSTICS:"/support/diagnostics",TOOLS_SPEEDTEST:"/support/speedtest",CALL_HOME:"/support/call-home",PROFILE:"/support/profile",SUPPORT_INSPECT:"/support/inspect",LICENSE:"/license",SETTINGS:"/settings/configurations",SETTINGS_VIEW:"/settings/configurations/:option",DOCUMENTATION:"/documentation",EVENT_DESTINATIONS:"/settings/event-destinations",EVENT_DESTINATIONS_ADD:"/settings/event-destinations/add",EVENT_DESTINATIONS_ADD_SERVICE:"/settings/event-destinations/add/:service",TIERS:"/settings/tiers",TIERS_ADD:"/settings/tiers/add",TIERS_ADD_SERVICE:"/settings/tiers/add/:service",SITE_REPLICATION:"/settings/site-replication",SITE_REPLICATION_STATUS:"/settings/site-replication/status",SITE_REPLICATION_ADD:"/settings/site-replication/add"},i={[r.BUCKET_OWNER]:[o.S3_PUT_OBJECT,o.S3_PUT_ACTIONS,o.S3_DELETE_OBJECT],[r.BUCKET_VIEWER]:[o.S3_LIST_BUCKET,o.S3_ALL_LIST_BUCKET],[r.BUCKET_ADMIN]:[o.S3_ALL_ACTIONS,o.ADMIN_ALL_ACTIONS,o.S3_REPLICATE_OBJECT,o.S3_REPLICATE_DELETE,o.S3_REPLICATE_TAGS,o.S3_GET_OBJECT_VERSION_FOR_REPLICATION,o.S3_PUT_REPLICATION_CONFIGURATION,o.S3_GET_REPLICATION_CONFIGURATION,o.S3_GET_BUCKET_VERSIONING,o.S3_PUT_BUCKET_VERSIONING,o.S3_GET_BUCKET_ENCRYPTION_CONFIGURATION,o.S3_PUT_BUCKET_ENCRYPTION_CONFIGURATION,o.S3_DELETE_OBJECT_TAGGING,o.S3_PUT_OBJECT_TAGGING,o.S3_GET_OBJECT_TAGGING,o.S3_PUT_OBJECT_VERSION_TAGGING,o.S3_DELETE_OBJECT_VERSION_TAGGING,o.S3_DELETE_OBJECT_VERSION,o.S3_GET_OBJECT_VERSION_TAGGING,o.S3_GET_OBJECT_VERSION,o.S3_PUT_BUCKET_TAGGING,o.S3_GET_BUCKET_TAGGING,o.S3_PUT_BUCKET_OBJECT_LOCK_CONFIGURATION,o.S3_GET_BUCKET_OBJECT_LOCK_CONFIGURATION,o.S3_PUT_OBJECT_LEGAL_HOLD,o.S3_GET_OBJECT_LEGAL_HOLD,o.S3_GET_OBJECT_RETENTION,o.S3_PUT_OBJECT_RETENTION,o.S3_BYPASS_GOVERNANCE_RETENTION,o.S3_PUT_BUCKET_POLICY,o.S3_PUT_BUCKET_NOTIFICATIONS,o.S3_GET_LIFECYCLE_CONFIGURATION,o.S3_PUT_LIFECYCLE_CONFIGURATION,o.S3_LIST_MULTIPART_UPLOAD_PARTS,o.S3_LISTEN_BUCKET_NOTIFICATIONS,o.S3_LISTEN_NOTIFICATIONS,o.S3_LIST_BUCKET_MULTIPART_UPLOADS,o.S3_LIST_BUCKET_VERSIONS,o.S3_GET_BUCKET_POLICY_STATUS,o.S3_LIST_ALL_MY_BUCKETS,o.S3_HEAD_BUCKET,o.S3_GET_BUCKET_POLICY,o.S3_GET_BUCKET_NOTIFICATIONS,o.S3_GET_BUCKET_LOCATION,o.S3_DELETE_BUCKET_POLICY,o.S3_FORCE_DELETE_BUCKET,o.S3_DELETE_BUCKET,o.S3_CREATE_BUCKET,o.S3_ABORT_MULTIPART_UPLOAD,o.ADMIN_GET_POLICY,o.ADMIN_LIST_USER_POLICIES,o.ADMIN_LIST_USERS,o.ADMIN_HEAL,o.S3_GET_ACTIONS,o.S3_PUT_ACTIONS],[r.BUCKET_LIFECYCLE]:[o.S3_GET_LIFECYCLE_CONFIGURATION,o.S3_PUT_LIFECYCLE_CONFIGURATION,o.S3_GET_ACTIONS,o.S3_PUT_ACTIONS,o.ADMIN_LIST_TIERS,o.ADMIN_SET_TIER]},s={[a.ADD_BUCKETS]:[o.S3_CREATE_BUCKET],[a.BUCKETS_EDIT_REPLICATION]:[...i[r.BUCKET_ADMIN]],[a.BUCKETS_ADD_REPLICATION]:[...i[r.BUCKET_ADMIN]],[a.BUCKETS_ADMIN_VIEW]:[...i[r.BUCKET_ADMIN]],[a.OBJECT_BROWSER_VIEW]:[...i[r.BUCKET_OWNER],...i[r.BUCKET_VIEWER]],[a.GROUPS]:[o.ADMIN_LIST_GROUPS,o.ADMIN_ADD_USER_TO_GROUP],[a.GROUPS_VIEW]:[o.ADMIN_GET_GROUP,o.ADMIN_DISABLE_GROUP,o.ADMIN_ENABLE_GROUP,o.ADMIN_REMOVE_USER_FROM_GROUP,o.ADMIN_LIST_USER_POLICIES,o.ADMIN_ADD_USER_TO_GROUP,o.ADMIN_ATTACH_USER_OR_GROUP_POLICY],[a.GROUPS_ADD]:[o.ADMIN_LIST_USERS,o.ADMIN_CREATE_USER],[a.USERS]:[o.ADMIN_LIST_USERS,o.ADMIN_CREATE_USER],[a.USERS_VIEW]:[o.ADMIN_GET_USER,o.ADMIN_ADD_USER_TO_GROUP,o.ADMIN_ENABLE_USER,o.ADMIN_DISABLE_USER,o.ADMIN_DELETE_USER],[a.USER_SA_ACCOUNT_ADD]:[o.ADMIN_CREATE_SERVICEACCOUNT,o.ADMIN_UPDATE_SERVICEACCOUNT,o.ADMIN_REMOVE_SERVICEACCOUNT,o.ADMIN_LIST_SERVICEACCOUNTS],[a.USER_ADD]:[o.ADMIN_CREATE_USER],[a.ACCOUNT_ADD]:[o.ADMIN_CREATE_SERVICEACCOUNT],[a.DASHBOARD]:[o.ADMIN_SERVER_INFO],[a.POLICIES_VIEW]:[o.ADMIN_DELETE_POLICY,o.ADMIN_LIST_GROUPS,o.ADMIN_GET_GROUP,o.ADMIN_GET_POLICY,o.ADMIN_CREATE_POLICY],[a.POLICIES]:[o.ADMIN_LIST_USER_POLICIES,o.ADMIN_CREATE_POLICY],[a.POLICY_ADD]:[o.ADMIN_CREATE_POLICY],[a.SETTINGS]:[o.ADMIN_CONFIG_UPDATE],[a.SETTINGS_VIEW]:[o.ADMIN_CONFIG_UPDATE],[a.EVENT_DESTINATIONS_ADD_SERVICE]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.EVENT_DESTINATIONS_ADD]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.EVENT_DESTINATIONS]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.TIERS]:[o.ADMIN_LIST_TIERS],[a.TIERS_ADD]:[o.ADMIN_SET_TIER,o.ADMIN_LIST_TIERS],[a.TIERS_ADD_SERVICE]:[o.ADMIN_SET_TIER,o.ADMIN_LIST_TIERS],[a.TOOLS]:[o.S3_LISTEN_NOTIFICATIONS,o.S3_LISTEN_BUCKET_NOTIFICATIONS,o.ADMIN_GET_CONSOLE_LOG,o.ADMIN_SERVER_TRACE,o.ADMIN_HEAL,o.ADMIN_HEALTH_INFO,o.ADMIN_SERVER_INFO],[a.TOOLS_LOGS]:[o.ADMIN_GET_CONSOLE_LOG],[a.TOOLS_AUDITLOGS]:[o.ADMIN_HEALTH_INFO],[a.TOOLS_WATCH]:[o.S3_LISTEN_NOTIFICATIONS,o.S3_LISTEN_BUCKET_NOTIFICATIONS],[a.TOOLS_TRACE]:[o.ADMIN_SERVER_TRACE],[a.TOOLS_DIAGNOSTICS]:[o.ADMIN_HEALTH_INFO,o.ADMIN_SERVER_INFO],[a.TOOLS_SPEEDTEST]:[o.ADMIN_HEALTH_INFO],[a.REGISTER_SUPPORT]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.CALL_HOME]:[o.ADMIN_HEALTH_INFO],[a.PROFILE]:[o.ADMIN_HEALTH_INFO],[a.SUPPORT_INSPECT]:[o.ADMIN_HEALTH_INFO],[a.LICENSE]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.SITE_REPLICATION]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.SITE_REPLICATION_STATUS]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.SITE_REPLICATION_ADD]:[o.ADMIN_SERVER_INFO,o.ADMIN_CONFIG_UPDATE],[a.KMS]:[o.KMS_ALL_ACTIONS],[a.KMS_STATUS]:[o.KMS_ALL_ACTIONS,o.KMS_STATUS],[a.KMS_KEYS]:[o.KMS_ALL_ACTIONS,o.KMS_CREATE_KEY,o.KMS_DELETE_KEY,o.KMS_LIST_KEYS,o.KMS_IMPORT_KEY,o.KMS_KEY_STATUS],[a.KMS_KEYS_ADD]:[o.KMS_LIST_KEYS,o.KMS_CREATE_KEY],[a.KMS_KEYS_IMPORT]:[o.KMS_LIST_KEYS,o.KMS_IMPORT_KEY],[a.IDP_LDAP_CONFIGURATIONS]:[o.ADMIN_ALL_ACTIONS,o.ADMIN_CONFIG_UPDATE],[a.IDP_OPENID_CONFIGURATIONS]:[o.ADMIN_ALL_ACTIONS,o.ADMIN_CONFIG_UPDATE],[a.IDP_OPENID_CONFIGURATIONS_ADD]:[o.ADMIN_ALL_ACTIONS,o.ADMIN_CONFIG_UPDATE],[a.IDP_OPENID_CONFIGURATIONS_VIEW]:[o.ADMIN_ALL_ACTIONS,o.ADMIN_CONFIG_UPDATE]},l="arn:aws:s3:::*",c="console-ui",u=(e,t)=>"You require additional permissions in order to "+t+". Please ask your MinIO administrator to grant you "+e.join(", ").toString()+" permission"+(e.length>1?"s":"")+" in order to "+t+".",d=[o.ADMIN_LIST_USERS],p=[o.ADMIN_ADD_USER_TO_GROUP],h=[o.ADMIN_DELETE_USER],m=[o.ADMIN_ENABLE_USER],f=[o.ADMIN_DISABLE_USER],g=[o.ADMIN_LIST_USER_POLICIES,o.ADMIN_LIST_USERS,o.ADMIN_ADD_USER_TO_GROUP,o.ADMIN_REMOVE_USER_FROM_GROUP,o.ADMIN_ATTACH_USER_OR_GROUP_POLICY,o.ADMIN_LIST_USERS,o.ADMIN_DELETE_USER,o.ADMIN_ENABLE_USER,o.ADMIN_DISABLE_USER,o.ADMIN_GET_USER,o.ADMIN_LIST_USER_POLICIES],b=[o.ADMIN_ATTACH_USER_OR_GROUP_POLICY,o.ADMIN_LIST_USER_POLICIES,o.ADMIN_GET_POLICY],y=[o.ADMIN_ADD_USER_TO_GROUP,o.ADMIN_REMOVE_USER_FROM_GROUP,o.ADMIN_LIST_GROUPS,o.ADMIN_ENABLE_USER],v=[o.ADMIN_GET_GROUP],E=[o.ADMIN_ENABLE_USER,o.ADMIN_DISABLE_USER],w=[o.ADMIN_LIST_SERVICEACCOUNTS,o.ADMIN_UPDATE_SERVICEACCOUNT,o.ADMIN_REMOVE_SERVICEACCOUNT],S=[o.ADMIN_ATTACH_USER_OR_GROUP_POLICY,o.ADMIN_LIST_USER_POLICIES],A=[o.ADMIN_REMOVE_USER_FROM_GROUP],_=[o.ADMIN_LIST_GROUPS],T=[o.ADMIN_ADD_USER_TO_GROUP,o.ADMIN_LIST_USERS],C=[o.ADMIN_GET_USER,o.ADMIN_LIST_USERS],x=[o.ADMIN_ADD_USER_TO_GROUP,o.ADMIN_LIST_USERS],I=[o.ADMIN_ATTACH_USER_OR_GROUP_POLICY,o.ADMIN_LIST_USER_POLICIES],O=[o.ADMIN_GET_POLICY],k=[o.ADMIN_ENABLE_GROUP,o.ADMIN_DISABLE_GROUP],N=[o.ADMIN_CREATE_POLICY],R=[o.ADMIN_DELETE_POLICY],M=[o.ADMIN_LIST_USER_POLICIES],L=[o.ADMIN_LIST_GROUPS,o.ADMIN_GET_GROUP],D=[o.S3_DELETE_BUCKET,o.S3_FORCE_DELETE_BUCKET],P=[o.S3_LIST_BUCKET,o.S3_ALL_LIST_BUCKET]},20649:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(56797),o=n.n(r),a=n(33097),i=n.n(a),s=n(56483),l=n(64710);const c=new class{invoke(e,t,n,r){let a=t;"/"===a[0]&&(a=a.slice(1));let i=o()(e,a);if(r)for(let o in r)i.set(o,r[o]);return i.send(n).then((e=>e.body)).catch((e=>401===e.status&&localStorage.getItem("userLoggedIn")&&!a.includes("api/v1/login")?("/"!==window.location.pathname&&localStorage.setItem("redirect-path",window.location.pathname),(0,s.q7)(),void(window.location.href="".concat(l.p,"login"))):this.onError(e)))}onError(e){if(e.status){const t=i()(e.response,"body.message","Error ".concat(e.status.toString()));let n=i()(e.response,"body.detailedMessage","");t===n&&(n="");const r={errorMessage:t.charAt(0).toUpperCase()+t.slice(1),detailedError:n.charAt(0).toUpperCase()+n.slice(1),statusCode:e.status};return Promise.reject(r)}(0,s.q7)(),window.location.href="".concat(l.p,"login")}}},56483:(e,t,n)=>{"use strict";n.d(t,{$f:()=>N,Af:()=>T,GT:()=>S,K7:()=>b,MD:()=>i,OT:()=>x,Tw:()=>M,UM:()=>I,Wi:()=>A,Yj:()=>d,cj:()=>h,dq:()=>C,eQ:()=>v,h4:()=>_,hr:()=>y,l9:()=>m,nO:()=>c,oK:()=>k,q5:()=>f,q7:()=>p,qO:()=>u,qf:()=>R,yz:()=>w,zv:()=>O});var r=n(19816),o=n(33097),a=n.n(o);const i=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],s=["Ki","Mi","Gi","Ti","Pi","Ei"],l=["B",...s],c=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=parseInt(e,10)||0;return u(n,t)},u=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=0;for(;e>=1024&&++n;)e/=1024;const r=["B",...s];return e.toFixed(1)+" "+(t?r[n]:i[n])},d=e=>{document.cookie=e+"=; expires=Thu, 01 Jan 1970 00:00:01 GMT;"},p=()=>{r.Ay.removeItem("token"),r.Ay.removeItem("auth-state"),d("token"),d("idp-refresh-token")},h=e=>{let t=e.getHours()<10?"0".concat(e.getHours()):"".concat(e.getHours()),n=e.getMinutes()<10?"0".concat(e.getMinutes()):"".concat(e.getMinutes()),r=e.getSeconds()<10?"0".concat(e.getSeconds()):"".concat(e.getSeconds());return"".concat(t,":").concat(n,":").concat(r,":").concat(e.getMilliseconds())},m=e=>s.filter((t=>!e||!e.includes(t))).map((e=>({label:e,value:e}))),f=function(e,t){return g(e,t,arguments.length>2&&void 0!==arguments[2]&&arguments[2]).toString(10)},g=function(e,t){let n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const r=parseFloat(e),o=(n?l:i).findIndex((e=>e===t));if(-1===o)return 0;return r*Math.pow(1024,o)},b=e=>{const t=Math.floor(e/86400),n=Math.floor(e%86400/3600),r=Math.floor(e%3600/60),o=e%60,a=[];return t>0&&a.push("".concat(t," day").concat(1!==t?"s":"")),n>0&&a.push("".concat(n," hour").concat(1!==n?"s":"")),r>0&&a.push("".concat(r," minute").concat(1!==r?"s":"")),o>0&&a.push("".concat(o," second").concat(1!==o?"s":"")),a.join(" and ")},y=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"s",n=parseFloat(e);return v(n,t)},v=function(e){switch(arguments.length>1&&void 0!==arguments[1]?arguments[1]:"s"){case"ns":e=Math.floor(1e-9*e);break;case"ms":e=Math.floor(.001*e)}const t=Math.floor(e/86400);e-=3600*t*24;const n=Math.floor(e/3600);e-=3600*n;const r=Math.floor(e/60);if(e-=60*r,t>365){const e=t/365;return"".concat(e," year").concat(1===Math.floor(e)?"":"s")}if(t>30){const e=Math.floor(t/30),n=t-30*e;return"".concat(e," month").concat(1===Math.floor(e)?"":"s"," ").concat(n>0?"".concat(n," day").concat(n>1?"s":""):"")}if(t>=7&&t<=30){const e=Math.floor(t/7);return"".concat(Math.floor(e)," week").concat(1===e?"":"s")}return t>=1&&t<=6?"".concat(t," day").concat(t>1?"s":""):"".concat(n>=1?"".concat(n," hour").concat(n>1?"s":""):""," ").concat(r>=1&&0===n?"".concat(r," minute").concat(r>1?"s":""):""," ").concat(e>=1&&0===r&&0===n?"".concat(e," second").concat(e>1?"s":""):"")},E=e=>"".concat(e<10?"0":"").concat(e),w=function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const r=parseInt(e);if(isNaN(r))return"";const o=new Date(1e3*r);return t?n?"".concat(E(o.getMonth()+1),"/").concat(E(o.getDate())," ").concat(E(o.getHours()),":").concat(E(o.getMinutes())):o.toLocaleString():"".concat(o.getHours(),":").concat(String(o.getMinutes()).padStart(2,"0"))},S=function(e){let t,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],o=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if(t="string"===typeof e?parseInt(e,10):e,0===t)return{total:0,unit:i[0]};const a=Math.floor(Math.log(t)/Math.log(1024)),s=n?1:0,c=t/Math.pow(1024,a),u=r?Math.floor(c):c;return{total:parseFloat(u.toFixed(s)),unit:o?l[a]:i[a]}},A=e=>{const t=1e-9*e,n=Math.round(1e4*(t+Number.EPSILON))/1e4;return"".concat(n," s")},_=e=>{const t=(100*e.split("").reduce(((e,t)=>e+t.charCodeAt(0)+((e<<5)-e)),0)&16777215).toString(16).toUpperCase();return"#".concat(t.padStart(6,"0"))},T=e=>void 0===e?0:e.toString().replace(/\B(?=(\d{3})+(?!\d))/g,","),C=e=>{if(void 0===e)return"0";let t=e.toString(),n="";return e>999&&e<1e6?(t=(e/1e3).toFixed(1),n="K"):e>=1e6&&e<1e9?(t=(e/1e6).toFixed(1),n="M"):e>=1e9&&(t=(e/1e9).toFixed(1),n="B"),t.endsWith(".0")&&(t=t.slice(0,-2)),"".concat(t).concat(n)},x=(e,t)=>{const n=document.createElement("a");n.href=window.URL.createObjectURL(e),n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)},I=e=>{var t;return(null===(t=document.cookie.match("(^|;)\\s*"+e+"\\s*=\\s*([^;]+)"))||void 0===t?void 0:t.pop())||""},O=(e,t)=>{const n=100*e/t;return n>=90?"#C83B51":n>=70?"#FFAB0F":"#07193E"},k=()=>{const e=a()(window.navigator,"platform","undefined");return e||"undefined"},N=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:16,t="",n="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";for(let r=0;re.split("\u202e").join("<\ufffd202e>"),M=e=>{try{return decodeURIComponent(e)}catch(t){return e}}},14558:(e,t,n)=>{"use strict";var r;n.d(t,{RV:()=>i,vP:()=>a,vf:()=>s});const o=(null===(r=document.head.querySelector("[name~=minio-license][content]"))||void 0===r?void 0:r.content)||"AGPL",a=()=>{let e="AGPL";switch(o.toLowerCase()){case"enterprise-lite":case"enterprise-plus":e="enterpriseos";break;case"enterprise":e="enterprise";break;case"standard":e="standard";break;default:e="AGPL"}return e},i=()=>{switch(o.toLowerCase()){case"enterprise-lite":case"enterprise-plus":return"minio";default:return"console"}},s=()=>{const e=a();return["standard","enterprise","enterpriseos"].includes(e||"AGPL")}},64710:(e,t,n)=>{"use strict";n.d(t,{p:()=>r});const r=new URL(document.baseURI).pathname},39947:(e,t,n)=>{"use strict";n.d(t,{$T:()=>o,Ay:()=>l,Nx:()=>i,ZU:()=>a,fT:()=>s});const r=(0,n(80907).Z0)({name:"bucketDetails",initialState:{selectedTab:"summary",loadingBucket:!1,bucketInfo:null},reducers:{setBucketDetailsTab:(e,t)=>{e.selectedTab=t.payload},setBucketDetailsLoad:(e,t)=>{e.loadingBucket=t.payload},setBucketInfo:(e,t)=>{e.bucketInfo=t.payload}}}),{setBucketInfo:o,setBucketDetailsLoad:a}=r.actions,i=e=>e.bucketDetails.loadingBucket,s=e=>e.bucketDetails.bucketInfo,l=r.reducer},43596:(e,t,n)=>{"use strict";n.d(t,{_:()=>i});var r=n(56483),o=n(80907),a=n(56629);const i=(0,o.zD)("buckets/addBucketAsync",(async(e,t)=>{let{getState:n,rejectWithValue:o,dispatch:i}=t;const s=n(),l=s.addBucket.name,c=s.addBucket.versioningEnabled,u=s.addBucket.lockingEnabled,d=s.addBucket.quotaEnabled,p=s.addBucket.quotaSize,h=s.addBucket.quotaUnit,m=s.addBucket.retentionEnabled,f=s.addBucket.retentionMode,g=s.addBucket.retentionUnit,b=s.addBucket.retentionValidity,y=s.system.distributedSetup,v=s.system.siteReplicationInfo,E=s.addBucket.excludeFolders,w=s.addBucket.excludedPrefixes;let S={name:l,versioning:{enabled:!(!y||v.enabled)&&c,excludePrefixes:!y||v.enabled||u?[]:w.split(",").filter((e=>""!==e.trim())),excludeFolders:!(!y||v.enabled||u)&&E},locking:!!y&&u};if(y){if(d){const e=(0,r.q5)(p,h,!0);S.quota={enabled:!0,quota_type:"hard",amount:parseInt(e)}}m&&(S.retention={mode:f,unit:g,validity:b})}return a.F.buckets.makeBucket(S)}))},57676:(e,t,n)=>{"use strict";n.d(t,{A1:()=>h,Ay:()=>S,E2:()=>f,JW:()=>y,N2:()=>p,Og:()=>b,SO:()=>d,VB:()=>g,VY:()=>v,Xb:()=>c,i:()=>l,pw:()=>E,rS:()=>m,tr:()=>u,uQ:()=>w});var r=n(80907),o=n(43596),a=n(85330);const i={loading:!1,isDirty:!1,invalidFields:[],name:"",versioningEnabled:!1,lockingEnabled:!1,lockingFieldDisabled:!1,quotaEnabled:!1,quotaSize:"1",quotaUnit:"Ti",retentionEnabled:!1,retentionMode:a.BT.Compliance,retentionUnit:"days",retentionValidity:180,navigateTo:"",excludeFolders:!1,excludedPrefixes:""},s=(0,r.Z0)({name:"addBuckets",initialState:i,reducers:{setIsDirty:(e,t)=>{e.isDirty=t.payload},setName:(e,t)=>{e.name=t.payload,""===e.name.trim()?e.invalidFields=[...e.invalidFields,"name"]:e.invalidFields=e.invalidFields.filter((e=>"name"!==e))},setVersioning:(e,t)=>{e.versioningEnabled=t.payload,e.versioningEnabled&&e.retentionEnabled||(e.retentionEnabled=!1,e.retentionMode=a.BT.Compliance,e.retentionUnit="days",e.retentionValidity=180)},setExcludeFolders:(e,t)=>{e.excludeFolders=t.payload},setExcludedPrefixes:(e,t)=>{e.excludedPrefixes=t.payload},setEnableObjectLocking:(e,t)=>{e.lockingEnabled=t.payload},setQuota:(e,t)=>{e.quotaEnabled=t.payload,t.payload||(e.quotaSize="1",e.quotaUnit="Ti",e.invalidFields=e.invalidFields.filter((e=>"quotaSize"!==e)))},setQuotaSize:(e,t)=>{e.quotaSize=t.payload,e.quotaEnabled&&(""!==e.quotaSize.trim()&&0!==parseInt(e.quotaSize)&&/^\d*(?:\.\d{1,2})?$/.test(e.quotaSize)?e.invalidFields=e.invalidFields.filter((e=>"quotaSize"!==e)):e.invalidFields=[...e.invalidFields,"quotaSize"])},setQuotaUnit:(e,t)=>{e.quotaUnit=t.payload},setRetention:(e,t)=>{e.retentionEnabled=t.payload,e.versioningEnabled&&e.retentionEnabled||(e.retentionEnabled=!1,e.retentionMode=a.BT.Compliance,e.retentionUnit="days",e.retentionValidity=180),e.retentionEnabled?(e.lockingEnabled=!0,e.lockingFieldDisabled=!0):e.lockingFieldDisabled=!1,e.retentionEnabled&&(Number.isNaN(e.retentionValidity)||e.retentionValidity<1)?e.invalidFields=[...e.invalidFields,"retentionValidity"]:e.invalidFields=e.invalidFields.filter((e=>"retentionValidity"!==e))},setRetentionMode:(e,t)=>{e.retentionMode=t.payload},setRetentionUnit:(e,t)=>{e.retentionUnit=t.payload},setRetentionValidity:(e,t)=>{e.retentionValidity=t.payload,e.retentionEnabled&&(Number.isNaN(e.retentionValidity)||e.retentionValidity<1)?e.invalidFields=[...e.invalidFields,"retentionValidity"]:e.invalidFields=e.invalidFields.filter((e=>"retentionValidity"!==e))},resetForm:e=>i},extraReducers:e=>{e.addCase(o._.pending,(e=>{e.loading=!0})).addCase(o._.rejected,(e=>{e.loading=!1})).addCase(o._.fulfilled,((e,t)=>{e.loading=!1,e.navigateTo=t.payload.data.bucketName?"/buckets":"/buckets/".concat(t.payload.data.bucketName,"/admin")}))}}),{setName:l,setIsDirty:c,setVersioning:u,setEnableObjectLocking:d,setQuota:p,setQuotaSize:h,setQuotaUnit:m,resetForm:f,setRetention:g,setRetentionMode:b,setRetentionUnit:y,setRetentionValidity:v,setExcludedPrefixes:E,setExcludeFolders:w}=s.actions,S=s.reducer},93445:(e,t,n)=>{"use strict";n.d(t,{RG:()=>d,Fj:()=>u,W3:()=>f,IZ:()=>h,$w:()=>m});var r,o=n(37414),a=n(21383),i=n(85330),s=n(56629),l=n(64159);!function(e){e[e.CONTINUE=100]="CONTINUE",e[e.SWITCHING_PROTOCOLS=101]="SWITCHING_PROTOCOLS",e[e.PROCESSING=102]="PROCESSING",e[e.EARLY_HINTS=103]="EARLY_HINTS",e[e.OK=200]="OK",e[e.CREATED=201]="CREATED",e[e.ACCEPTED=202]="ACCEPTED",e[e.NON_AUTHORITATIVE_INFORMATION=203]="NON_AUTHORITATIVE_INFORMATION",e[e.NO_CONTENT=204]="NO_CONTENT",e[e.RESET_CONTENT=205]="RESET_CONTENT",e[e.PARTIAL_CONTENT=206]="PARTIAL_CONTENT",e[e.MULTI_STATUS=207]="MULTI_STATUS",e[e.MULTIPLE_CHOICES=300]="MULTIPLE_CHOICES",e[e.MOVED_PERMANENTLY=301]="MOVED_PERMANENTLY",e[e.MOVED_TEMPORARILY=302]="MOVED_TEMPORARILY",e[e.SEE_OTHER=303]="SEE_OTHER",e[e.NOT_MODIFIED=304]="NOT_MODIFIED",e[e.USE_PROXY=305]="USE_PROXY",e[e.TEMPORARY_REDIRECT=307]="TEMPORARY_REDIRECT",e[e.PERMANENT_REDIRECT=308]="PERMANENT_REDIRECT",e[e.BAD_REQUEST=400]="BAD_REQUEST",e[e.UNAUTHORIZED=401]="UNAUTHORIZED",e[e.PAYMENT_REQUIRED=402]="PAYMENT_REQUIRED",e[e.FORBIDDEN=403]="FORBIDDEN",e[e.NOT_FOUND=404]="NOT_FOUND",e[e.METHOD_NOT_ALLOWED=405]="METHOD_NOT_ALLOWED",e[e.NOT_ACCEPTABLE=406]="NOT_ACCEPTABLE",e[e.PROXY_AUTHENTICATION_REQUIRED=407]="PROXY_AUTHENTICATION_REQUIRED",e[e.REQUEST_TIMEOUT=408]="REQUEST_TIMEOUT",e[e.CONFLICT=409]="CONFLICT",e[e.GONE=410]="GONE",e[e.LENGTH_REQUIRED=411]="LENGTH_REQUIRED",e[e.PRECONDITION_FAILED=412]="PRECONDITION_FAILED",e[e.REQUEST_TOO_LONG=413]="REQUEST_TOO_LONG",e[e.REQUEST_URI_TOO_LONG=414]="REQUEST_URI_TOO_LONG",e[e.UNSUPPORTED_MEDIA_TYPE=415]="UNSUPPORTED_MEDIA_TYPE",e[e.REQUESTED_RANGE_NOT_SATISFIABLE=416]="REQUESTED_RANGE_NOT_SATISFIABLE",e[e.EXPECTATION_FAILED=417]="EXPECTATION_FAILED",e[e.IM_A_TEAPOT=418]="IM_A_TEAPOT",e[e.INSUFFICIENT_SPACE_ON_RESOURCE=419]="INSUFFICIENT_SPACE_ON_RESOURCE",e[e.METHOD_FAILURE=420]="METHOD_FAILURE",e[e.MISDIRECTED_REQUEST=421]="MISDIRECTED_REQUEST",e[e.UNPROCESSABLE_ENTITY=422]="UNPROCESSABLE_ENTITY",e[e.LOCKED=423]="LOCKED",e[e.FAILED_DEPENDENCY=424]="FAILED_DEPENDENCY",e[e.UPGRADE_REQUIRED=426]="UPGRADE_REQUIRED",e[e.PRECONDITION_REQUIRED=428]="PRECONDITION_REQUIRED",e[e.TOO_MANY_REQUESTS=429]="TOO_MANY_REQUESTS",e[e.REQUEST_HEADER_FIELDS_TOO_LARGE=431]="REQUEST_HEADER_FIELDS_TOO_LARGE",e[e.UNAVAILABLE_FOR_LEGAL_REASONS=451]="UNAVAILABLE_FOR_LEGAL_REASONS",e[e.INTERNAL_SERVER_ERROR=500]="INTERNAL_SERVER_ERROR",e[e.NOT_IMPLEMENTED=501]="NOT_IMPLEMENTED",e[e.BAD_GATEWAY=502]="BAD_GATEWAY",e[e.SERVICE_UNAVAILABLE=503]="SERVICE_UNAVAILABLE",e[e.GATEWAY_TIMEOUT=504]="GATEWAY_TIMEOUT",e[e.HTTP_VERSION_NOT_SUPPORTED=505]="HTTP_VERSION_NOT_SUPPORTED",e[e.INSUFFICIENT_STORAGE=507]="INSUFFICIENT_STORAGE",e[e.NETWORK_AUTHENTICATION_REQUIRED=511]="NETWORK_AUTHENTICATION_REQUIRED"}(r||(r={}));const c=(e,t)=>{const n=document.createElement("a");n.href=e,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)},u=async(e,t,n)=>{const r=a.M_.getState().system.anonymousMode;try{const o=await s.F.buckets.downloadMultipleObjects(e,t,{type:i.cM.Json,headers:r?{"X-Anonymous":"1"}:void 0}),a=await o.blob(),l=window.URL.createObjectURL(a);c(l,n)}catch(o){a.M_.dispatch((0,l.C9)({errorMessage:"Download of multiple files failed. ".concat(o.statusText),detailedError:""}))}},d=function(e,t,n,i){let s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:null,l=arguments.length>5?arguments[5]:void 0,u=arguments.length>6?arguments[6]:void 0,d=arguments.length>7?arguments[7]:void 0,h=arguments.length>8?arguments[8]:void 0,m=arguments.length>9?arguments[9]:void 0,f=arguments.length>10?arguments[10]:void 0,g=document.baseURI.replace(window.location.origin,"");const b=a.M_.getState().system.anonymousMode;let y="".concat(window.location.origin).concat(g,"api/v1/buckets/").concat(encodeURIComponent(e),"/objects/download?prefix=").concat(encodeURIComponent(t)).concat(null!==s&&""!==s.trim()?"&override_file_name=".concat(encodeURIComponent(s||"")):"");if(n&&(y=y.concat("&version_id=".concat(n))),i>53687091200)return new p(y,l,d,f);let v=new XMLHttpRequest;return v.open("GET",y,!0),b&&v.setRequestHeader("X-Anonymous","1"),v.addEventListener("progress",(function(e){let t=Math.round(e.loaded/i*100);u&&u(t)}),!1),v.responseType="blob",v.onreadystatechange=()=>{if(v.readyState===XMLHttpRequest.DONE){let e=(e=>e.endsWith("/"))(t)||v.response.size===i;if(v.status===r.OK&&e){const e=v.getResponseHeader("Content-Disposition");let t="download";if(e){t=decodeURIComponent(e).split('"')[1]}d&&d(),(0,o.vy)(l),c(window.URL.createObjectURL(v.response),t)}else{if("application/json"===v.getResponseHeader("Content-Type")){const e=JSON.parse(v.response);if(e.detailedMessage)return void h(e.detailedMessage)}h("Unexpected response, download incomplete.")}}},v.onerror=()=>{h&&h("A network error occurred.")},v.onabort=()=>{m&&m()},v};class p{constructor(e,t,n,r){this.path=void 0,this.id=void 0,this.completeCallback=void 0,this.toastCallback=void 0,this.path=e,this.id=t,this.completeCallback=n,this.toastCallback=r}send(){this.toastCallback();const e=document.createElement("a");e.href=this.path,document.body.appendChild(e),e.click(),document.body.removeChild(e),this.completeCallback(),(0,o.vy)(this.id)}}const h=(e,t)=>{const n=(e&&e["Content-Type"]||"").toString(),r=(e=>{let t=e.split(".").pop();return t?(t=t.toLowerCase(),["jif","jfif","apng","avif","svg","webp","bmp","ico","jpg","jpe","jpeg","gif","png","heic"].includes(t)?"image":["pdf"].includes(t)?"pdf":["wav","mp3","alac","aiff","dsd","pcm"].includes(t)?"audio":["mp4","avi","mpg","webm","mov","flv","mkv","wmv","avchd","mpeg-4"].includes(t)?"video":"none"):"none"})(t||""),o=(e=>{if(e){const t=(e||"").toLowerCase();if(t.includes("image"))return"image";if(t.includes("pdf"))return"pdf";if(t.includes("audio"))return"audio";if(t.includes("video"))return"video"}return"none"})(n);let a=r;return r===o?a=r:"none"===r&&"none"!==o?a=o:"none"===o&&"none"!==r&&(a=r),a},m=e=>{switch(e){case"name":return(e,t)=>e.name.localeCompare(t.name);case"last_modified":return(e,t)=>new Date(e.last_modified).getTime()-new Date(t.last_modified).getTime();case"size":return(e,t)=>(e.size||-1)-(t.size||-1)}},f=(e,t,n)=>{if(0===n.length)return null;const r=n.filter((t=>{var n,r;return(null===(n=t.resource)||void 0===n?void 0:n.endsWith(":".concat(e)))||(null===(r=t.resource)||void 0===r?void 0:r.includes(":".concat(e,"/")))}));if(0===r.length)return null;let o=[];const a=t.split("/");if(r.forEach((e=>{var n;const r=null===(n=e.resource)||void 0===n?void 0:n.split(":"),i=((null===r||void 0===r?void 0:r.pop())||"").split("/");var s;(i.length>1&&i.every(((e,t)=>"*"!==e&&((!a[t]||a[t]===e)&&(a[t]||o.push({name:"".concat(e,"/"),size:0,last_modified:"",version_id:""}),!0)))),"StringEquals"===e.conditionOperator||"StringLike"===e.conditionOperator)&&(null===(s=e.prefixes)||void 0===s||s.forEach((e=>{if(""!==e){const n=e.split("/");let r=[];const i=t.replace(/\/$/,"");if(!e.startsWith(i)&&""!==t)return;n.every(((e,t)=>!e.includes("*")&&""!==e&&(e!==a[t]?(o.push({name:"".concat(r.join("/")).concat(r.length>0?"/":"").concat(e,"/"),size:0,last_modified:"",version_id:""}),!1):(""!==e&&r.push(e),!0))))}})))})),o.length>0){let e=[],t=[];o.forEach((n=>{t.includes(n.name)||(e.push(n),t.push(n.name))})),o=e}return o}},69772:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(65043);var r=n(89923),o=n(22166),a=n(70579);const i=e=>{let{marginRight:t,marginTop:i}=e,s=n(23498);const l=(0,o.d4)((e=>e.system.overrideStyles)),c=s((null===l||void 0===l?void 0:l.backgroundColor)||"#fff").getBrightness()<=128;return(0,a.jsx)(r.xA9,{sx:{"& svg":{width:105,marginRight:t,marginTop:i,fill:c?"#fff":"#081C42"}},children:(0,a.jsx)(r.xul,{})})}},77403:(e,t,n)=>{"use strict";n.d(t,{AF:()=>l,Uz:()=>p,VI:()=>u,_0:()=>s,a_:()=>i,h$:()=>d,mA:()=>h,yE:()=>c});var r=n(89923),o=n(33097),a=n.n(o);const i={formScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto",marginBottom:25},clearButton:{fontFamily:"Inter, sans-serif",border:"0",backgroundColor:"transparent",color:"#393939",fontWeight:600,fontSize:14,marginRight:10,outline:"0",padding:"16px 25px 16px 25px",cursor:"pointer"},configureString:{border:"#EAEAEA 1px solid",borderRadius:4,padding:"24px 50px",overflowY:"auto",height:170,backgroundColor:"#FBFAFA"}},s={actionsTray:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"1rem","& button":{flexGrow:0,marginLeft:8}}},l={iconContainer:{display:"flex",flexDirection:"row",maxWidth:1180,justifyContent:"start",flexWrap:"wrap",width:"100%"},logoButton:{height:"80px"},lambdaNotif:{background:"#ffffff50",border:"#E5E5E5 1px solid",borderRadius:5,width:250,height:80,display:"flex",alignItems:"center",justifyContent:"start",marginBottom:16,marginRight:8,cursor:"pointer",padding:0,overflow:"hidden","&:hover":{backgroundColor:"#ebebeb"}},lambdaNotifIcon:{background:"transparent",display:"flex",alignItems:"center",justifyContent:"center",width:80,height:80,"& img":{maxWidth:46,maxHeight:46}},lambdaNotifTitle:{color:"#07193E",fontSize:16,fontFamily:"Inter,sans-serif",paddingLeft:18}},c=e=>({"& .singleValueContainer":{height:200,border:"".concat(a()(e,"borderColor","#eaeaea")," 1px solid"),borderRadius:2,backgroundColor:a()(e,"bgColor","#fff"),padding:16},"& .titleContainer":{color:a()(e,"mutedText","#87888d"),fontSize:16,fontWeight:600,paddingBottom:14,marginBottom:5,display:"flex",justifyContent:"space-between"},"& .contentContainer":{justifyContent:"center",alignItems:"center",display:"flex",width:"100%",height:140},"& .singleLegendContainer":{display:"flex",alignItems:"center",padding:"0 10px",maxWidth:"100%"},"& .colorContainer":{width:8,height:8,minWidth:8,marginRight:5},"& .legendLabel":{fontSize:"80%",color:a()(e,"mutedText","#87888d"),whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},"& .zoomChartCont":{position:"relative",height:340,width:"100%"}}),u={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}},d={formFieldRow:{marginBottom:".8rem","& .MuiInputLabel-root":{fontWeight:"normal"}}},p={modalButtonBar:{marginTop:15,display:"flex",alignItems:"center",justifyContent:"flex-end",gap:10},modalFormScrollable:{maxHeight:"calc(100vh - 300px)",overflowY:"auto",paddingTop:10}},h={display:"grid",gridTemplateColumns:"2fr 1fr",gridAutoFlow:"row",gap:10,["@media (max-width: ".concat(r.nmC.sm,"px)")]:{gridTemplateColumns:"1fr",gridAutoFlow:"dense"}}},25448:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(65043),o=n(20649);const a=(e,t)=>{const[n,a]=(0,r.useState)(!1);return[n,(n,r,i,s)=>{a(!0),o.A.invoke(n,r,i,s).then((t=>{a(!1),e(t)})).catch((e=>{a(!1),t(e)}))}]}},49555:(e,t,n)=>{"use strict";n.d(t,{A:()=>d});var r=n(65043),o=n(89923),a=n(22166),i=n(33097),s=n.n(i),l=n(21383),c=n(64159),u=n(70579);const d=e=>{let{isModal:t=!1}=e;const n=(0,l.jL)(),i=(0,a.d4)((e=>t?e.system.modalSnackBar:e.system.snackBar)),[d,p]=(0,r.useState)(!1),h=(0,r.useCallback)((()=>{p(!1)}),[]);(0,r.useEffect)((()=>{d||(n((0,c.C9)({detailedError:"",errorMessage:""})),n((0,c.h0)("")))}),[n,d]),(0,r.useEffect)((()=>{""!==i.message&&"error"===i.type&&p(!0)}),[h,i.message,i.type]);const m=s()(i,"message",""),f=s()(i,"detailedErrorMsg","");return"error"!==i.type||""===m?null:(0,u.jsx)(o.qb_,{onClose:h,open:d,variant:"error",message:f||"".concat(m,"."),autoHideDuration:10,closeButton:!0})}},58661:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(65043);var r=n(89923),o=n(70579);const a=e=>{let{isOpen:t=!1,onClose:n,onCancel:a,onConfirm:i,title:s="",isLoading:l,confirmationContent:c,cancelText:u="Cancel",confirmText:d="Confirm",confirmButtonProps:p,cancelButtonProps:h,titleIcon:m=null,confirmationButtonSimple:f=!1}=e;return(0,o.jsxs)(r.ngX,{title:s,titleIcon:m,onClose:n,open:t,customMaxWidth:510,children:[(0,o.jsx)(r.azJ,{children:c}),(0,o.jsxs)(r.azJ,{sx:{display:"flex",justifyContent:"flex-end",gap:10,marginTop:20},children:[(0,o.jsx)(r.$nd,{onClick:a||n,disabled:l,type:"button",...h,variant:"regular",id:"confirm-cancel",label:u}),(0,o.jsx)(r.$nd,{id:"confirm-ok",onClick:i,label:d,disabled:l,variant:"secondary",...p})]})]})}},96826:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>v});var r=n(65043),o=n(22166),a=n(21383),i=n(89923),s=n(18575),l=n(58387),c=n(37414),u=n(94574),d=n(33097),p=n.n(d),h=n(70579);const m=u.Ay.button((e=>{let{theme:t}=e;return{backgroundColor:"transparent",border:0,right:0,top:5,marginTop:15,position:"absolute",cursor:"pointer","& .closeIcon":{backgroundColor:p()(t,"buttons.regular.hover.background","#E6EAEB"),display:"block",width:18,height:18,borderRadius:"100%","&:hover":{backgroundColor:p()(t,"mutedText","#E9EDEE")},"&::before":{width:1,height:9,top:"50%",content:"' '",position:"absolute",transform:"translate(-50%, -50%) rotate(45deg)",borderLeft:"".concat(p()(t,"fontColor","#000")," 2px solid")},"&::after":{width:1,height:9,top:"50%",content:"' '",position:"absolute",transform:"translate(-50%, -50%) rotate(-45deg)",borderLeft:"".concat(p()(t,"fontColor","#000")," 2px solid")}}}})),f=u.Ay.div((e=>{let{theme:t}=e;return{display:"flex",alignItems:"center",width:"100%","span.headItem":{fontSize:14,fontWeight:"bold",width:270,whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},"& .iconContainer":{paddingTop:5,marginRight:5,"& svg":{width:16,height:16}},"& .completedSuccess":{color:p()(t,"signalColors.good","#4CCB92")},"& .inProgress":{color:p()(t,"signalColors.main","#2781B0")},"& .completedError":{color:p()(t,"signalColors.danger","#C83B51")},"& .cancelledAction":{color:p()(t,"signalColors.warning","#FFBD62")}}})),g=e=>{let{objectToDisplay:t,deleteFromList:n}=e;const o="".concat(t.prefix);return(0,h.jsx)(r.Fragment,{children:(0,h.jsxs)(i.azJ,{sx:{borderBottom:"#E2E2E2 1px solid",padding:"15px 5px",margin:"0 30px",position:"relative","& .showOnHover":{opacity:1,transitionDuration:"0.2s"},"&:hover":{"& .showOnHover":{opacity:1}}},className:100!==t.percentage?"inProgress":"",children:[(0,h.jsx)(i.azJ,{sx:{"& .closeButton":{backgroundColor:"transparent",border:0,right:0,top:5,marginTop:15,position:"absolute"}},children:(0,h.jsx)(m,{onClick:()=>{if(t.done)n(t.instanceID);else{const e=(0,c.OV)(t.ID);e&&e.abort()}},className:"closeButton hideOnProgress",children:(0,h.jsx)("span",{className:"closeIcon"})})}),(0,h.jsx)(i.azJ,{sx:{display:"flex",alignItems:"center"},children:(0,h.jsxs)(i.azJ,{sx:{width:295,"& .bucketName":{fontSize:12}},children:[(0,h.jsx)(i.m_M,{tooltip:o,placement:"top",children:(0,h.jsxs)(f,{children:[(0,h.jsx)("span",{className:(0,l.A)("iconContainer",{inProgress:!t.done&&!t.failed&&!t.cancelled,completedSuccess:t.done&&!t.failed&&!t.cancelled,completedError:t.failed,cancelledAction:t.cancelled}),children:t.cancelled?(0,h.jsx)(i.rXL,{}):(0,h.jsx)(r.Fragment,{children:t.failed?(0,h.jsx)(i.aaC,{}):(0,h.jsx)(r.Fragment,{children:t.done?(0,h.jsx)(i.xhy,{}):(0,h.jsx)(r.Fragment,{children:"download"===t.type?(0,h.jsx)(i.CB9,{}):(0,h.jsx)(i.VJE,{})})})})}),(0,h.jsx)("span",{className:"headItem ".concat(t.failed?"completedError":""),children:o})]})}),(0,h.jsxs)(i.azJ,{className:"muted bucketName",children:[(0,h.jsx)("strong",{children:"Bucket: "}),t.bucketName]})]})}),(0,h.jsx)(i.azJ,{sx:{marginTop:5},children:t.waitingForFile?(0,h.jsx)(s.A,{indeterminate:!0,value:0,ready:!1}):(0,h.jsx)(s.A,{value:t.percentage,ready:t.done,error:t.failed,cancelled:t.cancelled,withLabel:!0,notificationLabel:""!==t.errorMessage?t.errorMessage:""})})]})})};var b=n(6035),y=n(29977);const v=()=>{const e=(0,a.jL)(),t=(0,o.d4)((e=>e.objectBrowser.objectManager.objectsToManage)),n=(0,o.d4)((e=>e.objectBrowser.objectManager.managerOpen)),s=(0,o.d4)((e=>e.system.anonymousMode));return(0,h.jsx)(r.Fragment,{children:n&&(0,h.jsxs)(i.azJ,{sx:{boxShadow:"rgba(0, 0, 0, 0.08) 0 2px 10px",position:"absolute",right:20,top:62,width:400,overflowY:"hidden",overflowX:"hidden",borderRadius:3,zIndex:1e3,padding:0,height:0,transitionDuration:"0.3s",visibility:"hidden","&.open":{visibility:"visible",minHeight:400},"&.downloadContainerAnonymous":{top:70}},className:"".concat(s?"downloadContainerAnonymous":""," ").concat(n?"open":""),useBackground:!0,withBorders:!0,children:[(0,h.jsx)(i.azJ,{sx:{position:"absolute",right:28,top:25},children:(0,h.jsx)(i.m_M,{tooltip:"Clean Completed Objects",placement:"bottom",children:(0,h.jsx)(i.K0,{"aria-label":"Clear Completed List",onClick:()=>e((0,b.AE)()),children:(0,h.jsx)(i.TFC,{})})})}),(0,h.jsx)(i.azJ,{sx:{fontSize:16,fontWeight:"bold",textAlign:"left",paddingBottom:20,borderBottom:"#E2E2E2 1px solid",margin:"25px 30px 5px 30px"},children:"Downloads / Uploads"}),(0,h.jsx)(i.azJ,{sx:{overflowY:"auto",overflowX:"hidden",minHeight:250,maxHeight:335,height:"100%",width:"100%",display:"flex",flexDirection:"column"},children:(0,h.jsx)(y.A,{rowRenderFunction:function(n){return(0,h.jsx)(g,{objectToDisplay:t[n],deleteFromList:t=>e((0,b.EG)(t))})},totalItems:t.length,defaultHeight:110})})]})})}},59707:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var r=n(65043),o=n(94574),a=n(33097),i=n.n(a),s=n(89923),l=n(22166),c=n(6035),u=n(21383),d=n(70579);const p=o.Ay.div((e=>{let{theme:t}=e;return{position:"absolute",display:"block",width:15,height:15,top:0,right:4,marginTop:4,transitionDuration:"0.2s",color:i()(t,"signalColors.good","#32C787"),"& svg":{width:10,height:10,top:"50%",left:"50%",transitionDuration:"0.2s"},"&.newItem":{color:i()(t,"signalColors.info","#2781B0"),"& svg":{width:15,height:15}}}})),h=()=>{const e=(0,u.jL)(),t=(0,l.d4)((e=>e.objectBrowser.objectManager.objectsToManage)),n=(0,l.d4)((e=>e.objectBrowser.objectManager.newItems)),o=(0,l.d4)((e=>e.objectBrowser.objectManager.managerOpen)),[a,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{t.length>0&&!o&&(i(!0),setTimeout((()=>{i(!1)}),300))}),[t.length,o]),(0,d.jsx)(r.Fragment,{children:t&&t.length>0&&(0,d.jsx)(s.$nd,{"aria-label":"Refresh List",onClick:()=>{e((0,c.vv)())},icon:(0,d.jsxs)(r.Fragment,{children:[(0,d.jsx)(p,{className:a?"newItem":"",style:{opacity:t.length>0&&n?1:0},children:(0,d.jsx)(s.GQ2,{})}),(0,d.jsx)(s.W2Y,{style:{width:20,height:20,marginTop:-2}})]}),id:"object-manager-toggle",style:{position:"relative",padding:"0 10px"}})})}},48793:(e,t,n)=>{"use strict";n.d(t,{A:()=>h});var r=n(65043),o=n(89923),a=n(59707),i=n(6681),s=n(22166),l=n(21383),c=n(64159),u=n(33479),d=n(70579);const p=()=>{const e=(0,l.jL)(),t=(0,s.d4)((e=>e.system.darkMode));return(0,d.jsx)(i.A,{tooltip:"".concat(t?"Light":"Dark"," Mode"),children:(0,d.jsx)(o.$nd,{id:"dark-mode-activator",icon:t?(0,d.jsx)(o.LPG,{}):(0,d.jsx)(o.vmc,{}),onClick:()=>{const n=!!t;e((0,c.S8)(!n)),(0,u.vb)(n?"off":"on")}})})},h=e=>{let{label:t,actions:n,middleComponent:i}=e;return(0,d.jsx)(o.zYs,{label:t,actions:(0,d.jsxs)(r.Fragment,{children:[n,(0,d.jsx)(p,{}),(0,d.jsx)(a.A,{})]}),middleComponent:i})}},18575:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(65043);var r=n(89923),o=n(70579);function a(e){let t="";return e.error?t="Error: ".concat(e.notificationLabel||""):e.cancelled&&(t="Cancelled"),(0,o.jsx)(r.z21,{variant:"determinate",value:e.value,color:e.color,progressLabel:!0,notificationLabel:t})}const i=e=>{let t,{value:n,ready:i,indeterminate:s,withLabel:l,size:c="regular",error:u,cancelled:d,notificationLabel:p}=e;t=u?"red":d?"orange":100===n&&i?"green":"blue";const h={variant:!s||i||d?"determinate":"indeterminate",value:i&&!u?100:n,color:t,notificationLabel:p||""};return l?(0,o.jsx)(a,{...h,error:!!u,cancelled:!!d}):"small"===c?(0,o.jsx)(r.z21,{...h,sx:{height:6,borderRadius:6}}):(0,o.jsx)(r.z21,{...h})}},64681:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(65043);var r=n(89923),o=n(70579);const a=e=>{let{placeholder:t="",onChange:n,overrideClass:a,value:i,id:s="search-resource",label:l="",sx:c}=e;return(0,o.jsx)(r.cl_,{placeholder:t,className:a||"",id:s,label:l,onChange:e=>{n(e.target.value)},value:i,startIcon:(0,o.jsx)(r.WIv,{}),sx:c})}},6681:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(65043),o=n(89923),a=n(70579);const i=e=>{let{tooltip:t,children:n,errorProps:i=null,placement:s}=e;return(0,a.jsx)(o.m_M,{tooltip:t,placement:s,children:(0,a.jsx)("span",{children:i?(0,r.cloneElement)(n,{...i}):n})})}},29977:(e,t,n)=>{"use strict";n.d(t,{A:()=>x});var r=n(65043),o=n(58168),a=n(31798),i=n(77387),s=Number.isNaN||function(e){return"number"===typeof e&&e!==e};function l(e,t){if(e.length!==t.length)return!1;for(var n=0;n=t?e.call(null):r.id=requestAnimationFrame(o)}))};return r}var h=-1;function m(e){if(void 0===e&&(e=!1),-1===h||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",document.body.appendChild(t),h=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return h}var f=null;function g(e){if(void 0===e&&(e=!1),null===f||e){var t=document.createElement("div"),n=t.style;n.width="50px",n.height="50px",n.overflow="scroll",n.direction="rtl";var r=document.createElement("div"),o=r.style;return o.width="100px",o.height="100px",t.appendChild(r),document.body.appendChild(t),t.scrollLeft>0?f="positive-descending":(t.scrollLeft=1,f=0===t.scrollLeft?"negative":"positive-ascending"),document.body.removeChild(t),f}return f}var b=function(e,t){return e};function y(e){var t,n=e.getItemOffset,s=e.getEstimatedTotalSize,l=e.getItemSize,u=e.getOffsetForIndexAndAlignment,h=e.getStartIndexForOffset,f=e.getStopIndexForStartIndex,y=e.initInstanceProps,E=e.shouldResetStyleCacheOnItemSizeChange,w=e.validateProps;return t=function(e){function t(t){var r;return(r=e.call(this,t)||this)._instanceProps=y(r.props,(0,a.A)(r)),r._outerRef=void 0,r._resetIsScrollingTimeoutId=null,r.state={instance:(0,a.A)(r),isScrolling:!1,scrollDirection:"forward",scrollOffset:"number"===typeof r.props.initialScrollOffset?r.props.initialScrollOffset:0,scrollUpdateWasRequested:!1},r._callOnItemsRendered=void 0,r._callOnItemsRendered=c((function(e,t,n,o){return r.props.onItemsRendered({overscanStartIndex:e,overscanStopIndex:t,visibleStartIndex:n,visibleStopIndex:o})})),r._callOnScroll=void 0,r._callOnScroll=c((function(e,t,n){return r.props.onScroll({scrollDirection:e,scrollOffset:t,scrollUpdateWasRequested:n})})),r._getItemStyle=void 0,r._getItemStyle=function(e){var t,o=r.props,a=o.direction,i=o.itemSize,s=o.layout,c=r._getItemStyleCache(E&&i,E&&s,E&&a);if(c.hasOwnProperty(e))t=c[e];else{var u=n(r.props,e,r._instanceProps),d=l(r.props,e,r._instanceProps),p="horizontal"===a||"horizontal"===s,h="rtl"===a,m=p?u:0;c[e]=t={position:"absolute",left:h?void 0:m,right:h?m:void 0,top:p?0:u,height:p?"100%":d,width:p?d:"100%"}}return t},r._getItemStyleCache=void 0,r._getItemStyleCache=c((function(e,t,n){return{}})),r._onScrollHorizontal=function(e){var t=e.currentTarget,n=t.clientWidth,o=t.scrollLeft,a=t.scrollWidth;r.setState((function(e){if(e.scrollOffset===o)return null;var t=r.props.direction,i=o;if("rtl"===t)switch(g()){case"negative":i=-o;break;case"positive-descending":i=a-n-o}return i=Math.max(0,Math.min(i,a-n)),{isScrolling:!0,scrollDirection:e.scrollOffsets.clientWidth?m():0:s.scrollHeight>s.clientHeight?m():0}this.scrollTo(u(this.props,e,t,a,this._instanceProps,i))},S.componentDidMount=function(){var e=this.props,t=e.direction,n=e.initialScrollOffset,r=e.layout;if("number"===typeof n&&null!=this._outerRef){var o=this._outerRef;"horizontal"===t||"horizontal"===r?o.scrollLeft=n:o.scrollTop=n}this._callPropsCallbacks()},S.componentDidUpdate=function(){var e=this.props,t=e.direction,n=e.layout,r=this.state,o=r.scrollOffset;if(r.scrollUpdateWasRequested&&null!=this._outerRef){var a=this._outerRef;if("horizontal"===t||"horizontal"===n)if("rtl"===t)switch(g()){case"negative":a.scrollLeft=-o;break;case"positive-ascending":a.scrollLeft=o;break;default:var i=a.clientWidth,s=a.scrollWidth;a.scrollLeft=s-i-o}else a.scrollLeft=o;else a.scrollTop=o}this._callPropsCallbacks()},S.componentWillUnmount=function(){null!==this._resetIsScrollingTimeoutId&&d(this._resetIsScrollingTimeoutId)},S.render=function(){var e=this.props,t=e.children,n=e.className,a=e.direction,i=e.height,l=e.innerRef,c=e.innerElementType,u=e.innerTagName,d=e.itemCount,p=e.itemData,h=e.itemKey,m=void 0===h?b:h,f=e.layout,g=e.outerElementType,y=e.outerTagName,v=e.style,E=e.useIsScrolling,w=e.width,S=this.state.isScrolling,A="horizontal"===a||"horizontal"===f,_=A?this._onScrollHorizontal:this._onScrollVertical,T=this._getRangeToRender(),C=T[0],x=T[1],I=[];if(d>0)for(var O=C;O<=x;O++)I.push((0,r.createElement)(t,{data:p,key:m(O,p),index:O,isScrolling:E?S:void 0,style:this._getItemStyle(O)}));var k=s(this.props,this._instanceProps);return(0,r.createElement)(g||y||"div",{className:n,onScroll:_,ref:this._outerRefSetter,style:(0,o.A)({position:"relative",height:i,width:w,overflow:"auto",WebkitOverflowScrolling:"touch",willChange:"transform",direction:a},v)},(0,r.createElement)(c||u||"div",{children:I,ref:l,style:{height:A?"100%":k,pointerEvents:S?"none":void 0,width:A?k:"100%"}}))},S._callPropsCallbacks=function(){if("function"===typeof this.props.onItemsRendered&&this.props.itemCount>0){var e=this._getRangeToRender(),t=e[0],n=e[1],r=e[2],o=e[3];this._callOnItemsRendered(t,n,r,o)}if("function"===typeof this.props.onScroll){var a=this.state,i=a.scrollDirection,s=a.scrollOffset,l=a.scrollUpdateWasRequested;this._callOnScroll(i,s,l)}},S._getRangeToRender=function(){var e=this.props,t=e.itemCount,n=e.overscanCount,r=this.state,o=r.isScrolling,a=r.scrollDirection,i=r.scrollOffset;if(0===t)return[0,0,0,0];var s=h(this.props,i,this._instanceProps),l=f(this.props,s,i,this._instanceProps),c=o&&"backward"!==a?1:Math.max(1,n),u=o&&"forward"!==a?1:Math.max(1,n);return[Math.max(0,s-c),Math.max(0,Math.min(t-1,l+u)),s,l]},t}(r.PureComponent),t.defaultProps={direction:"ltr",itemData:void 0,layout:"vertical",overscanCount:2,useIsScrolling:!1},t}var v=function(e,t){e.children,e.direction,e.height,e.layout,e.innerTagName,e.outerTagName,e.width,t.instance},E=y({getItemOffset:function(e,t){return t*e.itemSize},getItemSize:function(e,t){return e.itemSize},getEstimatedTotalSize:function(e){var t=e.itemCount;return e.itemSize*t},getOffsetForIndexAndAlignment:function(e,t,n,r,o,a){var i=e.direction,s=e.height,l=e.itemCount,c=e.itemSize,u=e.layout,d=e.width,p="horizontal"===i||"horizontal"===u?d:s,h=Math.max(0,l*c-p),m=Math.min(h,t*c),f=Math.max(0,t*c-p+c+a);switch("smart"===n&&(n=r>=f-p&&r<=m+p?"auto":"center"),n){case"start":return m;case"end":return f;case"center":var g=Math.round(f+(m-f)/2);return gh+Math.floor(p/2)?h:g;default:return r>=f&&r<=m?r:r0&&void 0!==arguments[0]&&arguments[0];this._memoizedUnloadedRanges=[],e&&this._ensureRowsLoaded(this._lastRenderedStartIndex,this._lastRenderedStopIndex)}},{key:"componentDidMount",value:function(){0}},{key:"render",value:function(){return(0,this.props.children)({onItemsRendered:this._onItemsRendered,ref:this._setRef})}},{key:"_ensureRowsLoaded",value:function(e,t){var n=this.props,r=n.isItemLoaded,o=n.itemCount,a=n.minimumBatchSize,i=void 0===a?10:a,s=n.threshold,l=void 0===s?15:s,c=function(e){for(var t=e.isItemLoaded,n=e.itemCount,r=e.minimumBatchSize,o=e.startIndex,a=e.stopIndex,i=[],s=null,l=null,c=o;c<=a;c++)t(c)?null!==l&&(i.push(s,l),s=l=null):(l=c,null===s&&(s=c));if(null!==l){for(var u=Math.min(Math.max(l,s+r-1),n-1),d=l+1;d<=u&&!t(d);d++)l=d;i.push(s,l)}if(i.length)for(;i[1]-i[0]+10;){var p=i[0]-1;if(t(p))break;i[0]=p}return i}({isItemLoaded:r,itemCount:o,minimumBatchSize:i,startIndex:Math.max(0,e-l),stopIndex:Math.min(o-1,t+l)});(this._memoizedUnloadedRanges.length!==c.length||this._memoizedUnloadedRanges.some((function(e,t){return c[t]!==e})))&&(this._memoizedUnloadedRanges=c,this._loadUnloadedRanges(c))}},{key:"_loadUnloadedRanges",value:function(e){for(var t=this,n=this.props.loadMoreItems||this.props.loadMoreRows,r=function(r){var o=e[r],a=e[r+1],i=n(o,a);null!=i&&i.then((function(){if(function(e){var t=e.lastRenderedStartIndex,n=e.lastRenderedStopIndex,r=e.startIndex,o=e.stopIndex;return!(r>n||o{let{rowRenderFunction:t,totalItems:n,defaultHeight:o}=e;const a=e=>{let{index:n,style:r}=e;return(0,T.jsx)("div",{style:r,children:t(n)})};return(0,T.jsx)(r.Fragment,{children:(0,T.jsx)(A,{isItemLoaded:e=>!!C[e],loadMoreItems:(e,t)=>{for(let n=e;n<=t;n++)C[n]=1;for(let n=e;n<=t;n++)C[n]=2},itemCount:n,children:e=>{let{onItemsRendered:t,ref:r}=e;return(0,T.jsx)(_.t$,{children:e=>{let{width:i,height:s}=e;return(0,T.jsx)(E,{itemSize:o||220,height:s,itemCount:n,width:i,ref:r,onItemsRendered:t,children:a})}})}})})}},80882:(e,t,n)=>{"use strict";n.d(t,{A:()=>m,p:()=>h});var r=n(65043),o=n(33097),a=n.n(o),i=n(94574),s=n(89923),l=n(60163),c=n(4240),u=n(17869),d=n(70579);const p=i.Ay.div((e=>{let{theme:t}=e;return{maxHeight:"110px",display:"flex",alignItems:"center",justifyContent:"space-between",fontSize:"19px",padding:"10px","& .unit-value":{fontSize:"50px",color:a()(t,"signalColors.main","#07193E")},"& .unit-type":{fontSize:"18px",color:a()(t,"mutedText","#87888d"),marginTop:"20px",marginLeft:"5px"},"& .usage-label":{display:"flex",alignItems:"center",fontSize:"16px",fontWeight:600,marginRight:"20px",marginTop:"-10px","& .min-icon":{marginLeft:"10px",height:16,width:16}}}})),h=(0,d.jsx)(r.Fragment,{children:(0,d.jsxs)("div",{children:[(0,d.jsx)("strong",{children:" Not what you expected?"}),(0,d.jsx)("br",{}),"This Usage value is comparable to ",(0,d.jsx)("strong",{children:"mc du --versions"})," which represents the size of all object versions that exist in the buckets.",(0,d.jsx)("br",{}),"Running"," ",(0,d.jsx)("a",{target:"_blank",href:"https://min.io/docs/minio/linux/reference/minio-mc/mc-du.html",children:"mc du"})," ","without the ",(0,d.jsx)("strong",{children:"--versions"})," flag or"," ",(0,d.jsx)("a",{target:"_blank",href:"https://man7.org/linux/man-pages/man1/df.1.html",children:"df"})," ","will provide different values corresponding to the size of all"," ",(0,d.jsx)("strong",{children:"current"})," versions and the physical disk space occupied respectively."]})}),m=e=>{let{usageValue:t,total:n,unit:r}=e;const o=[{value:n,color:"#D6D6D6",label:"Free Space"},{value:t,color:"#073052",label:"Used Space"}];return(0,d.jsxs)(p,{children:[(0,d.jsxs)(s.azJ,{children:[(0,d.jsx)("div",{className:"usage-label",children:(0,d.jsx)("span",{children:"Reported Usage"})}),(0,d.jsxs)(s.V7x,{content:h,placement:"left",children:[(0,d.jsx)("label",{className:"unit-value",style:{fontWeight:600},children:n}),(0,d.jsx)("label",{className:"unit-type",children:r})]})]}),(0,d.jsx)(s.azJ,{children:(0,d.jsx)(s.azJ,{sx:{flex:1},children:(0,d.jsx)("div",{style:{position:"relative",width:105,height:105,top:"-8px"},children:(0,d.jsx)("div",{children:(0,d.jsx)(l.r,{width:105,height:105,children:(0,d.jsx)(c.F,{data:o,cx:"50%",cy:"50%",dataKey:"value",outerRadius:45,innerRadius:35,startAngle:-70,endAngle:360,animationDuration:1,children:o.map(((e,t)=>(0,d.jsx)(u.f,{fill:e.color},"cellCapacity-".concat(t))))})})})})})})]})}},47027:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>c,Nv:()=>s,ZQ:()=>i,pA:()=>l});var r=n(80907),o=n(39820);const a=(0,r.Z0)({name:"dashboard",initialState:{status:"idle",zoom:{openZoom:!1,widgetRender:null},usage:null,widgetLoadVersion:0},reducers:{openZoomPage:(e,t)=>{e.zoom.openZoom=!0,e.zoom.widgetRender=t.payload},closeZoomPage:e=>{e.zoom.openZoom=!1,e.zoom.widgetRender=null},reloadWidgets:e=>{e.widgetLoadVersion++}},extraReducers:e=>{e.addCase(o.i.pending,(e=>{e.status="loading"})).addCase(o.i.rejected,(e=>{e.status="failed"})).addCase(o.i.fulfilled,((e,t)=>{e.status="idle",e.usage=t.payload}))}}),{openZoomPage:i,closeZoomPage:s,reloadWidgets:l}=a.actions,c=a.reducer},39820:(e,t,n)=>{"use strict";n.d(t,{i:()=>s});var r=n(80907),o=n(64159),a=n(56629),i=n(53518);const s=(0,r.zD)("dashboard/getUsageAsync",(async(e,t)=>{let{getState:n,rejectWithValue:r,dispatch:s}=t;return a.F.admin.adminInfo().then((e=>e.data)).catch((e=>(s((0,o.C9)((0,i.S)(e.error))),r(e))))}))},39161:(e,t,n)=>{"use strict";n.d(t,{$:()=>o,A:()=>a});const r=(0,n(80907).Z0)({name:"destination",initialState:{loading:!0},reducers:{setDestinationLoading:(e,t)=>{e.loading=t.payload}}}),{setDestinationLoading:o}=r.actions,a=r.reducer},87569:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>i,Zq:()=>a,zJ:()=>o});const r=(0,n(80907).Z0)({name:"trace",initialState:{message:{}},reducers:{healthInfoMessageReceived:(e,t)=>{e.message=t.payload},healthInfoResetMessage:e=>{e.message={}}}}),{healthInfoMessageReceived:o,healthInfoResetMessage:a}=r.actions,i=r.reducer},55968:(e,t,n)=>{"use strict";n.d(t,{A:()=>Cr});var r={};n.r(r),n.d(r,{attentionMarkers:()=>Tt,contentInitial:()=>vt,disable:()=>Ct,document:()=>yt,flow:()=>wt,flowInitial:()=>Et,insideSpan:()=>_t,string:()=>St,text:()=>At});var o={};n.r(o),n.d(o,{boolean:()=>An,booleanish:()=>_n,commaOrSpaceSeparated:()=>On,commaSeparated:()=>In,number:()=>Cn,overloadedBoolean:()=>Tn,spaceSeparated:()=>xn});var a=n(65043),i=n(65837);function s(e){return e&&"object"===typeof e?"position"in e||"type"in e?c(e.position):"start"in e||"end"in e?c(e):"line"in e||"column"in e?l(e):"":""}function l(e){return u(e&&e.line)+":"+u(e&&e.column)}function c(e){return l(e&&e.start)+"-"+l(e&&e.end)}function u(e){return e&&"number"===typeof e?e:1}class d extends Error{constructor(e,t,n){const r=[null,null];let o={start:{line:null,column:null},end:{line:null,column:null}};if(super(),"string"===typeof t&&(n=t,t=void 0),"string"===typeof n){const e=n.indexOf(":");-1===e?r[1]=n:(r[0]=n.slice(0,e),r[1]=n.slice(e+1))}t&&("type"in t||"position"in t?t.position&&(o=t.position):"start"in t||"end"in t?o=t:("line"in t||"column"in t)&&(o.start=t)),this.name=s(t)||"1:1",this.message="object"===typeof e?e.message:e,this.stack="","object"===typeof e&&e.stack&&(this.stack=e.stack),this.reason=this.message,this.fatal,this.line=o.start.line,this.column=o.start.column,this.position=o,this.source=r[0],this.ruleId=r[1],this.file,this.actual,this.expected,this.url,this.note}}d.prototype.file="",d.prototype.name="",d.prototype.reason="",d.prototype.message="",d.prototype.stack="",d.prototype.fatal=null,d.prototype.column=null,d.prototype.line=null,d.prototype.source=null,d.prototype.ruleId=null,d.prototype.position=null;const p={basename:function(e,t){if(void 0!==t&&"string"!==typeof t)throw new TypeError('"ext" argument must be a string');h(e);let n,r=0,o=-1,a=e.length;if(void 0===t||0===t.length||t.length>e.length){for(;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else o<0&&(n=!0,o=a+1);return o<0?"":e.slice(r,o)}if(t===e)return"";let i=-1,s=t.length-1;for(;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else i<0&&(n=!0,i=a+1),s>-1&&(e.charCodeAt(a)===t.charCodeAt(s--)?s<0&&(o=a):(s=-1,o=i));r===o?o=i:o<0&&(o=e.length);return e.slice(r,o)},dirname:function(e){if(h(e),0===e.length)return".";let t,n=-1,r=e.length;for(;--r;)if(47===e.charCodeAt(r)){if(t){n=r;break}}else t||(t=!0);return n<0?47===e.charCodeAt(0)?"/":".":1===n&&47===e.charCodeAt(0)?"//":e.slice(0,n)},extname:function(e){h(e);let t,n=e.length,r=-1,o=0,a=-1,i=0;for(;n--;){const s=e.charCodeAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?a<0?a=n:1!==i&&(i=1):a>-1&&(i=-1);else if(t){o=n+1;break}}if(a<0||r<0||0===i||1===i&&a===r-1&&a===o+1)return"";return e.slice(a,r)},join:function(){let e,t=-1;for(var n=arguments.length,r=new Array(n),o=0;o2){if(r=o.lastIndexOf("/"),r!==o.length-1){r<0?(o="",a=0):(o=o.slice(0,r),a=o.length-1-o.lastIndexOf("/")),i=l,s=0;continue}}else if(o.length>0){o="",a=0,i=l,s=0;continue}t&&(o=o.length>0?o+"/..":"..",a=2)}else o.length>0?o+="/"+e.slice(i+1,l):o=e.slice(i+1,l),a=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return o}(e,!t);0!==n.length||t||(n=".");n.length>0&&47===e.charCodeAt(e.length-1)&&(n+="/");return t?"/"+n:n}(e)},sep:"/"};function h(e){if("string"!==typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const m={cwd:function(){return"/"}};function f(e){return null!==e&&"object"===typeof e&&e.href&&e.origin}function g(e){if("string"===typeof e)e=new URL(e);else if(!f(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if("file:"!==e.protocol){const e=new TypeError("The URL must be of scheme file");throw e.code="ERR_INVALID_URL_SCHEME",e}return function(e){if(""!==e.hostname){const e=new TypeError('File URL host must be "localhost" or empty on darwin');throw e.code="ERR_INVALID_FILE_URL_HOST",e}const t=e.pathname;let n=-1;for(;++n1?l-1:0),u=1;uo.length;let c;l&&o.push(a);try{c=e.apply(this,o)}catch(r){if(l&&n)throw r;return a(r)}l||(c&&c.then&&"function"===typeof c.then?c.then(i,a):c instanceof Error?a(c):i(c))}function a(e){if(!n){n=!0;for(var r=arguments.length,o=new Array(r>1?r-1:0),a=1;ae.length){for(;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else o<0&&(n=!0,o=a+1);return o<0?"":e.slice(r,o)}if(t===e)return"";let i=-1,s=t.length-1;for(;a--;)if(47===e.charCodeAt(a)){if(n){r=a+1;break}}else i<0&&(n=!0,i=a+1),s>-1&&(e.charCodeAt(a)===t.charCodeAt(s--)?s<0&&(o=a):(s=-1,o=i));r===o?o=i:o<0&&(o=e.length);return e.slice(r,o)},dirname:function(e){if(I(e),0===e.length)return".";let t,n=-1,r=e.length;for(;--r;)if(47===e.charCodeAt(r)){if(t){n=r;break}}else t||(t=!0);return n<0?47===e.charCodeAt(0)?"/":".":1===n&&47===e.charCodeAt(0)?"//":e.slice(0,n)},extname:function(e){I(e);let t,n=e.length,r=-1,o=0,a=-1,i=0;for(;n--;){const s=e.charCodeAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?a<0?a=n:1!==i&&(i=1):a>-1&&(i=-1);else if(t){o=n+1;break}}if(a<0||r<0||0===i||1===i&&a===r-1&&a===o+1)return"";return e.slice(a,r)},join:function(){let e,t=-1;for(var n=arguments.length,r=new Array(n),o=0;o2){if(r=o.lastIndexOf("/"),r!==o.length-1){r<0?(o="",a=0):(o=o.slice(0,r),a=o.length-1-o.lastIndexOf("/")),i=l,s=0;continue}}else if(o.length>0){o="",a=0,i=l,s=0;continue}t&&(o=o.length>0?o+"/..":"..",a=2)}else o.length>0?o+="/"+e.slice(i+1,l):o=e.slice(i+1,l),a=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return o}(e,!t);0!==n.length||t||(n=".");n.length>0&&47===e.charCodeAt(e.length-1)&&(n+="/");return t?"/"+n:n}(e)},sep:"/"};function I(e){if("string"!==typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const O={cwd:function(){return"/"}};function k(e){return null!==e&&"object"===typeof e&&e.href&&e.origin}function N(e){if("string"===typeof e)e=new URL(e);else if(!k(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if("file:"!==e.protocol){const e=new TypeError("The URL must be of scheme file");throw e.code="ERR_INVALID_URL_SCHEME",e}return function(e){if(""!==e.hostname){const e=new TypeError('File URL host must be "localhost" or empty on darwin');throw e.code="ERR_INVALID_FILE_URL_HOST",e}const t=e.pathname;let n=-1;for(;++n1?t-1:0),i=1;i{if(!e&&t&&n){const o=s.stringify(t,n);void 0===o||null===o||("string"===typeof(r=o)||i(r)?n.value=o:n.result=o),a(e,n)}else a(e);var r}))}n(null,t)},s.processSync=function(e){let t;s.freeze(),z("processSync",s.Parser),U("processSync",s.Compiler);const n=q(e);return s.process(n,r),V("processSync","process",t),n;function r(e){t=!0,S(e)}},s;function s(){const t=e();let r=-1;for(;++ro?0:o+t:t>o?o:t,n=n>0?n:0,r.length<1e4)a=Array.from(r),a.unshift(t,n),e.splice(...a);else for(n&&e.splice(t,n);i0?(Y(e,e.length,0,t),e):t}const X={}.hasOwnProperty;function J(e,t){let n;for(n in t){const r=(X.call(e,n)?e[n]:void 0)||(e[n]={}),o=t[n];let a;if(o)for(a in o){X.call(r,a)||(r[a]=[]);const e=o[a];Q(r[a],Array.isArray(e)?e:e?[e]:[])}}}function Q(e,t){let n=-1;const r=[];for(;++na))return;const n=t.events.length;let o,s,l=n;for(;l--;)if("exit"===t.events[l][0]&&"chunkFlow"===t.events[l][1].type){if(o){s=t.events[l][1].end;break}o=!0}for(b(i),e=n;er;){const r=n[o];t.containerState=r[1],r[0].exit.call(t,e)}n.length=r}function y(){r.write([null]),o=void 0,r=void 0,t.containerState._closeFlow=void 0}}},ge={tokenize:function(e,t,n){return he(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}};const be={tokenize:function(e,t,n){return function(t){return ce(t)?he(e,r,"linePrefix")(t):r(t)};function r(e){return null===e||se(e)?t(e):n(e)}},partial:!0};function ye(e){const t={};let n,r,o,a,i,s,l,c=-1;for(;++c=4?t(o):e.interrupt(r.parser.constructs.flow,n,t)(o)}},partial:!0};const Se={tokenize:function(e){const t=this,n=e.attempt(be,(function(r){if(null===r)return void e.consume(r);return e.enter("lineEndingBlank"),e.consume(r),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}),e.attempt(this.parser.constructs.flowInitial,r,he(e,e.attempt(this.parser.constructs.flow,r,e.attempt(Ee,r)),"linePrefix")));return n;function r(r){if(null!==r)return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),t.currentConstruct=void 0,n;e.consume(r)}}};const Ae={resolveAll:xe()},_e=Ce("string"),Te=Ce("text");function Ce(e){return{tokenize:function(t){const n=this,r=this.parser.constructs[e],o=t.attempt(r,a,i);return a;function a(e){return l(e)?o(e):i(e)}function i(e){if(null!==e)return t.enter("data"),t.consume(e),s;t.consume(e)}function s(e){return l(e)?(t.exit("data"),o(e)):(t.consume(e),s)}function l(e){if(null===e)return!0;const t=r[e];let o=-1;if(t)for(;++o-1){const e=i[0];"string"===typeof e?i[0]=e.slice(r):i.shift()}a>0&&i.push(e[o].slice(0,a))}return i}(i,e)}function m(){const{line:e,column:t,offset:n,_index:o,_bufferIndex:a}=r;return{line:e,column:t,offset:n,_index:o,_bufferIndex:a}}function f(){let e;for(;r._index=3&&(null===a||se(a))?(e.exit("thematicBreak"),t(a)):n(a)}function i(t){return t===r?(e.consume(t),o++,i):(e.exit("thematicBreakSequence"),ce(t)?he(e,a,"whitespace")(t):a(t))}}};const Re={name:"list",tokenize:function(e,t,n){const r=this,o=r.events[r.events.length-1];let a=o&&"linePrefix"===o[1].type?o[2].sliceSerialize(o[1],!0).length:0,i=0;return function(t){const o=r.containerState.type||(42===t||43===t||45===t?"listUnordered":"listOrdered");if("listUnordered"===o?!r.containerState.marker||t===r.containerState.marker:oe(t)){if(r.containerState.type||(r.containerState.type=o,e.enter(o,{_container:!0})),"listUnordered"===o)return e.enter("listItemPrefix"),42===t||45===t?e.check(Ne,n,l)(t):l(t);if(!r.interrupt||49===t)return e.enter("listItemPrefix"),e.enter("listItemValue"),s(t)}return n(t)};function s(t){return oe(t)&&++i<10?(e.consume(t),s):(!r.interrupt||i<2)&&(r.containerState.marker?t===r.containerState.marker:41===t||46===t)?(e.exit("listItemValue"),l(t)):n(t)}function l(t){return e.enter("listItemMarker"),e.consume(t),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||t,e.check(be,r.interrupt?n:c,e.attempt(Me,d,u))}function c(e){return r.containerState.initialBlankLine=!0,a++,d(e)}function u(t){return ce(t)?(e.enter("listItemPrefixWhitespace"),e.consume(t),e.exit("listItemPrefixWhitespace"),d):n(t)}function d(n){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(n)}},continuation:{tokenize:function(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(be,o,a);function o(n){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,he(e,t,"listItemIndent",r.containerState.size+1)(n)}function a(n){return r.containerState.furtherBlankLines||!ce(n)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,i(n)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(Le,t,i)(n))}function i(o){return r.containerState._closeFlow=!0,r.interrupt=void 0,he(e,e.attempt(Re,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o)}}},exit:function(e){e.exit(this.containerState.type)}},Me={tokenize:function(e,t,n){const r=this;return he(e,(function(e){const o=r.events[r.events.length-1];return!ce(e)&&o&&"listItemPrefixWhitespace"===o[1].type?t(e):n(e)}),"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5)},partial:!0},Le={tokenize:function(e,t,n){const r=this;return he(e,(function(e){const o=r.events[r.events.length-1];return o&&"listItemIndent"===o[1].type&&o[2].sliceSerialize(o[1],!0).length===r.containerState.size?t(e):n(e)}),"listItemIndent",r.containerState.size+1)},partial:!0};const De={name:"blockQuote",tokenize:function(e,t,n){const r=this;return function(t){if(62===t){const n=r.containerState;return n.open||(e.enter("blockQuote",{_container:!0}),n.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(t),e.exit("blockQuoteMarker"),o}return n(t)};function o(n){return ce(n)?(e.enter("blockQuotePrefixWhitespace"),e.consume(n),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(n))}},continuation:{tokenize:function(e,t,n){const r=this;return function(t){if(ce(t))return he(e,o,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t);return o(t)};function o(r){return e.attempt(De,t,n)(r)}}},exit:function(e){e.exit("blockQuote")}};function Pe(e,t,n,r,o,a,i,s,l){const c=l||Number.POSITIVE_INFINITY;let u=0;return function(t){if(60===t)return e.enter(r),e.enter(o),e.enter(a),e.consume(t),e.exit(a),d;if(null===t||32===t||41===t||re(t))return n(t);return e.enter(r),e.enter(i),e.enter(s),e.enter("chunkString",{contentType:"string"}),m(t)};function d(n){return 62===n?(e.enter(a),e.consume(n),e.exit(a),e.exit(o),e.exit(r),t):(e.enter(s),e.enter("chunkString",{contentType:"string"}),p(n))}function p(t){return 62===t?(e.exit("chunkString"),e.exit(s),d(t)):null===t||60===t||se(t)?n(t):(e.consume(t),92===t?h:p)}function h(t){return 60===t||62===t||92===t?(e.consume(t),p):p(t)}function m(o){return u||null!==o&&41!==o&&!le(o)?u999||null===d||91===d||93===d&&!s||94===d&&!l&&"_hiddenFootnoteSupport"in i.parser.constructs?n(d):93===d?(e.exit(a),e.enter(o),e.consume(d),e.exit(o),e.exit(r),t):se(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),u(d))}function u(t){return null===t||91===t||93===t||se(t)||l++>999?(e.exit("chunkString"),c(t)):(e.consume(t),s||(s=!ce(t)),92===t?d:u)}function d(t){return 91===t||92===t||93===t?(e.consume(t),l++,u):u(t)}}function Fe(e,t,n,r,o,a){let i;return function(t){if(34===t||39===t||40===t)return e.enter(r),e.enter(o),e.consume(t),e.exit(o),i=40===t?41:t,s;return n(t)};function s(n){return n===i?(e.enter(o),e.consume(n),e.exit(o),e.exit(r),t):(e.enter(a),l(n))}function l(t){return t===i?(e.exit(a),s(i)):null===t?n(t):se(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),he(e,l,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(t))}function c(t){return t===i||null===t||se(t)?(e.exit("chunkString"),l(t)):(e.consume(t),92===t?u:c)}function u(t){return t===i||92===t?(e.consume(t),c):c(t)}}function je(e,t){let n;return function r(o){if(se(o))return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),n=!0,r;if(ce(o))return he(e,r,n?"linePrefix":"lineSuffix")(o);return t(o)}}function ze(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Ue={name:"definition",tokenize:function(e,t,n){const r=this;let o;return function(t){return e.enter("definition"),function(t){return Be.call(r,e,a,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(t)}(t)};function a(t){return o=ze(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),58===t?(e.enter("definitionMarker"),e.consume(t),e.exit("definitionMarker"),i):n(t)}function i(t){return le(t)?je(e,s)(t):s(t)}function s(t){return Pe(e,l,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(t)}function l(t){return e.attempt(He,c,c)(t)}function c(t){return ce(t)?he(e,u,"whitespace")(t):u(t)}function u(a){return null===a||se(a)?(e.exit("definition"),r.parser.defined.push(o),t(a)):n(a)}}},He={tokenize:function(e,t,n){return function(t){return le(t)?je(e,r)(t):n(t)};function r(t){return Fe(e,o,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(t)}function o(t){return ce(t)?he(e,a,"whitespace")(t):a(t)}function a(e){return null===e||se(e)?t(e):n(e)}},partial:!0};const Ge={name:"codeIndented",tokenize:function(e,t,n){const r=this;return function(t){return e.enter("codeIndented"),he(e,o,"linePrefix",5)(t)};function o(e){const t=r.events[r.events.length-1];return t&&"linePrefix"===t[1].type&&t[2].sliceSerialize(t[1],!0).length>=4?a(e):n(e)}function a(t){return null===t?s(t):se(t)?e.attempt(Ve,a,s)(t):(e.enter("codeFlowValue"),i(t))}function i(t){return null===t||se(t)?(e.exit("codeFlowValue"),a(t)):(e.consume(t),i)}function s(n){return e.exit("codeIndented"),t(n)}}},Ve={tokenize:function(e,t,n){const r=this;return o;function o(t){return r.parser.lazy[r.now().line]?n(t):se(t)?(e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o):he(e,a,"linePrefix",5)(t)}function a(e){const a=r.events[r.events.length-1];return a&&"linePrefix"===a[1].type&&a[2].sliceSerialize(a[1],!0).length>=4?t(e):se(e)?o(e):n(e)}},partial:!0};const qe={name:"headingAtx",tokenize:function(e,t,n){let r=0;return function(t){return e.enter("atxHeading"),function(t){return e.enter("atxHeadingSequence"),o(t)}(t)};function o(t){return 35===t&&r++<6?(e.consume(t),o):null===t||le(t)?(e.exit("atxHeadingSequence"),a(t)):n(t)}function a(n){return 35===n?(e.enter("atxHeadingSequence"),i(n)):null===n||se(n)?(e.exit("atxHeading"),t(n)):ce(n)?he(e,a,"whitespace")(n):(e.enter("atxHeadingText"),s(n))}function i(t){return 35===t?(e.consume(t),i):(e.exit("atxHeadingSequence"),a(t))}function s(t){return null===t||35===t||le(t)?(e.exit("atxHeadingText"),a(t)):(e.consume(t),s)}},resolve:function(e,t){let n,r,o=e.length-2,a=3;"whitespace"===e[a][1].type&&(a+=2);o-2>a&&"whitespace"===e[o][1].type&&(o-=2);"atxHeadingSequence"===e[o][1].type&&(a===o-1||o-4>a&&"whitespace"===e[o-2][1].type)&&(o-=a+1===o?2:4);o>a&&(n={type:"atxHeadingText",start:e[a][1].start,end:e[o][1].end},r={type:"chunkText",start:e[a][1].start,end:e[o][1].end,contentType:"text"},Y(e,a,o-a+1,[["enter",n,t],["enter",r,t],["exit",r,t],["exit",n,t]]));return e}};const We={name:"setextUnderline",tokenize:function(e,t,n){const r=this;let o;return function(t){let i,s=r.events.length;for(;s--;)if("lineEnding"!==r.events[s][1].type&&"linePrefix"!==r.events[s][1].type&&"content"!==r.events[s][1].type){i="paragraph"===r.events[s][1].type;break}if(!r.parser.lazy[r.now().line]&&(r.interrupt||i))return e.enter("setextHeadingLine"),o=t,function(t){return e.enter("setextHeadingLineSequence"),a(t)}(t);return n(t)};function a(t){return t===o?(e.consume(t),a):(e.exit("setextHeadingLineSequence"),ce(t)?he(e,i,"lineSuffix")(t):i(t))}function i(r){return null===r||se(r)?(e.exit("setextHeadingLine"),t(r)):n(r)}},resolveTo:function(e,t){let n,r,o,a=e.length;for(;a--;)if("enter"===e[a][0]){if("content"===e[a][1].type){n=a;break}"paragraph"===e[a][1].type&&(r=a)}else"content"===e[a][1].type&&e.splice(a,1),o||"definition"!==e[a][1].type||(o=a);const i={type:"setextHeading",start:Object.assign({},e[r][1].start),end:Object.assign({},e[e.length-1][1].end)};e[r][1].type="setextHeadingText",o?(e.splice(r,0,["enter",i,t]),e.splice(o+1,0,["exit",e[n][1],t]),e[n][1].end=Object.assign({},e[o][1].end)):e[n][1]=i;return e.push(["exit",i,t]),e}};const Ze=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],$e=["pre","script","style","textarea"],Ye={name:"htmlFlow",tokenize:function(e,t,n){const r=this;let o,a,i,s,l;return function(t){return function(t){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(t),c}(t)};function c(s){return 33===s?(e.consume(s),u):47===s?(e.consume(s),a=!0,h):63===s?(e.consume(s),o=3,r.interrupt?t:L):ee(s)?(e.consume(s),i=String.fromCharCode(s),m):n(s)}function u(a){return 45===a?(e.consume(a),o=2,d):91===a?(e.consume(a),o=5,s=0,p):ee(a)?(e.consume(a),o=4,r.interrupt?t:L):n(a)}function d(o){return 45===o?(e.consume(o),r.interrupt?t:L):n(o)}function p(o){const a="CDATA[";return o===a.charCodeAt(s++)?(e.consume(o),6===s?r.interrupt?t:C:p):n(o)}function h(t){return ee(t)?(e.consume(t),i=String.fromCharCode(t),m):n(t)}function m(s){if(null===s||47===s||62===s||le(s)){const l=47===s,c=i.toLowerCase();return l||a||!$e.includes(c)?Ze.includes(i.toLowerCase())?(o=6,l?(e.consume(s),f):r.interrupt?t(s):C(s)):(o=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(s):a?g(s):b(s)):(o=1,r.interrupt?t(s):C(s))}return 45===s||te(s)?(e.consume(s),i+=String.fromCharCode(s),m):n(s)}function f(o){return 62===o?(e.consume(o),r.interrupt?t:C):n(o)}function g(t){return ce(t)?(e.consume(t),g):_(t)}function b(t){return 47===t?(e.consume(t),_):58===t||95===t||ee(t)?(e.consume(t),y):ce(t)?(e.consume(t),b):_(t)}function y(t){return 45===t||46===t||58===t||95===t||te(t)?(e.consume(t),y):v(t)}function v(t){return 61===t?(e.consume(t),E):ce(t)?(e.consume(t),v):b(t)}function E(t){return null===t||60===t||61===t||62===t||96===t?n(t):34===t||39===t?(e.consume(t),l=t,w):ce(t)?(e.consume(t),E):S(t)}function w(t){return t===l?(e.consume(t),l=null,A):null===t||se(t)?n(t):(e.consume(t),w)}function S(t){return null===t||34===t||39===t||47===t||60===t||61===t||62===t||96===t||le(t)?v(t):(e.consume(t),S)}function A(e){return 47===e||62===e||ce(e)?b(e):n(e)}function _(t){return 62===t?(e.consume(t),T):n(t)}function T(t){return null===t||se(t)?C(t):ce(t)?(e.consume(t),T):n(t)}function C(t){return 45===t&&2===o?(e.consume(t),k):60===t&&1===o?(e.consume(t),N):62===t&&4===o?(e.consume(t),D):63===t&&3===o?(e.consume(t),L):93===t&&5===o?(e.consume(t),M):!se(t)||6!==o&&7!==o?null===t||se(t)?(e.exit("htmlFlowData"),x(t)):(e.consume(t),C):(e.exit("htmlFlowData"),e.check(Ke,P,x)(t))}function x(t){return e.check(Xe,I,P)(t)}function I(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),O}function O(t){return null===t||se(t)?x(t):(e.enter("htmlFlowData"),C(t))}function k(t){return 45===t?(e.consume(t),L):C(t)}function N(t){return 47===t?(e.consume(t),i="",R):C(t)}function R(t){if(62===t){const n=i.toLowerCase();return $e.includes(n)?(e.consume(t),D):C(t)}return ee(t)&&i.length<8?(e.consume(t),i+=String.fromCharCode(t),R):C(t)}function M(t){return 93===t?(e.consume(t),L):C(t)}function L(t){return 62===t?(e.consume(t),D):45===t&&2===o?(e.consume(t),L):C(t)}function D(t){return null===t||se(t)?(e.exit("htmlFlowData"),P(t)):(e.consume(t),D)}function P(n){return e.exit("htmlFlow"),t(n)}},resolveTo:function(e){let t=e.length;for(;t--&&("enter"!==e[t][0]||"htmlFlow"!==e[t][1].type););t>1&&"linePrefix"===e[t-2][1].type&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2));return e},concrete:!0},Ke={tokenize:function(e,t,n){return function(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),e.attempt(be,t,n)}},partial:!0},Xe={tokenize:function(e,t,n){const r=this;return function(t){if(se(t))return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o;return n(t)};function o(e){return r.parser.lazy[r.now().line]?n(e):t(e)}},partial:!0};const Je={tokenize:function(e,t,n){const r=this;return function(t){if(null===t)return n(t);return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),o};function o(e){return r.parser.lazy[r.now().line]?n(e):t(e)}},partial:!0},Qe={name:"codeFenced",tokenize:function(e,t,n){const r=this,o={tokenize:function(e,t,n){let o=0;return i;function i(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),l}function l(t){return e.enter("codeFencedFence"),ce(t)?he(e,c,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(t):c(t)}function c(t){return t===a?(e.enter("codeFencedFenceSequence"),u(t)):n(t)}function u(t){return t===a?(o++,e.consume(t),u):o>=s?(e.exit("codeFencedFenceSequence"),ce(t)?he(e,d,"whitespace")(t):d(t)):n(t)}function d(r){return null===r||se(r)?(e.exit("codeFencedFence"),t(r)):n(r)}},partial:!0};let a,i=0,s=0;return function(t){return function(t){const n=r.events[r.events.length-1];return i=n&&"linePrefix"===n[1].type?n[2].sliceSerialize(n[1],!0).length:0,a=t,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),l(t)}(t)};function l(t){return t===a?(s++,e.consume(t),l):s<3?n(t):(e.exit("codeFencedFenceSequence"),ce(t)?he(e,c,"whitespace")(t):c(t))}function c(n){return null===n||se(n)?(e.exit("codeFencedFence"),r.interrupt?t(n):e.check(Je,h,y)(n)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),u(n))}function u(t){return null===t||se(t)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),c(t)):ce(t)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),he(e,d,"whitespace")(t)):96===t&&t===a?n(t):(e.consume(t),u)}function d(t){return null===t||se(t)?c(t):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),p(t))}function p(t){return null===t||se(t)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),c(t)):96===t&&t===a?n(t):(e.consume(t),p)}function h(t){return e.attempt(o,y,m)(t)}function m(t){return e.enter("lineEnding"),e.consume(t),e.exit("lineEnding"),f}function f(t){return i>0&&ce(t)?he(e,g,"linePrefix",i+1)(t):g(t)}function g(t){return null===t||se(t)?e.check(Je,h,y)(t):(e.enter("codeFlowValue"),b(t))}function b(t){return null===t||se(t)?(e.exit("codeFlowValue"),g(t)):(e.consume(t),b)}function y(n){return e.exit("codeFenced"),t(n)}},concrete:!0};const et=document.createElement("i");function tt(e){const t="&"+e+";";et.innerHTML=t;const n=et.textContent;return(59!==n.charCodeAt(n.length-1)||"semi"===e)&&(n!==t&&n)}const nt={name:"characterReference",tokenize:function(e,t,n){const r=this;let o,a,i=0;return function(t){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(t),e.exit("characterReferenceMarker"),s};function s(t){return 35===t?(e.enter("characterReferenceMarkerNumeric"),e.consume(t),e.exit("characterReferenceMarkerNumeric"),l):(e.enter("characterReferenceValue"),o=31,a=te,c(t))}function l(t){return 88===t||120===t?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(t),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),o=6,a=ae,c):(e.enter("characterReferenceValue"),o=7,a=oe,c(t))}function c(s){if(59===s&&i){const o=e.exit("characterReferenceValue");return a!==te||tt(r.sliceSerialize(o))?(e.enter("characterReferenceMarker"),e.consume(s),e.exit("characterReferenceMarker"),e.exit("characterReference"),t):n(s)}return a(s)&&i++1&&e[u][1].end.offset-e[u][1].start.offset>1?2:1;const d=Object.assign({},e[n][1].end),p=Object.assign({},e[u][1].start);pt(d,-s),pt(p,s),a={type:s>1?"strongSequence":"emphasisSequence",start:d,end:Object.assign({},e[n][1].end)},i={type:s>1?"strongSequence":"emphasisSequence",start:Object.assign({},e[u][1].start),end:p},o={type:s>1?"strongText":"emphasisText",start:Object.assign({},e[n][1].end),end:Object.assign({},e[u][1].start)},r={type:s>1?"strong":"emphasis",start:Object.assign({},a.start),end:Object.assign({},i.end)},e[n][1].end=Object.assign({},a.start),e[u][1].start=Object.assign({},i.end),l=[],e[n][1].end.offset-e[n][1].start.offset&&(l=K(l,[["enter",e[n][1],t],["exit",e[n][1],t]])),l=K(l,[["enter",r,t],["enter",a,t],["exit",a,t],["enter",o,t]]),l=K(l,Oe(t.parser.constructs.insideSpan.null,e.slice(n+1,u),t)),l=K(l,[["exit",o,t],["enter",i,t],["exit",i,t],["exit",r,t]]),e[u][1].end.offset-e[u][1].start.offset?(c=2,l=K(l,[["enter",e[u][1],t],["exit",e[u][1],t]])):c=0,Y(e,n-1,u-n+3,l),u=n+l.length-c-2;break}u=-1;for(;++u13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||65535===(65535&n)||65534===(65535&n)||n>1114111?"\ufffd":String.fromCharCode(n)}const kt=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Nt(e,t,n){if(t)return t;if(35===n.charCodeAt(0)){const e=n.charCodeAt(1),t=120===e||88===e;return Ot(n.slice(t?2:1),t?16:10)}return tt(n)||e}const Rt={}.hasOwnProperty,Mt=function(e,t,n){return"string"!==typeof t&&(n=t,t=void 0),function(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:l(ae),autolinkProtocol:I,autolinkEmail:I,atxHeading:l(te),blockQuote:l(K),characterEscape:I,characterReference:I,codeFenced:l(X),codeFencedFenceInfo:c,codeFencedFenceMeta:c,codeIndented:l(X,c),codeText:l(J,c),codeTextData:I,data:I,codeFlowValue:I,definition:l(Q),definitionDestinationString:c,definitionLabelString:c,definitionTitleString:c,emphasis:l(ee),hardBreakEscape:l(ne),hardBreakTrailing:l(ne),htmlFlow:l(re,c),htmlFlowData:I,htmlText:l(re,c),htmlTextData:I,image:l(oe),label:c,link:l(ae),listItem:l(se),listItemValue:f,listOrdered:l(ie,m),listUnordered:l(ie),paragraph:l(le),reference:H,referenceString:c,resourceDestinationString:c,resourceTitleString:c,setextHeading:l(te),strong:l(ce),thematicBreak:l(de)},exit:{atxHeading:d(),atxHeadingSequence:_,autolink:d(),autolinkEmail:Y,autolinkProtocol:$,blockQuote:d(),characterEscapeValue:O,characterReferenceMarkerHexadecimal:V,characterReferenceMarkerNumeric:V,characterReferenceValue:q,codeFenced:d(v),codeFencedFence:y,codeFencedFenceInfo:g,codeFencedFenceMeta:b,codeFlowValue:O,codeIndented:d(E),codeText:d(L),codeTextData:O,data:O,definition:d(),definitionDestinationString:A,definitionLabelString:w,definitionTitleString:S,emphasis:d(),hardBreakEscape:d(N),hardBreakTrailing:d(N),htmlFlow:d(R),htmlFlowData:O,htmlText:d(M),htmlTextData:O,image:d(P),label:F,labelText:B,lineEnding:k,link:d(D),listItem:d(),listOrdered:d(),listUnordered:d(),paragraph:d(),referenceString:G,resourceDestinationString:j,resourceTitleString:z,resource:U,setextHeading:d(x),setextHeadingLineSequence:C,setextHeadingText:T,strong:d(),thematicBreak:d()}};Dt(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(e){let n={type:"root",children:[]};const r={stack:[n],tokenStack:[],config:t,enter:u,exit:p,buffer:c,resume:h,setData:a,getData:i},s=[];let l=-1;for(;++l0){const e=r.tokenStack[r.tokenStack.length-1];(e[1]||Bt).call(r,void 0,e[0])}for(n.position={start:Lt(e.length>0?e[0][1].start:{line:1,column:1,offset:0}),end:Lt(e.length>0?e[e.length-2][1].end:{line:1,column:1,offset:0})},l=-1;++l{const n=this.data("settings");return Mt(t,Object.assign({},n,e,{extensions:this.data("micromarkExtensions")||[],mdastExtensions:this.data("fromMarkdownExtensions")||[]}))}})}function jt(e){const t=[];let n=-1,r=0,o=0;for(;++n55295&&a<57344){const t=e.charCodeAt(n+1);a<56320&&t>56319&&t<57344?(i=String.fromCharCode(a,t),o=1):i="\ufffd"}else i=String.fromCharCode(a);i&&(t.push(e.slice(r,n),encodeURIComponent(i)),r=n+o+1,i=""),o&&(n+=o,o=0)}return t.join("")+e.slice(r)}const zt=function(e){if(void 0===e||null===e)return Ht;if("string"===typeof e)return function(e){return Ut(t);function t(t){return t&&t.type===e}}(e);if("object"===typeof e)return Array.isArray(e)?function(e){const t=[];let n=-1;for(;++n1?n-1:0),o=1;o":"")+")"})}return u;function u(){let c,u,d,p=[];if((!t||o(i,s,l[l.length-1]||null))&&(p=function(e){if(Array.isArray(e))return e;if("number"===typeof e)return[Gt,e];return[e]}(n(i,l)),p[0]===Vt))return p;if(i.children&&"skip"!==p[0])for(u=(r?i.children.length:-1)+a,d=l.concat(i);u>-1&&u-1?n.offset:null}}}const Kt={}.hasOwnProperty;function Xt(e){return String(e||"").toUpperCase()}function Jt(e,t){const n=String(t.identifier).toUpperCase(),r=jt(n.toLowerCase()),o=e.footnoteOrder.indexOf(n);let a;-1===o?(e.footnoteOrder.push(n),e.footnoteCounts[n]=1,a=e.footnoteOrder.length):(e.footnoteCounts[n]++,a=o+1);const i=e.footnoteCounts[n],s={type:"element",tagName:"a",properties:{href:"#"+e.clobberPrefix+"fn-"+r,id:e.clobberPrefix+"fnref-"+r+(i>1?"-"+i:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(a)}]};e.patch(t,s);const l={type:"element",tagName:"sup",properties:{},children:[s]};return e.patch(t,l),e.applyData(t,l)}function Qt(e,t){const n=t.referenceType;let r="]";if("collapsed"===n?r+="[]":"full"===n&&(r+="["+(t.label||t.identifier)+"]"),"imageReference"===t.type)return{type:"text",value:"!["+t.alt+r};const o=e.all(t),a=o[0];a&&"text"===a.type?a.value="["+a.value:o.unshift({type:"text",value:"["});const i=o[o.length-1];return i&&"text"===i.type?i.value+=r:o.push({type:"text",value:r}),o}function en(e){const t=e.spread;return void 0===t||null===t?e.children.length>1:t}const tn=9,nn=32;function rn(e){const t=String(e),n=/\r?\n|\r/g;let r=n.exec(t),o=0;const a=[];for(;r;)a.push(on(t.slice(o,r.index),o>0,!0),r[0]),o=r.index+r[0].length,r=n.exec(t);return a.push(on(t.slice(o),o>0,!1)),a.join("")}function on(e,t,n){let r=0,o=e.length;if(t){let t=e.codePointAt(r);for(;t===tn||t===nn;)r++,t=e.codePointAt(r)}if(n){let t=e.codePointAt(o-1);for(;t===tn||t===nn;)o--,t=e.codePointAt(o-1)}return o>r?e.slice(r,o):""}const an={blockquote:function(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)},break:function(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:"\n"}]},code:function(e,t){const n=t.value?t.value+"\n":"",r=t.lang?t.lang.match(/^[^ \t]+(?=[ \t]|$)/):null,o={};r&&(o.className=["language-"+r]);let a={type:"element",tagName:"code",properties:o,children:[{type:"text",value:n}]};return t.meta&&(a.data={meta:t.meta}),e.patch(t,a),a=e.applyData(t,a),a={type:"element",tagName:"pre",properties:{},children:[a]},e.patch(t,a),a},delete:function(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},emphasis:function(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},footnoteReference:Jt,footnote:function(e,t){const n=e.footnoteById;let r=1;for(;r in n;)r++;const o=String(r);return n[o]={type:"footnoteDefinition",identifier:o,children:[{type:"paragraph",children:t.children}],position:t.position},Jt(e,{type:"footnoteReference",identifier:o,position:t.position})},heading:function(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},html:function(e,t){if(e.dangerous){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}return null},imageReference:function(e,t){const n=e.definition(t.identifier);if(!n)return Qt(e,t);const r={src:jt(n.url||""),alt:t.alt};null!==n.title&&void 0!==n.title&&(r.title=n.title);const o={type:"element",tagName:"img",properties:r,children:[]};return e.patch(t,o),e.applyData(t,o)},image:function(e,t){const n={src:jt(t.url)};null!==t.alt&&void 0!==t.alt&&(n.alt=t.alt),null!==t.title&&void 0!==t.title&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)},inlineCode:function(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)},linkReference:function(e,t){const n=e.definition(t.identifier);if(!n)return Qt(e,t);const r={href:jt(n.url||"")};null!==n.title&&void 0!==n.title&&(r.title=n.title);const o={type:"element",tagName:"a",properties:r,children:e.all(t)};return e.patch(t,o),e.applyData(t,o)},link:function(e,t){const n={href:jt(t.url)};null!==t.title&&void 0!==t.title&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)},listItem:function(e,t,n){const r=e.all(t),o=n?function(e){let t=!1;if("list"===e.type){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r0&&n.children.unshift({type:"text",value:" "}),n.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),a.className=["task-list-item"]}let s=-1;for(;++s0){const r={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},a=Zt(t.children[1]),i=$t(t.children[t.children.length-1]);a.line&&i.line&&(r.position={start:a,end:i}),o.push(r)}const a={type:"element",tagName:"table",properties:{},children:e.wrap(o,!0)};return e.patch(t,a),e.applyData(t,a)},tableCell:function(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)},tableRow:function(e,t,n){const r=n?n.children:void 0,o=0===(r?r.indexOf(t):1)?"th":"td",a=n&&"table"===n.type?n.align:void 0,i=a?a.length:t.children.length;let s=-1;const l=[];for(;++s{const n=Xt(e.identifier);n&&!Kt.call(t,n)&&(t[n]=e)})),function(e){const n=Xt(e);return n&&Kt.call(t,n)?t[n]:null}}(e),i.footnoteById=o,i.footnoteOrder=[],i.footnoteCounts={},i.patch=un,i.applyData=dn,i.one=function(e,t){return pn(i,e,t)},i.all=function(e){return hn(i,e)},i.wrap=mn,i.augment=a,Wt(e,"footnoteDefinition",(e=>{const t=String(e.identifier).toUpperCase();ln.call(o,t)||(o[t]=e)})),i;function a(e,t){if(e&&"data"in e&&e.data){const n=e.data;n.hName&&("element"!==t.type&&(t={type:"element",tagName:"",properties:{},children:[]}),t.tagName=n.hName),"element"===t.type&&n.hProperties&&(t.properties={...t.properties,...n.hProperties}),"children"in t&&t.children&&n.hChildren&&(t.children=n.hChildren)}if(e){const n="type"in e?e:{position:e};(function(e){return!e||!e.position||!e.position.start||!e.position.start.line||!e.position.start.column||!e.position.end||!e.position.end.line||!e.position.end.column})(n)||(t.position={start:Zt(n),end:$t(n)})}return t}function i(e,t,n,r){return Array.isArray(n)&&(r=n,n={}),a(e,{type:"element",tagName:t,properties:n||{},children:r||[]})}}function un(e,t){e.position&&(t.position=function(e){return{start:Zt(e),end:$t(e)}}(e))}function dn(e,t){let n=t;if(e&&e.data){const t=e.data.hName,r=e.data.hChildren,o=e.data.hProperties;"string"===typeof t&&("element"===n.type?n.tagName=t:n={type:"element",tagName:t,properties:{},children:[]}),"element"===n.type&&o&&(n.properties={...n.properties,...o}),"children"in n&&n.children&&null!==r&&void 0!==r&&(n.children=r)}return n}function pn(e,t,n){const r=t&&t.type;if(!r)throw new Error("Expected node, got `"+t+"`");return ln.call(e.handlers,r)?e.handlers[r](e,t,n):e.passThrough&&e.passThrough.includes(r)?"children"in t?{...t,children:hn(e,t)}:t:e.unknownHandler?e.unknownHandler(e,t,n):function(e,t){const n=t.data||{},r=!("value"in t)||ln.call(n,"hProperties")||ln.call(n,"hChildren")?{type:"element",tagName:"div",properties:{},children:hn(e,t)}:{type:"text",value:t.value};return e.patch(t,r),e.applyData(t,r)}(e,t)}function hn(e,t){const n=[];if("children"in t){const r=t.children;let o=-1;for(;++o0&&n.push({type:"text",value:"\n"}),n}function fn(e,t){const n=cn(e,t),r=n.one(e,null),o=function(e){const t=[];let n=-1;for(;++n1?"-"+s:""),dataFootnoteBackref:!0,className:["data-footnote-backref"],ariaLabel:e.footnoteBackLabel},children:[{type:"text",value:"\u21a9"}]};s>1&&t.children.push({type:"element",tagName:"sup",children:[{type:"text",value:String(s)}]}),l.length>0&&l.push({type:"text",value:" "}),l.push(t)}const c=o[o.length-1];if(c&&"element"===c.type&&"p"===c.tagName){const e=c.children[c.children.length-1];e&&"text"===e.type?e.value+=" ":c.children.push({type:"text",value:" "}),c.children.push(...l)}else o.push(...l);const u={type:"element",tagName:"li",properties:{id:e.clobberPrefix+"fn-"+i},children:e.wrap(o,!0)};e.patch(r,u),t.push(u)}if(0!==t.length)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:e.footnoteLabelTagName,properties:{...JSON.parse(JSON.stringify(e.footnoteLabelProperties)),id:"footnote-label"},children:[{type:"text",value:e.footnoteLabel}]},{type:"text",value:"\n"},{type:"element",tagName:"ol",properties:{},children:e.wrap(t,!0)},{type:"text",value:"\n"}]}}(n);return o&&r.children.push({type:"text",value:"\n"},o),Array.isArray(r)?{type:"root",children:r}:r}const gn=function(e,t){return e&&"run"in e?function(e,t){return(n,r,o)=>{e.run(fn(n,t),r,(e=>{o(e)}))}}(e,t):function(e){return t=>fn(t,e)}(e||t)};var bn=n(65173);class yn{constructor(e,t,n){this.property=e,this.normal=t,n&&(this.space=n)}}function vn(e,t){const n={},r={};let o=-1;for(;++o"xlink:"+t.slice(5).toLowerCase(),properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}}),Bn=Dn({space:"xml",transform:(e,t)=>"xml:"+t.slice(3).toLowerCase(),properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function Fn(e,t){return t in e?e[t]:t}function jn(e,t){return Fn(e,t.toLowerCase())}const zn=Dn({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:jn,properties:{xmlns:null,xmlnsXLink:null}}),Un=Dn({transform:(e,t)=>"role"===t?t:"aria-"+t.slice(4).toLowerCase(),properties:{ariaActiveDescendant:null,ariaAtomic:_n,ariaAutoComplete:null,ariaBusy:_n,ariaChecked:_n,ariaColCount:Cn,ariaColIndex:Cn,ariaColSpan:Cn,ariaControls:xn,ariaCurrent:null,ariaDescribedBy:xn,ariaDetails:null,ariaDisabled:_n,ariaDropEffect:xn,ariaErrorMessage:null,ariaExpanded:_n,ariaFlowTo:xn,ariaGrabbed:_n,ariaHasPopup:null,ariaHidden:_n,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:xn,ariaLevel:Cn,ariaLive:null,ariaModal:_n,ariaMultiLine:_n,ariaMultiSelectable:_n,ariaOrientation:null,ariaOwns:xn,ariaPlaceholder:null,ariaPosInSet:Cn,ariaPressed:_n,ariaReadOnly:_n,ariaRelevant:null,ariaRequired:_n,ariaRoleDescription:xn,ariaRowCount:Cn,ariaRowIndex:Cn,ariaRowSpan:Cn,ariaSelected:_n,ariaSetSize:Cn,ariaSort:null,ariaValueMax:Cn,ariaValueMin:Cn,ariaValueNow:Cn,ariaValueText:null,role:null}}),Hn=Dn({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:jn,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:In,acceptCharset:xn,accessKey:xn,action:null,allow:null,allowFullScreen:An,allowPaymentRequest:An,allowUserMedia:An,alt:null,as:null,async:An,autoCapitalize:null,autoComplete:xn,autoFocus:An,autoPlay:An,blocking:xn,capture:null,charSet:null,checked:An,cite:null,className:xn,cols:Cn,colSpan:null,content:null,contentEditable:_n,controls:An,controlsList:xn,coords:Cn|In,crossOrigin:null,data:null,dateTime:null,decoding:null,default:An,defer:An,dir:null,dirName:null,disabled:An,download:Tn,draggable:_n,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:An,formTarget:null,headers:xn,height:Cn,hidden:An,high:Cn,href:null,hrefLang:null,htmlFor:xn,httpEquiv:xn,id:null,imageSizes:null,imageSrcSet:null,inert:An,inputMode:null,integrity:null,is:null,isMap:An,itemId:null,itemProp:xn,itemRef:xn,itemScope:An,itemType:xn,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:An,low:Cn,manifest:null,max:null,maxLength:Cn,media:null,method:null,min:null,minLength:Cn,multiple:An,muted:An,name:null,nonce:null,noModule:An,noValidate:An,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:An,optimum:Cn,pattern:null,ping:xn,placeholder:null,playsInline:An,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:An,referrerPolicy:null,rel:xn,required:An,reversed:An,rows:Cn,rowSpan:Cn,sandbox:xn,scope:null,scoped:An,seamless:An,selected:An,shadowRootClonable:An,shadowRootDelegatesFocus:An,shadowRootMode:null,shape:null,size:Cn,sizes:null,slot:null,span:Cn,spellCheck:_n,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Cn,step:null,style:null,tabIndex:Cn,target:null,title:null,translate:null,type:null,typeMustMatch:An,useMap:null,value:_n,width:Cn,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:xn,axis:null,background:null,bgColor:null,border:Cn,borderColor:null,bottomMargin:Cn,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:An,declare:An,event:null,face:null,frame:null,frameBorder:null,hSpace:Cn,leftMargin:Cn,link:null,longDesc:null,lowSrc:null,marginHeight:Cn,marginWidth:Cn,noResize:An,noHref:An,noShade:An,noWrap:An,object:null,profile:null,prompt:null,rev:null,rightMargin:Cn,rules:null,scheme:null,scrolling:_n,standby:null,summary:null,text:null,topMargin:Cn,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Cn,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:An,disableRemotePlayback:An,prefix:null,property:null,results:Cn,security:null,unselectable:null}}),Gn=Dn({space:"svg",attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},transform:Fn,properties:{about:On,accentHeight:Cn,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Cn,amplitude:Cn,arabicForm:null,ascent:Cn,attributeName:null,attributeType:null,azimuth:Cn,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Cn,by:null,calcMode:null,capHeight:Cn,className:xn,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:Cn,diffuseConstant:Cn,direction:null,display:null,dur:null,divisor:Cn,dominantBaseline:null,download:An,dx:null,dy:null,edgeMode:null,editable:null,elevation:Cn,enableBackground:null,end:null,event:null,exponent:Cn,externalResourcesRequired:null,fill:null,fillOpacity:Cn,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:In,g2:In,glyphName:In,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Cn,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Cn,horizOriginX:Cn,horizOriginY:Cn,id:null,ideographic:Cn,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Cn,k:Cn,k1:Cn,k2:Cn,k3:Cn,k4:Cn,kernelMatrix:On,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Cn,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:Cn,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:Cn,overlineThickness:Cn,paintOrder:null,panose1:null,path:null,pathLength:Cn,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:xn,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Cn,pointsAtY:Cn,pointsAtZ:Cn,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:On,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:On,rev:On,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:On,requiredFeatures:On,requiredFonts:On,requiredFormats:On,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:Cn,specularExponent:Cn,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Cn,strikethroughThickness:Cn,string:null,stroke:null,strokeDashArray:On,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Cn,strokeOpacity:Cn,strokeWidth:null,style:null,surfaceScale:Cn,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:On,tabIndex:Cn,tableValues:null,target:null,targetX:Cn,targetY:Cn,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:On,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Cn,underlineThickness:Cn,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Cn,values:null,vAlphabetic:Cn,vMathematical:Cn,vectorEffect:null,vHanging:Cn,vIdeographic:Cn,version:null,vertAdvY:Cn,vertOriginX:Cn,vertOriginY:Cn,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Cn,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null}}),Vn=vn([Bn,Pn,zn,Un,Hn],"html"),qn=vn([Bn,Pn,zn,Un,Gn],"svg");function Wn(e){if(e.allowedElements&&e.disallowedElements)throw new TypeError("Only one of `allowedElements` and `disallowedElements` should be defined");if(e.allowedElements||e.disallowedElements||e.allowElement)return t=>{Wt(t,"element",((t,n,r)=>{const o=r;let a;if(e.allowedElements?a=!e.allowedElements.includes(t.tagName):e.disallowedElements&&(a=e.disallowedElements.includes(t.tagName)),!a&&e.allowElement&&"number"===typeof n&&(a=!e.allowElement(t,n,o)),a&&"number"===typeof n)return e.unwrapDisallowed&&t.children?o.children.splice(n,1,...t.children):o.children.splice(n,1),n}))}}var Zn=n(2086);function $n(e){const t=e&&"object"===typeof e&&"text"===e.type?e.value||"":e;return"string"===typeof t&&""===t.replace(/[ \t\n\f\r]/g,"")}const Yn=/^data[-\w.:]+$/i,Kn=/-[a-z]/g,Xn=/[A-Z]/g;function Jn(e){return"-"+e.toLowerCase()}function Qn(e){return e.charAt(1).toUpperCase()}const er={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"};const tr=n(40351),nr=["http","https","mailto","tel"];function rr(e){const t=(e||"").trim(),n=t.charAt(0);if("#"===n||"/"===n)return t;const r=t.indexOf(":");if(-1===r)return t;let o=-1;for(;++oo?t:(o=t.indexOf("#"),-1!==o&&r>o?t:"javascript:void(0)")}const or={}.hasOwnProperty,ar=new Set(["table","thead","tbody","tfoot","tr"]);function ir(e,t){const n=[];let r,o=-1;for(;++o0?a.createElement(m,c,p):a.createElement(m,c)}function lr(e,t){let n=-1,r=0;for(;++n4&&"data"===n.slice(0,4)&&Yn.test(t)){if("-"===t.charAt(4)){const e=t.slice(5).replace(Kn,Qn);r="data"+e.charAt(0).toUpperCase()+e.slice(1)}else{const e=t.slice(4);if(!Kn.test(e)){let n=e.replace(Xn,Jn);"-"!==n.charAt(0)&&(n="-"+n),t="data"+n}}o=Rn}return new o(r,t)}(r.schema,t);let a=n;null!==a&&void 0!==a&&a===a&&(Array.isArray(a)&&(a=o.commaSeparated?function(e,t){const n=t||{};return(""===e[e.length-1]?[...e,""]:e).join((n.padRight?" ":"")+","+(!1===n.padLeft?"":" ")).trim()}(a):a.join(" ").trim()),"style"===o.property&&"string"===typeof a&&(a=function(e){const t={};try{tr(e,n)}catch{}return t;function n(e,n){const r="-ms-"===e.slice(0,4)?"ms-".concat(e.slice(4)):e;t[r.replace(/-([a-z])/g,ur)]=n}}(a)),o.space&&o.property?e[or.call(er,o.property)?er[o.property]:o.property]=a:o.attribute&&(e[o.attribute]=a))}function ur(e,t){return t.toUpperCase()}const dr={}.hasOwnProperty,pr={plugins:{to:"remarkPlugins",id:"change-plugins-to-remarkplugins"},renderers:{to:"components",id:"change-renderers-to-components"},astPlugins:{id:"remove-buggy-html-in-markdown-parser"},allowDangerousHtml:{id:"remove-buggy-html-in-markdown-parser"},escapeHtml:{id:"remove-buggy-html-in-markdown-parser"},source:{to:"children",id:"change-source-to-children"},allowNode:{to:"allowElement",id:"replace-allownode-allowedtypes-and-disallowedtypes"},allowedTypes:{to:"allowedElements",id:"replace-allownode-allowedtypes-and-disallowedtypes"},disallowedTypes:{to:"disallowedElements",id:"replace-allownode-allowedtypes-and-disallowedtypes"},includeNodeIndex:{to:"includeElementIndex",id:"change-includenodeindex-to-includeelementindex"}};function hr(e){for(const a in pr)if(dr.call(pr,a)&&dr.call(e,a)){const e=pr[a];console.warn("[react-markdown] Warning: please ".concat(e.to?"use `".concat(e.to,"` instead of"):"remove"," `").concat(a,"` (see <").concat("https://github.com/remarkjs/react-markdown/blob/main/changelog.md","#").concat(e.id,"> for more info)")),delete pr[a]}const t=B().use(Ft).use(e.remarkPlugins||[]).use(gn,{...e.remarkRehypeOptions,allowDangerousHtml:!0}).use(e.rehypePlugins||[]).use(Wn,e),n=new y;"string"===typeof e.children?n.value=e.children:void 0!==e.children&&null!==e.children&&console.warn("[react-markdown] Warning: please pass a string as `children` (not: `".concat(e.children,"`)"));const r=t.runSync(t.parse(n),n);if("root"!==r.type)throw new TypeError("Expected a `root` node");let o=a.createElement(a.Fragment,{},ir({options:e,schema:Vn,listDepth:0},r));return e.className&&(o=a.createElement("div",{className:e.className},o)),o}hr.propTypes={children:bn.string,className:bn.string,allowElement:bn.func,allowedElements:bn.arrayOf(bn.string),disallowedElements:bn.arrayOf(bn.string),unwrapDisallowed:bn.bool,remarkPlugins:bn.arrayOf(bn.oneOfType([bn.object,bn.func,bn.arrayOf(bn.oneOfType([bn.bool,bn.string,bn.object,bn.func,bn.arrayOf(bn.any)]))])),rehypePlugins:bn.arrayOf(bn.oneOfType([bn.object,bn.func,bn.arrayOf(bn.oneOfType([bn.bool,bn.string,bn.object,bn.func,bn.arrayOf(bn.any)]))])),sourcePos:bn.bool,rawSourcePos:bn.bool,skipHtml:bn.bool,includeElementIndex:bn.bool,transformLinkUri:bn.oneOfType([bn.func,bn.bool]),linkTarget:bn.oneOfType([bn.func,bn.string]),transformImageUri:bn.func,components:bn.object};var mr=n(94574),fr=n(33097),gr=n.n(fr),br=n(89923),yr=n(22166),vr=n(21383),Er=n(64159),wr=n(70579);const Sr=e=>{let{LeadingIcon:t,text:n,link:r,color:o}=e;return(0,wr.jsx)("a",{style:{color:o,font:"normal normal bold 12px/55px Inter",display:"block",textDecoration:"none"},href:r,target:"_blank",children:(0,wr.jsxs)(br.azJ,{sx:{display:"flex",flexDirection:"row",alignItems:"center",height:20,gap:2},children:[t&&(0,wr.jsx)(br.azJ,{sx:{flexGrow:0,flexShrink:1,lineHeight:"12px","& svg":{height:16,width:16}},children:(0,wr.jsx)(t,{})}),(0,wr.jsx)(br.azJ,{sx:{flexGrow:0,flexShrink:1,lineHeight:"12px"},children:n}),(0,wr.jsx)(br.azJ,{sx:{flexGrow:0,flexShrink:1,lineHeight:"12px",marginTop:2},children:(0,wr.jsx)(br.HKb,{style:{width:12}})})]})})},Ar=n.p+"static/media/placeholderimage.077ea48bd1ef1f4a883f.png",_r=e=>{let{item:t,displayImage:n=!0}=e;return(0,wr.jsx)(a.Fragment,{children:(0,wr.jsxs)("div",{style:{display:"flex",flexDirection:"row"},children:[n&&(0,wr.jsx)("div",{style:{paddingLeft:16},children:(0,wr.jsx)("a",{href:t.url,target:"_blank",children:(0,wr.jsx)("img",{src:"data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",alt:t.title,style:{width:208,height:116,backgroundImage:"url(".concat(t.img,"), url(").concat(Ar,")"),backgroundPosition:"center center",backgroundSize:"cover",backgroundRepeat:"no-repeat"}})})}),(0,wr.jsxs)("div",{style:{flexGrow:1,flexBasis:"auto",paddingLeft:16},children:[(0,wr.jsx)("div",{style:{width:"100%",font:"normal normal bold 16px/28px Inter",whiteSpace:"pre-wrap"},children:t.title}),(0,wr.jsx)("div",{style:{width:"100%",whiteSpace:"pre-line",lineHeight:"1.5em",height:"3em",overflow:"hidden",textOverflow:"ellipsis"},children:t.body}),(0,wr.jsx)(Sr,{text:"Learn more",link:t.url,color:"#3874A6"})]})]})})},Tr=mr.Ay.div((e=>{let{theme:t}=e;return{backgroundColor:gr()(t,"bgColor","#FFF"),position:"absolute",zIndex:"10",border:"".concat(gr()(t,"borderColor","#E2E2E2")," 1px solid"),borderRadius:4,boxShadow:"rgba(0, 0, 0, 0.1) 0px 0px 10px",width:754,"& .tabsPanels":{padding:"15px 0 0"},"& .helpContainer":{maxHeight:400,overflowY:"auto","& .helpItemBlock":{padding:5,"&:hover":{backgroundColor:gr()(t,"buttons.regular.hover.background","#E6EAEB")}}}}})),Cr=()=>{const e=n(986),[t,r]=(0,a.useState)([]),[o,i]=(0,a.useState)(null),[s,l]=(0,a.useState)([]),[c,u]=(0,a.useState)(null),[d,p]=(0,a.useState)([]),[h,m]=(0,a.useState)(null),[f,g]=(0,a.useState)(!1),b=(0,yr.d4)((e=>e.system.helpName)),y=(0,yr.d4)((e=>e.system.helpTabName)),v=(0,vr.jL)();const E=(0,a.useRef)(null);var w;w=E,(0,a.useEffect)((()=>{function e(e){w.current&&!w.current.contains(e.target)&&g(!1)}return document.addEventListener("mousedown",e),()=>{document.removeEventListener("mousedown",e)}}),[w]),(0,a.useEffect)((()=>{let t=0,n=0,a=0;if(e[b]){e[b].docs&&(i(e[b].docs.header),r(e[b].docs.links),t=e[b].docs.links.length),e[b].blog&&(m(e[b].blog.header),p(e[b].blog.links),n=e[b].blog.links.length),e[b].video&&(u(e[b].video.header),l(e[b].video.links),a=e[b].video.links.length);let s="docs",d=!1;0===t&&null===o&&"docs"===y&&(s=0!==a||null!==c?"video":"blog",d=!0),0===a&&null===c&&"video"===y&&(s=0!==t||null!==o?"docs":"blog",d=!0),0===n&&null===h&&"blog"===y&&(s=0!==t||null!==o?"docs":"video",d=!0),d&&v((0,Er.m0)(s))}else r(e.help.docs.links),p([]),l([])}),[b,y,v,e,h,o,c]);const S=(0,wr.jsxs)(br.azJ,{className:"helpContainer",children:[o&&(0,wr.jsxs)("div",{style:{paddingLeft:16,paddingRight:16},children:[(0,wr.jsx)("div",{children:(0,wr.jsx)(hr,{children:"".concat(o)})}),(0,wr.jsx)("div",{style:{borderBottom:"1px solid #dedede"}})]}),t&&t.map(((e,t)=>(0,wr.jsx)(br.azJ,{className:"helpItemBlock",children:(0,wr.jsx)(_r,{item:e,displayImage:!1})},"help-item-".concat(e)))),(0,wr.jsx)("div",{style:{padding:16},children:(0,wr.jsx)(Sr,{LeadingIcon:br.Wh8,text:"Visit MinIO Documentation",link:"https://docs.min.io/?ref=con",color:"#C5293F"})})]}),A=(0,wr.jsxs)(br.azJ,{className:"helpContainer",children:[c&&(0,wr.jsxs)(a.Fragment,{children:[(0,wr.jsx)("div",{style:{paddingLeft:16,paddingRight:16},children:(0,wr.jsx)(hr,{children:"".concat(c)})}),(0,wr.jsx)("div",{style:{borderBottom:"1px solid #dedede"}})]}),s&&s.map(((e,t)=>(0,wr.jsx)(br.azJ,{className:"helpItemBlock",children:(0,wr.jsx)(_r,{item:e})},"help-item-".concat(e)))),(0,wr.jsx)("div",{style:{padding:16},children:(0,wr.jsx)(Sr,{LeadingIcon:br.Wh8,text:"Visit MinIO Videos",link:"https://resources.min.io/l/library?contentType=video",color:"#C5293F"})})]}),_=(0,wr.jsxs)(br.azJ,{className:"helpContainer",children:[h&&(0,wr.jsxs)(a.Fragment,{children:[(0,wr.jsx)("div",{style:{paddingLeft:16,paddingRight:16},children:(0,wr.jsx)(hr,{children:"".concat(h)})}),(0,wr.jsx)("div",{style:{borderBottom:"1px solid #dedede"}})]}),d&&d.map(((e,t)=>(0,wr.jsx)(br.azJ,{className:"helpItemBlock",children:(0,wr.jsx)(_r,{item:e})},"help-item-".concat(e)))),(0,wr.jsx)("div",{style:{padding:16},children:(0,wr.jsx)(Sr,{LeadingIcon:br.Wh8,text:"Visit MinIO Blog",link:"https://blog.min.io/?ref=con",color:"#C5293F"})})]});return(0,wr.jsxs)(a.Fragment,{children:[f&&(0,wr.jsx)(Tr,{ref:E,children:(0,wr.jsx)(br.tUM,{options:(()=>{const e=[];return 0!==t.length&&e.push({tabConfig:{label:"Documentation",id:"docs"},content:S}),0!==s.length&&e.push({tabConfig:{label:"Video",id:"video"},content:A}),0!==d.length&&e.push({tabConfig:{label:"Blog",id:"blog"},content:_}),e})(),currentTabOrPath:y,onTabClick:e=>v((0,Er.m0)(e)),optionsInitialComponent:(0,wr.jsx)(br.azJ,{sx:{margin:"10px 10px 10px 15px"},children:(0,wr.jsx)(br.nag,{style:{color:"#3874A6",width:16,height:16}})}),optionsEndComponent:(0,wr.jsx)(br.azJ,{sx:{marginRight:15},children:(0,wr.jsx)(br.K0,{onClick:()=>{g(!1)},size:"small",children:(0,wr.jsx)(br.evq,{style:{color:"#919191",width:12}})})}),horizontalBarBackground:!0,horizontal:!0})}),(0,wr.jsx)(br.$nd,{id:null!==b&&void 0!==b?b:"help_button",icon:(0,wr.jsx)(br.NTw,{}),onClick:()=>{g(!f)}})]})}},56969:(e,t,n)=>{"use strict";n.d(t,{Gy:()=>c,YN:()=>l,c_:()=>a,qZ:()=>i});n(65043);var r=n(89923),o=n(70579);const a=[{featureLabel:"License",featurePlans:{openSource:{content:"Requires AGPLv3 License Compliance"},eosLite:{content:"Commercial License"},eosPlus:{content:"Commercial License"}}},{featureLabel:"Release",featurePlans:{openSource:{content:"Upstream Community Release"},eosLite:{content:"Enterprise Stable Release"},eosPlus:{content:"Enterprise Stable Release"}}},{featureLabel:"Additional Features",featurePlans:{openSource:{content:"None"},eosLite:{content:"Global Console, Observability, Cache, Data Firewall, Key Management Server Catalog"},eosPlus:{content:"Global Console, Observability, Cache, Data Firewall, Key Management Server Catalog"}}},{featureLabel:"Long Term Release Support",featurePlans:{openSource:{content:"None"},eosLite:{content:"1 year LTS"},eosPlus:{content:"5 years LTS"}}},{featureLabel:"Support SLA",featurePlans:{openSource:{content:"No SLA"},eosLite:{content:"Next Business Day SLA"},eosPlus:{content:"Less than 4 Hour SLA"}}},{featureLabel:"Panic button",featurePlans:{openSource:{content:"None"},eosLite:{content:"1 Panic Button Per Year"},eosPlus:{content:"Unlimited Panic Buttons Per Year"}}},{featureLabel:"Call Home Diagnostics, Health Check, Performance Benchmark, Security and Critical Vulnerabilities Notifications",featurePlans:{openSource:{content:""},eosLite:{content:"",isCheck:!0},eosPlus:{content:"",isCheck:!0}}},{featureLabel:"Indemnification",featurePlans:{openSource:{content:""},eosLite:{content:""},eosPlus:{content:"",isCheck:!0}}},{featureLabel:"Annual Review of Architecture, Performance and Security",featurePlans:{openSource:{content:""},eosLite:{content:""},eosPlus:{content:"",isCheck:!0}}}],i=[{planId:"openSource",planName:"Open Source",planType:"open-source",planIcon:(0,o.jsx)(r.GTC,{applicationName:"console",subVariant:"AGPL"}),planDescription:(0,o.jsx)("span",{children:"Designed for developers who are building open source applications in compliance with the GNU AGPL v3 license which requires developers to distribute their code under the same AGPL v3 license when they distribute, host or modify MinIO."})},{planId:"eosLite",planName:"Enterprise Lite",planType:"commercial",planIcon:(0,o.jsx)(r.GTC,{applicationName:"minio",subVariant:"enterpriseos"}),planDescription:(0,o.jsx)("span",{children:"Designed for customers who require a commercial license and can mostly self-support but want the peace of mind that comes with an engineer-backend SLA, additional features and operational capabilities."})},{planId:"eosPlus",planName:"Enterprise Plus",planType:"commercial",planIcon:(0,o.jsx)(r.GTC,{applicationName:"minio",subVariant:"enterpriseos"}),planDescription:(0,o.jsx)("span",{children:"Designed for customers where a commercial license and the strictest,engineer-backed SLA are required. The Plus tiers offers additional features and operational capabilities, more interaction options and more enterprise deliverables."})}],s="agpl_minio_license_consent",l=()=>{localStorage.setItem(s,"true")},c=()=>"true"===localStorage.getItem(s)},3883:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>c,Ib:()=>s,Jb:()=>i,xW:()=>l});var r=n(80907),o=n(24241);const a=(0,r.Z0)({name:"logs",initialState:{logMessages:[],logsStarted:!1},reducers:{logMessageReceived:(e,t)=>{let n=e.logMessages;const r=o.c9.fromFormat(t.payload.time.toString(),"HH:mm:ss z MM/dd/yyyy",{zone:"UTC"}).toJSDate();if(n.length>0&&1===r.getFullYear()&&""!==t.payload.ConsoleMsg)for(let o in n)1===n[o].time.getFullYear()&&(n[o].ConsoleMsg="".concat(n[o].ConsoleMsg,"\n").concat(t.payload.ConsoleMsg));else n.push(t.payload);e.logMessages=n},logResetMessages:e=>{e.logMessages=[]},setLogsStarted:(e,t)=>{e.logsStarted=t.payload}}}),{logMessageReceived:i,logResetMessages:s,setLogsStarted:l}=a.actions,c=a.reducer},48617:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>O});var r=n(65043),o=n(73216),a=n(99161),i=n(20685),s=n(39808),l=n(89923),c=n(77403),u=n(77938),d=n(64681),p=n(18218),h=n(64159),m=n(21383),f=n(22166),g=n(46537),b=n(69772),y=n(6681),v=n(56483),E=n(48793),w=n(56629),S=n(53518),A=n(55968),_=n(80882),T=n(70579);const C=()=>{const e=(0,m.jL)(),t=(0,o.Zp)(),[n,i]=(0,r.useState)([]),[s,C]=(0,r.useState)(!0),[x,I]=(0,r.useState)(!1),[O,k]=(0,r.useState)(""),N=(0,f.d4)(g.s$),R=!(null===N||void 0===N||!N.includes("object-browser-only"));(0,r.useEffect)((()=>{if(s){(()=>{C(!0),w.F.buckets.listBuckets().then((e=>{e.data&&(C(!1),i(e.data.buckets||[]))})).catch((t=>{C(!1),e((0,h.C9)((0,S.S)(t)))}))})()}}),[s,e]);const M=n.filter((e=>""===O||e.name.indexOf(O)>=0)),L=n.length>0,D=(0,p.A)("*",[a.OV.S3_LIST_BUCKET,a.OV.S3_ALL_LIST_BUCKET]),P=[{type:"view",onClick:e=>{!x&&t("".concat(a.zZ.OBJECT_BROWSER_VIEW,"/").concat(e.name))}}];return(0,r.useEffect)((()=>{e((0,h.ph)("object_browser"))}),[e]),(0,T.jsxs)(r.Fragment,{children:[!R&&(0,T.jsx)(E.A,{label:"Object Browser",actions:(0,T.jsx)(A.A,{})}),(0,T.jsxs)(l.Mxu,{children:[(0,T.jsxs)(l.xA9,{item:!0,xs:12,sx:{...c._0.actionsTray,display:"flex"},children:[R&&(0,T.jsx)(l.xA9,{item:!0,xs:!0,children:(0,T.jsx)(b.A,{marginRight:15,marginTop:10})}),L&&(0,T.jsx)(d.A,{onChange:k,placeholder:"Filter Buckets",value:O,sx:{minWidth:380,"@media (max-width: 900px)":{minWidth:220}}}),(0,T.jsx)(l.xA9,{item:!0,xs:12,sx:{display:"flex",alignItems:"center",justifyContent:"flex-end",gap:8},children:(0,T.jsx)(y.A,{tooltip:"Refresh",children:(0,T.jsx)(l.$nd,{id:"refresh-buckets",onClick:()=>{C(!0)},icon:(0,T.jsx)(l.fNY,{}),variant:"regular"})})})]}),s&&(0,T.jsx)(l.z21,{}),!s&&(0,T.jsxs)(l.xA9,{item:!0,xs:12,sx:{marginTop:25,height:"calc(100vh - 211px)","&.isEmbedded":{height:"calc(100vh - 128px)"}},className:R?"isEmbedded":"",children:[0!==M.length&&(0,T.jsx)(l.bQt,{isLoading:s,records:M,entityName:"Buckets",idField:"name",columns:[{label:"Name",elementKey:"name",renderFunction:e=>(0,T.jsxs)("div",{style:{display:"flex"},children:[(0,T.jsx)(l.brV,{style:{width:15,marginRight:5,minWidth:15}}),(0,T.jsx)("span",{id:"browse-".concat(e),style:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0},children:e})]})},{label:"Objects",elementKey:"objects",renderFunction:e=>e?e.toLocaleString():0},{label:"Size",elementKey:"size",renderFunction:e=>(0,T.jsx)("div",{onMouseEnter:()=>I(!0),onMouseLeave:()=>I(!1),children:(0,T.jsx)(l.V7x,{content:_.p,placement:"right",children:(0,v.qO)(e||0)})})},{label:"Access",elementKey:"rw_access",renderFullObject:!0,renderFunction:e=>{var t,n;let r=[];return null!==(t=e.rw_access)&&void 0!==t&&t.read&&r.push("R"),null!==(n=e.rw_access)&&void 0!==n&&n.write&&r.push("W"),(0,T.jsx)("span",{children:r.join("/")})}}],itemActions:P}),0===M.length&&""!==O&&(0,T.jsx)(l.xA9,{container:!0,sx:{justifyContent:"center",alignContent:"center",alignItems:"center"},children:(0,T.jsx)(l.xA9,{item:!0,xs:8,children:(0,T.jsx)(l.lVp,{iconComponent:(0,T.jsx)(l.brV,{}),title:"No Results",help:(0,T.jsx)(r.Fragment,{children:"No buckets match the filtering condition"})})})}),!L&&(0,T.jsx)(l.xA9,{container:!0,sx:{justifyContent:"center",alignContent:"center",alignItems:"center"},children:(0,T.jsx)(l.xA9,{item:!0,xs:8,children:(0,T.jsx)(l.lVp,{iconComponent:(0,T.jsx)(l.brV,{}),title:"Buckets",help:(0,T.jsxs)(r.Fragment,{children:["MinIO uses buckets to organize objects. A bucket is similar to a folder or directory in a filesystem, where each bucket can hold an arbitrary number of objects.",(0,T.jsx)("br",{}),D?"":(0,T.jsxs)(r.Fragment,{children:[(0,T.jsx)("br",{}),(0,a.vj)([a.OV.S3_LIST_BUCKET,a.OV.S3_ALL_LIST_BUCKET],"view the buckets on this server"),(0,T.jsx)("br",{})]}),(0,T.jsxs)(u.R,{scopes:[a.OV.S3_CREATE_BUCKET],resource:a.Ms,children:[(0,T.jsx)("br",{}),"To get started,\xa0",(0,T.jsx)(l.t53,{onClick:()=>{t(a.zZ.ADD_BUCKETS)},children:"Create a Bucket."})]})]})})})})]})]})]})},x=r.lazy((()=>Promise.all([n.e(2346),n.e(7945)]).then(n.bind(n,27945)))),I=r.lazy((()=>n.e(9619).then(n.bind(n,9619)))),O=()=>(0,T.jsxs)(o.BV,{children:[(0,T.jsx)(o.qh,{path:a.zZ.ADD_BUCKETS,element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(I,{})})}),(0,T.jsx)(o.qh,{path:"/",element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(C,{})})}),(0,T.jsx)(o.qh,{path:"/:bucketName/*",element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(x,{})})}),(0,T.jsx)(o.qh,{path:":bucketName/",element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(x,{})})}),(0,T.jsx)(o.qh,{element:(0,T.jsx)(o.C5,{to:"/browser"}),path:"*"}),(0,T.jsx)(o.qh,{element:(0,T.jsx)(r.Suspense,{fallback:(0,T.jsx)(i.A,{}),children:(0,T.jsx)(s.A,{})})})]})},6035:(e,t,n)=>{"use strict";n.d(t,{$X:()=>g,A3:()=>k,A7:()=>T,AE:()=>h,AP:()=>R,Ai:()=>E,Ay:()=>K,DW:()=>c,Dm:()=>y,EG:()=>p,Ew:()=>B,I3:()=>V,I8:()=>W,Jl:()=>q,KX:()=>P,Lf:()=>z,MC:()=>I,NV:()=>H,Nu:()=>f,PJ:()=>G,QV:()=>Z,Qy:()=>M,SK:()=>S,TO:()=>_,Yw:()=>U,Zn:()=>x,aj:()=>v,cP:()=>l,cQ:()=>s,go:()=>F,iL:()=>d,iW:()=>D,lA:()=>w,oe:()=>A,p$:()=>O,rS:()=>i,rx:()=>u,u:()=>b,uR:()=>C,v8:()=>a,vn:()=>N,vv:()=>m,xE:()=>j,xW:()=>L,y3:()=>$,yL:()=>Y});const r={selectedBucket:"",versionsMode:!1,reloadObjectsList:!1,requestInProgress:!0,objectDetailsOpen:!1,loadingVersions:!0,loadingObjectInfo:!0,connectionError:!1,rewind:{rewindEnabled:!1,bucketToRewind:"",dateToRewind:null},objectManager:{objectsToManage:[],managerOpen:!1,newItems:!1,startedItems:[],currentDownloads:[],currentUploads:[]},searchObjects:"",versionedFile:"",searchVersions:"",selectedVersion:"",showDeleted:!1,selectedInternalPaths:null,simplePath:null,records:[],loadingVersioning:!0,versionInfo:{},lockingEnabled:!1,loadingLocking:!0,selectedObjects:[],downloadRenameModal:null,selectedPreview:null,previewOpen:!1,shareFileModalOpen:!1,anonymousAccessOpen:!1,retentionConfig:{mode:void 0,unit:void 0,validity:0},longFileOpen:!1,maxShareLinkExpTime:0},o=(0,n(80907).Z0)({name:"objectBrowser",initialState:r,reducers:{setRewindEnable:(e,t)=>{e.rewind.rewindEnabled=t.payload.state,e.rewind.bucketToRewind=t.payload.bucket,e.rewind.dateToRewind=t.payload.dateRewind},resetRewind:e=>{e.rewind.rewindEnabled=!1,e.rewind.bucketToRewind="",e.rewind.dateToRewind=null},setVersionsModeEnabled:(e,t)=>{let n="";t.payload.objectName&&(n=t.payload.objectName);const r=t.payload.status?n:"";e.versionsMode=t.payload.status,e.versionedFile=r,e.selectedVersion=""},setNewObject:(e,t)=>{e.objectManager.objectsToManage.push(t.payload),e.objectManager.newItems=!0},updateProgress:(e,t)=>{const n=e.objectManager.objectsToManage.findIndex((e=>e.instanceID===t.payload.instanceID));-1!==n&&(e.objectManager.objectsToManage[n].percentage=t.payload.progress,e.objectManager.objectsToManage[n].waitingForFile=!1)},completeObject:(e,t)=>{const n=e.objectManager.objectsToManage.findIndex((e=>e.instanceID===t.payload));if(-1===n)return;e.objectManager.objectsToManage[n].percentage=100,e.objectManager.objectsToManage[n].waitingForFile=!1,e.objectManager.objectsToManage[n].done=!0;const r=e.objectManager.objectsToManage[n].type,o=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((e=>e!==o)):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((e=>e!==o)))},failObject:(e,t)=>{const n=e.objectManager.objectsToManage.findIndex((e=>e.instanceID===t.payload.instanceID));e.objectManager.objectsToManage[n].failed=!0,e.objectManager.objectsToManage[n].waitingForFile=!1,e.objectManager.objectsToManage[n].done=!0,e.objectManager.objectsToManage[n].errorMessage=t.payload.msg;const r=e.objectManager.objectsToManage[n].type,o=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((e=>e!==o)):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((e=>e!==o)))},cancelObjectInList:(e,t)=>{const n=e.objectManager.objectsToManage.findIndex((e=>e.instanceID===t.payload));if(-1===n)return{...e};e.objectManager.objectsToManage[n].cancelled=!0,e.objectManager.objectsToManage[n].done=!0,e.objectManager.objectsToManage[n].percentage=0;const r=e.objectManager.objectsToManage[n].type,o=e.objectManager.objectsToManage[n].ID;"download"===r?e.objectManager.currentDownloads=e.objectManager.currentDownloads.filter((e=>e!==o)):"upload"===r&&(e.objectManager.currentUploads=e.objectManager.currentUploads.filter((e=>e!==o)))},deleteFromList:(e,t)=>{const n=e.objectManager.objectsToManage.filter((e=>e.instanceID!==t.payload));e.objectManager.objectsToManage=n,e.objectManager.managerOpen=0!==n.length&&e.objectManager.managerOpen},cleanList:e=>{const t=e.objectManager.objectsToManage.filter((e=>100!==e.percentage));e.objectManager.objectsToManage=t,e.objectManager.managerOpen=0!==t.length&&e.objectManager.managerOpen,e.objectManager.newItems=!1},toggleList:e=>{e.objectManager.managerOpen=!e.objectManager.managerOpen,e.objectManager.newItems=!1},openList:e=>{e.objectManager.managerOpen=!0},closeList:e=>{e.objectManager.managerOpen=!1},setSearchObjects:(e,t)=>{e.searchObjects=t.payload},setRequestInProgress:(e,t)=>{e.requestInProgress=t.payload},setSearchVersions:(e,t)=>{e.searchVersions=t.payload},setSelectedVersion:(e,t)=>{e.selectedVersion=t.payload},setShowDeletedObjects:(e,t)=>{e.showDeleted=t.payload},setLoadingVersions:(e,t)=>{e.loadingVersions=t.payload},setLoadingObjectInfo:(e,t)=>{e.loadingObjectInfo=t.payload},setObjectDetailsView:(e,t)=>{e.objectDetailsOpen=t.payload,e.selectedInternalPaths=t.payload?e.selectedInternalPaths:null},setSelectedObjectView:(e,t)=>{e.selectedInternalPaths=t.payload},setSimplePathHandler:(e,t)=>{e.simplePath=t.payload},newDownloadInit:(e,t)=>{e.objectManager.currentDownloads=[...e.objectManager.currentDownloads,t.payload]},newUploadInit:(e,t)=>{e.objectManager.currentUploads=[...e.objectManager.currentUploads,t.payload]},setRecords:(e,t)=>{e.records=t.payload},setLoadingVersioning:(e,t)=>{e.loadingVersioning=t.payload},setIsVersioned:(e,t)=>{e.versionInfo=t.payload},setLockingEnabled:(e,t)=>{e.lockingEnabled=t.payload},setLoadingLocking:(e,t)=>{e.loadingLocking=t.payload},newMessage:(e,t)=>{e.records=[...e.records,...t.payload]},resetMessages:e=>{e.records=[]},setReloadObjectsList:(e,t)=>{e.reloadObjectsList=t.payload,t.payload&&(e.records=[])},setSelectedObjects:(e,t)=>{e.selectedObjects=t.payload},setDownloadRenameModal:(e,t)=>{e.downloadRenameModal=t.payload},setSelectedPreview:(e,t)=>{e.selectedPreview=t.payload},setPreviewOpen:(e,t)=>{e.previewOpen=t.payload},setShareFileModalOpen:(e,t)=>{e.shareFileModalOpen=t.payload},restoreLocalObjectList:(e,t)=>{const n=e.records.findIndex((e=>e.name===t.payload.prefix));n>=0&&(e.records[n].delete_flag=t.payload.objectInfo.is_delete_marker,e.records[n].size=t.payload.objectInfo.size||0)},setRetentionConfig:(e,t)=>{e.retentionConfig=t.payload},setSelectedBucket:(e,t)=>{e.selectedBucket=t.payload},setLongFileOpen:(e,t)=>{e.longFileOpen=t.payload},setAnonymousAccessOpen:(e,t)=>{e.anonymousAccessOpen=t.payload},setMaxShareLinkExpTime:(e,t)=>{e.maxShareLinkExpTime=t.payload},errorInConnection:(e,t)=>{e.connectionError=t.payload,t.payload&&(e.requestInProgress=!1,e.loadingObjectInfo=!1,e.objectDetailsOpen=!1)}}}),{setRewindEnable:a,resetRewind:i,setVersionsModeEnabled:s,setNewObject:l,updateProgress:c,completeObject:u,failObject:d,deleteFromList:p,cleanList:h,toggleList:m,openList:f,setSearchObjects:g,setRequestInProgress:b,cancelObjectInList:y,setSearchVersions:v,setSelectedVersion:E,setShowDeletedObjects:w,setLoadingVersions:S,setLoadingObjectInfo:A,setObjectDetailsView:_,setSelectedObjectView:T,setSimplePathHandler:C,newDownloadInit:x,newUploadInit:I,setRecords:O,resetMessages:k,setLoadingVersioning:N,setIsVersioned:R,setLoadingLocking:M,setLockingEnabled:L,newMessage:D,setSelectedObjects:P,setDownloadRenameModal:B,setSelectedPreview:F,setPreviewOpen:j,setShareFileModalOpen:z,setReloadObjectsList:U,restoreLocalObjectList:H,setRetentionConfig:G,setSelectedBucket:V,setLongFileOpen:q,setAnonymousAccessOpen:W,setMaxShareLinkExpTime:Z,errorInConnection:$}=o.actions,Y=e=>e.objectBrowser.maxShareLinkExpTime,K=o.reducer},37414:(e,t,n)=>{"use strict";n.d(t,{E0:()=>u,FP:()=>a,G3:()=>l,OV:()=>i,vx:()=>s,vy:()=>c});let r={},o={};const a=(e,t)=>{r[e]=t},i=e=>r[e],s=(e,t)=>{o[e]=t},l=e=>o[e],c=e=>{delete r[e],delete o[e]},u=e=>{for(var t="",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",r=0;r{"use strict";n.d(t,{AS:()=>s,Ay:()=>E,Gf:()=>h,Lz:()=>u,NG:()=>l,RB:()=>g,UY:()=>y,WK:()=>f,a2:()=>d,dP:()=>c,h7:()=>v,nR:()=>p,pb:()=>i,r1:()=>m,w0:()=>b});var r=n(80907);const o={license:"",subnetPassword:"",subnetEmail:"",subnetMFAToken:"",subnetOTP:"",subnetAccessToken:"",selectedSubnetOrganization:"",subnetRegToken:"",subnetOrganizations:[],loading:!1,loadingLicenseInfo:!1,clusterRegistered:!1,licenseInfo:void 0,curTab:"simple-tab-0"},a=(0,r.Z0)({name:"register",initialState:o,reducers:{setLicense:(e,t)=>{e.license=t.payload},setSubnetPassword:(e,t)=>{e.subnetPassword=t.payload},setSubnetEmail:(e,t)=>{e.subnetEmail=t.payload},setSubnetMFAToken:(e,t)=>{e.subnetMFAToken=t.payload},setSubnetOTP:(e,t)=>{e.subnetOTP=t.payload},setSubnetAccessToken:(e,t)=>{e.subnetAccessToken=t.payload},setSelectedSubnetOrganization:(e,t)=>{e.selectedSubnetOrganization=t.payload},setSubnetRegToken:(e,t)=>{e.subnetRegToken=t.payload},setSubnetOrganizations:(e,t)=>{e.subnetOrganizations=t.payload},setLoading:(e,t)=>{e.loading=t.payload},setLoadingLicenseInfo:(e,t)=>{e.loadingLicenseInfo=t.payload},setClusterRegistered:(e,t)=>{e.clusterRegistered=t.payload},setLicenseInfo:(e,t)=>{e.licenseInfo=t.payload},setCurTab:(e,t)=>{e.curTab=t.payload},resetRegisterForm:()=>o}}),{setSubnetPassword:i,setSubnetEmail:s,setSubnetMFAToken:l,setSubnetOTP:c,setSubnetAccessToken:u,setSelectedSubnetOrganization:d,setSubnetRegToken:p,setSubnetOrganizations:h,setLoading:m,setLoadingLicenseInfo:f,setClusterRegistered:g,setLicenseInfo:b,setCurTab:y,resetRegisterForm:v}=a.actions,E=a.reducer},65259:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>s,cI:()=>o,p:()=>i,rZ:()=>a});const r=(0,n(80907).Z0)({name:"trace",initialState:{messages:[],traceStarted:!1},reducers:{traceMessageReceived:(e,t)=>{e.messages.push(t.payload)},traceResetMessages:e=>{e.messages=[]},setTraceStarted:(e,t)=>{e.traceStarted=t.payload}}}),{traceMessageReceived:o,traceResetMessages:a,setTraceStarted:i}=r.actions,s=r.reducer},62560:(e,t,n)=>{"use strict";n.d(t,{AE:()=>u,Ay:()=>p,Gy:()=>c,ht:()=>i,ir:()=>l,yD:()=>s,yt:()=>d});var r=n(80907),o=n(88115);const a=(0,r.Z0)({name:"createUser",initialState:{addLoading:!1,sendEnabled:!1,apinoerror:!1,userName:"",secretKey:"",selectedGroups:[],selectedPolicies:[],secretKeylength:0},reducers:{setAddLoading:(e,t)=>{e.addLoading=t.payload},setUserName:(e,t)=>{e.userName=t.payload},setSelectedGroups:(e,t)=>{e.selectedGroups=t.payload},setSecretKey:(e,t)=>{e.secretKey=t.payload,e.secretKeylength=e.secretKey.length},setSelectedPolicies:(e,t)=>{e.selectedPolicies=t.payload},setSendEnabled:e=>{e.sendEnabled=""!==e.userName.trim()},setApinoerror:(e,t)=>{e.apinoerror=t.payload}},extraReducers:e=>{e.addCase(o.o.fulfilled,((e,t)=>{e.userName="",e.selectedGroups=[],e.secretKey="",e.selectedPolicies=[]})).addCase(o.y.pending,((e,t)=>{e.addLoading=!0})).addCase(o.y.rejected,((e,t)=>{e.addLoading=!1})).addCase(o.y.fulfilled,((e,t)=>{e.apinoerror=!0}))}}),{setUserName:i,setSelectedGroups:s,setSecretKey:l,setSelectedPolicies:c,setAddLoading:u,setSendEnabled:d}=a.actions,p=a.reducer},88115:(e,t,n)=>{"use strict";n.d(t,{o:()=>s,y:()=>l});var r=n(80907),o=n(62560),a=n(64159),i=n(20649);const s=(0,r.zD)("resetForm/resetFormAsync",(async(e,t)=>{let{dispatch:n}=t;n((0,o.yD)([])),n((0,o.ht)("")),n((0,o.ir)("")),n((0,o.Gy)([]))})),l=(0,r.zD)("createTenant/createNamespaceAsync",(async(e,t)=>{let{getState:n,rejectWithValue:r,dispatch:l}=t;const c=n(),u=c.createUser.userName,d=c.createUser.secretKey,p=c.createUser.selectedGroups,h=c.createUser.selectedPolicies;return i.A.invoke("POST","/api/v1/users",{accessKey:u,secretKey:d,groups:p,policies:h}).then((()=>{l((0,o.AE)(!1)),l(s())})).catch((e=>{l((0,o.AE)(!1)),l((0,a.C9)(e))}))}))},68603:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>i,ID:()=>a,n4:()=>o});const r=(0,n(80907).Z0)({name:"trace",initialState:{messages:[]},reducers:{watchMessageReceived:(e,t)=>{e.messages.push(t.payload)},watchResetMessages:e=>{e.messages=[]}}}),{watchResetMessages:o,watchMessageReceived:a}=r.actions,i=r.reducer},46537:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>h,cv:()=>u,h0:()=>d,s$:()=>p,tz:()=>l,wD:()=>c});var r=n(80907),o=n(57981),a=n(63642);const i={session:{},sessionLoadingState:a.v.Initial},s=(0,r.Z0)({name:"console",initialState:i,reducers:{setSessionLoadingState:(e,t)=>{e.sessionLoadingState=t.payload},saveSessionResponse:(e,t)=>{e.session=t.payload},resetSession:e=>{e.session=i.session}},extraReducers:e=>{e.addCase(o.f.pending,((e,t)=>{e.sessionLoadingState=a.v.Loading})).addCase(o.f.fulfilled,((e,t)=>{e.sessionLoadingState=a.v.Done}))}}),{saveSessionResponse:l,resetSession:c,setSessionLoadingState:u}=s.actions,d=e=>e.console.session,p=e=>e.console.session?e.console.session.features:[],h=s.reducer},63642:(e,t,n)=>{"use strict";n.d(t,{v:()=>r});let r=function(e){return e.Initial="initial",e.Loading="loading",e.Done="done",e}({})},31333:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>y,getTargetPath:()=>b});var r=n(65043),o=n(73216),a=n(89923);let i=function(e){return e.unknown="unknown",e.form="form",e.redirect="redirect",e.serviceAccount="service-account",e.redirectServiceAccount="redirect-service-account",e}({});var s=n(49555),l=n(21383),c=n(22166),u=n(27545),d=n(93396),p=n(70579);const h=e=>{let{redirectRules:t}=e;const n=(0,l.jL)(),[o,i]=(0,r.useState)(!1),[s,h]=r.useState(null),m=(0,c.d4)((e=>e.login.accessKey)),f=(0,c.d4)((e=>e.login.secretKey)),g=(0,c.d4)((e=>e.login.sts)),b=(0,c.d4)((e=>e.login.useSTS)),y=(0,c.d4)((e=>e.login.ssoEmbeddedIDPDisplay)),v=(0,c.d4)((e=>e.login.loginSending));let E=[{label:b?"Use Credentials":"Use STS",value:b?"use-sts-cred":"use-sts"}],w=[];t.length>0&&(w=t.map((e=>({label:"".concat(e.displayName).concat(e.serviceType?" - ".concat(e.serviceType):""),value:e.redirect,icon:(0,p.jsx)(a.o4l,{})}))),E=[{label:"Use Credentials",value:"use-sts-cred"},{label:"Use STS",value:"use-sts"}]);const S=e=>{window.location.href=e};return(0,p.jsxs)(r.Fragment,{children:[t.length>0&&(0,p.jsx)(r.Fragment,{children:(0,p.jsxs)(a.azJ,{sx:{marginBottom:40},children:[(0,p.jsx)(a.$nd,{id:"SSOSelector",variant:"subAction",label:1===t.length?"".concat(t[0].displayName).concat(t[0].serviceType?" - ".concat(t[0].serviceType):""):"Login with SSO",fullWidth:!0,sx:{height:50},onClick:e=>{if(t.length>1)return i(!o),void h(e.currentTarget);S("".concat(t[0].redirect))}}),t.length>1&&(0,p.jsx)(a.Vey,{id:"redirect-rules",options:w,selectedOption:"",onSelect:e=>S(e),hideTriggerAction:()=>{i(!1)},open:o,anchorEl:s,useAnchorWidth:!0})]})}),(0,p.jsxs)("form",{noValidate:!0,onSubmit:e=>{e.preventDefault(),n((0,u.V)())},style:{width:"100%"},children:[(y&&t.length>0||0===t.length)&&(0,p.jsxs)(r.Fragment,{children:[(0,p.jsxs)(a.xA9,{container:!0,sx:{marginTop:t.length>0?55:0},children:[(0,p.jsx)(a.xA9,{item:!0,xs:12,sx:{marginBottom:14},children:(0,p.jsx)(a.cl_,{fullWidth:!0,id:"accessKey",value:m,onChange:e=>n((0,d.kX)(e.target.value)),placeholder:b?"STS Username":"Username",name:"accessKey",autoComplete:"username",disabled:v,startIcon:(0,p.jsx)(a.ZfC,{})})}),(0,p.jsx)(a.xA9,{item:!0,xs:12,sx:{marginBottom:b?14:0},children:(0,p.jsx)(a.cl_,{fullWidth:!0,value:f,onChange:e=>n((0,d.ir)(e.target.value)),name:"secretKey",type:"password",id:"secretKey",autoComplete:"current-password",disabled:v,placeholder:b?"STS Secret":"Password",startIcon:(0,p.jsx)(a.fYD,{})})}),b&&(0,p.jsx)(a.xA9,{item:!0,xs:12,children:(0,p.jsx)(a.cl_,{fullWidth:!0,id:"sts",value:g,onChange:e=>n((0,d.d2)(e.target.value)),placeholder:"STS Token",name:"STS",autoComplete:"sts",disabled:v,startIcon:(0,p.jsx)(a.aJN,{})})})]}),(0,p.jsx)(a.xA9,{item:!0,xs:12,sx:{textAlign:"right",marginTop:30},children:(0,p.jsx)(a.$nd,{type:"submit",variant:"callAction",color:"primary",id:"do-login",disabled:!b&&(""===m||""===f)||b&&(""===m||""===f||""===g)||v,label:"Login",sx:{margin:"30px 0px 8px",height:40,width:"100%",boxShadow:"none",padding:"16px 30px"},fullWidth:!0})}),(0,p.jsx)(a.xA9,{item:!0,xs:12,sx:{height:10},children:v&&(0,p.jsx)(a.z21,{})})]}),(0,p.jsx)(a.xA9,{item:!0,xs:12,sx:{marginTop:45},children:(0,p.jsx)(a.l6P,{id:"alternativeMethods",name:"alternativeMethods",fixedLabel:"Other Authentication Methods",options:E,onChange:e=>{if(e){if(t.length>0){let t=!0;return"use-sts-cred"===e&&(t=!1),n((0,d.m$)(t)),void n((0,d.zC)(!0))}if(e.includes("use-sts"))return void n((0,d.m$)(!b))}},value:""})})]})]})};var m=n(14558);const f=(e,t)=>{if(e.displayName&&t.displayName){if(e.displayName>t.displayName)return 1;if(e.displayName{let e="/browser";return localStorage.getItem("redirect-path")&&""!==localStorage.getItem("redirect-path")&&(e="".concat(localStorage.getItem("redirect-path")),localStorage.setItem("redirect-path","")),e},y=()=>{const e=(0,l.jL)(),t=(0,o.Zp)(),n=(0,c.d4)((e=>e.login.loginStrategy)),b=(0,c.d4)((e=>e.login.loadingFetchConfiguration)),y=(0,c.d4)((e=>e.login.navigateTo)),v=(0,c.d4)((e=>e.login.isK8S)),E=(0,c.d4)((e=>e.login.backgroundAnimation));let w;switch((0,r.useEffect)((()=>{""!==y&&(e((0,d.E2)()),t(y))}),[y,e,t]),(0,r.useEffect)((()=>{b&&e((0,u.v)())}),[b,e]),n.loginStrategy){case i.redirect:case i.form:{let e=[];n.redirectRules&&n.redirectRules.length>0&&(e=[...n.redirectRules].sort(f)),w=(0,p.jsx)(h,{redirectRules:e});break}default:w=(0,p.jsx)(a.azJ,{sx:{textAlign:"center","& .loadingLoginStrategy":{textAlign:"center",width:40,height:40},"& .buttonRetry":{display:"flex",justifyContent:"center"}},children:b?(0,p.jsx)(a.aHM,{className:"loadingLoginStrategy"}):(0,p.jsxs)(r.Fragment,{children:[(0,p.jsx)(a.azJ,{children:(0,p.jsxs)("p",{style:{textAlign:"center"},children:["An error has occurred",(0,p.jsx)("br",{}),"The backend cannot be reached."]})}),(0,p.jsx)("div",{className:"buttonRetry",children:(0,p.jsx)(a.$nd,{onClick:()=>{e((0,u.v)())},icon:(0,p.jsx)(a.fNY,{}),iconLocation:"end",variant:"regular",id:"retry",label:"Retry"})})]})})}let S="https://min.io/docs/minio/linux/index.html?ref=con";return v&&(S="https://min.io/docs/minio/kubernetes/upstream/index.html?ref=con"),(0,r.useEffect)((()=>{e((0,g.ph)("login"))}),[]),(0,p.jsxs)(r.Fragment,{children:[(0,p.jsx)(s.A,{}),(0,p.jsx)(a.ndn,{logoProps:{applicationName:(0,m.RV)(),subVariant:(0,m.vP)()},form:w,formFooter:(0,p.jsxs)(a.azJ,{sx:{"& .separator":{marginLeft:4,marginRight:4}},children:[(0,p.jsx)("a",{href:S,target:"_blank",rel:"noopener",children:"Documentation"}),(0,p.jsx)("span",{className:"separator",children:"|"}),(0,p.jsx)("a",{href:"https://github.com/minio/minio",target:"_blank",rel:"noopener",children:"GitHub"}),(0,p.jsx)("span",{className:"separator",children:"|"}),(0,p.jsx)("a",{href:"https://subnet.min.io/?ref=con",target:"_blank",rel:"noopener",children:"Support"}),(0,p.jsx)("span",{className:"separator",children:"|"}),(0,p.jsx)("a",{href:"https://min.io/download/?ref=con",target:"_blank",rel:"noopener",children:"Download"})]}),promoHeader:(0,p.jsx)("span",{style:{fontSize:28},children:"High-Performance Object Store"}),promoInfo:(0,p.jsxs)("span",{style:{fontSize:14,lineHeight:1},children:["MinIO is a cloud-native object store built to run on any infrastructure - public, private or edge clouds. Primary use cases include data lakes, databases, AI/ML, SaaS applications and fast backup & recovery. MinIO is dual licensed under GNU AGPL v3 and commercial license. To learn more, visit"," ",(0,p.jsx)("a",{href:"https://min.io/?ref=con",target:"_blank",rel:"noopener",children:"www.min.io"}),"."]}),backgroundAnimation:E})]})}},93396:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>m,E2:()=>h,Jq:()=>d,d2:()=>u,ir:()=>l,kX:()=>s,m$:()=>c,zC:()=>p});var r=n(80907),o=n(27545);const a={accessKey:"",secretKey:"",sts:"",useSTS:!1,loginStrategy:{loginStrategy:void 0,redirectRules:[]},loginSending:!1,loadingFetchConfiguration:!0,isK8S:!1,backgroundAnimation:!1,navigateTo:"",ssoEmbeddedIDPDisplay:!1},i=(0,r.Z0)({name:"login",initialState:a,reducers:{setAccessKey:(e,t)=>{e.accessKey=t.payload},setSecretKey:(e,t)=>{e.secretKey=t.payload},setUseSTS:(e,t)=>{e.useSTS=t.payload},setSTS:(e,t)=>{e.sts=t.payload},setNavigateTo:(e,t)=>{e.navigateTo=t.payload},setDisplayEmbeddedIDPForms:(e,t)=>{e.ssoEmbeddedIDPDisplay=t.payload},resetForm:e=>a},extraReducers:e=>{e.addCase(o.v.pending,((e,t)=>{e.loadingFetchConfiguration=!0})).addCase(o.v.rejected,((e,t)=>{e.loadingFetchConfiguration=!1})).addCase(o.v.fulfilled,((e,t)=>{e.loadingFetchConfiguration=!1,t.payload&&(e.loginStrategy=t.payload,e.isK8S=!!t.payload.isK8S,e.backgroundAnimation=!!t.payload.animatedLogin)})).addCase(o.V.pending,((e,t)=>{e.loginSending=!0})).addCase(o.V.rejected,((e,t)=>{e.loginSending=!1})).addCase(o.V.fulfilled,((e,t)=>{e.loginSending=!1}))}}),{setAccessKey:s,setSecretKey:l,setUseSTS:c,setSTS:u,setNavigateTo:d,setDisplayEmbeddedIDPForms:p,resetForm:h}=i.actions,m=i.reducer},27545:(e,t,n)=>{"use strict";n.d(t,{V:()=>u,v:()=>d});var r=n(80907),o=n(64159),a=n(93396),i=n(31333),s=n(56629),l=n(53518),c=n(33479);const u=(0,r.zD)("login/doLoginAsync",(async(e,t)=>{let{getState:n,rejectWithValue:r,dispatch:u}=t;const d=n(),p=d.login.accessKey,h=d.login.secretKey,m=d.login.sts,f=d.login.useSTS;let g={accessKey:p,secretKey:h};return f&&(g={accessKey:p,secretKey:h,sts:m}),s.F.login.login(g).then((e=>{const t=(0,c.NF)();u((0,o.WQ)(!0)),localStorage.setItem("userLoggedIn",p),u((0,a.Jq)((0,i.getTargetPath)())),u((0,o.S8)(!!t))})).catch((async e=>{const t=await e.json();return u((0,o.C9)((0,l.S)(t))),r(!1)}))})),d=(0,r.zD)("login/getFetchConfigurationAsync",(async(e,t)=>{let{dispatch:n,rejectWithValue:r}=t;return s.F.login.loginDetail().then((e=>{if(e.data)return e.data})).catch((async e=>{const t=await e.json();return n((0,o.C9)((0,l.S)(t))),r(!1)}))}))},57981:(e,t,n)=>{"use strict";n.d(t,{f:()=>u});var r=n(80907),o=n(64159),a=n(56629),i=n(53518),s=n(46537),l=n(63642),c=n(33479);const u=(0,r.zD)("session/fetchSession",(async(e,t)=>{let{getState:n,dispatch:r,rejectWithValue:u}=t;const d=n().system.locationPath.split("/"),p=d.length>2?d[1]:"";return a.F.session.sessionCheck().then((e=>{if(r((0,o.WQ)(!0)),r((0,s.tz)(e.data)),r((0,o.s3)(e.data.distributedMode||!1)),e.data.customStyles&&""!==e.data.customStyles){const t=(0,c.S0)(e.data.customStyles);!1!==t&&r((0,o.DF)(t))}})).catch((async e=>{if("browser"===p){const e=d.length>=3?d[2]:"";if(""===e)return;a.F.buckets.listObjects(e,{limit:1},{headers:{"X-Anonymous":"1"}}).then((()=>{r((0,o.fO)())})).catch((e=>{r((0,o.C9)((0,i.S)(e.error)))})).finally((()=>{r((0,s.cv)(l.v.Done))}))}else r((0,s.cv)(l.v.Done)),r((0,o.C9)((0,i.S)(e.error)));return u(e.error)}))}))},39808:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(65043);var r=n(89923),o=n(70579);function a(){return(0,o.jsxs)(r.azJ,{className:"muted",sx:{textAlign:"center"},children:["Copyright \xa9 ",(0,o.jsx)("a",{href:"https://min.io/?ref=con",children:"MinIO"})," ",(new Date).getFullYear(),"."]})}const i=()=>(0,o.jsx)(r.Mxu,{children:(0,o.jsxs)(r.azJ,{sx:{display:"flex",alignItems:"center",justifyContent:"center",height:"100%",textAlign:"center",margin:"auto",flexFlow:"column"},children:[(0,o.jsx)(r.azJ,{sx:{fontSize:"110%",margin:"0 0 0.25rem",color:"#909090"},children:"404 Error"}),(0,o.jsx)(r.azJ,{sx:{fontStyle:"normal",fontSize:"clamp(2rem,calc(2rem + 1.2vw),3rem)",fontWeight:700},children:"Sorry, the page could not be found."}),(0,o.jsx)(r.azJ,{sx:{marginTop:20},children:(0,o.jsx)(a,{})})]})})},21383:(e,t,n)=>{"use strict";n.d(t,{M_:()=>I,jL:()=>O,GV:()=>k});var r=n(22166),o=n(77048),a=n(80907),i=n(64159),s=n(93396),l=n(65259),c=n(3883),u=n(87569),d=n(68603),p=n(46537),h=n(57676),m=n(39947),f=n(6035),g=n(47027),b=n(62560);const y=(0,a.Z0)({name:"license",initialState:{faqModalOpen:!1},reducers:{openFAQModal:e=>{e.faqModalOpen=!0},closeFAQModal:e=>{e.faqModalOpen=!1}}}).reducer;var v=n(41379),E=n(39161),w=n(33097),S=n.n(w),A=n(32511),_=n(93445);let T=!1,C=0;const x=(0,o.HY)({system:i.Ay,login:s.Ay,trace:l.Ay,logs:c.Ay,watch:d.Ay,console:p.Ay,addBucket:h.Ay,bucketDetails:m.Ay,objectBrowser:f.Ay,healthInfo:u.Ay,dashboard:g.Ay,register:v.Ay,createUser:b.Ay,license:y,destination:E.A}),I=(0,a.U1)({reducer:x,middleware:e=>e().concat((e=>t=>n=>r=>{const o=t.dispatch,a=t.getState(),s=S()(a,"console.session.allowResources",null),l=S()(a,"objectBrowser.selectedBucket",""),{type:c}=r;switch(c){case"socket/OBConnect":const t=S()(a,"system.loggedIn",!1);if(T||!t)return;T=!0;const n=new URL(window.location.toString()),c=n.port,d=new URL(document.baseURI).pathname,p=(0,A.nw)(n.protocol);(e=new WebSocket("".concat(p,"://").concat(n.hostname,":").concat(c).concat(d,"ws/objectManager"))).onopen=()=>{T=!1},e.onmessage=e=>{const t="An error occurred",n="An unknown error occurred. Please refer to Console logs to get more information.",r=JSON.parse(e.data.toString());if(C===r.request_id){var a,c;if(r.request_id!==C)return;if(401===(null===(a=r.error)||void 0===a?void 0:a.Code))window.location.reload();else{if(403===(null===(c=r.error)||void 0===c?void 0:c.Code)){const e=r.prefix;let a="";e&&(a=e.endsWith("/")?e:e+"/");const c=(0,_.W3)(r.bucketName||l,a,s||[]);if(c&&0!==c.length)o((0,f.u)(!1)),o((0,f.p$)(c));else{const e=r.error.APIError;o((0,i.C9)({errorMessage:e.message||t,detailedError:e.detailedMessage||n}))}return}if(r.error){const e=r.error.APIError;o((0,f.u)(!1)),o((0,i.C9)({errorMessage:e.message||t,detailedError:e.detailedMessage||n}))}}if(r.request_end)return void o((0,f.u)(!1));r.data&&(o((0,f.u)(!1)),o((0,f.iW)(r.data)))}},e.onclose=()=>{T=!1,console.warn("Websocket Disconnected. Attempting Reconnection..."),setTimeout((()=>o({type:"socket/OBConnect"})),3e3)},e.onerror=()=>{T=!1,console.error("Error in websocket connection. Attempting reconnection...")};break;case"socket/OBRequest":if(e&&1===e.readyState)try{const t=C+1,n=r.payload;o((0,f.A3)()),o((0,f.y3)(!1)),o((0,f.uR)(n.path)),o((0,f.I3)(n.bucketName)),o((0,f.u)(!0)),o((0,f.Yw)(!1)),o((0,f.$X)("")),o((0,f.KX)([]));const a={bucket_name:n.bucketName,prefix:n.path,mode:n.rewindMode?"rewind":"objects",date:n.date,request_id:t};e.send(JSON.stringify(a)),C=t}catch(u){console.error(u)}else o((0,f.Yw)(!1)),T||o({type:"socket/OBConnect"}),setTimeout((()=>o({type:"socket/OBRequest",payload:r.payload})),1e3);break;case"socket/OBCancelLast":const h={mode:"cancel",request_id:C};e&&1===e.readyState&&e.send(JSON.stringify(h));break;case"socket/OBDisconnect":e.close()}return n(r)})(undefined))});const O=()=>(0,r.wA)(),k=r.d4},64159:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>I,C9:()=>p,DF:()=>y,Dy:()=>h,Hk:()=>d,MO:()=>l,OF:()=>b,Rq:()=>C,S8:()=>T,TE:()=>w,WQ:()=>s,YR:()=>c,f7:()=>f,fO:()=>v,fw:()=>_,h0:()=>m,m0:()=>A,nM:()=>x,ph:()=>S,qf:()=>u,s3:()=>g,vv:()=>E});var r=n(80907),o=n(33479);const a={value:0,loggedIn:!1,showMarketplace:!1,userName:"",sidebarOpen:!localStorage.getItem("sidebarOpen")||JSON.parse(localStorage.getItem("sidebarOpen")).open,siteReplicationInfo:{siteName:"",curSite:!1,enabled:!1},serverNeedsRestart:!1,serverIsLoading:!1,loadingConfigurations:!0,loadingProgress:100,snackBar:{message:"",detailedErrorMsg:"",type:"message"},modalSnackBar:{message:"",detailedErrorMsg:"",type:"message"},serverDiagnosticStatus:"",distributedSetup:!1,licenseInfo:null,overrideStyles:null,anonymousMode:!1,helpName:"help",helpTabName:"docs",locationPath:"",darkMode:(0,o.NF)()},i=(0,r.Z0)({name:"system",initialState:a,reducers:{userLogged:(e,t)=>{e.loggedIn=t.payload},showMarketplace:(e,t)=>{e.showMarketplace=t.payload},menuOpen:(e,t)=>{localStorage.setItem("sidebarOpen",JSON.stringify({open:t.payload})),e.sidebarOpen=t.payload},setServerNeedsRestart:(e,t)=>{e.serverNeedsRestart=t.payload},serverIsLoading:(e,t)=>{e.serverIsLoading=t.payload},configurationIsLoading:(e,t)=>{e.loadingConfigurations=t.payload},setLoadingProgress:(e,t)=>{e.loadingProgress=t.payload},setSnackBarMessage:(e,t)=>{e.snackBar={message:t.payload,detailedErrorMsg:"",type:"message"}},setErrorSnackMessage:(e,t)=>{e.snackBar={message:t.payload.errorMessage,detailedErrorMsg:t.payload.detailedError,type:"error"}},setModalSnackMessage:(e,t)=>{e.modalSnackBar={message:t.payload,detailedErrorMsg:"",type:"message"}},setModalErrorSnackMessage:(e,t)=>{e.modalSnackBar={message:t.payload.errorMessage,detailedErrorMsg:t.payload.detailedError,type:"error"}},setServerDiagStat:(e,t)=>{e.serverDiagnosticStatus=t.payload},globalSetDistributedSetup:(e,t)=>{e.distributedSetup=t.payload},setSiteReplicationInfo:(e,t)=>{e.siteReplicationInfo=t.payload},setSystemLicenseInfo:(e,t)=>{e.licenseInfo=t.payload},setHelpName:(e,t)=>{e.helpName=t.payload},setHelpTabName:(e,t)=>{e.helpTabName=t.payload},setOverrideStyles:(e,t)=>{e.overrideStyles=t.payload},setAnonymousMode:e=>{e.anonymousMode=!0,e.loggedIn=!0},setLocationPath:(e,t)=>{e.locationPath=t.payload},setDarkMode:(e,t)=>{e.darkMode=t.payload},resetSystem:()=>a}}),{userLogged:s,menuOpen:l,setServerNeedsRestart:c,serverIsLoading:u,setSnackBarMessage:d,setErrorSnackMessage:p,setModalErrorSnackMessage:h,setModalSnackMessage:m,setServerDiagStat:f,globalSetDistributedSetup:g,setSiteReplicationInfo:b,setOverrideStyles:y,setAnonymousMode:v,resetSystem:E,configurationIsLoading:w,setHelpName:S,setHelpTabName:A,setLocationPath:_,setDarkMode:T}=i.actions,C=e=>e.system.distributedSetup,x=e=>e.system.siteReplicationInfo,I=i.reducer},33479:(e,t,n)=>{"use strict";n.d(t,{NF:()=>s,S0:()=>a,pB:()=>i,vb:()=>l});var r=n(33097),o=n.n(r);const a=e=>{try{return JSON.parse(atob(e))}catch(t){return console.error("Error processing override styles, skipping.",t),!1}},i=e=>{let t;try{t={bgColor:e.backgroundColor,fontColor:e.fontColor,borderColor:e.borderColor,bulletColor:e.fontColor,logoColor:"#C51B3F",logoLabelColor:e.fontColor,logoLabelInverse:"#FFF",loaderColor:e.loaderColor,boxBackground:e.boxBackground,mutedText:"#9c9c9c",secondaryText:"#9c9c9c",buttons:{regular:{enabled:{border:e.regularButtonStyles.textColor,text:e.regularButtonStyles.textColor,background:"transparent",iconColor:e.regularButtonStyles.textColor},disabled:{border:e.regularButtonStyles.disabledText,text:e.regularButtonStyles.disabledText,background:"transparent",iconColor:e.regularButtonStyles.disabledText},hover:{border:e.regularButtonStyles.hoverText,text:e.regularButtonStyles.hoverText,background:"transparent",iconColor:e.regularButtonStyles.hoverText},pressed:{border:e.regularButtonStyles.activeText,text:e.regularButtonStyles.activeText,background:"transparent",iconColor:e.regularButtonStyles.activeText}},callAction:{enabled:{border:e.buttonStyles.backgroundColor,text:e.buttonStyles.textColor,background:e.buttonStyles.backgroundColor,iconColor:e.buttonStyles.textColor},disabled:{border:e.buttonStyles.disabledColor,text:e.buttonStyles.disabledText,background:e.buttonStyles.disabledColor,iconColor:e.buttonStyles.disabledText},hover:{border:e.buttonStyles.hoverColor,text:e.buttonStyles.hoverText,background:e.buttonStyles.hoverColor,iconColor:e.buttonStyles.hoverText},pressed:{border:e.buttonStyles.activeColor,text:e.buttonStyles.activeText,background:e.buttonStyles.activeColor,iconColor:e.buttonStyles.activeText}},secondary:{enabled:{border:e.secondaryButtonStyles.textColor,text:e.secondaryButtonStyles.textColor,background:"transparent",iconColor:e.secondaryButtonStyles.textColor},disabled:{border:e.secondaryButtonStyles.disabledText,text:e.secondaryButtonStyles.disabledText,background:"transparent",iconColor:e.secondaryButtonStyles.disabledText},hover:{border:e.secondaryButtonStyles.hoverText,text:e.secondaryButtonStyles.hoverText,background:"transparent",iconColor:e.secondaryButtonStyles.hoverText},pressed:{border:e.secondaryButtonStyles.activeText,text:e.secondaryButtonStyles.activeText,background:"transparent",iconColor:e.secondaryButtonStyles.activeText}},text:{enabled:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor},disabled:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor},hover:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor},pressed:{border:"transparent",text:e.fontColor,background:"transparent",iconColor:e.fontColor}}},login:{formBG:"#fff",bgFilter:"none",promoBG:"#000110",promoHeader:"#fff",promoText:"#A6DFEF",footerElements:"#2781B0",footerDivider:"#F2F2F2"},pageHeader:{background:e.boxBackground,border:e.borderColor,color:e.fontColor},tooltip:{background:e.boxBackground,color:e.fontColor},commonInput:{labelColor:e.fontColor},checkbox:{checkBoxBorder:e.borderColor,checkBoxColor:e.okColor,disabledBorder:e.buttonStyles.disabledColor,disabledColor:e.buttonStyles.disabledColor},iconButton:{buttonBG:e.buttonStyles.backgroundColor,activeBG:e.buttonStyles.activeColor,hoverBG:e.buttonStyles.hoverColor,disabledBG:e.buttonStyles.disabledColor,color:e.buttonStyles.textColor},dataTable:{border:e.tableColors.border,disabledBorder:e.tableColors.disabledBorder,disabledBG:e.tableColors.disabledBG,selected:e.tableColors.selected,deletedDisabled:e.tableColors.deletedDisabled,hoverColor:e.tableColors.hoverColor},backLink:{color:e.linkColor,arrow:e.linkColor,hover:e.hoverLinkColor},inputBox:{border:e.inputBox.border,hoverBorder:e.inputBox.hoverBorder,color:e.inputBox.textColor,backgroundColor:e.inputBox.backgroundColor,error:e.errorColor,placeholderColor:e.inputBox.textColor,disabledBorder:e.buttonStyles.disabledColor,disabledBackground:e.inputBox.backgroundColor,disabledPlaceholder:e.buttonStyles.disabledColor,disabledText:e.buttonStyles.disabledColor},breadcrumbs:{border:e.borderColor,linksColor:e.linkColor,textColor:e.fontColor,backgroundColor:e.boxBackground,backButton:{border:e.borderColor,backgroundColor:e.boxBackground}},actionsList:{containerBorderColor:e.boxBackground,backgroundColor:e.boxBackground,disabledOptionsTextColor:e.disabledLinkColor,optionsBorder:e.borderColor,optionsHoverTextColor:e.hoverLinkColor,optionsTextColor:e.linkColor,titleColor:e.fontColor},screenTitle:{border:e.borderColor,subtitleColor:e.secondaryFontColor,iconColor:e.fontColor},modalBox:{closeColor:e.regularButtonStyles.textColor,closeHoverBG:e.regularButtonStyles.hoverColor,closeHoverColor:e.regularButtonStyles.hoverText,containerColor:e.backgroundColor,overlayColor:"#00000050",titleColor:e.fontColor,iconColor:{default:e.fontColor,accept:e.okColor,delete:e.errorColor}},switchButton:{bulletBGColor:e.switch.bulletBGColor,bulletBorderColor:e.switch.bulletBorderColor,disabledBulletBGColor:e.switch.disabledBulletBGColor,disabledBulletBorderColor:e.switch.disabledBulletBorderColor,offLabelColor:e.secondaryFontColor,onLabelColor:e.fontColor,onBackgroundColor:e.okColor,switchBackground:e.switch.switchBackground,disabledBackground:e.switch.disabledBackground,disabledOnBackground:e.switch.disabledBackground},dropdownSelector:{hoverText:e.buttonStyles.hoverText,backgroundColor:e.boxBackground,hoverBG:e.buttonStyles.hoverColor,selectedBGColor:e.buttonStyles.hoverColor,selectedTextColor:e.buttonStyles.hoverText,optionTextColor:e.fontColor,disabledText:e.disabledLinkColor},readBox:{borderColor:e.borderColor,backgroundColor:e.boxBackground,textColor:e.fontColor}}}catch(n){console.warn("Invalid theme provided. Fallback to original theme.")}return t},s=()=>{const e=localStorage.getItem("dark-mode");if(!e){const e=window.matchMedia("(prefers-color-scheme: dark)");return o()(e,"matches",!1)}return"on"===e},l=e=>{localStorage.setItem("dark-mode",e)}},32511:(e,t,n)=>{"use strict";n.d(t,{Sf:()=>a,gU:()=>o,nw:()=>i,wU:()=>r});const r=1006,o=1008,a=1011,i=e=>{let t="ws";return"https:"===e&&(t="wss"),t}},93820:(e,t,n)=>{var r=n(65043);function o(e,t,n,r){Object.defineProperty(e,t,{get:n,set:r,enumerable:!0,configurable:!0})}function a(){for(var e=arguments.length,t=new Array(e),n=0;nt.forEach((t=>function(e,t){"function"===typeof e?e(t):null!==e&&void 0!==e&&(e.current=t)}(t,e)))}function i(){for(var e=arguments.length,t=new Array(e),n=0;na)),o(e.exports,"useComposedRefs",(()=>i))},80057:(e,t,n)=>{var r=n(94634),o=n(65043),a=n(97950),i=n(60432);function s(e,t,n,r){Object.defineProperty(e,t,{get:n,set:r,enumerable:!0,configurable:!0})}function l(e){return e&&e.__esModule?e.default:e}s(e.exports,"Portal",(()=>c)),s(e.exports,"Root",(()=>u));const c=o.forwardRef(((e,t)=>{var n;const{container:s=(null===globalThis||void 0===globalThis||null===(n=globalThis.document)||void 0===n?void 0:n.body),...c}=e;return s?l(a).createPortal(o.createElement(i.Primitive.div,l(r)({},c,{ref:t})),s):null})),u=c},60432:(e,t,n)=>{var r=n(94634),o=n(65043),a=n(97950),i=n(18463);function s(e,t,n,r){Object.defineProperty(e,t,{get:n,set:r,enumerable:!0,configurable:!0})}s(e.exports,"Primitive",(()=>l)),s(e.exports,"Root",(()=>u)),s(e.exports,"dispatchDiscreteCustomEvent",(()=>c));const l=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","span","svg","ul"].reduce(((e,t)=>{const n=o.forwardRef(((e,n)=>{const{asChild:a,...s}=e,l=a?i.Slot:t;return o.useEffect((()=>{window[Symbol.for("radix-ui")]=!0}),[]),o.createElement(l,((c=r)&&c.__esModule?c.default:c)({},s,{ref:n}));var c}));return n.displayName="Primitive.".concat(t),{...e,[t]:n}}),{});function c(e,t){e&&a.flushSync((()=>e.dispatchEvent(t)))}const u=l},18463:(e,t,n)=>{var r=n(94634),o=n(65043),a=n(93820);function i(e,t,n,r){Object.defineProperty(e,t,{get:n,set:r,enumerable:!0,configurable:!0})}function s(e){return e&&e.__esModule?e.default:e}i(e.exports,"Slot",(()=>l)),i(e.exports,"Slottable",(()=>u)),i(e.exports,"Root",(()=>h));const l=o.forwardRef(((e,t)=>{const{children:n,...a}=e,i=o.Children.toArray(n),l=i.find(d);if(l){const e=l.props.children,n=i.map((t=>t===l?o.Children.count(e)>1?o.Children.only(null):o.isValidElement(e)?e.props.children:null:t));return o.createElement(c,s(r)({},a,{ref:t}),o.isValidElement(e)?o.cloneElement(e,void 0,n):null)}return o.createElement(c,s(r)({},a,{ref:t}),n)}));l.displayName="Slot";const c=o.forwardRef(((e,t)=>{const{children:n,...r}=e;return o.isValidElement(n)?o.cloneElement(n,{...p(r,n.props),ref:t?a.composeRefs(t,n.ref):n.ref}):o.Children.count(n)>1?o.Children.only(null):null}));c.displayName="SlotClone";const u=e=>{let{children:t}=e;return o.createElement(o.Fragment,null,t)};function d(e){return o.isValidElement(e)&&e.type===u}function p(e,t){const n={...t};for(const r in t){const o=e[r],a=t[r];/^on[A-Z]/.test(r)?o&&a?n[r]=function(){a(...arguments),o(...arguments)}:o&&(n[r]=o):"style"===r?n[r]={...o,...a}:"className"===r&&(n[r]=[o,a].filter(Boolean).join(" "))}return{...e,...n}}const h=l},80907:(e,t,n)=>{"use strict";function r(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r3?t.i-4:t.i:Array.isArray(e)?1:p(e)?2:h(e)?3:0}function l(e,t){return 2===s(e)?e.has(t):Object.prototype.hasOwnProperty.call(e,t)}function c(e,t){return 2===s(e)?e.get(t):e[t]}function u(e,t,n){var r=s(e);2===r?e.set(t,n):3===r?e.add(n):e[t]=n}function d(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}function p(e){return H&&e instanceof Map}function h(e){return G&&e instanceof Set}function m(e){return e.o||e.t}function f(e){if(Array.isArray(e))return Array.prototype.slice.call(e);var t=K(e);delete t[Z];for(var n=Y(t),r=0;r1&&(e.set=e.add=e.clear=e.delete=b),Object.freeze(e),t&&i(e,(function(e,t){return g(t,!0)}),!0)),e}function b(){r(2)}function y(e){return null==e||"object"!=typeof e||Object.isFrozen(e)}function v(e){var t=X[e];return t||r(18,e),t}function E(e,t){X[e]||(X[e]=t)}function w(){return z}function S(e,t){t&&(v("Patches"),e.u=[],e.s=[],e.v=t)}function A(e){_(e),e.p.forEach(C),e.p=null}function _(e){e===z&&(z=e.l)}function T(e){return z={p:[],l:z,h:e,m:!0,_:0}}function C(e){var t=e[Z];0===t.i||1===t.i?t.j():t.g=!0}function x(e,t){t._=t.p.length;var n=t.p[0],o=void 0!==e&&e!==n;return t.h.O||v("ES5").S(t,e,o),o?(n[Z].P&&(A(t),r(4)),a(e)&&(e=I(t,e),t.l||k(t,e)),t.u&&v("Patches").M(n[Z].t,e,t.u,t.s)):e=I(t,n,[]),A(t),t.u&&t.v(t.u,t.s),e!==q?e:void 0}function I(e,t,n){if(y(t))return t;var r=t[Z];if(!r)return i(t,(function(o,a){return O(e,r,t,o,a,n)}),!0),t;if(r.A!==e)return t;if(!r.P)return k(e,r.t,!0),r.t;if(!r.I){r.I=!0,r.A._--;var o=4===r.i||5===r.i?r.o=f(r.k):r.o,a=o,s=!1;3===r.i&&(a=new Set(o),o.clear(),s=!0),i(a,(function(t,a){return O(e,r,o,t,a,n,s)})),k(e,o,!1),n&&e.u&&v("Patches").N(r,n,e.u,e.s)}return r.o}function O(e,t,n,r,i,s,c){if(o(i)){var d=I(e,i,s&&t&&3!==t.i&&!l(t.R,r)?s.concat(r):void 0);if(u(n,r,d),!o(d))return;e.m=!1}else c&&n.add(i);if(a(i)&&!y(i)){if(!e.h.D&&e._<1)return;I(e,i),t&&t.A.l||k(e,i)}}function k(e,t,n){void 0===n&&(n=!1),!e.l&&e.h.D&&e.m&&g(t,n)}function N(e,t){var n=e[Z];return(n?m(n):e)[t]}function R(e,t){if(t in e)for(var n=Object.getPrototypeOf(e);n;){var r=Object.getOwnPropertyDescriptor(n,t);if(r)return r;n=Object.getPrototypeOf(n)}}function M(e){e.P||(e.P=!0,e.l&&M(e.l))}function L(e){e.o||(e.o=f(e.t))}function D(e,t,n){var r=p(t)?v("MapSet").F(t,n):h(t)?v("MapSet").T(t,n):e.O?function(e,t){var n=Array.isArray(e),r={i:n?1:0,A:t?t.A:w(),P:!1,I:!1,R:{},l:t,t:e,k:null,o:null,j:null,C:!1},o=r,a=J;n&&(o=[r],a=Q);var i=Proxy.revocable(o,a),s=i.revoke,l=i.proxy;return r.k=l,r.j=s,l}(t,n):v("ES5").J(t,n);return(n?n.A:w()).p.push(r),r}function P(e){return o(e)||r(22,e),function e(t){if(!a(t))return t;var n,r=t[Z],o=s(t);if(r){if(!r.P&&(r.i<4||!v("ES5").K(r)))return r.t;r.I=!0,n=B(t,o),r.I=!1}else n=B(t,o);return i(n,(function(t,o){r&&c(r.t,t)===o||u(n,t,e(o))})),3===o?new Set(n):n}(e)}function B(e,t){switch(t){case 2:return new Map(e);case 3:return Array.from(e)}return f(e)}function F(){function e(e,t){var n=a[e];return n?n.enumerable=t:a[e]=n={configurable:!0,enumerable:t,get:function(){var t=this[Z];return J.get(t,e)},set:function(t){var n=this[Z];J.set(n,e,t)}},n}function t(e){for(var t=e.length-1;t>=0;t--){var o=e[t][Z];if(!o.P)switch(o.i){case 5:r(o)&&M(o);break;case 4:n(o)&&M(o)}}}function n(e){for(var t=e.t,n=e.k,r=Y(n),o=r.length-1;o>=0;o--){var a=r[o];if(a!==Z){var i=t[a];if(void 0===i&&!l(t,a))return!0;var s=n[a],c=s&&s[Z];if(c?c.t!==i:!d(s,i))return!0}}var u=!!t[Z];return r.length!==Y(t).length+(u?0:1)}function r(e){var t=e.k;if(t.length!==e.t.length)return!0;var n=Object.getOwnPropertyDescriptor(t,t.length-1);if(n&&!n.get)return!0;for(var r=0;rOe,zD:()=>Be,Z0:()=>Ne});var j,z,U="undefined"!=typeof Symbol&&"symbol"==typeof Symbol("x"),H="undefined"!=typeof Map,G="undefined"!=typeof Set,V="undefined"!=typeof Proxy&&void 0!==Proxy.revocable&&"undefined"!=typeof Reflect,q=U?Symbol.for("immer-nothing"):((j={})["immer-nothing"]=!0,j),W=U?Symbol.for("immer-draftable"):"__$immer_draftable",Z=U?Symbol.for("immer-state"):"__$immer_state",$=("undefined"!=typeof Symbol&&Symbol.iterator,""+Object.prototype.constructor),Y="undefined"!=typeof Reflect&&Reflect.ownKeys?Reflect.ownKeys:void 0!==Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:Object.getOwnPropertyNames,K=Object.getOwnPropertyDescriptors||function(e){var t={};return Y(e).forEach((function(n){t[n]=Object.getOwnPropertyDescriptor(e,n)})),t},X={},J={get:function(e,t){if(t===Z)return e;var n=m(e);if(!l(n,t))return function(e,t,n){var r,o=R(t,n);return o?"value"in o?o.value:null===(r=o.get)||void 0===r?void 0:r.call(e.k):void 0}(e,n,t);var r=n[t];return e.I||!a(r)?r:r===N(e.t,t)?(L(e),e.o[t]=D(e.A.h,r,e)):r},has:function(e,t){return t in m(e)},ownKeys:function(e){return Reflect.ownKeys(m(e))},set:function(e,t,n){var r=R(m(e),t);if(null==r?void 0:r.set)return r.set.call(e.k,n),!0;if(!e.P){var o=N(m(e),t),a=null==o?void 0:o[Z];if(a&&a.t===n)return e.o[t]=n,e.R[t]=!1,!0;if(d(n,o)&&(void 0!==n||l(e.t,t)))return!0;L(e),M(e)}return e.o[t]===n&&(void 0!==n||t in e.o)||Number.isNaN(n)&&Number.isNaN(e.o[t])||(e.o[t]=n,e.R[t]=!0),!0},deleteProperty:function(e,t){return void 0!==N(e.t,t)||t in e.t?(e.R[t]=!1,L(e),M(e)):delete e.R[t],e.o&&delete e.o[t],!0},getOwnPropertyDescriptor:function(e,t){var n=m(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r?{writable:!0,configurable:1!==e.i||"length"!==t,enumerable:r.enumerable,value:n[t]}:r},defineProperty:function(){r(11)},getPrototypeOf:function(e){return Object.getPrototypeOf(e.t)},setPrototypeOf:function(){r(12)}},Q={};i(J,(function(e,t){Q[e]=function(){return arguments[0]=arguments[0][0],t.apply(this,arguments)}})),Q.deleteProperty=function(e,t){return Q.set.call(this,e,t,void 0)},Q.set=function(e,t,n){return J.set.call(this,e[0],t,n,e[0])};var ee=function(){function e(e){var t=this;this.O=V,this.D=!0,this.produce=function(e,n,o){if("function"==typeof e&&"function"!=typeof n){var i=n;n=e;var s=t;return function(e){var t=this;void 0===e&&(e=i);for(var r=arguments.length,o=Array(r>1?r-1:0),a=1;a1?r-1:0),a=1;a=0;n--){var r=t[n];if(0===r.path.length&&"replace"===r.op){e=r.value;break}}n>-1&&(t=t.slice(n+1));var a=v("Patches").$;return o(e)?a(e,t):this.produce(e,(function(e){return a(e,t)}))},e}(),te=new ee,ne=te.produce;te.produceWithPatches.bind(te),te.setAutoFreeze.bind(te),te.setUseProxies.bind(te),te.applyPatches.bind(te),te.createDraft.bind(te),te.finishDraft.bind(te);const re=ne;var oe=n(77048);function ae(e){return function(t){var n=t.dispatch,r=t.getState;return function(t){return function(o){return"function"===typeof o?o(n,r,e):t(o)}}}}var ie=ae();ie.withExtraArgument=ae;const se=ie;var le=function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if("function"!==typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}}(),ce=function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"===typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(a){return function(s){return function(a){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===a[0]||2===a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]{"use strict";function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;td,Gh:()=>L,HS:()=>D,Oi:()=>s,Rr:()=>p,pX:()=>z,pb:()=>k,rc:()=>o,tH:()=>j,ue:()=>f,yD:()=>M,zR:()=>i}),function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"}(o||(o={}));const a="popstate";function i(e){return void 0===e&&(e={}),h((function(e,t){let{pathname:n,search:r,hash:o}=e.location;return u("",{pathname:n,search:r,hash:o},t.state&&t.state.usr||null,t.state&&t.state.key||"default")}),(function(e,t){return"string"===typeof t?t:d(t)}),null,e)}function s(e,t){if(!1===e||null===e||"undefined"===typeof e)throw new Error(t)}function l(e,t){if(!e){"undefined"!==typeof console&&console.warn(t);try{throw new Error(t)}catch(n){}}}function c(e,t){return{usr:e.state,key:e.key,idx:t}}function u(e,t,n,o){return void 0===n&&(n=null),r({pathname:"string"===typeof e?e:e.pathname,search:"",hash:""},"string"===typeof t?p(t):t,{state:n,key:t&&t.key||o||Math.random().toString(36).substr(2,8)})}function d(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&"?"!==n&&(t+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(t+="#"===r.charAt(0)?r:"#"+r),t}function p(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function h(e,t,n,i){void 0===i&&(i={});let{window:l=document.defaultView,v5Compat:p=!1}=i,h=l.history,m=o.Pop,f=null,g=b();function b(){return(h.state||{idx:null}).idx}function y(){m=o.Pop;let e=b(),t=null==e?null:e-g;g=e,f&&f({action:m,location:E.location,delta:t})}function v(e){let t="null"!==l.location.origin?l.location.origin:l.location.href,n="string"===typeof e?e:d(e);return n=n.replace(/ $/,"%20"),s(t,"No window.location.(origin|href) available to create URL for href: "+n),new URL(n,t)}null==g&&(g=0,h.replaceState(r({},h.state,{idx:g}),""));let E={get action(){return m},get location(){return e(l,h)},listen(e){if(f)throw new Error("A history only accepts one active listener");return l.addEventListener(a,y),f=e,()=>{l.removeEventListener(a,y),f=null}},createHref:e=>t(l,e),createURL:v,encodeLocation(e){let t=v(e);return{pathname:t.pathname,search:t.search,hash:t.hash}},push:function(e,t){m=o.Push;let r=u(E.location,e,t);n&&n(r,e),g=b()+1;let a=c(r,g),i=E.createHref(r);try{h.pushState(a,"",i)}catch(s){if(s instanceof DOMException&&"DataCloneError"===s.name)throw s;l.location.assign(i)}p&&f&&f({action:m,location:E.location,delta:1})},replace:function(e,t){m=o.Replace;let r=u(E.location,e,t);n&&n(r,e),g=b();let a=c(r,g),i=E.createHref(r);h.replaceState(a,"",i),p&&f&&f({action:m,location:E.location,delta:0})},go:e=>h.go(e)};return E}var m;!function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"}(m||(m={}));new Set(["lazy","caseSensitive","path","id","index","children"]);function f(e,t,n){return void 0===n&&(n="/"),g(e,t,n,!1)}function g(e,t,n,r){let o=k(("string"===typeof t?p(t):t).pathname||"/",n);if(null==o)return null;let a=b(e);!function(e){e.sort(((e,t)=>e.score!==t.score?t.score-e.score:function(e,t){let n=e.length===t.length&&e.slice(0,-1).every(((e,n)=>e===t[n]));return n?e[e.length-1]-t[t.length-1]:0}(e.routesMeta.map((e=>e.childrenIndex)),t.routesMeta.map((e=>e.childrenIndex)))))}(a);let i=null;for(let s=0;null==i&&s{let i={relativePath:void 0===a?e.path||"":a,caseSensitive:!0===e.caseSensitive,childrenIndex:o,route:e};i.relativePath.startsWith("/")&&(s(i.relativePath.startsWith(r),'Absolute route path "'+i.relativePath+'" nested under path "'+r+'" is not valid. An absolute child route path must start with the combined path of all its parent routes.'),i.relativePath=i.relativePath.slice(r.length));let l=D([r,i.relativePath]),c=n.concat(i);e.children&&e.children.length>0&&(s(!0!==e.index,'Index routes must not have child routes. Please remove all child routes from route path "'+l+'".'),b(e.children,t,c,l)),(null!=e.path||e.index)&&t.push({path:l,score:C(l,e.index),routesMeta:c})};return e.forEach(((e,t)=>{var n;if(""!==e.path&&null!=(n=e.path)&&n.includes("?"))for(let r of y(e.path))o(e,t,r);else o(e,t)})),t}function y(e){let t=e.split("/");if(0===t.length)return[];let[n,...r]=t,o=n.endsWith("?"),a=n.replace(/\?$/,"");if(0===r.length)return o?[a,""]:[a];let i=y(r.join("/")),s=[];return s.push(...i.map((e=>""===e?a:[a,e].join("/")))),o&&s.push(...i),s.map((t=>e.startsWith("/")&&""===t?"/":t))}const v=/^:[\w-]+$/,E=3,w=2,S=1,A=10,_=-2,T=e=>"*"===e;function C(e,t){let n=e.split("/"),r=n.length;return n.some(T)&&(r+=_),t&&(r+=w),n.filter((e=>!T(e))).reduce(((e,t)=>e+(v.test(t)?E:""===t?S:A)),r)}function x(e,t,n){void 0===n&&(n=!1);let{routesMeta:r}=e,o={},a="/",i=[];for(let s=0;s(r.push({paramName:t,isOptional:null!=n}),n?"/?([^\\/]+)?":"/([^\\/]+)")));e.endsWith("*")?(r.push({paramName:"*"}),o+="*"===e||"/*"===e?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?o+="\\/*$":""!==e&&"/"!==e&&(o+="(?:(?=\\/|$))");let a=new RegExp(o,t?void 0:"i");return[a,r]}(e.path,e.caseSensitive,e.end),o=t.match(n);if(!o)return null;let a=o[0],i=a.replace(/(.)\/+$/,"$1"),s=o.slice(1);return{params:r.reduce(((e,t,n)=>{let{paramName:r,isOptional:o}=t;if("*"===r){let e=s[n]||"";i=a.slice(0,a.length-e.length).replace(/(.)\/+$/,"$1")}const l=s[n];return e[r]=o&&!l?void 0:(l||"").replace(/%2F/g,"/"),e}),{}),pathname:a,pathnameBase:i,pattern:e}}function O(e){try{return e.split("/").map((e=>decodeURIComponent(e).replace(/\//g,"%2F"))).join("/")}catch(t){return l(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent encoding ('+t+")."),e}}function k(e,t){if("/"===t)return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&"/"!==r?null:e.slice(n)||"/"}function N(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified `to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the `to."+n+'` field. Alternatively you may provide the full path as a string in and the router will parse it for you.'}function R(e){return e.filter(((e,t)=>0===t||e.route.path&&e.route.path.length>0))}function M(e,t){let n=R(e);return t?n.map(((e,t)=>t===n.length-1?e.pathname:e.pathnameBase)):n.map((e=>e.pathnameBase))}function L(e,t,n,o){let a;void 0===o&&(o=!1),"string"===typeof e?a=p(e):(a=r({},e),s(!a.pathname||!a.pathname.includes("?"),N("?","pathname","search",a)),s(!a.pathname||!a.pathname.includes("#"),N("#","pathname","hash",a)),s(!a.search||!a.search.includes("#"),N("#","search","hash",a)));let i,l=""===e||""===a.pathname,c=l?"/":a.pathname;if(null==c)i=n;else{let e=t.length-1;if(!o&&c.startsWith("..")){let t=c.split("/");for(;".."===t[0];)t.shift(),e-=1;a.pathname=t.join("/")}i=e>=0?t[e]:"/"}let u=function(e,t){void 0===t&&(t="/");let{pathname:n,search:r="",hash:o=""}="string"===typeof e?p(e):e,a=n?n.startsWith("/")?n:function(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach((e=>{".."===e?n.length>1&&n.pop():"."!==e&&n.push(e)})),n.length>1?n.join("/"):"/"}(n,t):t;return{pathname:a,search:B(r),hash:F(o)}}(a,i),d=c&&"/"!==c&&c.endsWith("/"),h=(l||"."===c)&&n.endsWith("/");return u.pathname.endsWith("/")||!d&&!h||(u.pathname+="/"),u}const D=e=>e.join("/").replace(/\/\/+/g,"/"),P=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),B=e=>e&&"?"!==e?e.startsWith("?")?e:"?"+e:"",F=e=>e&&"#"!==e?e.startsWith("#")?e:"#"+e:"";class j extends Error{}function z(e){return null!=e&&"number"===typeof e.status&&"string"===typeof e.statusText&&"boolean"===typeof e.internal&&"data"in e}const U=["post","put","patch","delete"],H=(new Set(U),["get",...U]);new Set(H),new Set([301,302,303,307,308]),new Set([307,308]);Symbol("deferred")},12028:(e,t,n)=>{"use strict";var r=n(60002),o=n(61712),a=o(r("String.prototype.indexOf"));e.exports=function(e,t){var n=r(e,!!t);return"function"===typeof n&&a(e,".prototype.")>-1?o(n):n}},61712:(e,t,n)=>{"use strict";var r=n(63864),o=n(60002),a=n(75438),i=n(54902),s=o("%Function.prototype.apply%"),l=o("%Function.prototype.call%"),c=o("%Reflect.apply%",!0)||r.call(l,s),u=n(82090),d=o("%Math.max%");e.exports=function(e){if("function"!==typeof e)throw new i("a function is required");var t=c(r,l,arguments);return a(t,1+d(0,e.length-(arguments.length-1)),!0)};var p=function(){return c(r,s,arguments)};u?u(e.exports,"apply",{value:p}):e.exports.apply=p},91804:e=>{function t(e){if(e)return function(e){for(var n in t.prototype)e[n]=t.prototype[n];return e}(e)}e.exports=t,t.prototype.on=t.prototype.addEventListener=function(e,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t),this},t.prototype.once=function(e,t){function n(){this.off(e,n),t.apply(this,arguments)}return n.fn=t,this.on(e,n),this},t.prototype.off=t.prototype.removeListener=t.prototype.removeAllListeners=t.prototype.removeEventListener=function(e,t){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var n,r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length)return delete this._callbacks["$"+e],this;for(var o=0;o{"use strict";t.parse=function(e,t){if("string"!==typeof e)throw new TypeError("argument str must be a string");for(var r={},a=t||{},s=e.split(o),l=a.decode||n,c=0;c(s=(i=Math.ceil(p/g))>s?i+1:s+1)&&(a=s,r.length=1),r.reverse();a--;)r.push(0);r.reverse()}for((s=c.length)-(a=u.length)<0&&(a=s,r=u,u=c,c=r),n=0;a;)n=(c[--a]=c[a]+u[a]+n)/f|0,c[a]%=f;for(n&&(c.unshift(n),++o),s=c.length;0==c[--s];)c.pop();return t.d=c,t.e=o,l?k(t,p):t}function w(e,t,n){if(e!==~~e||en)throw Error(u+e)}function S(e){var t,n,r,o=e.length-1,a="",i=e[0];if(o>0){for(a+=i,t=1;te.e^a.s<0?1:-1;for(t=0,n=(r=a.d.length)<(o=e.d.length)?r:o;te.d[t]^a.s<0?1:-1;return r===o?0:r>o^a.s<0?1:-1},v.decimalPlaces=v.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*g;if(t=e.d[t])for(;t%10==0;t/=10)n--;return n<0?0:n},v.dividedBy=v.div=function(e){return A(this,new this.constructor(e))},v.dividedToIntegerBy=v.idiv=function(e){var t=this.constructor;return k(A(this,new t(e),0,1),t.precision)},v.equals=v.eq=function(e){return!this.cmp(e)},v.exponent=function(){return T(this)},v.greaterThan=v.gt=function(e){return this.cmp(e)>0},v.greaterThanOrEqualTo=v.gte=function(e){return this.cmp(e)>=0},v.isInteger=v.isint=function(){return this.e>this.d.length-2},v.isNegative=v.isneg=function(){return this.s<0},v.isPositive=v.ispos=function(){return this.s>0},v.isZero=function(){return 0===this.s},v.lessThan=v.lt=function(e){return this.cmp(e)<0},v.lessThanOrEqualTo=v.lte=function(e){return this.cmp(e)<1},v.logarithm=v.log=function(e){var t,n=this,r=n.constructor,o=r.precision,i=o+5;if(void 0===e)e=new r(10);else if((e=new r(e)).s<1||e.eq(a))throw Error(c+"NaN");if(n.s<1)throw Error(c+(n.s?"NaN":"-Infinity"));return n.eq(a)?new r(0):(l=!1,t=A(I(n,i),I(e,i),i),l=!0,k(t,o))},v.minus=v.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?N(t,e):E(t,(e.s=-e.s,e))},v.modulo=v.mod=function(e){var t,n=this,r=n.constructor,o=r.precision;if(!(e=new r(e)).s)throw Error(c+"NaN");return n.s?(l=!1,t=A(n,e,0,1).times(e),l=!0,n.minus(t)):k(new r(n),o)},v.naturalExponential=v.exp=function(){return _(this)},v.naturalLogarithm=v.ln=function(){return I(this)},v.negated=v.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e},v.plus=v.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?E(t,e):N(t,(e.s=-e.s,e))},v.precision=v.sd=function(e){var t,n,r,o=this;if(void 0!==e&&e!==!!e&&1!==e&&0!==e)throw Error(u+e);if(t=T(o)+1,n=(r=o.d.length-1)*g+1,r=o.d[r]){for(;r%10==0;r/=10)n--;for(r=o.d[0];r>=10;r/=10)n++}return e&&t>n?t:n},v.squareRoot=v.sqrt=function(){var e,t,n,r,o,a,i,s=this,u=s.constructor;if(s.s<1){if(!s.s)return new u(0);throw Error(c+"NaN")}for(e=T(s),l=!1,0==(o=Math.sqrt(+s))||o==1/0?(((t=S(s.d)).length+e)%2==0&&(t+="0"),o=Math.sqrt(t),e=p((e+1)/2)-(e<0||e%2),r=new u(t=o==1/0?"5e"+e:(t=o.toExponential()).slice(0,t.indexOf("e")+1)+e)):r=new u(o.toString()),o=i=(n=u.precision)+3;;)if(r=(a=r).plus(A(s,a,i+2)).times(.5),S(a.d).slice(0,i)===(t=S(r.d)).slice(0,i)){if(t=t.slice(i-3,i+1),o==i&&"4999"==t){if(k(a,n+1,0),a.times(a).eq(s)){r=a;break}}else if("9999"!=t)break;i+=4}return l=!0,k(r,n)},v.times=v.mul=function(e){var t,n,r,o,a,i,s,c,u,d=this,p=d.constructor,h=d.d,m=(e=new p(e)).d;if(!d.s||!e.s)return new p(0);for(e.s*=d.s,n=d.e+e.e,(c=h.length)<(u=m.length)&&(a=h,h=m,m=a,i=c,c=u,u=i),a=[],r=i=c+u;r--;)a.push(0);for(r=u;--r>=0;){for(t=0,o=c+r;o>r;)s=a[o]+m[r]*h[o-r-1]+t,a[o--]=s%f|0,t=s/f|0;a[o]=(a[o]+t)%f|0}for(;!a[--i];)a.pop();return t?++n:a.shift(),e.d=a,e.e=n,l?k(e,p.precision):e},v.toDecimalPlaces=v.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),void 0===e?n:(w(e,0,i),void 0===t?t=r.rounding:w(t,0,8),k(n,e+T(n)+1,t))},v.toExponential=function(e,t){var n,r=this,o=r.constructor;return void 0===e?n=R(r,!0):(w(e,0,i),void 0===t?t=o.rounding:w(t,0,8),n=R(r=k(new o(r),e+1,t),!0,e+1)),n},v.toFixed=function(e,t){var n,r,o=this,a=o.constructor;return void 0===e?R(o):(w(e,0,i),void 0===t?t=a.rounding:w(t,0,8),n=R((r=k(new a(o),e+T(o)+1,t)).abs(),!1,e+T(r)+1),o.isneg()&&!o.isZero()?"-"+n:n)},v.toInteger=v.toint=function(){var e=this,t=e.constructor;return k(new t(e),T(e)+1,t.rounding)},v.toNumber=function(){return+this},v.toPower=v.pow=function(e){var t,n,r,o,i,s,u=this,d=u.constructor,h=+(e=new d(e));if(!e.s)return new d(a);if(!(u=new d(u)).s){if(e.s<1)throw Error(c+"Infinity");return u}if(u.eq(a))return u;if(r=d.precision,e.eq(a))return k(u,r);if(s=(t=e.e)>=(n=e.d.length-1),i=u.s,s){if((n=h<0?-h:h)<=b){for(o=new d(a),t=Math.ceil(r/g+4),l=!1;n%2&&M((o=o.times(u)).d,t),0!==(n=p(n/2));)M((u=u.times(u)).d,t);return l=!0,e.s<0?new d(a).div(o):k(o,r)}}else if(i<0)throw Error(c+"NaN");return i=i<0&&1&e.d[Math.max(t,n)]?-1:1,u.s=1,l=!1,o=e.times(I(u,r+12)),l=!0,(o=_(o)).s=i,o},v.toPrecision=function(e,t){var n,r,o=this,a=o.constructor;return void 0===e?r=R(o,(n=T(o))<=a.toExpNeg||n>=a.toExpPos):(w(e,1,i),void 0===t?t=a.rounding:w(t,0,8),r=R(o=k(new a(o),e,t),e<=(n=T(o))||n<=a.toExpNeg,e)),r},v.toSignificantDigits=v.tosd=function(e,t){var n=this.constructor;return void 0===e?(e=n.precision,t=n.rounding):(w(e,1,i),void 0===t?t=n.rounding:w(t,0,8)),k(new n(this),e,t)},v.toString=v.valueOf=v.val=v.toJSON=function(){var e=this,t=T(e),n=e.constructor;return R(e,t<=n.toExpNeg||t>=n.toExpPos)};var A=function(){function e(e,t){var n,r=0,o=e.length;for(e=e.slice();o--;)n=e[o]*t+r,e[o]=n%f|0,r=n/f|0;return r&&e.unshift(r),e}function t(e,t,n,r){var o,a;if(n!=r)a=n>r?1:-1;else for(o=a=0;ot[o]?1:-1;break}return a}function n(e,t,n){for(var r=0;n--;)e[n]-=r,r=e[n]1;)e.shift()}return function(r,o,a,i){var s,l,u,d,p,h,m,b,y,v,E,w,S,A,_,C,x,I,O=r.constructor,N=r.s==o.s?1:-1,R=r.d,M=o.d;if(!r.s)return new O(r);if(!o.s)throw Error(c+"Division by zero");for(l=r.e-o.e,x=M.length,_=R.length,b=(m=new O(N)).d=[],u=0;M[u]==(R[u]||0);)++u;if(M[u]>(R[u]||0)&&--l,(w=null==a?a=O.precision:i?a+(T(r)-T(o))+1:a)<0)return new O(0);if(w=w/g+2|0,u=0,1==x)for(d=0,M=M[0],w++;(u<_||d)&&w--;u++)S=d*f+(R[u]||0),b[u]=S/M|0,d=S%M|0;else{for((d=f/(M[0]+1)|0)>1&&(M=e(M,d),R=e(R,d),x=M.length,_=R.length),A=x,v=(y=R.slice(0,x)).length;v=f/2&&++C;do{d=0,(s=t(M,y,x,v))<0?(E=y[0],x!=v&&(E=E*f+(y[1]||0)),(d=E/C|0)>1?(d>=f&&(d=f-1),1==(s=t(p=e(M,d),y,h=p.length,v=y.length))&&(d--,n(p,x16)throw Error(d+T(e));if(!e.s)return new p(a);for(null==t?(l=!1,s=m):s=t,i=new p(.03125);e.abs().gte(.1);)e=e.times(i),u+=5;for(s+=Math.log(h(2,u))/Math.LN10*2+5|0,n=r=o=new p(a),p.precision=s;;){if(r=k(r.times(e),s),n=n.times(++c),S((i=o.plus(A(r,n,s))).d).slice(0,s)===S(o.d).slice(0,s)){for(;u--;)o=k(o.times(o),s);return p.precision=m,null==t?(l=!0,k(o,m)):o}o=i}}function T(e){for(var t=e.e*g,n=e.d[0];n>=10;n/=10)t++;return t}function C(e,t,n){if(t>e.LN10.sd())throw l=!0,n&&(e.precision=n),Error(c+"LN10 precision limit exceeded");return k(new e(e.LN10),t)}function x(e){for(var t="";e--;)t+="0";return t}function I(e,t){var n,r,o,i,s,u,d,p,h,m=1,f=e,g=f.d,b=f.constructor,y=b.precision;if(f.s<1)throw Error(c+(f.s?"NaN":"-Infinity"));if(f.eq(a))return new b(0);if(null==t?(l=!1,p=y):p=t,f.eq(10))return null==t&&(l=!0),C(b,p);if(p+=10,b.precision=p,r=(n=S(g)).charAt(0),i=T(f),!(Math.abs(i)<15e14))return d=C(b,p+2,y).times(i+""),f=I(new b(r+"."+n.slice(1)),p-10).plus(d),b.precision=y,null==t?(l=!0,k(f,y)):f;for(;r<7&&1!=r||1==r&&n.charAt(1)>3;)r=(n=S((f=f.times(e)).d)).charAt(0),m++;for(i=T(f),r>1?(f=new b("0."+n),i++):f=new b(r+"."+n.slice(1)),u=s=f=A(f.minus(a),f.plus(a),p),h=k(f.times(f),p),o=3;;){if(s=k(s.times(h),p),S((d=u.plus(A(s,new b(o),p))).d).slice(0,p)===S(u.d).slice(0,p))return u=u.times(2),0!==i&&(u=u.plus(C(b,p+2,y).times(i+""))),u=A(u,new b(m),p),b.precision=y,null==t?(l=!0,k(u,y)):u;u=d,o+=2}}function O(e,t){var n,r,o;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;48===t.charCodeAt(r);)++r;for(o=t.length;48===t.charCodeAt(o-1);)--o;if(t=t.slice(r,o)){if(o-=r,n=n-r-1,e.e=p(n/g),e.d=[],r=(n+1)%g,n<0&&(r+=g),ry||e.e<-y))throw Error(d+n)}else e.s=0,e.e=0,e.d=[0];return e}function k(e,t,n){var r,o,a,i,s,c,u,m,b=e.d;for(i=1,a=b[0];a>=10;a/=10)i++;if((r=t-i)<0)r+=g,o=t,u=b[m=0];else{if((m=Math.ceil((r+1)/g))>=(a=b.length))return e;for(u=a=b[m],i=1;a>=10;a/=10)i++;o=(r%=g)-g+i}if(void 0!==n&&(s=u/(a=h(10,i-o-1))%10|0,c=t<0||void 0!==b[m+1]||u%a,c=n<4?(s||c)&&(0==n||n==(e.s<0?3:2)):s>5||5==s&&(4==n||c||6==n&&(r>0?o>0?u/h(10,i-o):0:b[m-1])%10&1||n==(e.s<0?8:7))),t<1||!b[0])return c?(a=T(e),b.length=1,t=t-a-1,b[0]=h(10,(g-t%g)%g),e.e=p(-t/g)||0):(b.length=1,b[0]=e.e=e.s=0),e;if(0==r?(b.length=m,a=1,m--):(b.length=m+1,a=h(10,g-r),b[m]=o>0?(u/h(10,i-o)%h(10,o)|0)*a:0),c)for(;;){if(0==m){(b[0]+=a)==f&&(b[0]=1,++e.e);break}if(b[m]+=a,b[m]!=f)break;b[m--]=0,a=1}for(r=b.length;0===b[--r];)b.pop();if(l&&(e.e>y||e.e<-y))throw Error(d+T(e));return e}function N(e,t){var n,r,o,a,i,s,c,u,d,p,h=e.constructor,m=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),l?k(t,m):t;if(c=e.d,p=t.d,r=t.e,u=e.e,c=c.slice(),i=u-r){for((d=i<0)?(n=c,i=-i,s=p.length):(n=p,r=u,s=c.length),i>(o=Math.max(Math.ceil(m/g),s)+2)&&(i=o,n.length=1),n.reverse(),o=i;o--;)n.push(0);n.reverse()}else{for((d=(o=c.length)<(s=p.length))&&(s=o),o=0;o0;--o)c[s++]=0;for(o=p.length;o>i;){if(c[--o]0?a=a.charAt(0)+"."+a.slice(1)+x(r):i>1&&(a=a.charAt(0)+"."+a.slice(1)),a=a+(o<0?"e":"e+")+o):o<0?(a="0."+x(-o-1)+a,n&&(r=n-i)>0&&(a+=x(r))):o>=i?(a+=x(o+1-i),n&&(r=n-o-1)>0&&(a=a+"."+x(r))):((r=o+1)0&&(o+1===i&&(a+="."),a+=x(r))),e.s<0?"-"+a:a}function M(e,t){if(e.length>t)return e.length=t,!0}function L(e){if(!e||"object"!==typeof e)throw Error(c+"Object expected");var t,n,r,o=["precision",1,i,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t=o[t+1]&&r<=o[t+2]))throw Error(u+n+": "+r);this[n]=r}if(void 0!==(r=e[n="LN10"])){if(r!=Math.LN10)throw Error(u+n+": "+r);this[n]=new this(r)}return this}s=function e(t){var n,r,o;function a(e){var t=this;if(!(t instanceof a))return new a(e);if(t.constructor=a,e instanceof a)return t.s=e.s,t.e=e.e,void(t.d=(e=e.d)?e.slice():e);if("number"===typeof e){if(0*e!==0)throw Error(u+e);if(e>0)t.s=1;else{if(!(e<0))return t.s=0,t.e=0,void(t.d=[0]);e=-e,t.s=-1}return e===~~e&&e<1e7?(t.e=0,void(t.d=[e])):O(t,e.toString())}if("string"!==typeof e)throw Error(u+e);if(45===e.charCodeAt(0)?(e=e.slice(1),t.s=-1):t.s=1,!m.test(e))throw Error(u+e);O(t,e)}if(a.prototype=v,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=e,a.config=a.set=L,void 0===t&&(t={}),t)for(o=["precision","rounding","toExpNeg","toExpPos","LN10"],n=0;n{"use strict";var r=n(82090),o=n(62557),a=n(54902),i=n(95558);e.exports=function(e,t,n){if(!e||"object"!==typeof e&&"function"!==typeof e)throw new a("`obj` must be an object or a function`");if("string"!==typeof t&&"symbol"!==typeof t)throw new a("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!==typeof arguments[3]&&null!==arguments[3])throw new a("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!==typeof arguments[4]&&null!==arguments[4])throw new a("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!==typeof arguments[5]&&null!==arguments[5])throw new a("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!==typeof arguments[6])throw new a("`loose`, if provided, must be a boolean");var s=arguments.length>3?arguments[3]:null,l=arguments.length>4?arguments[4]:null,c=arguments.length>5?arguments[5]:null,u=arguments.length>6&&arguments[6],d=!!i&&i(e,t);if(r)r(e,t,{configurable:null===c&&d?d.configurable:!c,enumerable:null===s&&d?d.enumerable:!s,value:n,writable:null===l&&d?d.writable:!l});else{if(!u&&(s||l||c))throw new o("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");e[t]=n}}},82090:(e,t,n)=>{"use strict";var r=n(60002)("%Object.defineProperty%",!0)||!1;if(r)try{r({},"a",{value:1})}catch(o){r=!1}e.exports=r},79820:e=>{"use strict";e.exports=EvalError},29304:e=>{"use strict";e.exports=Error},1725:e=>{"use strict";e.exports=RangeError},75077:e=>{"use strict";e.exports=ReferenceError},62557:e=>{"use strict";e.exports=SyntaxError},54902:e=>{"use strict";e.exports=TypeError},63094:e=>{"use strict";e.exports=URIError},17283:e=>{"use strict";var t=Object.prototype.hasOwnProperty,n="~";function r(){}function o(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function a(e,t,r,a,i){if("function"!==typeof r)throw new TypeError("The listener must be a function");var s=new o(r,a||e,i),l=n?n+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],s]:e._events[l].push(s):(e._events[l]=s,e._eventsCount++),e}function i(e,t){0===--e._eventsCount?e._events=new r:delete e._events[t]}function s(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),s.prototype.eventNames=function(){var e,r,o=[];if(0===this._eventsCount)return o;for(r in e=this._events)t.call(e,r)&&o.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},s.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,a=r.length,i=new Array(a);o{"use strict";var t=Object.prototype.hasOwnProperty,n=Object.prototype.toString,r=Object.defineProperty,o=Object.getOwnPropertyDescriptor,a=function(e){return"function"===typeof Array.isArray?Array.isArray(e):"[object Array]"===n.call(e)},i=function(e){if(!e||"[object Object]"!==n.call(e))return!1;var r,o=t.call(e,"constructor"),a=e.constructor&&e.constructor.prototype&&t.call(e.constructor.prototype,"isPrototypeOf");if(e.constructor&&!o&&!a)return!1;for(r in e);return"undefined"===typeof r||t.call(e,r)},s=function(e,t){r&&"__proto__"===t.name?r(e,t.name,{enumerable:!0,configurable:!0,value:t.newValue,writable:!0}):e[t.name]=t.newValue},l=function(e,n){if("__proto__"===n){if(!t.call(e,n))return;if(o)return o(e,n).value}return e[n]};e.exports=function e(){var t,n,r,o,c,u,d=arguments[0],p=1,h=arguments.length,m=!1;for("boolean"===typeof d&&(m=d,d=arguments[1]||{},p=2),(null==d||"object"!==typeof d&&"function"!==typeof d)&&(d={});p0;)if(!n(e[o],t[o],r))return!1;return!0}function d(e,t,n,r){var o=e.size===t.size;if(o&&e.size){var a={};e.forEach((function(e,i){if(o){var s=!1,l=0;t.forEach((function(t,o){s||a[l]||(s=n(i,o,r)&&n(e,t,r))&&(a[l]=!0),l++})),o=s}}))}return o}var p="_owner",h=Function.prototype.bind.call(Function.prototype.call,Object.prototype.hasOwnProperty);function m(e,t,r,o){var a=n(e),s=a.length;if(n(t).length!==s)return!1;if(s)for(var l=void 0;s-- >0;){if((l=a[s])===p){var c=i(e),u=i(t);if((c||u)&&c!==u)return!1}if(!h(t,l)||!r(e[l],t[l],o))return!1}return!0}function f(e,t){return e.source===t.source&&e.global===t.global&&e.ignoreCase===t.ignoreCase&&e.multiline===t.multiline&&e.unicode===t.unicode&&e.sticky===t.sticky&&e.lastIndex===t.lastIndex}function g(e,t,n,r){var o=e.size===t.size;if(o&&e.size){var a={};e.forEach((function(e){if(o){var i=!1,s=0;t.forEach((function(t){i||a[s]||(i=n(e,t,r))&&(a[s]=!0),s++})),o=i}}))}return o}var b="function"===typeof Map,y="function"===typeof Set;function v(e){var t="function"===typeof e?e(n):n;function n(e,n,i){if(e===n)return!0;if(e&&n&&"object"===typeof e&&"object"===typeof n){if(o(e)&&o(n))return m(e,n,t,i);var s=Array.isArray(e),l=Array.isArray(n);return s||l?s===l&&u(e,n,t,i):(s=e instanceof Date,l=n instanceof Date,s||l?s===l&&r(e.getTime(),n.getTime()):(s=e instanceof RegExp,l=n instanceof RegExp,s||l?s===l&&f(e,n):a(e)||a(n)?e===n:b&&(s=e instanceof Map,l=n instanceof Map,s||l)?s===l&&d(e,n,t,i):y&&(s=e instanceof Set,l=n instanceof Set,s||l)?s===l&&g(e,n,t,i):m(e,n,t,i)))}return e!==e&&n!==n}return n}var E=v(),w=v((function(){return r})),S=v(c()),A=v(c(r));e.circularDeepEqual=S,e.circularShallowEqual=A,e.createCustomEqual=v,e.deepEqual=E,e.sameValueZeroEqual=r,e.shallowEqual=w,Object.defineProperty(e,"__esModule",{value:!0})}(t)},95376:e=>{e.exports=i,i.default=i,i.stable=u,i.stableStringify=u;var t="[...]",n="[Circular]",r=[],o=[];function a(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function i(e,t,n,i){var s;"undefined"===typeof i&&(i=a()),l(e,"",0,[],void 0,0,i);try{s=0===o.length?JSON.stringify(e,t,n):JSON.stringify(e,p(t),n)}catch(u){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==r.length;){var c=r.pop();4===c.length?Object.defineProperty(c[0],c[1],c[3]):c[0][c[1]]=c[2]}}return s}function s(e,t,n,a){var i=Object.getOwnPropertyDescriptor(a,n);void 0!==i.get?i.configurable?(Object.defineProperty(a,n,{value:e}),r.push([a,n,t,i])):o.push([t,n,e]):(a[n]=e,r.push([a,n,t]))}function l(e,r,o,a,i,c,u){var d;if(c+=1,"object"===typeof e&&null!==e){for(d=0;du.depthLimit)return void s(t,e,r,i);if("undefined"!==typeof u.edgesLimit&&o+1>u.edgesLimit)return void s(t,e,r,i);if(a.push(e),Array.isArray(e))for(d=0;dt?1:0}function u(e,t,n,i){"undefined"===typeof i&&(i=a());var s,l=d(e,"",0,[],void 0,0,i)||e;try{s=0===o.length?JSON.stringify(l,t,n):JSON.stringify(l,p(t),n)}catch(u){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==r.length;){var c=r.pop();4===c.length?Object.defineProperty(c[0],c[1],c[3]):c[0][c[1]]=c[2]}}return s}function d(e,o,a,i,l,u,p){var h;if(u+=1,"object"===typeof e&&null!==e){for(h=0;hp.depthLimit)return void s(t,e,o,l);if("undefined"!==typeof p.edgesLimit&&a+1>p.edgesLimit)return void s(t,e,o,l);if(i.push(e),Array.isArray(e))for(h=0;h0)for(var r=0;r{"use strict";var t=Object.prototype.toString,n=Math.max,r=function(e,t){for(var n=[],r=0;r{"use strict";var r=n(17724);e.exports=Function.prototype.bind||r},18707:(e,t,n)=>{"use strict";function r(e){return Array.isArray?Array.isArray(e):"[object Array]"===p(e)}n.r(t),n.d(t,{default:()=>Y});const o=1/0;function a(e){return null==e?"":function(e){if("string"==typeof e)return e;let t=e+"";return"0"==t&&1/e==-o?"-0":t}(e)}function i(e){return"string"===typeof e}function s(e){return"number"===typeof e}function l(e){return!0===e||!1===e||function(e){return c(e)&&null!==e}(e)&&"[object Boolean]"==p(e)}function c(e){return"object"===typeof e}function u(e){return void 0!==e&&null!==e}function d(e){return!e.trim().length}function p(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}const h=e=>"Missing ".concat(e," property in key"),m=e=>"Property 'weight' in key '".concat(e,"' must be a positive integer"),f=Object.prototype.hasOwnProperty;class g{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach((e=>{let n=b(e);t+=n.weight,this._keys.push(n),this._keyMap[n.id]=n,t+=n.weight})),this._keys.forEach((e=>{e.weight/=t}))}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function b(e){let t=null,n=null,o=null,a=1,s=null;if(i(e)||r(e))o=e,t=y(e),n=v(e);else{if(!f.call(e,"name"))throw new Error(h("name"));const r=e.name;if(o=r,f.call(e,"weight")&&(a=e.weight,a<=0))throw new Error(m(r));t=y(r),n=v(r),s=e.getFn}return{path:t,id:n,weight:a,src:o,getFn:s}}function y(e){return r(e)?e:e.split(".")}function v(e){return r(e)?e.join("."):e}var E={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(e,t)=>e.score===t.score?e.idx{if(u(e))if(t[d]){const p=e[t[d]];if(!u(p))return;if(d===t.length-1&&(i(p)||s(p)||l(p)))n.push(a(p));else if(r(p)){o=!0;for(let e=0,n=p.length;e0&&void 0!==arguments[0]?arguments[0]:{};this.norm=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:3;const n=new Map,r=Math.pow(10,t);return{get(t){const o=t.match(w).length;if(n.has(o))return n.get(o);const a=1/Math.pow(o,.5*e),i=parseFloat(Math.round(a*r)/r);return n.set(o,i),i},clear(){n.clear()}}}(t,3),this.getFn=e,this.isCreated=!1,this.setIndexRecords()}setSources(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.docs=e}setIndexRecords(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.records=e}setKeys(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[];this.keys=e,this._keysMap={},e.forEach(((e,t)=>{this._keysMap[e.id]=t}))}create(){!this.isCreated&&this.docs.length&&(this.isCreated=!0,i(this.docs[0])?this.docs.forEach(((e,t)=>{this._addString(e,t)})):this.docs.forEach(((e,t)=>{this._addObject(e,t)})),this.norm.clear())}add(e){const t=this.size();i(e)?this._addString(e,t):this._addObject(e,t)}removeAt(e){this.records.splice(e,1);for(let t=e,n=this.size();t{let a=t.getFn?t.getFn(e):this.getFn(e,t.path);if(u(a))if(r(a)){let e=[];const t=[{nestedArrIndex:-1,value:a}];for(;t.length;){const{nestedArrIndex:n,value:o}=t.pop();if(u(o))if(i(o)&&!d(o)){let t={v:o,i:n,n:this.norm.get(o)};e.push(t)}else r(o)&&o.forEach(((e,n)=>{t.push({nestedArrIndex:n,value:e})}))}n.$[o]=e}else if(i(a)&&!d(a)){let e={v:a,n:this.norm.get(a)};n.$[o]=e}})),this.records.push(n)}toJSON(){return{keys:this.keys,records:this.records}}}function A(e,t){let{getFn:n=E.getFn,fieldNormWeight:r=E.fieldNormWeight}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const o=new S({getFn:n,fieldNormWeight:r});return o.setKeys(e.map(b)),o.setSources(t),o.create(),o}function _(e){let{errors:t=0,currentLocation:n=0,expectedLocation:r=0,distance:o=E.distance,ignoreLocation:a=E.ignoreLocation}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const i=t/e.length;if(a)return i;const s=Math.abs(r-n);return o?i+s/o:s?1:i}const T=32;function C(e,t,n){let{location:r=E.location,distance:o=E.distance,threshold:a=E.threshold,findAllMatches:i=E.findAllMatches,minMatchCharLength:s=E.minMatchCharLength,includeMatches:l=E.includeMatches,ignoreLocation:c=E.ignoreLocation}=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};if(t.length>T)throw new Error("Pattern length exceeds max of ".concat(T,"."));const u=t.length,d=e.length,p=Math.max(0,Math.min(r,d));let h=a,m=p;const f=s>1||l,g=f?Array(d):[];let b;for(;(b=e.indexOf(t,m))>-1;){let e=_(t,{currentLocation:b,expectedLocation:p,distance:o,ignoreLocation:c});if(h=Math.min(e,h),m=b+u,f){let e=0;for(;e=s;i-=1){let r=i-1,a=n[e.charAt(r)];if(f&&(g[r]=+!!a),b[i]=(b[i+1]<<1|1)&a,E&&(b[i]|=(y[i+1]|y[i])<<1|1|y[i+1]),b[i]&S&&(v=_(t,{errors:E,currentLocation:r,expectedLocation:p,distance:o,ignoreLocation:c}),v<=h)){if(h=v,m=r,m<=p)break;s=Math.max(1,2*p-m)}}if(_(t,{errors:E+1,currentLocation:p,expectedLocation:p,distance:o,ignoreLocation:c})>h)break;y=b}const A={isMatch:m>=0,score:Math.max(.001,v)};if(f){const e=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:E.minMatchCharLength,n=[],r=-1,o=-1,a=0;for(let i=e.length;a=t&&n.push([r,o]),r=-1)}return e[a-1]&&a-r>=t&&n.push([r,a-1]),n}(g,s);e.length?l&&(A.indices=e):A.isMatch=!1}return A}function x(e){let t={};for(let n=0,r=e.length;n1&&void 0!==arguments[1]?arguments[1]:{};if(this.options={location:t,threshold:n,distance:r,includeMatches:o,findAllMatches:a,minMatchCharLength:i,isCaseSensitive:s,ignoreLocation:l},this.pattern=s?e:e.toLowerCase(),this.chunks=[],!this.pattern.length)return;const c=(e,t)=>{this.chunks.push({pattern:e,alphabet:x(e),startIndex:t})},u=this.pattern.length;if(u>T){let e=0;const t=u%T,n=u-t;for(;e{let{pattern:p,alphabet:h,startIndex:m}=t;const{isMatch:f,score:g,indices:b}=C(e,p,h,{location:r+m,distance:o,threshold:a,findAllMatches:i,minMatchCharLength:s,includeMatches:n,ignoreLocation:l});f&&(d=!0),u+=g,f&&b&&(c=[...c,...b])}));let p={isMatch:d,score:d?u/this.chunks.length:1};return d&&n&&(p.indices=c),p}}class O{constructor(e){this.pattern=e}static isMultiMatch(e){return k(e,this.multiRegex)}static isSingleMatch(e){return k(e,this.singleRegex)}search(){}}function k(e,t){const n=e.match(t);return n?n[1]:null}class N extends O{constructor(e){let{location:t=E.location,threshold:n=E.threshold,distance:r=E.distance,includeMatches:o=E.includeMatches,findAllMatches:a=E.findAllMatches,minMatchCharLength:i=E.minMatchCharLength,isCaseSensitive:s=E.isCaseSensitive,ignoreLocation:l=E.ignoreLocation}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};super(e),this._bitapSearch=new I(e,{location:t,threshold:n,distance:r,includeMatches:o,findAllMatches:a,minMatchCharLength:i,isCaseSensitive:s,ignoreLocation:l})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(e){return this._bitapSearch.searchIn(e)}}class R extends O{constructor(e){super(e)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(e){let t,n=0;const r=[],o=this.pattern.length;for(;(t=e.indexOf(this.pattern,n))>-1;)n=t+o,r.push([t,n-1]);const a=!!r.length;return{isMatch:a,score:a?0:1,indices:r}}}const M=[class extends O{constructor(e){super(e)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(e){const t=e===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},R,class extends O{constructor(e){super(e)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(e){const t=e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(e){const t=!e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(e){const t=!e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(e){const t=e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[e.length-this.pattern.length,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(e){const t=-1===e.indexOf(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},N],L=M.length,D=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/;const P=new Set([N.type,R.type]);class B{constructor(e){let{isCaseSensitive:t=E.isCaseSensitive,includeMatches:n=E.includeMatches,minMatchCharLength:r=E.minMatchCharLength,ignoreLocation:o=E.ignoreLocation,findAllMatches:a=E.findAllMatches,location:i=E.location,threshold:s=E.threshold,distance:l=E.distance}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.query=null,this.options={isCaseSensitive:t,includeMatches:n,minMatchCharLength:r,findAllMatches:a,ignoreLocation:o,location:i,threshold:s,distance:l},this.pattern=t?e:e.toLowerCase(),this.query=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.split("|").map((e=>{let n=e.trim().split(D).filter((e=>e&&!!e.trim())),r=[];for(let o=0,a=n.length;o!(!e[z]&&!e[U]),q=e=>({[z]:Object.keys(e).map((t=>({[t]:e[t]})))});function W(e,t){let{auto:n=!0}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const o=e=>{let a=Object.keys(e);const s=(e=>!!e[H])(e);if(!s&&a.length>1&&!V(e))return o(q(e));if((e=>!r(e)&&c(e)&&!V(e))(e)){const r=s?e[H]:a[0],o=s?e[G]:e[r];if(!i(o))throw new Error((e=>"Invalid value for key ".concat(e))(r));const l={keyId:v(r),pattern:o};return n&&(l.searcher=j(o,t)),l}let l={children:[],operator:a[0]};return a.forEach((t=>{const n=e[t];r(n)&&n.forEach((e=>{l.children.push(o(e))}))})),l};return V(e)||(e=q(e)),o(e)}function Z(e,t){const n=e.matches;t.matches=[],u(n)&&n.forEach((e=>{if(!u(e.indices)||!e.indices.length)return;const{indices:n,value:r}=e;let o={indices:n,value:r};e.key&&(o.key=e.key.src),e.idx>-1&&(o.refIndex=e.idx),t.matches.push(o)}))}function $(e,t){t.score=e.score}class Y{constructor(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=arguments.length>2?arguments[2]:void 0;this.options={...E,...t},this.options.useExtendedSearch,this._keyStore=new g(this.options.keys),this.setCollection(e,n)}setCollection(e,t){if(this._docs=e,t&&!(t instanceof S))throw new Error("Incorrect 'index' type");this._myIndex=t||A(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(e){u(e)&&(this._docs.push(e),this._myIndex.add(e))}remove(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:()=>!1;const t=[];for(let n=0,r=this._docs.length;n1&&void 0!==arguments[1]?arguments[1]:{};const{includeMatches:n,includeScore:r,shouldSort:o,sortFn:a,ignoreFieldNorm:l}=this.options;let c=i(e)?i(this._docs[0])?this._searchStringList(e):this._searchObjectList(e):this._searchLogical(e);return function(e,t){let{ignoreFieldNorm:n=E.ignoreFieldNorm}=t;e.forEach((e=>{let t=1;e.matches.forEach((e=>{let{key:r,norm:o,score:a}=e;const i=r?r.weight:null;t*=Math.pow(0===a&&i?Number.EPSILON:a,(i||1)*(n?1:o))})),e.score=t}))}(c,{ignoreFieldNorm:l}),o&&c.sort(a),s(t)&&t>-1&&(c=c.slice(0,t)),function(e,t){let{includeMatches:n=E.includeMatches,includeScore:r=E.includeScore}=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};const o=[];return n&&o.push(Z),r&&o.push($),e.map((e=>{const{idx:n}=e,r={item:t[n],refIndex:n};return o.length&&o.forEach((t=>{t(e,r)})),r}))}(c,this._docs,{includeMatches:n,includeScore:r})}_searchStringList(e){const t=j(e,this.options),{records:n}=this._myIndex,r=[];return n.forEach((e=>{let{v:n,i:o,n:a}=e;if(!u(n))return;const{isMatch:i,score:s,indices:l}=t.searchIn(n);i&&r.push({item:n,idx:o,matches:[{score:s,value:n,norm:a,indices:l}]})})),r}_searchLogical(e){const t=W(e,this.options),n=(e,t,r)=>{if(!e.children){const{keyId:n,searcher:o}=e,a=this._findMatches({key:this._keyStore.get(n),value:this._myIndex.getValueForItemAtKeyId(t,n),searcher:o});return a&&a.length?[{idx:r,item:t,matches:a}]:[]}const o=[];for(let a=0,i=e.children.length;a{let{$:r,i:i}=e;if(u(r)){let e=n(t,r,i);e.length&&(o[i]||(o[i]={idx:i,item:r,matches:[]},a.push(o[i])),e.forEach((e=>{let{matches:t}=e;o[i].matches.push(...t)})))}})),a}_searchObjectList(e){const t=j(e,this.options),{keys:n,records:r}=this._myIndex,o=[];return r.forEach((e=>{let{$:r,i:a}=e;if(!u(r))return;let i=[];n.forEach(((e,n)=>{i.push(...this._findMatches({key:e,value:r[n],searcher:t}))})),i.length&&o.push({idx:a,item:r,matches:i})})),o}_findMatches(e){let{key:t,value:n,searcher:o}=e;if(!u(n))return[];let a=[];if(r(n))n.forEach((e=>{let{v:n,i:r,n:i}=e;if(!u(n))return;const{isMatch:s,score:l,indices:c}=o.searchIn(n);s&&a.push({score:l,key:t,value:n,idx:r,norm:i,indices:c})}));else{const{v:e,n:r}=n,{isMatch:i,score:s,indices:l}=o.searchIn(e);i&&a.push({score:s,key:t,value:e,norm:r,indices:l})}return a}}Y.version="6.6.2",Y.createIndex=A,Y.parseIndex=function(e){let{getFn:t=E.getFn,fieldNormWeight:n=E.fieldNormWeight}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};const{keys:r,records:o}=e,a=new S({getFn:t,fieldNormWeight:n});return a.setKeys(r),a.setIndexRecords(o),a},Y.config=E,Y.parseQuery=W,function(){F.push(...arguments)}(B)},60002:(e,t,n)=>{"use strict";var r,o=n(29304),a=n(79820),i=n(1725),s=n(75077),l=n(62557),c=n(54902),u=n(63094),d=Function,p=function(e){try{return d('"use strict"; return ('+e+").constructor;")()}catch(t){}},h=Object.getOwnPropertyDescriptor;if(h)try{h({},"")}catch(D){h=null}var m=function(){throw new c},f=h?function(){try{return m}catch(e){try{return h(arguments,"callee").get}catch(t){return m}}}():m,g=n(72108)(),b=n(80951)(),y=Object.getPrototypeOf||(b?function(e){return e.__proto__}:null),v={},E="undefined"!==typeof Uint8Array&&y?y(Uint8Array):r,w={__proto__:null,"%AggregateError%":"undefined"===typeof AggregateError?r:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"===typeof ArrayBuffer?r:ArrayBuffer,"%ArrayIteratorPrototype%":g&&y?y([][Symbol.iterator]()):r,"%AsyncFromSyncIteratorPrototype%":r,"%AsyncFunction%":v,"%AsyncGenerator%":v,"%AsyncGeneratorFunction%":v,"%AsyncIteratorPrototype%":v,"%Atomics%":"undefined"===typeof Atomics?r:Atomics,"%BigInt%":"undefined"===typeof BigInt?r:BigInt,"%BigInt64Array%":"undefined"===typeof BigInt64Array?r:BigInt64Array,"%BigUint64Array%":"undefined"===typeof BigUint64Array?r:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"===typeof DataView?r:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":o,"%eval%":eval,"%EvalError%":a,"%Float32Array%":"undefined"===typeof Float32Array?r:Float32Array,"%Float64Array%":"undefined"===typeof Float64Array?r:Float64Array,"%FinalizationRegistry%":"undefined"===typeof FinalizationRegistry?r:FinalizationRegistry,"%Function%":d,"%GeneratorFunction%":v,"%Int8Array%":"undefined"===typeof Int8Array?r:Int8Array,"%Int16Array%":"undefined"===typeof Int16Array?r:Int16Array,"%Int32Array%":"undefined"===typeof Int32Array?r:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":g&&y?y(y([][Symbol.iterator]())):r,"%JSON%":"object"===typeof JSON?JSON:r,"%Map%":"undefined"===typeof Map?r:Map,"%MapIteratorPrototype%":"undefined"!==typeof Map&&g&&y?y((new Map)[Symbol.iterator]()):r,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"===typeof Promise?r:Promise,"%Proxy%":"undefined"===typeof Proxy?r:Proxy,"%RangeError%":i,"%ReferenceError%":s,"%Reflect%":"undefined"===typeof Reflect?r:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"===typeof Set?r:Set,"%SetIteratorPrototype%":"undefined"!==typeof Set&&g&&y?y((new Set)[Symbol.iterator]()):r,"%SharedArrayBuffer%":"undefined"===typeof SharedArrayBuffer?r:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":g&&y?y(""[Symbol.iterator]()):r,"%Symbol%":g?Symbol:r,"%SyntaxError%":l,"%ThrowTypeError%":f,"%TypedArray%":E,"%TypeError%":c,"%Uint8Array%":"undefined"===typeof Uint8Array?r:Uint8Array,"%Uint8ClampedArray%":"undefined"===typeof Uint8ClampedArray?r:Uint8ClampedArray,"%Uint16Array%":"undefined"===typeof Uint16Array?r:Uint16Array,"%Uint32Array%":"undefined"===typeof Uint32Array?r:Uint32Array,"%URIError%":u,"%WeakMap%":"undefined"===typeof WeakMap?r:WeakMap,"%WeakRef%":"undefined"===typeof WeakRef?r:WeakRef,"%WeakSet%":"undefined"===typeof WeakSet?r:WeakSet};if(y)try{null.error}catch(D){var S=y(y(D));w["%Error.prototype%"]=S}var A=function e(t){var n;if("%AsyncFunction%"===t)n=p("async function () {}");else if("%GeneratorFunction%"===t)n=p("function* () {}");else if("%AsyncGeneratorFunction%"===t)n=p("async function* () {}");else if("%AsyncGenerator%"===t){var r=e("%AsyncGeneratorFunction%");r&&(n=r.prototype)}else if("%AsyncIteratorPrototype%"===t){var o=e("%AsyncGenerator%");o&&y&&(n=y(o.prototype))}return w[t]=n,n},_={__proto__:null,"%ArrayBufferPrototype%":["ArrayBuffer","prototype"],"%ArrayPrototype%":["Array","prototype"],"%ArrayProto_entries%":["Array","prototype","entries"],"%ArrayProto_forEach%":["Array","prototype","forEach"],"%ArrayProto_keys%":["Array","prototype","keys"],"%ArrayProto_values%":["Array","prototype","values"],"%AsyncFunctionPrototype%":["AsyncFunction","prototype"],"%AsyncGenerator%":["AsyncGeneratorFunction","prototype"],"%AsyncGeneratorPrototype%":["AsyncGeneratorFunction","prototype","prototype"],"%BooleanPrototype%":["Boolean","prototype"],"%DataViewPrototype%":["DataView","prototype"],"%DatePrototype%":["Date","prototype"],"%ErrorPrototype%":["Error","prototype"],"%EvalErrorPrototype%":["EvalError","prototype"],"%Float32ArrayPrototype%":["Float32Array","prototype"],"%Float64ArrayPrototype%":["Float64Array","prototype"],"%FunctionPrototype%":["Function","prototype"],"%Generator%":["GeneratorFunction","prototype"],"%GeneratorPrototype%":["GeneratorFunction","prototype","prototype"],"%Int8ArrayPrototype%":["Int8Array","prototype"],"%Int16ArrayPrototype%":["Int16Array","prototype"],"%Int32ArrayPrototype%":["Int32Array","prototype"],"%JSONParse%":["JSON","parse"],"%JSONStringify%":["JSON","stringify"],"%MapPrototype%":["Map","prototype"],"%NumberPrototype%":["Number","prototype"],"%ObjectPrototype%":["Object","prototype"],"%ObjProto_toString%":["Object","prototype","toString"],"%ObjProto_valueOf%":["Object","prototype","valueOf"],"%PromisePrototype%":["Promise","prototype"],"%PromiseProto_then%":["Promise","prototype","then"],"%Promise_all%":["Promise","all"],"%Promise_reject%":["Promise","reject"],"%Promise_resolve%":["Promise","resolve"],"%RangeErrorPrototype%":["RangeError","prototype"],"%ReferenceErrorPrototype%":["ReferenceError","prototype"],"%RegExpPrototype%":["RegExp","prototype"],"%SetPrototype%":["Set","prototype"],"%SharedArrayBufferPrototype%":["SharedArrayBuffer","prototype"],"%StringPrototype%":["String","prototype"],"%SymbolPrototype%":["Symbol","prototype"],"%SyntaxErrorPrototype%":["SyntaxError","prototype"],"%TypedArrayPrototype%":["TypedArray","prototype"],"%TypeErrorPrototype%":["TypeError","prototype"],"%Uint8ArrayPrototype%":["Uint8Array","prototype"],"%Uint8ClampedArrayPrototype%":["Uint8ClampedArray","prototype"],"%Uint16ArrayPrototype%":["Uint16Array","prototype"],"%Uint32ArrayPrototype%":["Uint32Array","prototype"],"%URIErrorPrototype%":["URIError","prototype"],"%WeakMapPrototype%":["WeakMap","prototype"],"%WeakSetPrototype%":["WeakSet","prototype"]},T=n(63864),C=n(34384),x=T.call(Function.call,Array.prototype.concat),I=T.call(Function.apply,Array.prototype.splice),O=T.call(Function.call,String.prototype.replace),k=T.call(Function.call,String.prototype.slice),N=T.call(Function.call,RegExp.prototype.exec),R=/[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,M=/\\(\\)?/g,L=function(e,t){var n,r=e;if(C(_,r)&&(r="%"+(n=_[r])[0]+"%"),C(w,r)){var o=w[r];if(o===v&&(o=A(r)),"undefined"===typeof o&&!t)throw new c("intrinsic "+e+" exists, but is not available. Please file an issue!");return{alias:n,name:r,value:o}}throw new l("intrinsic "+e+" does not exist!")};e.exports=function(e,t){if("string"!==typeof e||0===e.length)throw new c("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!==typeof t)throw new c('"allowMissing" argument must be a boolean');if(null===N(/^%?[^%]*%?$/,e))throw new l("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(e){var t=k(e,0,1),n=k(e,-1);if("%"===t&&"%"!==n)throw new l("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new l("invalid intrinsic syntax, expected opening `%`");var r=[];return O(e,R,(function(e,t,n,o){r[r.length]=n?O(o,M,"$1"):t||e})),r}(e),r=n.length>0?n[0]:"",o=L("%"+r+"%",t),a=o.name,i=o.value,s=!1,u=o.alias;u&&(r=u[0],I(n,x([0,1],u)));for(var d=1,p=!0;d=n.length){var b=h(i,m);i=(p=!!b)&&"get"in b&&!("originalValue"in b.get)?b.get:i[m]}else p=C(i,m),i=i[m];p&&!s&&(w[a]=i)}}return i}},95558:(e,t,n)=>{"use strict";var r=n(60002)("%Object.getOwnPropertyDescriptor%",!0);if(r)try{r([],"length")}catch(o){r=null}e.exports=r},12101:(e,t,n)=>{"use strict";var r=n(82090),o=function(){return!!r};o.hasArrayLengthDefineBug=function(){if(!r)return null;try{return 1!==r([],"length",{value:1}).length}catch(e){return!0}},e.exports=o},80951:e=>{"use strict";var t={__proto__:null,foo:{}},n=Object;e.exports=function(){return{__proto__:t}.foo===t.foo&&!(t instanceof n)}},72108:(e,t,n)=>{"use strict";var r="undefined"!==typeof Symbol&&Symbol,o=n(99534);e.exports=function(){return"function"===typeof r&&("function"===typeof Symbol&&("symbol"===typeof r("foo")&&("symbol"===typeof Symbol("bar")&&o())))}},99534:e=>{"use strict";e.exports=function(){if("function"!==typeof Symbol||"function"!==typeof Object.getOwnPropertySymbols)return!1;if("symbol"===typeof Symbol.iterator)return!0;var e={},t=Symbol("test"),n=Object(t);if("string"===typeof t)return!1;if("[object Symbol]"!==Object.prototype.toString.call(t))return!1;if("[object Symbol]"!==Object.prototype.toString.call(n))return!1;for(t in e[t]=42,e)return!1;if("function"===typeof Object.keys&&0!==Object.keys(e).length)return!1;if("function"===typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(e).length)return!1;var r=Object.getOwnPropertySymbols(e);if(1!==r.length||r[0]!==t)return!1;if(!Object.prototype.propertyIsEnumerable.call(e,t))return!1;if("function"===typeof Object.getOwnPropertyDescriptor){var o=Object.getOwnPropertyDescriptor(e,t);if(42!==o.value||!0!==o.enumerable)return!1}return!0}},34384:(e,t,n)=>{"use strict";var r=Function.prototype.call,o=Object.prototype.hasOwnProperty,a=n(63864);e.exports=a.call(r,o)},80219:(e,t,n)=>{"use strict";var r=n(53763),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?i:s[e.$$typeof]||o}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,h=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!==typeof n){if(m){var o=h(n);o&&o!==m&&e(t,o,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var s=l(t),f=l(n),g=0;g{"use strict";var n="function"===typeof Symbol&&Symbol.for,r=n?Symbol.for("react.element"):60103,o=n?Symbol.for("react.portal"):60106,a=n?Symbol.for("react.fragment"):60107,i=n?Symbol.for("react.strict_mode"):60108,s=n?Symbol.for("react.profiler"):60114,l=n?Symbol.for("react.provider"):60109,c=n?Symbol.for("react.context"):60110,u=n?Symbol.for("react.async_mode"):60111,d=n?Symbol.for("react.concurrent_mode"):60111,p=n?Symbol.for("react.forward_ref"):60112,h=n?Symbol.for("react.suspense"):60113,m=n?Symbol.for("react.suspense_list"):60120,f=n?Symbol.for("react.memo"):60115,g=n?Symbol.for("react.lazy"):60116,b=n?Symbol.for("react.block"):60121,y=n?Symbol.for("react.fundamental"):60117,v=n?Symbol.for("react.responder"):60118,E=n?Symbol.for("react.scope"):60119;function w(e){if("object"===typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:switch(e=e.type){case u:case d:case a:case s:case i:case h:return e;default:switch(e=e&&e.$$typeof){case c:case p:case g:case f:case l:return e;default:return t}}case o:return t}}}function S(e){return w(e)===d}t.AsyncMode=u,t.ConcurrentMode=d,t.ContextConsumer=c,t.ContextProvider=l,t.Element=r,t.ForwardRef=p,t.Fragment=a,t.Lazy=g,t.Memo=f,t.Portal=o,t.Profiler=s,t.StrictMode=i,t.Suspense=h,t.isAsyncMode=function(e){return S(e)||w(e)===u},t.isConcurrentMode=S,t.isContextConsumer=function(e){return w(e)===c},t.isContextProvider=function(e){return w(e)===l},t.isElement=function(e){return"object"===typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return w(e)===p},t.isFragment=function(e){return w(e)===a},t.isLazy=function(e){return w(e)===g},t.isMemo=function(e){return w(e)===f},t.isPortal=function(e){return w(e)===o},t.isProfiler=function(e){return w(e)===s},t.isStrictMode=function(e){return w(e)===i},t.isSuspense=function(e){return w(e)===h},t.isValidElementType=function(e){return"string"===typeof e||"function"===typeof e||e===a||e===d||e===s||e===i||e===h||e===m||"object"===typeof e&&null!==e&&(e.$$typeof===g||e.$$typeof===f||e.$$typeof===l||e.$$typeof===c||e.$$typeof===p||e.$$typeof===y||e.$$typeof===v||e.$$typeof===E||e.$$typeof===b)},t.typeOf=w},53763:(e,t,n)=>{"use strict";e.exports=n(54983)},94403:e=>{var t=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,n=/\n/g,r=/^\s*/,o=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,a=/^:\s*/,i=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,l=/^\s+|\s+$/g,c="";function u(e){return e?e.replace(l,c):c}e.exports=function(e,l){if("string"!==typeof e)throw new TypeError("First argument must be a string");if(!e)return[];l=l||{};var d=1,p=1;function h(e){var t=e.match(n);t&&(d+=t.length);var r=e.lastIndexOf("\n");p=~r?e.length-r:p+e.length}function m(){var e={line:d,column:p};return function(t){return t.position=new f(e),v(),t}}function f(e){this.start=e,this.end={line:d,column:p},this.source=l.source}f.prototype.content=e;var g=[];function b(t){var n=new Error(l.source+":"+d+":"+p+": "+t);if(n.reason=t,n.filename=l.source,n.line=d,n.column=p,n.source=e,!l.silent)throw n;g.push(n)}function y(t){var n=t.exec(e);if(n){var r=n[0];return h(r),e=e.slice(r.length),n}}function v(){y(r)}function E(e){var t;for(e=e||[];t=w();)!1!==t&&e.push(t);return e}function w(){var t=m();if("/"==e.charAt(0)&&"*"==e.charAt(1)){for(var n=2;c!=e.charAt(n)&&("*"!=e.charAt(n)||"/"!=e.charAt(n+1));)++n;if(n+=2,c===e.charAt(n-1))return b("End of comment missing");var r=e.slice(2,n-2);return p+=2,h(r),e=e.slice(n),p+=2,t({type:"comment",comment:r})}}function S(){var e=m(),n=y(o);if(n){if(w(),!y(a))return b("property missing ':'");var r=y(i),l=e({type:"declaration",property:u(n[0].replace(t,c)),value:r?u(r[0].replace(t,c)):c});return y(s),l}}return v(),function(){var e,t=[];for(E(t);e=S();)!1!==e&&(t.push(e),E(t));return t}()}},65837:e=>{e.exports=function(e){return null!=e&&null!=e.constructor&&"function"===typeof e.constructor.isBuffer&&e.constructor.isBuffer(e)}},59376:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__setModuleDefault||(Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t}),a=this&&this.__importStar||function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)"default"!==n&&Object.prototype.hasOwnProperty.call(e,n)&&r(t,e,n);return o(t,e),t},i=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.InternalEvents=void 0;var s=a(n(65043)),l=i(n(10826)),c=n(75955),u=n(81223),d=n(40847);t.InternalEvents=function(){return function(){var e,t,n=(0,u.useKBar)((function(e){return{visualState:e.visualState,showing:e.visualState!==c.VisualState.hidden,disabled:e.disabled}})),r=n.query,o=n.options,a=n.visualState,i=n.showing,d=n.disabled;s.useEffect((function(){var e,t=function(){r.setVisualState((function(e){return e===c.VisualState.hidden||e===c.VisualState.animatingOut?e:c.VisualState.animatingOut}))};if(!d){var n=o.toggleShortcut||"$mod+k",a=(0,l.default)(window,((e={})[n]=function(e){var t,n,a,s;e.defaultPrevented||(e.preventDefault(),r.toggle(),i?null===(n=null===(t=o.callbacks)||void 0===t?void 0:t.onClose)||void 0===n||n.call(t):null===(s=null===(a=o.callbacks)||void 0===a?void 0:a.onOpen)||void 0===s||s.call(a))},e.Escape=function(e){var n,r;i&&(e.stopPropagation(),e.preventDefault(),null===(r=null===(n=o.callbacks)||void 0===n?void 0:n.onClose)||void 0===r||r.call(n)),t()},e));return function(){a()}}t()}),[o.callbacks,o.toggleShortcut,r,i,d]);var p=s.useRef(),h=s.useCallback((function(e){var t,n,a=0;e===c.VisualState.animatingIn&&(a=(null===(t=o.animations)||void 0===t?void 0:t.enterMs)||0),e===c.VisualState.animatingOut&&(a=(null===(n=o.animations)||void 0===n?void 0:n.exitMs)||0),clearTimeout(p.current),p.current=setTimeout((function(){var t=!1;r.setVisualState((function(){var n=e===c.VisualState.animatingIn?c.VisualState.showing:c.VisualState.hidden;return n===c.VisualState.hidden&&(t=!0),n})),t&&r.setCurrentRootAction(null)}),a)}),[null===(e=o.animations)||void 0===e?void 0:e.enterMs,null===(t=o.animations)||void 0===t?void 0:t.exitMs,r]);s.useEffect((function(){switch(a){case c.VisualState.animatingIn:case c.VisualState.animatingOut:h(a)}}),[h,a])}(),function(){var e=(0,u.useKBar)((function(e){return{visualState:e.visualState}})),t=e.visualState,n=e.options;s.useEffect((function(){if(!n.disableDocumentLock)if(t===c.VisualState.animatingIn){if(document.body.style.overflow="hidden",!n.disableScrollbarManagement){var e=(0,d.getScrollbarWidth)(),r=getComputedStyle(document.body)["margin-right"];r&&(e+=Number(r.replace(/\D/g,""))),document.body.style.marginRight=e+"px"}}else t===c.VisualState.hidden&&(document.body.style.removeProperty("overflow"),n.disableScrollbarManagement||document.body.style.removeProperty("margin-right"))}),[n.disableDocumentLock,n.disableScrollbarManagement,t])}(),function(){var e=(0,u.useKBar)((function(e){return{actions:e.actions,open:e.visualState===c.VisualState.showing,disabled:e.disabled}})),t=e.actions,n=e.query,r=e.open,o=e.options,a=e.disabled;s.useEffect((function(){var e;if(!r&&!a){for(var i=[],s=0,c=Object.keys(t).map((function(e){return t[e]}));s0?e-1:e;if("string"===typeof o.current[t]){if(0===t)return e;t-=1}return t}))):"ArrowDown"===e.key||e.ctrlKey&&"n"===e.key?(e.preventDefault(),e.stopPropagation(),p.setActiveIndex((function(e){var t=e{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Command=void 0;var n=function(e,t){var n=this;void 0===t&&(t={}),this.perform=function(){var r=e.perform();if("function"===typeof r){var o=t.history;o&&(n.historyItem&&o.remove(n.historyItem),n.historyItem=o.add({perform:e.perform,negate:r}),n.history={undo:function(){return o.undo(n.historyItem)},redo:function(){return o.redo(n.historyItem)}})}}};t.Command=n},24115:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.history=t.HistoryItemImpl=void 0;var r=n(40847),o=function(){function e(e){this.perform=e.perform,this.negate=e.negate}return e.create=function(t){return new e(t)},e}();t.HistoryItemImpl=o;var a=new(function(){function e(){return this.undoStack=[],this.redoStack=[],e.instance||(e.instance=this,this.init()),e.instance}return e.prototype.init=function(){var e=this;"undefined"!==typeof window&&window.addEventListener("keydown",(function(t){var n;if((e.redoStack.length||e.undoStack.length)&&!(0,r.shouldRejectKeystrokes)()){var o=null===(n=t.key)||void 0===n?void 0:n.toLowerCase();t.metaKey&&"z"===o&&t.shiftKey?e.redo():t.metaKey&&"z"===o&&e.undo()}}))},e.prototype.add=function(e){var t=o.create(e);return this.undoStack.push(t),t},e.prototype.remove=function(e){var t=this.undoStack.findIndex((function(t){return t===e}));if(-1===t){var n=this.redoStack.findIndex((function(t){return t===e}));-1!==n&&this.redoStack.splice(n,1)}else this.undoStack.splice(t,1)},e.prototype.undo=function(e){if(!e){var t=this.undoStack.pop();if(!t)return;return null===t||void 0===t||t.negate(),this.redoStack.push(t),t}var n=this.undoStack.findIndex((function(t){return t===e}));if(-1!==n)return this.undoStack.splice(n,1),e.negate(),this.redoStack.push(e),e},e.prototype.redo=function(e){if(!e){var t=this.redoStack.pop();if(!t)return;return null===t||void 0===t||t.perform(),this.undoStack.push(t),t}var n=this.redoStack.findIndex((function(t){return t===e}));if(-1!==n)return this.redoStack.splice(n,1),e.perform(),this.undoStack.push(e),e},e.prototype.reset=function(){this.undoStack.splice(0),this.redoStack.splice(0)},e}());t.history=a,Object.freeze(a)},96101:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(12588),t),o(n(40093),t)},89726:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),t.Priority=t.createAction=void 0;var a=n(40847);Object.defineProperty(t,"createAction",{enumerable:!0,get:function(){return a.createAction}}),Object.defineProperty(t,"Priority",{enumerable:!0,get:function(){return a.Priority}}),o(n(40388),t),o(n(31780),t),o(n(49042),t),o(n(53334),t),o(n(48474),t),o(n(81223),t),o(n(49669),t),o(n(63942),t),o(n(35583),t),o(n(75955),t),o(n(96101),t)},10826:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=["Shift","Meta","Alt","Control"],r="object"===typeof navigator&&/Mac|iPod|iPhone|iPad/.test(navigator.platform)?"Meta":"Control";function o(e,t){return"function"===typeof e.getModifierState&&e.getModifierState(t)}t.default=function(e,t,a){var i,s;void 0===a&&(a={});var l=null!==(i=a.timeout)&&void 0!==i?i:1e3,c=null!==(s=a.event)&&void 0!==s?s:"keydown",u=Object.keys(t).map((function(e){return[(n=e,n.trim().split(" ").map((function(e){var t=e.split(/\b\+/),n=t.pop();return[t=t.map((function(e){return"$mod"===e?r:e})),n]}))),t[e]];var n})),d=new Map,p=null,h=function(e){e instanceof KeyboardEvent&&(u.forEach((function(t){var r=t[0],a=t[1],i=d.get(r),s=i||r,l=s[0],c=function(e,t){return!(!/^[^A-Za-z0-9]$/.test(e.key)||t[1]!==e.key)||!(t[1].toUpperCase()!==e.key.toUpperCase()&&t[1]!==e.code||t[0].find((function(t){return!o(e,t)}))||n.find((function(n){return!t[0].includes(n)&&t[1]!==n&&o(e,n)})))}(e,l);c?s.length>1?d.set(r,s.slice(1)):(d.delete(r),a(e)):o(e,e.key)||d.delete(r)})),p&&clearTimeout(p),p=setTimeout(d.clear.bind(d),l))};return e.addEventListener(c,h),function(){e.removeEventListener(c,h)}}},75955:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.VisualState=void 0,function(e){e.animatingIn="animating-in",e.showing="showing",e.animatingOut="animating-out",e.hidden="hidden"}(t.VisualState||(t.VisualState={}))},81223:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0){for(var a=n[o].children,i=0;i-1)return this.subscribers.splice(t,1)}},e.prototype.notify=function(){this.subscribers.forEach((function(e){return e.collect()}))},e}(),f=function(){function e(e,t){this.collector=e,this.onChange=t}return e.prototype.collect=function(){try{var e=this.collector();(0,l.deepEqual)(e,this.collected)||(this.collected=e,this.onChange&&this.onChange(this.collected))}catch(t){console.warn(t)}},e}()},40847:function(e,t,n){"use strict";var r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=function(){function e(e,t){for(var n=0;n0&&void 0!==arguments[0]?arguments[0]:{};!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.cookieOptions=Object.assign({path:"/"},t),s=void 0===t.prefix?s:t.prefix}return r(e,[{key:"getItem",value:function(e){var t=i.default.parse(document.cookie);return t&&t.hasOwnProperty(s+e)?t[s+e]:null}},{key:"setItem",value:function(e,t){return document.cookie=i.default.serialize(s+e,t,this.cookieOptions),t}},{key:"removeItem",value:function(e){var t=Object.assign({},this.cookieOptions,{maxAge:-1});return document.cookie=i.default.serialize(s+e,"",t),null}},{key:"clear",value:function(){var e=i.default.parse(document.cookie);for(var t in e)0===t.indexOf(s)&&this.removeItem(t.substr(s.length));return null}}]),e}();t.default=l},52080:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(e,t){for(var n=0;n{"use strict";var r=i(n(11322)),o=i(n(53091)),a=i(n(52080));function i(e){return e&&e.__esModule?e:{default:e}}var s=null;s=(0,r.default)("localStorage")?window.localStorage:(0,r.default)("sessionStorage")?window.sessionStorage:(0,r.default)("cookieStorage")?new o.default:new a.default,t.Ay=s,r.default,o.default,a.default},11322:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"localStorage",t=String(e).replace(/storage$/i,"").toLowerCase();if("local"===t)return a("localStorage");if("session"===t)return a("sessionStorage");if("cookie"===t)return(0,r.hasCookies)();if("memory"===t)return!0;throw new Error("Storage method `"+e+"` is not available.\n Please use one of the following: localStorage, sessionStorage, cookieStorage, memoryStorage.")};var r=n(53091),o="__test";function a(e){try{var t=window[e];return t.setItem(o,"1"),t.removeItem(o),!0}catch(n){return!1}}},97685:(e,t,n)=>{var r=n(87937)(n(56552),"DataView");e.exports=r},98724:(e,t,n)=>{var r=n(27615),o=n(25051),a=n(72154),i=n(48734),s=n(22662);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(87563),o=n(29935),a=n(24190),i=n(51946),s=n(61714);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(87937)(n(56552),"Map");e.exports=r},64816:(e,t,n)=>{var r=n(47251),o=n(37159),a=n(80438),i=n(69394),s=n(56874);function l(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t{var r=n(87937)(n(56552),"Promise");e.exports=r},72070:(e,t,n)=>{var r=n(87937)(n(56552),"Set");e.exports=r},18902:(e,t,n)=>{var r=n(64816),o=n(86179),a=n(46704);function i(e){var t=-1,n=null==e?0:e.length;for(this.__data__=new r;++t{var r=n(97160),o=n(84545),a=n(10793),i=n(27760),s=n(3892),l=n(76788);function c(e){var t=this.__data__=new r(e);this.size=t.size}c.prototype.clear=o,c.prototype.delete=a,c.prototype.get=i,c.prototype.has=s,c.prototype.set=l,e.exports=c},9812:(e,t,n)=>{var r=n(56552).Symbol;e.exports=r},22929:(e,t,n)=>{var r=n(56552).Uint8Array;e.exports=r},26600:(e,t,n)=>{var r=n(87937)(n(56552),"WeakMap");e.exports=r},31170:e=>{e.exports=function(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}},27676:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=0,a=[];++n{var r=n(88468);e.exports=function(e,t){return!!(null==e?0:e.length)&&r(e,t,0)>-1}},41558:e=>{e.exports=function(e,t,n){for(var r=-1,o=null==e?0:e.length;++r{var r=n(3343),o=n(22777),a=n(54052),i=n(44543),s=n(69194),l=n(51268),c=Object.prototype.hasOwnProperty;e.exports=function(e,t){var n=a(e),u=!n&&o(e),d=!n&&!u&&i(e),p=!n&&!u&&!d&&l(e),h=n||u||d||p,m=h?r(e.length,String):[],f=m.length;for(var g in e)!t&&!c.call(e,g)||h&&("length"==g||d&&("offset"==g||"parent"==g)||p&&("buffer"==g||"byteLength"==g||"byteOffset"==g)||s(g,f))||m.push(g);return m}},50149:e=>{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length,o=Array(r);++n{e.exports=function(e,t){for(var n=-1,r=t.length,o=e.length;++n{e.exports=function(e,t){for(var n=-1,r=null==e?0:e.length;++n{e.exports=function(e){return e.split("")}},61340:(e,t,n)=>{var r=n(93211);e.exports=function(e,t){for(var n=e.length;n--;)if(r(e[n][0],t))return n;return-1}},71775:(e,t,n)=>{var r=n(5654);e.exports=function(e,t,n){"__proto__"==t&&r?r(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}},45652:(e,t,n)=>{var r=n(94664),o=n(76516)(r);e.exports=o},24746:(e,t,n)=>{var r=n(45652);e.exports=function(e,t){var n=!0;return r(e,(function(e,r,o){return n=!!t(e,r,o)})),n}},79742:(e,t,n)=>{var r=n(19841);e.exports=function(e,t,n){for(var o=-1,a=e.length;++o{e.exports=function(e,t,n,r){for(var o=e.length,a=n+(r?1:-1);r?a--:++a{var r=n(48895),o=n(77116);e.exports=function e(t,n,a,i,s){var l=-1,c=t.length;for(a||(a=o),s||(s=[]);++l0&&a(u)?n>1?e(u,n-1,a,i,s):r(s,u):i||(s[s.length]=u)}return s}},94258:(e,t,n)=>{var r=n(55906)();e.exports=r},94664:(e,t,n)=>{var r=n(94258),o=n(28673);e.exports=function(e,t){return e&&r(e,t,o)}},52969:(e,t,n)=>{var r=n(35324),o=n(70914);e.exports=function(e,t){for(var n=0,a=(t=r(t,e)).length;null!=e&&n{var r=n(48895),o=n(54052);e.exports=function(e,t,n){var a=t(e);return o(e)?a:r(a,n(e))}},16913:(e,t,n)=>{var r=n(9812),o=n(34552),a=n(16095),i=r?r.toStringTag:void 0;e.exports=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":i&&i in Object(e)?o(e):a(e)}},97498:e=>{e.exports=function(e,t){return e>t}},27894:e=>{e.exports=function(e,t){return null!=e&&t in Object(e)}},88468:(e,t,n)=>{var r=n(75816),o=n(40644),a=n(71639);e.exports=function(e,t,n){return t===t?a(e,t,n):r(e,o,n)}},15193:(e,t,n)=>{var r=n(16913),o=n(22761);e.exports=function(e){return o(e)&&"[object Arguments]"==r(e)}},26989:(e,t,n)=>{var r=n(16399),o=n(22761);e.exports=function e(t,n,a,i,s){return t===n||(null==t||null==n||!o(t)&&!o(n)?t!==t&&n!==n:r(t,n,a,i,e,s))}},16399:(e,t,n)=>{var r=n(5538),o=n(43668),a=n(69987),i=n(45752),s=n(26924),l=n(54052),c=n(44543),u=n(51268),d="[object Arguments]",p="[object Array]",h="[object Object]",m=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,f,g,b){var y=l(e),v=l(t),E=y?p:s(e),w=v?p:s(t),S=(E=E==d?h:E)==h,A=(w=w==d?h:w)==h,_=E==w;if(_&&c(e)){if(!c(t))return!1;y=!0,S=!1}if(_&&!S)return b||(b=new r),y||u(e)?o(e,t,n,f,g,b):a(e,t,E,n,f,g,b);if(!(1&n)){var T=S&&m.call(e,"__wrapped__"),C=A&&m.call(t,"__wrapped__");if(T||C){var x=T?e.value():e,I=C?t.value():t;return b||(b=new r),g(x,I,n,f,b)}}return!!_&&(b||(b=new r),i(e,t,n,f,g,b))}},86532:(e,t,n)=>{var r=n(5538),o=n(26989);e.exports=function(e,t,n,a){var i=n.length,s=i,l=!a;if(null==e)return!s;for(e=Object(e);i--;){var c=n[i];if(l&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++i{e.exports=function(e){return e!==e}},36954:(e,t,n)=>{var r=n(11629),o=n(37857),a=n(46686),i=n(96996),s=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,u=l.toString,d=c.hasOwnProperty,p=RegExp("^"+u.call(d).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");e.exports=function(e){return!(!a(e)||o(e))&&(r(e)?p:s).test(i(e))}},35428:(e,t,n)=>{var r=n(16913),o=n(56173),a=n(22761),i={};i["[object Float32Array]"]=i["[object Float64Array]"]=i["[object Int8Array]"]=i["[object Int16Array]"]=i["[object Int32Array]"]=i["[object Uint8Array]"]=i["[object Uint8ClampedArray]"]=i["[object Uint16Array]"]=i["[object Uint32Array]"]=!0,i["[object Arguments]"]=i["[object Array]"]=i["[object ArrayBuffer]"]=i["[object Boolean]"]=i["[object DataView]"]=i["[object Date]"]=i["[object Error]"]=i["[object Function]"]=i["[object Map]"]=i["[object Number]"]=i["[object Object]"]=i["[object RegExp]"]=i["[object Set]"]=i["[object String]"]=i["[object WeakMap]"]=!1,e.exports=function(e){return a(e)&&o(e.length)&&!!i[r(e)]}},9096:(e,t,n)=>{var r=n(39256),o=n(15029),a=n(33279),i=n(54052),s=n(63932);e.exports=function(e){return"function"==typeof e?e:null==e?a:"object"==typeof e?i(e)?o(e[0],e[1]):r(e):s(e)}},83713:(e,t,n)=>{var r=n(36140),o=n(61143),a=Object.prototype.hasOwnProperty;e.exports=function(e){if(!r(e))return o(e);var t=[];for(var n in Object(e))a.call(e,n)&&"constructor"!=n&&t.push(n);return t}},50061:e=>{e.exports=function(e,t){return e{var r=n(45652),o=n(6571);e.exports=function(e,t){var n=-1,a=o(e)?Array(e.length):[];return r(e,(function(e,r,o){a[++n]=t(e,r,o)})),a}},39256:(e,t,n)=>{var r=n(86532),o=n(23781),a=n(91310);e.exports=function(e){var t=o(e);return 1==t.length&&t[0][2]?a(t[0][0],t[0][1]):function(n){return n===e||r(n,e,t)}}},15029:(e,t,n)=>{var r=n(26989),o=n(33097),a=n(53366),i=n(62597),s=n(9417),l=n(91310),c=n(70914);e.exports=function(e,t){return i(e)&&s(t)?l(c(e),t):function(n){var i=o(n,e);return void 0===i&&i===t?a(n,e):r(t,i,3)}}},12536:(e,t,n)=>{var r=n(50149),o=n(52969),a=n(9096),i=n(38883),s=n(60320),l=n(47574),c=n(65893),u=n(33279),d=n(54052);e.exports=function(e,t,n){t=t.length?r(t,(function(e){return d(e)?function(t){return o(t,1===e.length?e[0]:e)}:e})):[u];var p=-1;t=r(t,l(a));var h=i(e,(function(e,n,o){return{criteria:r(t,(function(t){return t(e)})),index:++p,value:e}}));return s(h,(function(e,t){return c(e,t,n)}))}},10396:e=>{e.exports=function(e){return function(t){return null==t?void 0:t[e]}}},52866:(e,t,n)=>{var r=n(52969);e.exports=function(e){return function(t){return r(t,e)}}},39676:e=>{var t=Math.ceil,n=Math.max;e.exports=function(e,r,o,a){for(var i=-1,s=n(t((r-e)/(o||1)),0),l=Array(s);s--;)l[a?s:++i]=e,e+=o;return l}},55647:(e,t,n)=>{var r=n(33279),o=n(55636),a=n(46350);e.exports=function(e,t){return a(o(e,t,r),e+"")}},28325:(e,t,n)=>{var r=n(22541),o=n(5654),a=n(33279),i=o?function(e,t){return o(e,"toString",{configurable:!0,enumerable:!1,value:r(t),writable:!0})}:a;e.exports=i},53871:e=>{e.exports=function(e,t,n){var r=-1,o=e.length;t<0&&(t=-t>o?0:o+t),(n=n>o?o:n)<0&&(n+=o),o=t>n?0:n-t>>>0,t>>>=0;for(var a=Array(o);++r{var r=n(45652);e.exports=function(e,t){var n;return r(e,(function(e,r,o){return!(n=t(e,r,o))})),!!n}},60320:e=>{e.exports=function(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}},3343:e=>{e.exports=function(e,t){for(var n=-1,r=Array(e);++n{var r=n(9812),o=n(50149),a=n(54052),i=n(19841),s=r?r.prototype:void 0,l=s?s.toString:void 0;e.exports=function e(t){if("string"==typeof t)return t;if(a(t))return o(t,e)+"";if(i(t))return l?l.call(t):"";var n=t+"";return"0"==n&&1/t==-1/0?"-0":n}},61141:(e,t,n)=>{var r=n(10143),o=/^\s+/;e.exports=function(e){return e?e.slice(0,r(e)+1).replace(o,""):e}},47574:e=>{e.exports=function(e){return function(t){return e(t)}}},64416:(e,t,n)=>{var r=n(18902),o=n(75866),a=n(41558),i=n(58114),s=n(68182),l=n(52074);e.exports=function(e,t,n){var c=-1,u=o,d=e.length,p=!0,h=[],m=h;if(n)p=!1,u=a;else if(d>=200){var f=t?null:s(e);if(f)return l(f);p=!1,u=i,m=new r}else m=t?[]:h;e:for(;++c{e.exports=function(e,t){return e.has(t)}},35324:(e,t,n)=>{var r=n(54052),o=n(62597),a=n(14079),i=n(41069);e.exports=function(e,t){return r(e)?e:o(e,t)?[e]:a(i(e))}},28189:(e,t,n)=>{var r=n(53871);e.exports=function(e,t,n){var o=e.length;return n=void 0===n?o:n,!t&&n>=o?e:r(e,t,n)}},16599:(e,t,n)=>{var r=n(19841);e.exports=function(e,t){if(e!==t){var n=void 0!==e,o=null===e,a=e===e,i=r(e),s=void 0!==t,l=null===t,c=t===t,u=r(t);if(!l&&!u&&!i&&e>t||i&&s&&c&&!l&&!u||o&&s&&c||!n&&c||!a)return 1;if(!o&&!i&&!u&&e{var r=n(16599);e.exports=function(e,t,n){for(var o=-1,a=e.criteria,i=t.criteria,s=a.length,l=n.length;++o=l?c:c*("desc"==n[o]?-1:1)}return e.index-t.index}},13440:(e,t,n)=>{var r=n(56552)["__core-js_shared__"];e.exports=r},76516:(e,t,n)=>{var r=n(6571);e.exports=function(e,t){return function(n,o){if(null==n)return n;if(!r(n))return e(n,o);for(var a=n.length,i=t?a:-1,s=Object(n);(t?i--:++i{e.exports=function(e){return function(t,n,r){for(var o=-1,a=Object(t),i=r(t),s=i.length;s--;){var l=i[e?s:++o];if(!1===n(a[l],l,a))break}return t}}},35295:(e,t,n)=>{var r=n(28189),o=n(36311),a=n(39115),i=n(41069);e.exports=function(e){return function(t){t=i(t);var n=o(t)?a(t):void 0,s=n?n[0]:t.charAt(0),l=n?r(n,1).join(""):t.slice(1);return s[e]()+l}}},69995:(e,t,n)=>{var r=n(9096),o=n(6571),a=n(28673);e.exports=function(e){return function(t,n,i){var s=Object(t);if(!o(t)){var l=r(n,3);t=a(t),n=function(e){return l(s[e],e,s)}}var c=e(t,n,i);return c>-1?s[l?t[c]:c]:void 0}}},3331:(e,t,n)=>{var r=n(39676),o=n(60929),a=n(37303);e.exports=function(e){return function(t,n,i){return i&&"number"!=typeof i&&o(t,n,i)&&(n=i=void 0),t=a(t),void 0===n?(n=t,t=0):n=a(n),i=void 0===i?t{var r=n(72070),o=n(75713),a=n(52074),i=r&&1/a(new r([,-0]))[1]==1/0?function(e){return new r(e)}:o;e.exports=i},5654:(e,t,n)=>{var r=n(87937),o=function(){try{var e=r(Object,"defineProperty");return e({},"",{}),e}catch(t){}}();e.exports=o},43668:(e,t,n)=>{var r=n(18902),o=n(52587),a=n(58114);e.exports=function(e,t,n,i,s,l){var c=1&n,u=e.length,d=t.length;if(u!=d&&!(c&&d>u))return!1;var p=l.get(e),h=l.get(t);if(p&&h)return p==t&&h==e;var m=-1,f=!0,g=2&n?new r:void 0;for(l.set(e,t),l.set(t,e);++m{var r=n(9812),o=n(22929),a=n(93211),i=n(43668),s=n(54160),l=n(52074),c=r?r.prototype:void 0,u=c?c.valueOf:void 0;e.exports=function(e,t,n,r,c,d,p){switch(n){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!d(new o(e),new o(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return a(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case"[object Map]":var h=s;case"[object Set]":var m=1&r;if(h||(h=l),e.size!=t.size&&!m)return!1;var f=p.get(e);if(f)return f==t;r|=2,p.set(e,t);var g=i(h(e),h(t),r,c,d,p);return p.delete(e),g;case"[object Symbol]":if(u)return u.call(e)==u.call(t)}return!1}},45752:(e,t,n)=>{var r=n(59395),o=Object.prototype.hasOwnProperty;e.exports=function(e,t,n,a,i,s){var l=1&n,c=r(e),u=c.length;if(u!=r(t).length&&!l)return!1;for(var d=u;d--;){var p=c[d];if(!(l?p in t:o.call(t,p)))return!1}var h=s.get(e),m=s.get(t);if(h&&m)return h==t&&m==e;var f=!0;s.set(e,t),s.set(t,e);for(var g=l;++d{var r="object"==typeof n.g&&n.g&&n.g.Object===Object&&n.g;e.exports=r},59395:(e,t,n)=>{var r=n(4262),o=n(69621),a=n(28673);e.exports=function(e){return r(e,a,o)}},12622:(e,t,n)=>{var r=n(70705);e.exports=function(e,t){var n=e.__data__;return r(t)?n["string"==typeof t?"string":"hash"]:n.map}},23781:(e,t,n)=>{var r=n(9417),o=n(28673);e.exports=function(e){for(var t=o(e),n=t.length;n--;){var a=t[n],i=e[a];t[n]=[a,i,r(i)]}return t}},87937:(e,t,n)=>{var r=n(36954),o=n(14657);e.exports=function(e,t){var n=o(e,t);return r(n)?n:void 0}},85990:(e,t,n)=>{var r=n(13028)(Object.getPrototypeOf,Object);e.exports=r},34552:(e,t,n)=>{var r=n(9812),o=Object.prototype,a=o.hasOwnProperty,i=o.toString,s=r?r.toStringTag:void 0;e.exports=function(e){var t=a.call(e,s),n=e[s];try{e[s]=void 0;var r=!0}catch(l){}var o=i.call(e);return r&&(t?e[s]=n:delete e[s]),o}},69621:(e,t,n)=>{var r=n(17529),o=n(57828),a=Object.prototype.propertyIsEnumerable,i=Object.getOwnPropertySymbols,s=i?function(e){return null==e?[]:(e=Object(e),r(i(e),(function(t){return a.call(e,t)})))}:o;e.exports=s},26924:(e,t,n)=>{var r=n(97685),o=n(85204),a=n(65387),i=n(72070),s=n(26600),l=n(16913),c=n(96996),u="[object Map]",d="[object Promise]",p="[object Set]",h="[object WeakMap]",m="[object DataView]",f=c(r),g=c(o),b=c(a),y=c(i),v=c(s),E=l;(r&&E(new r(new ArrayBuffer(1)))!=m||o&&E(new o)!=u||a&&E(a.resolve())!=d||i&&E(new i)!=p||s&&E(new s)!=h)&&(E=function(e){var t=l(e),n="[object Object]"==t?e.constructor:void 0,r=n?c(n):"";if(r)switch(r){case f:return m;case g:return u;case b:return d;case y:return p;case v:return h}return t}),e.exports=E},14657:e=>{e.exports=function(e,t){return null==e?void 0:e[t]}},99057:(e,t,n)=>{var r=n(35324),o=n(22777),a=n(54052),i=n(69194),s=n(56173),l=n(70914);e.exports=function(e,t,n){for(var c=-1,u=(t=r(t,e)).length,d=!1;++c{var t=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]");e.exports=function(e){return t.test(e)}},27615:(e,t,n)=>{var r=n(95575);e.exports=function(){this.__data__=r?r(null):{},this.size=0}},25051:e=>{e.exports=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}},72154:(e,t,n)=>{var r=n(95575),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;if(r){var n=t[e];return"__lodash_hash_undefined__"===n?void 0:n}return o.call(t,e)?t[e]:void 0}},48734:(e,t,n)=>{var r=n(95575),o=Object.prototype.hasOwnProperty;e.exports=function(e){var t=this.__data__;return r?void 0!==t[e]:o.call(t,e)}},22662:(e,t,n)=>{var r=n(95575);e.exports=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=r&&void 0===t?"__lodash_hash_undefined__":t,this}},77116:(e,t,n)=>{var r=n(9812),o=n(22777),a=n(54052),i=r?r.isConcatSpreadable:void 0;e.exports=function(e){return a(e)||o(e)||!!(i&&e&&e[i])}},69194:e=>{var t=/^(?:0|[1-9]\d*)$/;e.exports=function(e,n){var r=typeof e;return!!(n=null==n?9007199254740991:n)&&("number"==r||"symbol"!=r&&t.test(e))&&e>-1&&e%1==0&&e{var r=n(93211),o=n(6571),a=n(69194),i=n(46686);e.exports=function(e,t,n){if(!i(n))return!1;var s=typeof t;return!!("number"==s?o(n)&&a(t,n.length):"string"==s&&t in n)&&r(n[t],e)}},62597:(e,t,n)=>{var r=n(54052),o=n(19841),a=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,i=/^\w*$/;e.exports=function(e,t){if(r(e))return!1;var n=typeof e;return!("number"!=n&&"symbol"!=n&&"boolean"!=n&&null!=e&&!o(e))||(i.test(e)||!a.test(e)||null!=t&&e in Object(t))}},70705:e=>{e.exports=function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}},37857:(e,t,n)=>{var r=n(13440),o=function(){var e=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();e.exports=function(e){return!!o&&o in e}},36140:e=>{var t=Object.prototype;e.exports=function(e){var n=e&&e.constructor;return e===("function"==typeof n&&n.prototype||t)}},9417:(e,t,n)=>{var r=n(46686);e.exports=function(e){return e===e&&!r(e)}},87563:e=>{e.exports=function(){this.__data__=[],this.size=0}},29935:(e,t,n)=>{var r=n(61340),o=Array.prototype.splice;e.exports=function(e){var t=this.__data__,n=r(t,e);return!(n<0)&&(n==t.length-1?t.pop():o.call(t,n,1),--this.size,!0)}},24190:(e,t,n)=>{var r=n(61340);e.exports=function(e){var t=this.__data__,n=r(t,e);return n<0?void 0:t[n][1]}},51946:(e,t,n)=>{var r=n(61340);e.exports=function(e){return r(this.__data__,e)>-1}},61714:(e,t,n)=>{var r=n(61340);e.exports=function(e,t){var n=this.__data__,o=r(n,e);return o<0?(++this.size,n.push([e,t])):n[o][1]=t,this}},47251:(e,t,n)=>{var r=n(98724),o=n(97160),a=n(85204);e.exports=function(){this.size=0,this.__data__={hash:new r,map:new(a||o),string:new r}}},37159:(e,t,n)=>{var r=n(12622);e.exports=function(e){var t=r(this,e).delete(e);return this.size-=t?1:0,t}},80438:(e,t,n)=>{var r=n(12622);e.exports=function(e){return r(this,e).get(e)}},69394:(e,t,n)=>{var r=n(12622);e.exports=function(e){return r(this,e).has(e)}},56874:(e,t,n)=>{var r=n(12622);e.exports=function(e,t){var n=r(this,e),o=n.size;return n.set(e,t),this.size+=n.size==o?0:1,this}},54160:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e,r){n[++t]=[r,e]})),n}},91310:e=>{e.exports=function(e,t){return function(n){return null!=n&&(n[e]===t&&(void 0!==t||e in Object(n)))}}},88259:(e,t,n)=>{var r=n(15797);e.exports=function(e){var t=r(e,(function(e){return 500===n.size&&n.clear(),e})),n=t.cache;return t}},95575:(e,t,n)=>{var r=n(87937)(Object,"create");e.exports=r},61143:(e,t,n)=>{var r=n(13028)(Object.keys,Object);e.exports=r},56832:(e,t,n)=>{e=n.nmd(e);var r=n(37105),o=t&&!t.nodeType&&t,a=o&&e&&!e.nodeType&&e,i=a&&a.exports===o&&r.process,s=function(){try{var e=a&&a.require&&a.require("util").types;return e||i&&i.binding&&i.binding("util")}catch(t){}}();e.exports=s},16095:e=>{var t=Object.prototype.toString;e.exports=function(e){return t.call(e)}},13028:e=>{e.exports=function(e,t){return function(n){return e(t(n))}}},55636:(e,t,n)=>{var r=n(31170),o=Math.max;e.exports=function(e,t,n){return t=o(void 0===t?e.length-1:t,0),function(){for(var a=arguments,i=-1,s=o(a.length-t,0),l=Array(s);++i{var r=n(37105),o="object"==typeof self&&self&&self.Object===Object&&self,a=r||o||Function("return this")();e.exports=a},86179:e=>{e.exports=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this}},46704:e=>{e.exports=function(e){return this.__data__.has(e)}},52074:e=>{e.exports=function(e){var t=-1,n=Array(e.size);return e.forEach((function(e){n[++t]=e})),n}},46350:(e,t,n)=>{var r=n(28325),o=n(86578)(r);e.exports=o},86578:e=>{var t=Date.now;e.exports=function(e){var n=0,r=0;return function(){var o=t(),a=16-(o-r);if(r=o,a>0){if(++n>=800)return arguments[0]}else n=0;return e.apply(void 0,arguments)}}},84545:(e,t,n)=>{var r=n(97160);e.exports=function(){this.__data__=new r,this.size=0}},10793:e=>{e.exports=function(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}},27760:e=>{e.exports=function(e){return this.__data__.get(e)}},3892:e=>{e.exports=function(e){return this.__data__.has(e)}},76788:(e,t,n)=>{var r=n(97160),o=n(85204),a=n(64816);e.exports=function(e,t){var n=this.__data__;if(n instanceof r){var i=n.__data__;if(!o||i.length<199)return i.push([e,t]),this.size=++n.size,this;n=this.__data__=new a(i)}return n.set(e,t),this.size=n.size,this}},71639:e=>{e.exports=function(e,t,n){for(var r=n-1,o=e.length;++r{var r=n(45967),o=n(36311),a=n(50715);e.exports=function(e){return o(e)?a(e):r(e)}},14079:(e,t,n)=>{var r=n(88259),o=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,a=/\\(\\)?/g,i=r((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(o,(function(e,n,r,o){t.push(r?o.replace(a,"$1"):n||e)})),t}));e.exports=i},70914:(e,t,n)=>{var r=n(19841);e.exports=function(e){if("string"==typeof e||r(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}},96996:e=>{var t=Function.prototype.toString;e.exports=function(e){if(null!=e){try{return t.call(e)}catch(n){}try{return e+""}catch(n){}}return""}},10143:e=>{var t=/\s/;e.exports=function(e){for(var n=e.length;n--&&t.test(e.charAt(n)););return n}},50715:e=>{var t="\\ud800-\\udfff",n="["+t+"]",r="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",o="\\ud83c[\\udffb-\\udfff]",a="[^"+t+"]",i="(?:\\ud83c[\\udde6-\\uddff]){2}",s="[\\ud800-\\udbff][\\udc00-\\udfff]",l="(?:"+r+"|"+o+")"+"?",c="[\\ufe0e\\ufe0f]?",u=c+l+("(?:\\u200d(?:"+[a,i,s].join("|")+")"+c+l+")*"),d="(?:"+[a+r+"?",r,i,s,n].join("|")+")",p=RegExp(o+"(?="+o+")|"+d+u,"g");e.exports=function(e){return e.match(p)||[]}},22541:e=>{e.exports=function(e){return function(){return e}}},93950:(e,t,n)=>{var r=n(46686),o=n(4757),a=n(40801),i=Math.max,s=Math.min;e.exports=function(e,t,n){var l,c,u,d,p,h,m=0,f=!1,g=!1,b=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function y(t){var n=l,r=c;return l=c=void 0,m=t,d=e.apply(r,n)}function v(e){var n=e-h;return void 0===h||n>=t||n<0||g&&e-m>=u}function E(){var e=o();if(v(e))return w(e);p=setTimeout(E,function(e){var n=t-(e-h);return g?s(n,u-(e-m)):n}(e))}function w(e){return p=void 0,b&&l?y(e):(l=c=void 0,d)}function S(){var e=o(),n=v(e);if(l=arguments,c=this,h=e,n){if(void 0===p)return function(e){return m=e,p=setTimeout(E,t),f?y(e):d}(h);if(g)return clearTimeout(p),p=setTimeout(E,t),y(h)}return void 0===p&&(p=setTimeout(E,t)),d}return t=a(t)||0,r(n)&&(f=!!n.leading,u=(g="maxWait"in n)?i(a(n.maxWait)||0,t):u,b="trailing"in n?!!n.trailing:b),S.cancel=function(){void 0!==p&&clearTimeout(p),m=0,l=h=c=p=void 0},S.flush=function(){return void 0===p?d:w(o())},S}},93211:e=>{e.exports=function(e,t){return e===t||e!==e&&t!==t}},17002:(e,t,n)=>{var r=n(27676),o=n(24746),a=n(9096),i=n(54052),s=n(60929);e.exports=function(e,t,n){var l=i(e)?r:o;return n&&s(e,t,n)&&(t=void 0),l(e,a(t,3))}},98990:(e,t,n)=>{var r=n(69995)(n(32520));e.exports=r},32520:(e,t,n)=>{var r=n(75816),o=n(9096),a=n(99140),i=Math.max;e.exports=function(e,t,n){var s=null==e?0:e.length;if(!s)return-1;var l=null==n?0:a(n);return l<0&&(l=i(s+l,0)),r(e,o(t,3),l)}},63538:(e,t,n)=>{var r=n(80755),o=n(33411);e.exports=function(e,t){return r(o(e,t),1)}},33097:(e,t,n)=>{var r=n(52969);e.exports=function(e,t,n){var o=null==e?void 0:r(e,t);return void 0===o?n:o}},53366:(e,t,n)=>{var r=n(27894),o=n(99057);e.exports=function(e,t){return null!=e&&o(e,t,r)}},33279:e=>{e.exports=function(e){return e}},22777:(e,t,n)=>{var r=n(15193),o=n(22761),a=Object.prototype,i=a.hasOwnProperty,s=a.propertyIsEnumerable,l=r(function(){return arguments}())?r:function(e){return o(e)&&i.call(e,"callee")&&!s.call(e,"callee")};e.exports=l},54052:e=>{var t=Array.isArray;e.exports=t},6571:(e,t,n)=>{var r=n(11629),o=n(56173);e.exports=function(e){return null!=e&&o(e.length)&&!r(e)}},96361:(e,t,n)=>{var r=n(16913),o=n(22761);e.exports=function(e){return!0===e||!1===e||o(e)&&"[object Boolean]"==r(e)}},44543:(e,t,n)=>{e=n.nmd(e);var r=n(56552),o=n(60014),a=t&&!t.nodeType&&t,i=a&&e&&!e.nodeType&&e,s=i&&i.exports===a?r.Buffer:void 0,l=(s?s.isBuffer:void 0)||o;e.exports=l},19853:(e,t,n)=>{var r=n(26989);e.exports=function(e,t){return r(e,t)}},11629:(e,t,n)=>{var r=n(16913),o=n(46686);e.exports=function(e){if(!o(e))return!1;var t=r(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}},56173:e=>{e.exports=function(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}},35268:(e,t,n)=>{var r=n(79160);e.exports=function(e){return r(e)&&e!=+e}},79686:e=>{e.exports=function(e){return null==e}},79160:(e,t,n)=>{var r=n(16913),o=n(22761);e.exports=function(e){return"number"==typeof e||o(e)&&"[object Number]"==r(e)}},46686:e=>{e.exports=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}},22761:e=>{e.exports=function(e){return null!=e&&"object"==typeof e}},12322:(e,t,n)=>{var r=n(16913),o=n(85990),a=n(22761),i=Function.prototype,s=Object.prototype,l=i.toString,c=s.hasOwnProperty,u=l.call(Object);e.exports=function(e){if(!a(e)||"[object Object]"!=r(e))return!1;var t=o(e);if(null===t)return!0;var n=c.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==u}},90620:(e,t,n)=>{var r=n(16913),o=n(54052),a=n(22761);e.exports=function(e){return"string"==typeof e||!o(e)&&a(e)&&"[object String]"==r(e)}},19841:(e,t,n)=>{var r=n(16913),o=n(22761);e.exports=function(e){return"symbol"==typeof e||o(e)&&"[object Symbol]"==r(e)}},51268:(e,t,n)=>{var r=n(35428),o=n(47574),a=n(56832),i=a&&a.isTypedArray,s=i?o(i):r;e.exports=s},28673:(e,t,n)=>{var r=n(73204),o=n(83713),a=n(6571);e.exports=function(e){return a(e)?r(e):o(e)}},74065:e=>{e.exports=function(e){var t=null==e?0:e.length;return t?e[t-1]:void 0}},33411:(e,t,n)=>{var r=n(50149),o=n(9096),a=n(38883),i=n(54052);e.exports=function(e,t){return(i(e)?r:a)(e,o(t,3))}},91733:(e,t,n)=>{var r=n(71775),o=n(94664),a=n(9096);e.exports=function(e,t){var n={};return t=a(t,3),o(e,(function(e,o,a){r(n,o,t(e,o,a))})),n}},50539:(e,t,n)=>{var r=n(79742),o=n(97498),a=n(33279);e.exports=function(e){return e&&e.length?r(e,a,o):void 0}},22794:(e,t,n)=>{var r=n(79742),o=n(97498),a=n(9096);e.exports=function(e,t){return e&&e.length?r(e,a(t,2),o):void 0}},15797:(e,t,n)=>{var r=n(64816);function o(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new TypeError("Expected a function");var n=function(){var r=arguments,o=t?t.apply(this,r):r[0],a=n.cache;if(a.has(o))return a.get(o);var i=e.apply(this,r);return n.cache=a.set(o,i)||a,i};return n.cache=new(o.Cache||r),n}o.Cache=r,e.exports=o},76745:(e,t,n)=>{var r=n(79742),o=n(50061),a=n(33279);e.exports=function(e){return e&&e.length?r(e,a,o):void 0}},59364:(e,t,n)=>{var r=n(79742),o=n(9096),a=n(50061);e.exports=function(e,t){return e&&e.length?r(e,o(t,2),a):void 0}},75713:e=>{e.exports=function(){}},4757:(e,t,n)=>{var r=n(56552);e.exports=function(){return r.Date.now()}},63932:(e,t,n)=>{var r=n(10396),o=n(52866),a=n(62597),i=n(70914);e.exports=function(e){return a(e)?r(i(e)):o(e)}},96604:(e,t,n)=>{var r=n(3331)();e.exports=r},24597:(e,t,n)=>{var r=n(52587),o=n(9096),a=n(22165),i=n(54052),s=n(60929);e.exports=function(e,t,n){var l=i(e)?r:a;return n&&s(e,t,n)&&(t=void 0),l(e,o(t,3))}},87424:(e,t,n)=>{var r=n(80755),o=n(12536),a=n(55647),i=n(60929),s=a((function(e,t){if(null==e)return[];var n=t.length;return n>1&&i(e,t[0],t[1])?t=[]:n>2&&i(t[0],t[1],t[2])&&(t=[t[0]]),o(e,r(t,1),[])}));e.exports=s},57828:e=>{e.exports=function(){return[]}},60014:e=>{e.exports=function(){return!1}},79889:(e,t,n)=>{var r=n(93950),o=n(46686);e.exports=function(e,t,n){var a=!0,i=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return o(n)&&(a="leading"in n?!!n.leading:a,i="trailing"in n?!!n.trailing:i),r(e,t,{leading:a,maxWait:t,trailing:i})}},37303:(e,t,n)=>{var r=n(40801),o=1/0;e.exports=function(e){return e?(e=r(e))===o||e===-1/0?17976931348623157e292*(e<0?-1:1):e===e?e:0:0===e?e:0}},99140:(e,t,n)=>{var r=n(37303);e.exports=function(e){var t=r(e),n=t%1;return t===t?n?t-n:t:0}},40801:(e,t,n)=>{var r=n(61141),o=n(46686),a=n(19841),i=/^[-+]0x[0-9a-f]+$/i,s=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;e.exports=function(e){if("number"==typeof e)return e;if(a(e))return NaN;if(o(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=o(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=r(e);var n=s.test(e);return n||l.test(e)?c(e.slice(2),n?2:8):i.test(e)?NaN:+e}},41069:(e,t,n)=>{var r=n(38541);e.exports=function(e){return null==e?"":r(e)}},20977:(e,t,n)=>{var r=n(9096),o=n(64416);e.exports=function(e,t){return e&&e.length?o(e,r(t,2)):[]}},643:(e,t,n)=>{var r=n(35295)("toUpperCase");e.exports=r},89923:(e,t,n)=>{"use strict";n.d(t,{$2v:()=>ha,$5j:()=>sL,$R7:()=>Ga,$iK:()=>LM,$nd:()=>hr,$rg:()=>La,$vN:()=>vs,BFY:()=>hL,BIu:()=>up,BK0:()=>ks,BYM:()=>xT,BlH:()=>Pa,C1y:()=>dl,CB9:()=>Di,CTc:()=>ls,Clq:()=>Zs,D0K:()=>ps,DGR:()=>qa,DUd:()=>KM,Dk$:()=>us,DtA:()=>_s,DzZ:()=>vl,EGL:()=>Yd,EO4:()=>Vi,ESy:()=>Ya,EmB:()=>jp,EsX:()=>MM,Exy:()=>eC,F7$:()=>Ai,F7U:()=>Ba,FRZ:()=>nL,FUY:()=>Hs,FZk:()=>$s,Fjq:()=>Zi,Fwq:()=>hs,GQ2:()=>sa,GTC:()=>Gr,Gg5:()=>zs,HKb:()=>ya,Hbc:()=>ep,Hch:()=>ys,Hjg:()=>bL,IN:()=>Oa,ITz:()=>eL,J2s:()=>Ea,J2w:()=>bh,J3j:()=>ap,JHI:()=>Us,JMY:()=>is,JMb:()=>Fa,JUN:()=>Va,JrA:()=>Vs,K0:()=>zl,K8y:()=>Zo,KKE:()=>OM,KLX:()=>Ka,KPq:()=>si,Kiw:()=>Da,KlI:()=>cL,Kmb:()=>Hi,LPG:()=>Cl,M3H:()=>li,MZJ:()=>hl,Mxu:()=>np,NBP:()=>Xo,NTw:()=>Wa,Nmx:()=>ss,No_:()=>ja,ODz:()=>Es,OFF:()=>Ns,Owo:()=>za,P1T:()=>js,P3Z:()=>Ss,PI5:()=>Mi,PPm:()=>GM,PcO:()=>WM,Pq3:()=>ml,QrX:()=>ea,QvW:()=>QM,R$W:()=>Ji,REV:()=>di,RJ2:()=>Ni,RYV:()=>El,Sc0:()=>Fl,Sdx:()=>_a,Smc:()=>mp,SxS:()=>zT,Sxe:()=>Ki,TFC:()=>Ms,TdU:()=>ei,Tir:()=>bl,Ubg:()=>Yi,UfX:()=>ca,Uh:()=>Ia,Uom:()=>ZM,UtR:()=>ti,V7x:()=>Rl,VDx:()=>Oi,VJE:()=>es,VSs:()=>rL,Vep:()=>AM,Vey:()=>kp,VgG:()=>Fi,W1t:()=>fh,W2Y:()=>ns,WBh:()=>ts,WC:()=>ri,WIv:()=>aa,WJF:()=>Wi,WN0:()=>Qa,WSU:()=>qi,WXN:()=>da,Wei:()=>iC,Wh8:()=>Ja,XAi:()=>ms,XC7:()=>wl,XIK:()=>dL,XWb:()=>ga,XjC:()=>kM,Xk0:()=>xM,YGH:()=>Xs,YI8:()=>IM,YJK:()=>XM,YMI:()=>FM,YPx:()=>gi,YXz:()=>Li,YkU:()=>os,Z3O:()=>xs,ZZX:()=>Ei,Zes:()=>as,ZfC:()=>Ys,Zui:()=>DM,_0O:()=>Bs,_FR:()=>pa,_kf:()=>sl,_tF:()=>Ta,_xt:()=>Qd,aHM:()=>Po,aJN:()=>xi,aL$:()=>ma,aaC:()=>$o,azJ:()=>Ad,b1c:()=>ll,bM2:()=>JM,bQt:()=>Zd,b_$:()=>$a,bdq:()=>_M,bqg:()=>ui,brV:()=>Qi,c2u:()=>Si,cGQ:()=>Ds,cJw:()=>ia,cNv:()=>HT,cl_:()=>lp,cpY:()=>NM,cyn:()=>xa,d7y:()=>ka,dLE:()=>zi,dOG:()=>Cp,dwU:()=>ba,e8j:()=>wM,eXQ:()=>Yo,ehx:()=>va,evq:()=>As,fAn:()=>Bi,fJb:()=>ci,fNY:()=>Jo,fRK:()=>Za,fYD:()=>Ks,fiF:()=>gl,flY:()=>Ca,fmr:()=>Gi,g7G:()=>Xa,gn6:()=>ws,gwF:()=>pi,hFj:()=>Hp,hQD:()=>vi,hwo:()=>ni,iv:()=>oa,j1U:()=>gs,j6H:()=>_i,jCy:()=>lL,jG:()=>Ha,jJ3:()=>Sa,jT8:()=>JT,j_m:()=>aL,jcB:()=>Na,jm5:()=>hi,kCK:()=>gp,kH5:()=>dr,kQt:()=>Aa,ke_:()=>BM,kez:()=>iL,kfP:()=>UM,l1Y:()=>Ll,l6P:()=>Mp,l7M:()=>jM,lD6:()=>oi,lVp:()=>Xd,lcx:()=>yp,lgW:()=>qs,liv:()=>na,loI:()=>pl,lwR:()=>ji,mSu:()=>Sl,mZW:()=>MT,m_M:()=>Wo,mo0:()=>Fs,mzI:()=>Qo,n$X:()=>wi,nA6:()=>fL,nD3:()=>YT,nDF:()=>Pi,nLN:()=>$M,nTF:()=>SM,nag:()=>ta,ndn:()=>Ao,ngX:()=>wp,nhF:()=>PM,nhX:()=>Cs,nmC:()=>i,nwl:()=>rs,o4l:()=>$i,oPe:()=>zM,oVU:()=>ii,osr:()=>Xi,pHQ:()=>fa,pj3:()=>bs,qI7:()=>Os,qM2:()=>VM,qUP:()=>ra,qYV:()=>Ps,qb_:()=>qT,qm4:()=>fl,rBG:()=>yl,rXL:()=>Ls,rgY:()=>Is,rod:()=>ds,s3U:()=>ki,s5I:()=>yi,sJx:()=>CM,sQ4:()=>oC,sjq:()=>Js,t1M:()=>la,t53:()=>NT,t6I:()=>fi,tUM:()=>Sh,tec:()=>cs,uFi:()=>Ci,uMc:()=>ai,uYH:()=>ua,ucK:()=>Ii,uwE:()=>Ws,v5p:()=>RM,vhL:()=>Ko,vmc:()=>Tl,vwO:()=>OT,wD7:()=>Ti,wKj:()=>Ri,wNL:()=>Ra,wPu:()=>YM,w_U:()=>TM,wb9:()=>Ma,wm6:()=>Ge,wql:()=>HM,xA9:()=>qr,xLb:()=>Ts,xTG:()=>wa,xWY:()=>Ui,xhy:()=>Ua,xul:()=>Fr,y$O:()=>mi,yEV:()=>tL,yTC:()=>qM,z21:()=>FT,z6M:()=>Bp,z8D:()=>Rs,z9t:()=>oL,zEc:()=>bi,zYs:()=>Uo});var r=n(65043),o=n(94574),a=n(97950),i={xs:0,sm:576,md:768,lg:992,xl:1200},s=["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],l=function(e){if("auto"===e||"boolean"==typeof e&&e)return"100%";if(!1===e)return"initial";var t=Math.floor(e);return t>12?(t=12,console.warn("Grid fraction cannot be greater than 12")):t<1&&(t=1,console.warn("Grid fraction cannot be smaller than 1")),"".concat(100*t/12,"%")},c="#fff",u="#000",d="#2781B0",p="#E2E2E2",h="#FBFAFA",m="#5B5C5C",f="#E6EBEB",g="#E6EAEB",b="#D5D7D8",y="#E7EAEB",v="#07193E",E="#0D2453",w="#05132F",S="#C51B3F",A="#C83B51",_="#D5D7D7",T="#B4B4B4",C="#000110",x="#E5E5E5",I="#07193E",O="#4CCB92",k="#F8F8F8",N="#E6EBEB",R="#969FA8",M="#5E5E5E",L="#F1F4F4",D="#858585",P="#005C7E",B="#1B779A",F="#07506A",j="#FFBD62",z="linear-gradient(90deg, rgba(2,49,80,1) 0%, rgba(0,39,77,1) 50%, rgba(11,34,69,1) 100%)",U="#8399AB",H="#0A1C3C",G="linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(20,88,122,1) 100%)",V="#CADAE8",q="#0F446C",W="#E8E8E8",Z="#06274E",$="#052148",Y="#EAEAEA",K="#6e7781",X="#116329",J="#8250df",Q="#8c959f",ee="#0550ae",te="#0a3069",ne="#cf222e",re="#24292f",oe="#ffaa00",ae="#2781B0",ie="#87888d",se="#181F2A",le="#283140",ce="#C4C9D0",ue="#4B586A",de="#8E98A9",pe="#283140",he="#A2ADC0",me="#494A4D",fe="#4B586A",ge="#707988",be="#333D4B",ye="#E6ECEC",ve="#B5BCBD",Ee="#EFEDED",we="#C3CBCB",Se="#FF3958",Ae="#616A7C",_e="#3A3F4A",Te="#A3B7D9",Ce="#545D6A",xe="#191E28",Ie="#E9F5F6",Oe="#58FAB1",ke="#A2ADC0",Ne="#A2ADC0",Re="#494A4C",Me="#1B637E",Le="#297E9D",De="#145B76",Pe="#fCCE9D",Be="#242D3E",Fe="#8E98A9",je="#323C4E",ze="#151E2E",Ue={bgColor:c,fontColor:u,borderColor:p,bulletColor:d,logoColor:S,logoLabelColor:"#000000",logoLabelInverse:"#fff",loaderColor:"#113053",linkColor:ae,boxBackground:h,mutedText:ie,secondaryText:m,signalColors:{main:v,danger:S,good:O,info:d,warning:j,disabled:f,dark:u,clear:c},buttons:{regular:{enabled:{border:m,text:m,background:"transparent",iconColor:m},disabled:{border:T,text:T,background:_,iconColor:T},hover:{border:m,text:m,background:g,iconColor:m},pressed:{border:m,text:m,background:b,iconColor:m}},callAction:{enabled:{border:v,text:c,background:v,iconColor:c},disabled:{border:y,text:m,background:y,iconColor:m},hover:{border:E,text:c,background:E,iconColor:c},pressed:{border:w,text:c,background:w,iconColor:c}},secondary:{enabled:{border:S,text:S,background:"transparent",iconColor:S},disabled:{border:T,text:T,background:_,iconColor:T},hover:{border:A,text:S,background:"#FCF2F4",iconColor:S},pressed:{border:S,text:c,background:S,iconColor:c}},text:{enabled:{border:"transparent",text:m,background:"transparent",iconColor:m},disabled:{border:"transparent",text:T,background:"transparent",iconColor:T},hover:{border:g,text:m,background:g,iconColor:m},pressed:{border:b,text:m,background:b,iconColor:m}},subAction:{enabled:{border:P,text:c,background:P,iconColor:c},disabled:{border:y,text:m,background:y,iconColor:m},hover:{border:B,text:c,background:B,iconColor:c},pressed:{border:F,text:c,background:F,iconColor:c}}},login:{formBG:"#fff",bgFilter:"none",promoBG:C,promoHeader:c,promoText:"#A6DFEF",footerElements:d,footerDivider:"#F2F2F2"},pageHeader:{background:"#FFFFFF",border:x,color:"#000000"},tooltip:{background:"#737373",color:"#FFFFFF"},commonInput:{labelColor:I},checkbox:{checkBoxBorder:"#c3c3c3",checkBoxColor:O,disabledBorder:_,disabledColor:_},iconButton:{buttonBG:k,activeBG:"#5B5C5C80",hoverBG:"#EFEFEF",disabledBG:N,color:"#7C7C7C"},dataTable:{border:p,disabledBorder:f,disabledBG:_,selected:v,deletedDisabled:S,hoverColor:g},backLink:{color:"#073052",arrow:"#081C42",hover:"#eaedee"},inputBox:{border:p,hoverBorder:C,color:v,backgroundColor:c,error:S,placeholderColor:D,disabledBorder:T,disabledBackground:f,disabledPlaceholder:f,disabledText:T},breadcrumbs:{border:p,linksColor:R,textColor:"#969FA8",backgroundColor:"#FCFCFD",backButton:{border:"#EAEDEE",backgroundColor:c}},actionsList:{containerBorderColor:"#F1F1F1",backgroundColor:k,disabledOptionsTextColor:"#EBEBEB",optionsBorder:x,optionsHoverTextColor:u,optionsTextColor:M,titleColor:u},screenTitle:{border:p,subtitleColor:R,iconColor:v},modalBox:{closeColor:"#757575",closeHoverBG:"#EAEAEA",closeHoverColor:u,containerColor:c,overlayColor:"#00000050",titleColor:u,iconColor:{default:v,accept:O,delete:S}},switchButton:{bulletBGColor:L,bulletBorderColor:c,disabledBulletBGColor:g,disabledBulletBorderColor:L,offLabelColor:T,onLabelColor:v,onBackgroundColor:O,switchBackground:g,disabledBackground:g,disabledOnBackground:"#a9d3c5"},dropdownSelector:{hoverText:u,backgroundColor:c,hoverBG:g,selectedBGColor:b,selectedTextColor:u,optionTextColor:u,disabledText:f},readBox:{borderColor:x,backgroundColor:h,textColor:"#696969"},menu:{vertical:{background:z,textColor:V,hoverSelectedIconBorder:c,iconBorderColor:$,iconBGColor:Z,dropArrowColor:U,dropArrowBackground:H,hoverSelectedBackground:G,hoverSelectedColor:c,notificationColor:S,sectionDividerColor:q,sectionLabelColor:c,menuCollapseColor:W},horizontal:{menuHeaderBackground:z,textColor:M,hoverSelectedIconBorder:u,iconBorderColor:$,iconBGColor:h,dropArrowColor:U,dropArrowBackground:h,hoverSelectedBackground:v,hoverSelectedColor:u,notificationColor:A,sectionDividerColor:q,barBackground:h,dropBackground:h,dropHoverSelectedColor:c,noOptionsBar:d}},tabs:{vertical:{buttons:{hoverLabelColor:v,hoverBackground:"transparent",backgroundColor:k,labelColor:m,disabledBackgroundColor:_,disabledColor:T,selectedBackground:x,selectedLabelColor:v},backgroundColor:k,borders:Y},horizontal:{buttons:{hoverLabelColor:v,hoverBackground:"transparent",backgroundColor:"transparent",labelColor:m,disabledBackgroundColor:"transparent",disabledColor:T,selectedBackground:"transparent",selectedLabelColor:v},backgroundColor:h,selectedIndicatorColor:v}},codeEditor:{backgroundColor:c,textColor:u,helpToolsBarBG:h,comment:K,entityTag:X,entity:J,sublimelinterGutterMark:Q,constant:ee,string:te,keyword:ne,markupBold:re,codeEditorRegexp:oe},tag:{alert:{background:S,label:c,deleteColor:c},default:{background:v,label:c,deleteColor:c},secondary:{background:P,label:c,deleteColor:c},warn:{background:j,label:u,deleteColor:u},ok:{background:O,label:u,deleteColor:u},grey:{background:y,label:u,deleteColor:u}},snackbar:{error:{backgroundColor:S,labelColor:c},default:{backgroundColor:v,labelColor:c},success:{backgroundColor:O,labelColor:c},warning:{backgroundColor:j,labelColor:u}},informativeMessage:{error:{backgroundColor:S,borderColor:S,textColor:c},default:{backgroundColor:v,borderColor:v,textColor:c},success:{backgroundColor:O,borderColor:O,textColor:c},warning:{backgroundColor:j,borderColor:j,textColor:u}},badge:{alert:{backgroundColor:S,textColor:c},default:{backgroundColor:v,textColor:c},secondary:{backgroundColor:P,textColor:c},warn:{backgroundColor:j,textColor:u},ok:{backgroundColor:O,textColor:u},grey:{backgroundColor:y,textColor:u}},wizard:{stepsBackground:h,vertical:{stepLabelColor:u,selectedStepBG:p,selectedStepLabelColor:u,disabledLabelColor:T},modal:{stepLabelColor:u,selectedStepBG:p,selectedStepLabelColor:u,disabledLabelColor:f}},slider:{bulletBG:d,railBG:p,disabledRail:"#dbdbdb",disabledBullet:T}},He={bgColor:se,fontColor:ce,borderColor:de,bulletColor:ue,logoColor:Se,logoLabelColor:Te,logoLabelInverse:"#fff",loaderColor:"#8E98A9",linkColor:"#85B3EE",boxBackground:pe,mutedText:"#767a80",secondaryText:he,signalColors:{main:he,danger:Se,good:Oe,info:Le,warning:Pe,disabled:me,dark:se,clear:ye},buttons:{regular:{enabled:{border:he,text:he,background:"transparent",iconColor:he},disabled:{border:_e,text:_e,background:Ae,iconColor:_e},hover:{border:he,text:he,background:fe,iconColor:he},pressed:{border:ge,text:ge,background:be,iconColor:ge}},callAction:{enabled:{border:ye,text:se,background:ye,iconColor:se},disabled:{border:ve,text:se,background:ve,iconColor:se},hover:{border:Ee,text:se,background:Ee,iconColor:se},pressed:{border:we,text:se,background:we,iconColor:se}},secondary:{enabled:{border:Se,text:Se,background:"transparent",iconColor:Se},disabled:{border:_e,text:_e,background:Ae,iconColor:_e},hover:{border:Se,text:Se,background:"#4B586A",iconColor:Se},pressed:{border:Se,text:se,background:Se,iconColor:se}},text:{enabled:{border:"transparent",text:he,background:"transparent",iconColor:he},disabled:{border:"transparent",text:_e,background:"transparent",iconColor:_e},hover:{border:fe,text:he,background:fe,iconColor:he},pressed:{border:be,text:ge,background:be,iconColor:ge}},subAction:{enabled:{border:Me,text:ye,background:Me,iconColor:ye},disabled:{border:ve,text:se,background:ve,iconColor:se},hover:{border:Le,text:ye,background:Le,iconColor:ye},pressed:{border:De,text:ye,background:De,iconColor:ye}}},login:{formBG:le,promoBG:"#000106",bgFilter:"grayscale(50%)",promoHeader:Te,promoText:Te,footerElements:"#85B3EE",footerDivider:Ce},pageHeader:{background:"#212936",border:xe,color:Ie},tooltip:{background:"#8E98A9",color:"#161C24"},commonInput:{labelColor:"#A2ADC0"},checkbox:{checkBoxBorder:"#8E98A9",checkBoxColor:Oe,disabledBorder:_e,disabledColor:Ae},iconButton:{buttonBG:ke,activeBG:"#707988",hoverBG:"#4B586A",disabledBG:"#494A4D",color:"#283140"},dataTable:{border:de,disabledBorder:me,disabledBG:Ae,selected:ye,deletedDisabled:Se,hoverColor:fe},backLink:{color:"#8E98A9",arrow:Ne,hover:"#3A3F4A"},inputBox:{border:de,hoverBorder:ye,color:he,backgroundColor:se,error:Se,placeholderColor:"#494A4D",disabledBorder:me,disabledBackground:_e,disabledPlaceholder:me,disabledText:Ae},breadcrumbs:{border:de,linksColor:he,textColor:he,backgroundColor:le,backButton:{border:de,backgroundColor:le}},actionsList:{containerBorderColor:ue,backgroundColor:le,disabledOptionsTextColor:me,optionsBorder:ue,optionsHoverTextColor:Ee,optionsTextColor:ce,titleColor:ce},screenTitle:{border:de,subtitleColor:fe,iconColor:he},modalBox:{closeColor:"#4B586A",closeHoverBG:"#4B586A",closeHoverColor:ce,containerColor:pe,overlayColor:"#00010650",titleColor:ce,iconColor:{default:he,accept:Oe,delete:Se}},switchButton:{bulletBGColor:"#D5DEEF",bulletBorderColor:ye,disabledBulletBGColor:"#4B586B",disabledBulletBorderColor:Ne,offLabelColor:fe,onLabelColor:Ee,onBackgroundColor:Oe,switchBackground:Ne,disabledBackground:Re,disabledOnBackground:"#a2d7c3"},dropdownSelector:{hoverText:se,backgroundColor:le,hoverBG:he,selectedBGColor:ue,selectedTextColor:ye,optionTextColor:ce,disabledText:me},readBox:{borderColor:xe,backgroundColor:pe,textColor:"#707988"},menu:{vertical:{background:Be,textColor:"#8E98A9",hoverSelectedIconBorder:"#0E1119",iconBorderColor:ze,iconBGColor:"#161F30",dropArrowColor:Fe,dropArrowBackground:"#1C2436",hoverSelectedBackground:"linear-gradient(90deg, rgba(0,0,0,0) 0%, #1B212C 100%)",hoverSelectedColor:Ie,notificationColor:Se,sectionDividerColor:je,sectionLabelColor:Ie,menuCollapseColor:"#E8E8E8"},horizontal:{menuHeaderBackground:Be,textColor:ce,hoverSelectedIconBorder:ce,iconBorderColor:ze,iconBGColor:pe,dropArrowColor:Fe,dropArrowBackground:pe,hoverSelectedBackground:he,hoverSelectedColor:Ie,notificationColor:Se,sectionDividerColor:je,barBackground:pe,dropBackground:pe,dropHoverSelectedColor:se,noOptionsBar:he}},tabs:{vertical:{buttons:{hoverLabelColor:ye,hoverBackground:"transparent",backgroundColor:pe,labelColor:ce,disabledBackgroundColor:Ae,disabledColor:_e,selectedBackground:ke,selectedLabelColor:se},backgroundColor:pe,borders:de},horizontal:{buttons:{hoverLabelColor:ye,hoverBackground:"transparent",backgroundColor:"transparent",labelColor:ce,disabledBackgroundColor:"transparent",disabledColor:_e,selectedBackground:"transparent",selectedLabelColor:ye},backgroundColor:pe,selectedIndicatorColor:ye}},codeEditor:{backgroundColor:pe,textColor:ye,helpToolsBarBG:pe,comment:"#8b949e",entityTag:"#7ee787",entity:"#d2a8ff",sublimelinterGutterMark:"#8E98A9",constant:"#79c0ff",string:"#a5d6ff",keyword:"#ff7b72",markupBold:"#c9d1d9",codeEditorRegexp:"#ffd582"},tag:{alert:{background:Se,label:ye,deleteColor:ye},default:{background:he,label:se,deleteColor:se},secondary:{background:Me,label:ye,deleteColor:ye},warn:{background:Pe,label:se,deleteColor:se},ok:{background:Oe,label:se,deleteColor:se},grey:{background:Ae,label:ye,deleteColor:ye}},snackbar:{error:{backgroundColor:Se,labelColor:ye},default:{backgroundColor:he,labelColor:se},success:{backgroundColor:Oe,labelColor:se},warning:{backgroundColor:Pe,labelColor:se}},informativeMessage:{error:{backgroundColor:Se,borderColor:Se,textColor:ye},default:{backgroundColor:he,borderColor:he,textColor:se},success:{backgroundColor:Oe,borderColor:Oe,textColor:se},warning:{backgroundColor:Pe,borderColor:Pe,textColor:se}},badge:{alert:{backgroundColor:Se,textColor:ye},default:{backgroundColor:he,textColor:se},secondary:{backgroundColor:Me,textColor:ye},warn:{backgroundColor:Pe,textColor:se},ok:{backgroundColor:Oe,textColor:se},grey:{backgroundColor:Ae,textColor:ye}},wizard:{stepsBackground:pe,vertical:{stepLabelColor:ce,selectedStepBG:de,selectedStepLabelColor:se,disabledLabelColor:me},modal:{stepLabelColor:ce,selectedStepBG:de,selectedStepLabelColor:ye,disabledLabelColor:me}},slider:{bulletBG:ce,railBG:Ce,disabledRail:Re,disabledBullet:"#939393"}},Ge=function(e){var t=e.darkMode,n=void 0!==t&&t,a=e.children,i=e.customTheme,s=n?He:Ue;return i&&(s=i),r.createElement(o.NP,{theme:s},a)},Ve=function(){return Ve=Object.assign||function(e){for(var t,n=1,r=arguments.length;n-1},cn=function(e,t){var n=this.__data__,r=rn(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this};function un(e){var t=-1,n=null==e?0:e.length;for(this.clear();++t svg":{fill:Wn(n,"buttons.".concat(p,".enabled.text"),"#000"),color:Wn(n,"buttons.".concat(p,".enabled.text"),"#000"),width:14,height:14}},"&:disabled":{cursor:"not-allowed",backgroundColor:Wn(n,"buttons.".concat(p,".disabled.background"),"#fff"),borderColor:Wn(n,"buttons.".concat(p,".disabled.border"),"#000"),borderWeight:1,borderStyle:"solid",color:Wn(n,"buttons.".concat(p,".disabled.text"),"#000"),"& .buttonIcon > svg":{fill:Wn(n,"buttons.".concat(p,".disabled.text"),"#000"),color:Wn(n,"buttons.".concat(p,".disabled.text"),"#000")}},"&:hover:not(:disabled)":{backgroundColor:Wn(n,"buttons.".concat(p,".hover.background"),"#fff"),borderColor:Wn(n,"buttons.".concat(p,".hover.border"),"#000"),color:Wn(n,"buttons.".concat(p,".hover.text"),"#000"),"& .buttonIcon > svg":{fill:Wn(n,"buttons.".concat(p,".hover.text"),"#000"),color:Wn(n,"buttons.".concat(p,".hover.text"),"#000")}},"&:active:not(:disabled)":{backgroundColor:Wn(n,"buttons.".concat(p,".pressed.background"),"#fff"),borderColor:Wn(n,"buttons.".concat(p,".pressed.border"),"#000"),color:Wn(n,"buttons.".concat(p,".pressed.text"),"#000"),"& .buttonIcon > svg":{fill:Wn(n,"buttons.".concat(p,".pressed.text"),"#000"),color:Wn(n,"buttons.".concat(p,".pressed.text"),"#000")}}},m),d)})),hr=function(e){var t=e.label,n=e.variant,o=void 0===n?"regular":n,a=e.icon,i=e.iconLocation,s=void 0===i?"end":i,l=e.onClick,c=e.disabled,u=e.fullWidth,d=e.collapseOnSmall,p=void 0===d||d,h=e.children,m=e.className,f=qe(e,["label","variant","icon","iconLocation","onClick","disabled","fullWidth","collapseOnSmall","children","className"]),g=null;return a&&(g=r.createElement("span",{className:"buttonIcon"},a)),r.createElement(pr,Ve({onClick:l,disabled:c||!1,variant:o||"regular",iconLocation:s||"end",label:t||"",fullWidth:u||!1,collapseOnSmall:!!p,icon:g,parentChildren:h||null,className:"".concat(m||""," button-").concat(o)},f),r.createElement(r.Fragment,null,a&&"start"===s&&g,r.createElement("span",{className:"button-label"},h,h&&t?" ":"",t),a&&"end"===s&&g))},mr=o.Ay.svg((function(e){var t=Wn(e,"theme.logoLabelColor","#000");return e.inverse&&(t=Wn(e,"theme.logoLabelInverse","#fff")),{"& .minioSection":{fill:Wn(e,"theme.logoColor","#C51C3F")},"& .minioApplicationName":{fill:t}}})),fr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 51",inverse:t,onClick:n},r.createElement("g",{transform:"translate(-31.65 -18.133)"},r.createElement("g",{transform:"translate(-995 -63.754)"},r.createElement("g",{transform:"translate(1025.5 81.887)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(2.003)"},r.createElement("g",{transform:"translate(0 0.129)"},r.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),r.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),r.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"})))))),r.createElement("path",{d:"M5.344-6a1.226,1.226,0,0,0-.57-.922A2.188,2.188,0,0,0,3.547-7.25a2.317,2.317,0,0,0-.928.172A1.468,1.468,0,0,0,2-6.605a1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.221,7.221,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,6.053-1a2.329,2.329,0,0,1-.984.832A3.618,3.618,0,0,1,3.5.141,3.653,3.653,0,0,1,2.014-.137,2.355,2.355,0,0,1,1.029-.91a2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438A2.7,2.7,0,0,0,3.5-.734a2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273L2.875-3.8a3.666,3.666,0,0,1-1.484-.77A1.69,1.69,0,0,1,.844-5.875a1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,6.281-6Zm3.3-1.141V-8h6v.859H12.131V0h-.969V-7.141ZM16.638,0H15.622l2.938-8h1L22.5,0H21.481L19.091-6.734h-.062Zm.375-3.125h4.094v.859H17.013ZM31.191-8V0h-.937L25.894-6.281h-.078V0h-.969V-8h.938l4.375,6.3h.078V-8ZM36.7,0H34.228V-8h2.578a3.918,3.918,0,0,1,1.992.479,3.16,3.16,0,0,1,1.27,1.371,4.771,4.771,0,0,1,.441,2.135,4.8,4.8,0,0,1-.445,2.15,3.159,3.159,0,0,1-1.3,1.383A4.14,4.14,0,0,1,36.7,0ZM35.2-.859h1.438a3.209,3.209,0,0,0,1.645-.383,2.359,2.359,0,0,0,.973-1.09,4.054,4.054,0,0,0,.32-1.684,4.035,4.035,0,0,0-.316-1.67,2.347,2.347,0,0,0-.945-1.078,3,3,0,0,0-1.566-.377H35.2ZM43.188,0H42.172l2.938-8h1l2.938,8H48.031L45.641-6.734h-.062Zm.375-3.125h4.094v.859H43.563ZM51.4,0V-8h2.7a3.277,3.277,0,0,1,1.539.318,2.054,2.054,0,0,1,.891.873,2.69,2.69,0,0,1,.289,1.262,2.643,2.643,0,0,1-.289,1.254,2.026,2.026,0,0,1-.887.857,3.3,3.3,0,0,1-1.527.311H51.928V-4h2.156a2.415,2.415,0,0,0,1.033-.187,1.194,1.194,0,0,0,.57-.533,1.787,1.787,0,0,0,.178-.826,1.856,1.856,0,0,0-.18-.84,1.235,1.235,0,0,0-.574-.557,2.345,2.345,0,0,0-1.043-.2h-1.7V0Zm3.766-3.594L57.131,0H56.006L54.069-3.594ZM62,0H59.528V-8h2.578a3.918,3.918,0,0,1,1.992.479,3.16,3.16,0,0,1,1.27,1.371,4.771,4.771,0,0,1,.441,2.135,4.8,4.8,0,0,1-.445,2.15,3.159,3.159,0,0,1-1.3,1.383A4.14,4.14,0,0,1,62,0ZM60.5-.859h1.438a3.209,3.209,0,0,0,1.645-.383,2.359,2.359,0,0,0,.973-1.09,4.055,4.055,0,0,0,.32-1.684,4.035,4.035,0,0,0-.316-1.67,2.347,2.347,0,0,0-.945-1.078,3,3,0,0,0-1.566-.377H60.5ZM72.728,0V-8H73.7V-.859h3.719V0Zm8.256-8V0h-.969V-8Zm9.475,2.5h-.969a2.034,2.034,0,0,0-.3-.734,2.072,2.072,0,0,0-.516-.533,2.24,2.24,0,0,0-.67-.326,2.668,2.668,0,0,0-.766-.109,2.431,2.431,0,0,0-1.314.367,2.536,2.536,0,0,0-.934,1.082A4.007,4.007,0,0,0,84.647-4a4.007,4.007,0,0,0,.346,1.754,2.536,2.536,0,0,0,.934,1.082A2.431,2.431,0,0,0,87.241-.8a2.668,2.668,0,0,0,.766-.109,2.24,2.24,0,0,0,.67-.326,2.06,2.06,0,0,0,.516-.535,2.053,2.053,0,0,0,.3-.732h.969a3.227,3.227,0,0,1-.4,1.1,2.973,2.973,0,0,1-.719.822,3.129,3.129,0,0,1-.963.514,3.614,3.614,0,0,1-1.139.176,3.353,3.353,0,0,1-1.82-.5,3.431,3.431,0,0,1-1.254-1.422A4.874,4.874,0,0,1,83.709-4a4.874,4.874,0,0,1,.457-2.187A3.431,3.431,0,0,1,85.42-7.609a3.353,3.353,0,0,1,1.82-.5,3.614,3.614,0,0,1,1.139.176,3.129,3.129,0,0,1,.963.514,2.984,2.984,0,0,1,.719.82A3.208,3.208,0,0,1,90.459-5.5ZM93.122,0V-8H97.95v.859H94.091v2.7H97.7v.859H94.091V-.859h3.922V0Zm14.022-8V0h-.937l-4.359-6.281h-.078V0H100.8V-8h.938l4.375,6.3h.078V-8Zm7.412,2a1.226,1.226,0,0,0-.57-.922,2.188,2.188,0,0,0-1.227-.328,2.317,2.317,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.22,7.22,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,115.265-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273l-.984-.281a3.666,3.666,0,0,1-1.484-.77,1.69,1.69,0,0,1-.547-1.309,1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,115.494-6ZM118.3,0V-8h4.828v.859h-3.859v2.7h3.609v.859h-3.609V-.859h3.922V0Z",transform:"translate(93 68)",className:"minioApplicationName"})))},gr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.45 55",inverse:t,onClick:n},r.createElement("g",{transform:"translate(-31.65 -18.133)"},r.createElement("g",{transform:"translate(-995 -63.754)"},r.createElement("g",{transform:"translate(1025.5 81.887)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(2.003)"},r.createElement("g",{transform:"translate(0 0.129)"},r.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),r.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),r.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"}))))),r.createElement("g",{transform:"translate(1168.671 120.754)"},r.createElement("g",{transform:"translate(-65 0)"},r.createElement("path",{d:"M106.959,1769.479l-3.274,14.286h31.641a2.814,2.814,0,0,1-2.121-1.012,2.15,2.15,0,0,1-.209-.356c-.038-.092-.073-.185-.109-.28a2.832,2.832,0,0,1-.115-.985,7.182,7.182,0,0,1,1.312-3.389,18.271,18.271,0,0,1,3.616-3.945c.343-.284.7-.566,1.068-.839.458-.337.92-.648,1.383-.938a17.592,17.592,0,0,1,4.907-2.2,18.957,18.957,0,0,0-4.651,2.351l-.171.118a20.8,20.8,0,0,0-2.389,1.924c-2.254,2.119-3.445,4.315-2.9,5.6a1.6,1.6,0,0,0,.138.253c.582.856,2.024,1,3.851.544.124-.031.249-.067.377-.1a14.878,14.878,0,0,0,1.842-.677c.153-.068.309-.137.465-.212l.047-.023c2.015-1,3.563-2.153,3.9-2.845a.43.43,0,0,0,.041-.379c-.239-.485-1.912-.157-3.939.72-.163.07-.328.143-.494.221.136-.125.277-.252.421-.377.23-.2.468-.391.721-.582a14.277,14.277,0,0,1,1.191-.812c1.847-1.394,2.781-2.712,2.586-3.2a.343.343,0,0,0-.235-.194,3.4,3.4,0,0,0-1.942.374,14.514,14.514,0,0,0-2.333,1.25l-.112.073-.021.012-.394.262.226-.415a7.126,7.126,0,0,1,1.565-1.853,11.116,11.116,0,0,1,1.686-1.206c.233-.136.465-.262.7-.376s.476-.22.709-.312a8.2,8.2,0,0,1,1.98-.649c-.051,0-1.677.175-1.677.175H106.959Zm25.5.021a19.123,19.123,0,0,0,.8,5.76q.165.612.362,1.242.123.388.253.765c-.051.075-.1.149-.15.224a7.909,7.909,0,0,0-1.339,3.277,20.169,20.169,0,0,1-.712-3.562q-.059-.546-.091-1.08a15.688,15.688,0,0,1,.877-6.625Zm-15.424,1.833h3.533a1.217,1.217,0,0,1,.691.168.394.394,0,0,1,.185.435l-.415,1.874h-1.227l.4-1.824h-3.071L116.03,1777l-.4,1.815H118.7l0-.011.615-2.778h-1.442l.138-.626h2.668l-.765,3.466a.488.488,0,0,1-.053.138.765.765,0,0,1-.327.294,1.621,1.621,0,0,1-.765.168h-3.477a1.214,1.214,0,0,1-.691-.168.388.388,0,0,1-.185-.432l1.533-6.928a.664.664,0,0,1,.377-.435c.008,0,.016,0,.024-.009a1.6,1.6,0,0,1,.688-.159Zm5.454,0h4.38a1.215,1.215,0,0,1,.688.168.392.392,0,0,1,.188.435l-.818,3.695a.663.663,0,0,1-.38.433,1.612,1.612,0,0,1-.762.171h-3.183l-.615,2.774-.1.456h-1.2l.091-.412Zm6.051,0h1.2l-1.359,6.14-.3,1.341h2.871c.03.22.065.437.1.65h-4.319l.341-1.542Zm-5,.653-.8,3.6h2.992l.794-3.6Zm-6.38,8.485h.035a.85.85,0,0,1,.359.07.428.428,0,0,1,.221.218.532.532,0,0,1,.029.315l-.009.044h-.344l0-.041a.271.271,0,0,0-.032-.188l-.015-.018a.2.2,0,0,0-.029-.024.426.426,0,0,0-.221-.047.511.511,0,0,0-.291.068.258.258,0,0,0-.118.153.113.113,0,0,0,.024.109l0,0a.81.81,0,0,0,.291.1,2,2,0,0,1,.38.12.448.448,0,0,1,.218.209.458.458,0,0,1,.024.291.665.665,0,0,1-.156.291.789.789,0,0,1-.3.212,1,1,0,0,1-.382.076.955.955,0,0,1-.412-.076.473.473,0,0,1-.238-.244.6.6,0,0,1-.029-.356l.009-.041h.338l0,.041a.373.373,0,0,0,.021.189.23.23,0,0,0,.118.112.543.543,0,0,0,.235.047.649.649,0,0,0,.224-.038.4.4,0,0,0,.156-.094.261.261,0,0,0,.068-.126.138.138,0,0,0-.009-.1.214.214,0,0,0-.109-.08l-.288-.085a1.274,1.274,0,0,1-.332-.118.411.411,0,0,1-.18-.194.418.418,0,0,1-.015-.256.622.622,0,0,1,.144-.28.72.72,0,0,1,.288-.2A1.01,1.01,0,0,1,117.169,1780.47Zm3.089.006c.019,0,.036,0,.056,0l.212.023.071.006-.1.262-.021.041-.162-.015a.186.186,0,0,0-.106.023l-.006.006-.012.012a.279.279,0,0,0-.044.112l-.012.047h.253l-.065.292h-.247l-.25,1.121h-.341s.222-1,.25-1.121h-.2l.065-.292h.194c.009-.04.024-.091.024-.091a.717.717,0,0,1,.071-.209.441.441,0,0,1,.162-.159.491.491,0,0,1,.209-.059Zm.815.015-.112.5h.221l-.065.292H120.9c-.018.081-.159.709-.159.709s-.012.076-.012.1c0,0,0,0,0,0s0,0,0,0h0l.035,0,.162-.012-.018.262,0,.047-.232.026a.375.375,0,0,1-.209-.047.209.209,0,0,1-.094-.135.221.221,0,0,1-.006-.047,1.206,1.206,0,0,1,.035-.239s.124-.554.15-.671h-.162l.065-.292h.162c.015-.068.068-.3.068-.3l.274-.144.112-.059Zm-10.841.011h1.324l-.074.329h-.968l-.1.436h.838l-.074.329h-.838c-.018.082-.179.809-.179.809h-.356Zm1.774.465a.331.331,0,0,1,.041,0,.4.4,0,0,1,.238.079l.047.032-.182.3-.05-.035a.214.214,0,0,0-.118-.036.185.185,0,0,0-.1.036.258.258,0,0,0-.088.1.93.93,0,0,0-.088.241l-.159.724H111.2l.315-1.413h.318s-.011.043-.015.059c.015-.012.031-.027.044-.035A.358.358,0,0,1,112.006,1780.968Zm1.012,0c.021,0,.041,0,.062,0a.5.5,0,0,1,.432.2.545.545,0,0,1,.091.317,1.064,1.064,0,0,1-.026.227l-.026.1h-.959c0,.02,0,.041,0,.059a.28.28,0,0,0,.047.173.216.216,0,0,0,.053.053.261.261,0,0,0,.144.038.339.339,0,0,0,.188-.056.5.5,0,0,0,.153-.167h.365l-.032.07a.806.806,0,0,1-.288.329.779.779,0,0,1-.427.121.531.531,0,0,1-.459-.2.644.644,0,0,1-.065-.536.975.975,0,0,1,.3-.541.76.76,0,0,1,.45-.191Zm1.533,0c.021,0,.041,0,.062,0a.5.5,0,0,1,.432.2.545.545,0,0,1,.091.317,1.04,1.04,0,0,1-.026.224l-.026.106h-.959l0,.038s0,.012,0,.018v0c0,.013,0,.028,0,.041a.254.254,0,0,0,.044.132.227.227,0,0,0,.015.021.239.239,0,0,0,.182.071.336.336,0,0,0,.188-.056.5.5,0,0,0,.153-.167h.368l-.035.07a.806.806,0,0,1-.288.329.779.779,0,0,1-.427.121.49.49,0,0,1-.55-.52c0-.02,0-.041,0-.062a1.067,1.067,0,0,1,.024-.153.975.975,0,0,1,.3-.541A.768.768,0,0,1,114.551,1780.968Zm4.175,0c.021,0,.04,0,.062,0a.523.523,0,0,1,.444.2.627.627,0,0,1,.071.529,1.086,1.086,0,0,1-.171.415.811.811,0,0,1-.644.326.516.516,0,0,1-.444-.2.528.528,0,0,1-.094-.321,1.011,1.011,0,0,1,.026-.227.925.925,0,0,1,.341-.568.794.794,0,0,1,.409-.153Zm5.169,0c.025,0,.048,0,.074,0a.748.748,0,0,1,.282.041.31.31,0,0,1,.159.124.337.337,0,0,1,.044.179l-.035.215-.065.291a3.187,3.187,0,0,0-.071.377.377.377,0,0,0,.015.135l.024.077h-.347l-.015-.045a.417.417,0,0,1-.006-.07,1.03,1.03,0,0,1-.191.1.83.83,0,0,1-.271.047.446.446,0,0,1-.35-.123.313.313,0,0,1-.079-.218.474.474,0,0,1,.012-.1.492.492,0,0,1,.091-.2.55.55,0,0,1,.159-.141.71.71,0,0,1,.191-.077l.209-.035a2.331,2.331,0,0,0,.368-.068.185.185,0,0,1,.006-.021.188.188,0,0,0,0-.129l-.006-.006-.012-.012a.29.29,0,0,0-.177-.041.391.391,0,0,0-.206.044.382.382,0,0,0-.127.159h-.356l.032-.071a.75.75,0,0,1,.156-.241.648.648,0,0,1,.247-.144A.974.974,0,0,1,123.895,1780.968Zm1.492,0a.331.331,0,0,1,.041,0,.4.4,0,0,1,.241.079l.044.032-.182.3-.05-.035a.207.207,0,0,0-.115-.036.2.2,0,0,0-.106.036.259.259,0,0,0-.085.1.965.965,0,0,0-.088.241l-.162.724h-.341l.315-1.413h.318s-.008.043-.012.059a.536.536,0,0,1,.044-.035A.342.342,0,0,1,125.386,1780.968Zm1.009,0c.02,0,.041,0,.062,0a.5.5,0,0,1,.432.2.538.538,0,0,1,.091.317,1.077,1.077,0,0,1-.029.227l-.024.1h-.959c0,.02-.006.041-.006.059a.286.286,0,0,0,.047.173.251.251,0,0,0,.018.021l.012.012a.246.246,0,0,0,.171.059.339.339,0,0,0,.188-.056.508.508,0,0,0,.153-.167h.368l-.035.07a.813.813,0,0,1-.288.329.779.779,0,0,1-.427.121.525.525,0,0,1-.456-.2.647.647,0,0,1-.068-.536.972.972,0,0,1,.3-.541A.77.77,0,0,1,126.4,1780.968Zm-5.151.026h.35s.043.838.044.85c.014-.03.025-.055.026-.059l.385-.792h.321s.029.828.029.833l.438-.833h.347l-.765,1.413h-.315s-.03-.766-.032-.809l-.394.809h-.324Zm-8.22.268a.374.374,0,0,0-.224.088.433.433,0,0,0-.121.167h.58c0-.01,0-.023,0-.032a.244.244,0,0,0-.026-.123.207.207,0,0,0-.194-.1Zm1.533,0a.374.374,0,0,0-.224.088.443.443,0,0,0-.121.167h.58c0-.01,0-.023,0-.032a.234.234,0,0,0-.026-.123.244.244,0,0,0-.029-.038.219.219,0,0,0-.165-.062Zm11.856,0a.381.381,0,0,0-.232.088.454.454,0,0,0-.121.167h.577c0-.01,0-.023,0-.032a.234.234,0,0,0-.027-.123.21.21,0,0,0-.194-.1Zm-7.708.006a.39.39,0,0,0-.218.106.637.637,0,0,0-.174.341.779.779,0,0,0-.021.168.289.289,0,0,0,.038.159.316.316,0,0,0,.024.03.229.229,0,0,0,.174.068.372.372,0,0,0,.259-.109.654.654,0,0,0,.174-.347.419.419,0,0,0-.018-.317.213.213,0,0,0-.194-.1C118.734,1781.267,118.72,1781.266,118.705,1781.267Zm5.316.515a2.16,2.16,0,0,1-.288.056.968.968,0,0,0-.188.042.208.208,0,0,0-.079.056.173.173,0,0,0-.041.077.2.2,0,0,0,0,.032s0,0,0,0,0,.007,0,.009a.113.113,0,0,0,0,.015l0,.006a.087.087,0,0,0,0,.009l.006.009.009.012a.185.185,0,0,0,.138.038.465.465,0,0,0,.212-.047.409.409,0,0,0,.156-.135A.545.545,0,0,0,124.021,1781.782Zm-17.969-2.359,7.9-8.152h1.289l-1.906,8.152H112.27l.541-2.347H109.5l-2.249,2.347h-1.2m4.254-3.186h2.707l.5-2.047q.3-1.217.582-2.029-.559.7-1.479,1.662l-2.309,2.413",transform:"translate(-103.684 -1768.875)",className:"minioApplicationName"}),r.createElement("path",{d:"M627.829,1776.9a3.183,3.183,0,0,1-2.4-1.149,2.464,2.464,0,0,1-.241-.411c-.045-.107-.084-.207-.123-.307l.439-.17c.038.1.075.193.114.287a2,2,0,0,0,.19.323,2.685,2.685,0,0,0,2.04.958h1.032a9.027,9.027,0,0,0,1-.141,12.945,12.945,0,0,0,1.935-.55c.524-.191,1.054-.415,1.575-.666a22.265,22.265,0,0,0,3.559-2.154c.377-.278.756-.574,1.124-.881q.494-.411.947-.834a9.057,9.057,0,0,0,1.807-2.317c.348-.7.407-1.259.167-1.576a.989.989,0,0,0-.749-.326l-.622-.048.5-.375c1.786-1.34,2.8-2.927,2.457-3.858a1,1,0,0,0-.638-.59,2.032,2.032,0,0,0-.516-.106h-.549a8.415,8.415,0,0,0-2.824.8l-.207-.423a8.932,8.932,0,0,1,3.014-.845h.585a2.509,2.509,0,0,1,.656.133,1.455,1.455,0,0,1,.921.871c.387,1.063-.5,2.665-2.216,4.081a1.2,1.2,0,0,1,.564.4,1.959,1.959,0,0,1-.121,2.07,9.408,9.408,0,0,1-1.9,2.449q-.466.435-.97.854c-.376.313-.761.615-1.146.9a22.77,22.77,0,0,1-3.635,2.2c-.535.257-1.079.487-1.617.683a13.4,13.4,0,0,1-2.006.569,9.406,9.406,0,0,1-1.07.148Z",transform:"translate(-596.283 -1761.542)",className:"minioApplicationName"})))),r.createElement("path",{d:"M.969,0V-8h.969V-.859H5.656V0ZM9.225-8V0H8.256V-8ZM18.7-5.5h-.969a2.034,2.034,0,0,0-.3-.734,2.072,2.072,0,0,0-.516-.533,2.24,2.24,0,0,0-.67-.326,2.668,2.668,0,0,0-.766-.109,2.431,2.431,0,0,0-1.314.367,2.536,2.536,0,0,0-.934,1.082A4.007,4.007,0,0,0,12.887-4a4.007,4.007,0,0,0,.346,1.754,2.536,2.536,0,0,0,.934,1.082A2.431,2.431,0,0,0,15.481-.8a2.668,2.668,0,0,0,.766-.109,2.24,2.24,0,0,0,.67-.326,2.06,2.06,0,0,0,.516-.535,2.053,2.053,0,0,0,.3-.732H18.7a3.227,3.227,0,0,1-.4,1.1,2.973,2.973,0,0,1-.719.822,3.129,3.129,0,0,1-.963.514,3.614,3.614,0,0,1-1.139.176,3.353,3.353,0,0,1-1.82-.5,3.431,3.431,0,0,1-1.254-1.422A4.874,4.874,0,0,1,11.95-4a4.874,4.874,0,0,1,.457-2.187,3.431,3.431,0,0,1,1.254-1.422,3.353,3.353,0,0,1,1.82-.5,3.614,3.614,0,0,1,1.139.176,3.129,3.129,0,0,1,.963.514,2.984,2.984,0,0,1,.719.82A3.208,3.208,0,0,1,18.7-5.5ZM21.362,0V-8h4.828v.859H22.331v2.7h3.609v.859H22.331V-.859h3.922V0ZM35.384-8V0h-.937L30.087-6.281h-.078V0h-.969V-8h.938l4.375,6.3h.078V-8ZM42.8-6a1.226,1.226,0,0,0-.57-.922A2.188,2.188,0,0,0,41-7.25a2.317,2.317,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.221,7.221,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,43.506-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273L40.328-3.8a3.666,3.666,0,0,1-1.484-.77A1.69,1.69,0,0,1,38.3-5.875a1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,43.734-6Zm3.741,6V-8h4.828v.859H47.506v2.7h3.609v.859H47.506V-.859h3.922V0Z",transform:"translate(164 68)",className:"minioApplicationName"})))},br=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.45 51",inverse:t,onClick:n},r.createElement("g",{transform:"translate(-31.65 -18.133)"},r.createElement("g",{transform:"translate(-995 -63.754)"},r.createElement("g",{transform:"translate(1025.5 81.887)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(2.003)"},r.createElement("g",{transform:"translate(0 0.129)"},r.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),r.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),r.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"})))))),r.createElement("path",{d:"M.969,0V-8H5.8v.859H1.938v2.7H5.547v.859H1.938V-.859H5.859V0ZM14.991-8V0h-.937L9.694-6.281H9.616V0H8.647V-8h.938l4.375,6.3h.078V-8Zm2.6.859V-8h6v.859H21.075V0h-.969V-7.141ZM26.191,0V-8h4.828v.859H27.159v2.7h3.609v.859H27.159V-.859h3.922V0Zm7.678,0V-8h2.7a3.277,3.277,0,0,1,1.539.318A2.054,2.054,0,0,1,39-6.809a2.69,2.69,0,0,1,.289,1.262A2.643,2.643,0,0,1,39-4.293a2.026,2.026,0,0,1-.887.857,3.3,3.3,0,0,1-1.527.311H34.4V-4h2.156a2.415,2.415,0,0,0,1.033-.187,1.194,1.194,0,0,0,.57-.533,1.787,1.787,0,0,0,.178-.826,1.856,1.856,0,0,0-.18-.84,1.235,1.235,0,0,0-.574-.557,2.345,2.345,0,0,0-1.043-.2h-1.7V0Zm3.766-3.594L39.6,0H38.478L36.541-3.594ZM42,0V-8h2.7a3.116,3.116,0,0,1,1.541.338,2.141,2.141,0,0,1,.889.912,2.809,2.809,0,0,1,.289,1.281,2.849,2.849,0,0,1-.287,1.285,2.149,2.149,0,0,1-.885.92,3.057,3.057,0,0,1-1.531.342H42.781v-.859h1.906A2.084,2.084,0,0,0,45.723-4a1.337,1.337,0,0,0,.568-.6,2.013,2.013,0,0,0,.178-.861,2,2,0,0,0-.178-.859,1.3,1.3,0,0,0-.572-.6,2.173,2.173,0,0,0-1.047-.217h-1.7V0Zm8.084,0V-8h2.7a3.277,3.277,0,0,1,1.539.318,2.054,2.054,0,0,1,.891.873,2.69,2.69,0,0,1,.289,1.262,2.643,2.643,0,0,1-.289,1.254,2.026,2.026,0,0,1-.887.857,3.3,3.3,0,0,1-1.527.311H50.616V-4h2.156a2.415,2.415,0,0,0,1.033-.187,1.194,1.194,0,0,0,.57-.533,1.787,1.787,0,0,0,.178-.826,1.856,1.856,0,0,0-.18-.84,1.235,1.235,0,0,0-.574-.557,2.345,2.345,0,0,0-1.043-.2h-1.7V0ZM53.85-3.594,55.819,0H54.694L52.756-3.594ZM59.184-8V0h-.969V-8ZM66.6-6a1.226,1.226,0,0,0-.57-.922A2.188,2.188,0,0,0,64.8-7.25a2.318,2.318,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.22,7.22,0,0,1,.7.227,3.308,3.308,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,67.306-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273L64.128-3.8a3.666,3.666,0,0,1-1.484-.77A1.69,1.69,0,0,1,62.1-5.875a1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,67.534-6Zm3.741,6V-8h4.828v.859H71.306v2.7h3.609v.859H71.306V-.859h3.922V0ZM82.209,0V-8h.969V-.859H86.9V0Zm8.256-8V0H89.5V-8Zm9.475,2.5h-.969a2.034,2.034,0,0,0-.3-.734,2.072,2.072,0,0,0-.516-.533,2.24,2.24,0,0,0-.67-.326,2.668,2.668,0,0,0-.766-.109,2.431,2.431,0,0,0-1.314.367,2.536,2.536,0,0,0-.934,1.082A4.007,4.007,0,0,0,94.128-4a4.007,4.007,0,0,0,.346,1.754,2.536,2.536,0,0,0,.934,1.082A2.431,2.431,0,0,0,96.722-.8a2.668,2.668,0,0,0,.766-.109,2.24,2.24,0,0,0,.67-.326,2.06,2.06,0,0,0,.516-.535,2.053,2.053,0,0,0,.3-.732h.969a3.227,3.227,0,0,1-.4,1.1,2.973,2.973,0,0,1-.719.822,3.129,3.129,0,0,1-.963.514,3.614,3.614,0,0,1-1.139.176,3.353,3.353,0,0,1-1.82-.5,3.431,3.431,0,0,1-1.254-1.422A4.874,4.874,0,0,1,93.191-4a4.874,4.874,0,0,1,.457-2.187A3.431,3.431,0,0,1,94.9-7.609a3.353,3.353,0,0,1,1.82-.5,3.614,3.614,0,0,1,1.139.176,3.129,3.129,0,0,1,.963.514,2.984,2.984,0,0,1,.719.82A3.208,3.208,0,0,1,99.941-5.5ZM102.6,0V-8h4.828v.859h-3.859v2.7h3.609v.859h-3.609V-.859h3.922V0Zm14.022-8V0h-.937l-4.359-6.281h-.078V0h-.969V-8h.938l4.375,6.3h.078V-8Zm7.412,2a1.226,1.226,0,0,0-.57-.922,2.188,2.188,0,0,0-1.227-.328,2.317,2.317,0,0,0-.928.172,1.468,1.468,0,0,0-.617.473,1.126,1.126,0,0,0-.221.684.957.957,0,0,0,.154.549,1.3,1.3,0,0,0,.4.379,2.686,2.686,0,0,0,.508.246q.266.1.488.154l.813.219a7.22,7.22,0,0,1,.7.227,3.309,3.309,0,0,1,.738.393,2.04,2.04,0,0,1,.584.635,1.824,1.824,0,0,1,.23.949A2.115,2.115,0,0,1,124.746-1a2.329,2.329,0,0,1-.984.832,3.618,3.618,0,0,1-1.568.309,3.653,3.653,0,0,1-1.486-.277,2.355,2.355,0,0,1-.984-.773,2.2,2.2,0,0,1-.4-1.152h1a1.236,1.236,0,0,0,.307.748,1.608,1.608,0,0,0,.68.438,2.7,2.7,0,0,0,.889.143,2.6,2.6,0,0,0,1-.182,1.687,1.687,0,0,0,.7-.508,1.2,1.2,0,0,0,.258-.764.938.938,0,0,0-.223-.648,1.634,1.634,0,0,0-.586-.406,6.157,6.157,0,0,0-.785-.273l-.984-.281a3.666,3.666,0,0,1-1.484-.77,1.69,1.69,0,0,1-.547-1.309,1.942,1.942,0,0,1,.365-1.174,2.417,2.417,0,0,1,.984-.781,3.331,3.331,0,0,1,1.385-.279,3.269,3.269,0,0,1,1.375.275,2.409,2.409,0,0,1,.955.752A1.875,1.875,0,0,1,124.975-6Zm3.741,6V-8h4.828v.859h-3.859v2.7h3.609v.859h-3.609V-.859h3.922V0Z",transform:"translate(83 68)",className:"minioApplicationName"})))},yr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 154.498 50.008",inverse:t,onClick:n},r.createElement("g",{transform:"translate(27.666 -11)"},r.createElement("g",{transform:"translate(-29 11)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M11.992-20.677A10.225,10.225,0,0,0,1.334-10.15,10.225,10.225,0,0,0,11.992.377,10.237,10.237,0,0,0,22.664-10.15,10.237,10.237,0,0,0,11.992-20.677Zm0,3.886A6.268,6.268,0,0,1,18.43-10.15a6.268,6.268,0,0,1-6.438,6.641A6.276,6.276,0,0,1,5.554-10.15,6.276,6.276,0,0,1,11.992-16.791ZM33.887-7.424c4.814,0,7.4-2.523,7.4-6.424,0-3.929-2.581-6.453-7.424-6.453h-8.28V0h4.046V-7.424Zm-.1-9.15c2.2,0,3.35.914,3.35,2.726s-1.146,2.726-3.35,2.726H29.624v-5.452ZM59.174-3.712H48.053V-8.381h10.5v-3.712h-10.5v-4.5H59.059V-20.3H44.007V0H59.174ZM62.6-20.3V0h4.045V-8.077h1.189L73.747,0h4.9L72.4-8.135c3.9-.377,6.221-2.654,6.221-5.989,0-3.886-2.6-6.177-7.438-6.177Zm8.512,3.726c2.146,0,3.35.769,3.35,2.451,0,1.711-1.146,2.523-3.35,2.523H66.642v-4.974ZM92.278-20.3h-4.93L79.445,0h4.22l1.769-4.727H94.09L95.86,0h4.321Zm-2.508,4L92.7-8.454H86.826Zm25.288-4H98.426v3.785h6.293V0h4.045V-16.516h6.293Zm11.136-.377A10.225,10.225,0,0,0,115.536-10.15,10.225,10.225,0,0,0,126.194.377,10.237,10.237,0,0,0,136.866-10.15,10.237,10.237,0,0,0,126.194-20.677Zm0,3.886a6.268,6.268,0,0,1,6.438,6.641,6.268,6.268,0,0,1-6.438,6.641,6.276,6.276,0,0,1-6.438-6.641A6.276,6.276,0,0,1,126.194-16.791ZM139.78-20.3V0h4.046V-8.077h1.189L150.931,0h4.9l-6.25-8.135c3.9-.377,6.221-2.654,6.221-5.989,0-3.886-2.6-6.177-7.439-6.177Zm8.512,3.726c2.146,0,3.35.769,3.35,2.451,0,1.711-1.146,2.523-3.35,2.523h-4.466v-4.974Z",transform:"translate(0 37.951)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(2.356 0)"},r.createElement("g",{transform:"translate(0 0.151)"},r.createElement("rect",{width:"2.928",height:"8.645",transform:"translate(16.956)",className:"minioSection"}),r.createElement("path",{d:"M239.81,365.349l-5.942,3.629a.265.265,0,0,1-.276,0l-5.942-3.629a.816.816,0,0,0-.425-.119h-.007a.815.815,0,0,0-.815.815v7.82h2.926v-3.722a.293.293,0,0,1,.446-.25l3.33,2.037a1.042,1.042,0,0,0,1.072.011l3.515-2.062a.293.293,0,0,1,.44.253v3.733h2.925v-7.82a.814.814,0,0,0-.814-.815h-.007A.816.816,0,0,0,239.81,365.349Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M259.662,365.23h-2.969v3.935a.293.293,0,0,1-.431.258l-7.694-4.1a.818.818,0,0,0-.383-.1h-.005a.815.815,0,0,0-.815.815v7.821h2.945v-3.931a.293.293,0,0,1,.43-.258l7.725,4.1a.814.814,0,0,0,.382.1h0a.815.815,0,0,0,.815-.815Z",transform:"translate(-225.18 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,373.875V365.23h1.347v8.646Z",transform:"translate(-224.375 -365.079)",className:"minioSection"}),r.createElement("path",{d:"M270.264,374.038c-3.624,0-6.195-1.719-6.195-4.475s2.587-4.476,6.195-4.476,6.21,1.719,6.21,4.476S273.934,374.038,270.264,374.038Zm0-7.8c-2.695,0-4.77,1.177-4.77,3.33s2.075,3.329,4.77,3.329,4.786-1.162,4.786-3.329S272.958,366.233,270.264,366.233Z",transform:"translate(-224.205 -365.087)",className:"minioSection"}))))))},vr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 50.008",inverse:t,onClick:n},r.createElement("g",{transform:"translate(26.456 -11)"},r.createElement("g",{transform:"translate(-29 11)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M2.544-22.4V0h9.232c7.008,0,11.632-4.448,11.632-11.2S18.784-22.4,11.776-22.4Zm9.184,4.176c4.72,0,7.008,2.912,7.008,7.024,0,4.064-2.288,7.024-7.008,7.024H7.008V-18.224ZM31.088-22.4H26.624V0h4.464Zm4.288,0V0H39.84V-8.912h1.312L47.68,0h5.408l-6.9-8.976c4.3-.416,6.864-2.928,6.864-6.608,0-4.288-2.864-6.816-8.208-6.816Zm9.392,4.112c2.368,0,3.7.848,3.7,2.7,0,1.888-1.264,2.784-3.7,2.784H39.84v-5.488ZM73.072-4.1H60.8V-9.248H72.384v-4.1H60.8V-18.3H72.944v-4.1H56.336V0H73.072Zm14.32-18.72c-6.9,0-11.76,4.88-11.76,11.616S80.5.416,87.392.416A11.153,11.153,0,0,0,96.848-4.32L93.2-6.944a6.855,6.855,0,0,1-5.84,3.072c-3.952,0-7.056-2.832-7.072-7.328,0-4.352,3.008-7.328,7.072-7.328a6.7,6.7,0,0,1,5.792,3.088l3.84-2.352A10.88,10.88,0,0,0,87.392-22.816ZM116.7-22.4H98.352v4.176H105.3V0h4.464V-18.224H116.7ZM128.08-9.12c4.944,0,7.92-2.448,7.92-6.64s-2.976-6.64-7.92-6.64h-8.32V0h1.952V-9.12Zm-.048-11.44c3.744,0,5.936,1.632,5.936,4.8s-2.192,4.784-5.936,4.784h-6.32V-20.56Zm30.4-1.84h-2.016l-8.4,20.464L139.632-22.4h-2.08L146.784,0H149.2Z",transform:"translate(0 42.065)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(2.649 0)"},r.createElement("g",{transform:"translate(0 0.17)"},r.createElement("rect",{width:"3.292",height:"9.721",transform:"translate(19.066)",className:"minioSection"}),r.createElement("path",{d:"M241.479,365.364l-6.681,4.081a.3.3,0,0,1-.311,0l-6.681-4.081a.917.917,0,0,0-.478-.134h-.008a.917.917,0,0,0-.916.916v8.793h3.29v-4.185a.329.329,0,0,1,.5-.281l3.744,2.291a1.172,1.172,0,0,0,1.206.012l3.952-2.318a.329.329,0,0,1,.5.284v4.2h3.289v-8.793a.916.916,0,0,0-.915-.916h-.008A.917.917,0,0,0,241.479,365.364Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M261.192,365.23h-3.338v4.425a.329.329,0,0,1-.484.29l-8.652-4.608a.919.919,0,0,0-.431-.107h-.006a.917.917,0,0,0-.916.916v8.795h3.312v-4.42a.329.329,0,0,1,.483-.29l8.686,4.607a.916.916,0,0,0,.43.107h0a.917.917,0,0,0,.916-.916Z",transform:"translate(-222.419 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,374.952V365.23h1.515v9.722Z",transform:"translate(-219.797 -365.06)",className:"minioSection"}),r.createElement("path",{d:"M271.034,375.151c-4.075,0-6.965-1.933-6.965-5.032,0-3.082,2.908-5.033,6.965-5.033s6.983,1.933,6.983,5.033S275.162,375.151,271.034,375.151Zm0-8.776c-3.03,0-5.364,1.323-5.364,3.744,0,2.437,2.334,3.744,5.364,3.744s5.382-1.307,5.382-3.744C276.416,367.7,274.064,366.376,271.034,366.376Z",transform:"translate(-219.244 -365.087)",className:"minioSection"}))))))},Er=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 51",inverse:t,onClick:n},r.createElement("g",{transform:"translate(26.059 -11)"},r.createElement("g",{transform:"translate(-29 11)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M19.7,0h6.7L14.726-13.265,25.586-25.9H19.111l-8.566,10.49H8.1V-25.9H2.942V0H8.1V-10.656H10.49ZM47.712-4.736H33.522v-5.957H46.916v-4.736H33.522v-5.735H47.564V-25.9h-19.2V0H47.712ZM72.039-23.588a18.223,18.223,0,0,0-9.9-2.757c-5.513,0-10.323,2.812-10.323,8.214,0,4.681,3.33,6.7,7.9,7.419l1.646.259c3.607.574,5.495,1.24,5.495,3.034,0,2-2.22,3.127-5.088,3.127a13.674,13.674,0,0,1-8.251-2.794L50.838-2.923C53.613-.685,57.831.463,61.753.463c5.568,0,10.6-2.72,10.6-8.436,0-4.514-3.626-6.494-8.251-7.252l-1.462-.241c-3.108-.518-5.347-1.092-5.347-3,0-1.961,2.054-3.108,4.958-3.108a13.919,13.919,0,0,1,7.345,2.2Z",transform:"translate(0 49.495)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(3.025 0)"},r.createElement("g",{transform:"translate(0 0.194)"},r.createElement("rect",{width:"3.76",height:"11.103",transform:"translate(21.776)",className:"minioSection"}),r.createElement("path",{d:"M243.621,365.383l-7.631,4.661a.34.34,0,0,1-.355,0l-7.631-4.661a1.048,1.048,0,0,0-.546-.153h-.009a1.047,1.047,0,0,0-1.047,1.046V376.32h3.758v-4.78a.376.376,0,0,1,.572-.321l4.276,2.616a1.338,1.338,0,0,0,1.377.014L240.9,371.2a.376.376,0,0,1,.565.325v4.794h3.757V366.276a1.046,1.046,0,0,0-1.045-1.046h-.01A1.047,1.047,0,0,0,243.621,365.383Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M263.158,365.23h-3.813v5.053a.376.376,0,0,1-.553.332l-9.881-5.263a1.051,1.051,0,0,0-.492-.122h-.007a1.047,1.047,0,0,0-1.047,1.046v10.045h3.783v-5.048a.376.376,0,0,1,.552-.332l9.921,5.262a1.046,1.046,0,0,0,.491.122h0a1.047,1.047,0,0,0,1.047-1.047Z",transform:"translate(-218.873 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,376.333v-11.1h1.73v11.1Z",transform:"translate(-213.918 -365.036)",className:"minioSection"}),r.createElement("path",{d:"M272.024,376.582c-4.654,0-7.955-2.207-7.955-5.747,0-3.52,3.322-5.748,7.955-5.748S280,367.294,280,370.835,276.738,376.582,272.024,376.582Zm0-10.023c-3.461,0-6.126,1.511-6.126,4.276,0,2.784,2.665,4.276,6.126,4.276s6.146-1.492,6.146-4.276C278.171,368.07,275.485,366.559,272.024,366.559Z",transform:"translate(-212.873 -365.087)",className:"minioSection"}))))))},wr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 50.008",inverse:t,onClick:n},r.createElement("g",{transform:"translate(27.622 -11)"},r.createElement("g",{transform:"translate(-29 11)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M17.995-18.488a14.283,14.283,0,0,0-7.758-2.161c-4.321,0-8.091,2.2-8.091,6.438,0,3.668,2.61,5.249,6.192,5.814l1.29.2c2.828.45,4.307.972,4.307,2.378,0,1.566-1.74,2.451-3.988,2.451A10.718,10.718,0,0,1,3.48-5.554l-2.1,3.263A14.124,14.124,0,0,0,9.933.363c4.365,0,8.309-2.132,8.309-6.612,0-3.538-2.842-5.09-6.467-5.684l-1.146-.188c-2.436-.406-4.191-.856-4.191-2.349,0-1.537,1.609-2.436,3.886-2.436a10.91,10.91,0,0,1,5.757,1.726ZM38.353-20.3h-4.06V-8.309c0,3.335-1.885,4.8-4.684,4.8s-4.684-1.465-4.684-4.8V-20.3h-4.06V-8.106c0,5.612,3.582,8.468,8.744,8.468s8.743-2.857,8.743-8.468Zm3.654,0V0h8.787c4.872,0,7.642-1.914,7.642-5.815a4.874,4.874,0,0,0-3.379-4.553A4.528,4.528,0,0,0,58-14.674c0-3.871-2.972-5.626-7.7-5.626ZM50.59-8.439c2.233,0,3.64.522,3.64,2.421,0,1.943-1.407,2.465-3.64,2.465l-4.538-.015V-8.439Zm-.406-8.294c2,0,3.6.435,3.6,2.349,0,1.972-1.566,2.393-3.582,2.393H46.052v-4.741ZM79.5-20.3h-4.06V-6.743L65.134-20.3H61.349V0h4.045l.015-13.558L75.7,0h3.8ZM98.557-3.712H87.435V-8.381h10.5v-3.712h-10.5v-4.5H98.441V-20.3H83.39V0H98.557ZM116.769-20.3H100.137v3.785h6.293V0h4.045V-16.516h6.293Z",transform:"translate(0 38.028)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(2.376 0)"},r.createElement("g",{transform:"translate(0 0.153)"},r.createElement("rect",{width:"2.953",height:"8.72",transform:"translate(17.103)",className:"minioSection"}),r.createElement("path",{d:"M239.926,365.35l-5.993,3.661a.267.267,0,0,1-.279,0l-5.993-3.661a.823.823,0,0,0-.429-.12h-.007a.822.822,0,0,0-.822.822v7.888h2.952v-3.754a.3.3,0,0,1,.449-.252l3.358,2.055a1.051,1.051,0,0,0,1.081.011l3.545-2.08a.3.3,0,0,1,.444.255v3.765h2.951v-7.888a.821.821,0,0,0-.821-.822h-.007A.823.823,0,0,0,239.926,365.35Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M259.769,365.23h-2.994V369.2a.3.3,0,0,1-.434.26l-7.761-4.133a.825.825,0,0,0-.386-.1h-.005a.822.822,0,0,0-.822.822v7.889h2.971v-3.965a.3.3,0,0,1,.433-.26l7.792,4.132a.822.822,0,0,0,.385.1h0a.822.822,0,0,0,.822-.822Z",transform:"translate(-224.988 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,373.95v-8.72h1.359v8.72Z",transform:"translate(-224.056 -365.077)",className:"minioSection"}),r.createElement("path",{d:"M270.317,374.115c-3.655,0-6.248-1.734-6.248-4.513s2.609-4.515,6.248-4.515,6.264,1.734,6.264,4.515S274.019,374.115,270.317,374.115Zm0-7.872c-2.718,0-4.811,1.187-4.811,3.358s2.093,3.358,4.811,3.358,4.827-1.172,4.827-3.358S273.035,366.243,270.317,366.243Z",transform:"translate(-223.86 -365.087)",className:"minioSection"}))))))},Sr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.45 55",inverse:t,onClick:n},r.createElement("g",{transform:"translate(-31.65 -18.133)"},r.createElement("g",{transform:"translate(-995 -63.754)"},r.createElement("g",{transform:"translate(1025.5 81.887)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M10.338-17.825A8.815,8.815,0,0,0,1.15-8.75,8.815,8.815,0,0,0,10.338.325a8.825,8.825,0,0,0,9.2-9.075A8.825,8.825,0,0,0,10.338-17.825Zm0,3.35a5.4,5.4,0,0,1,5.55,5.725,5.4,5.4,0,0,1-5.55,5.725A5.41,5.41,0,0,1,4.788-8.75,5.41,5.41,0,0,1,10.338-14.475ZM22.05-17.5V0h7.575c4.2,0,6.588-1.65,6.588-5.013A4.2,4.2,0,0,0,33.3-8.938a3.9,3.9,0,0,0,2.537-3.713c0-3.337-2.562-4.85-6.638-4.85Zm7.4,10.225c1.925,0,3.138.45,3.138,2.088,0,1.675-1.212,2.125-3.138,2.125l-3.913-.013v-4.2Zm-.35-7.15c1.725,0,3.1.375,3.1,2.025,0,1.7-1.35,2.063-3.087,2.063H25.538v-4.088ZM48.788-17.5H45.3V-6.7c0,2.525-1.1,3.675-2.95,3.675a4.214,4.214,0,0,1-3.4-1.625L36.925-2.113A6.9,6.9,0,0,0,42.513.313c3.65,0,6.275-2.3,6.275-6.688ZM65.113-3.2H55.525V-7.225h9.05v-3.2h-9.05V-14.3h9.487v-3.2H52.037V0H65.113ZM76.3-17.825A8.794,8.794,0,0,0,67.113-8.75,8.794,8.794,0,0,0,76.3.325a8.713,8.713,0,0,0,7.387-3.7l-2.85-2.05a5.355,5.355,0,0,1-4.562,2.4A5.4,5.4,0,0,1,70.75-8.75a5.411,5.411,0,0,1,5.525-5.725A5.237,5.237,0,0,1,80.8-12.063l3-1.838A8.5,8.5,0,0,0,76.3-17.825Zm22.9.325H84.863v3.262h5.425V0h3.487V-14.238H99.2Zm19.787,1.738a10.5,10.5,0,0,0-6.25-1.925c-3.6,0-6.475,1.812-6.475,5.037,0,2.688,1.938,4.125,5.138,4.488l1.987.225c2.913.325,4.438,1.25,4.438,3.15,0,2.363-2.337,3.525-5.3,3.525a10.115,10.115,0,0,1-5.925-1.95L105.762-2A11.524,11.524,0,0,0,112.537.188c3.775,0,6.875-1.7,6.875-5.1,0-2.913-2.262-4.138-5.375-4.488l-1.912-.212c-2.988-.338-4.275-1.4-4.275-3.138,0-2.187,2.063-3.488,4.875-3.488a9.323,9.323,0,0,1,5.475,1.713ZM135.025-17.5H120.888v1.45h6.3V0h1.525V-16.05h6.313Zm9.875-.2a8.672,8.672,0,0,0-8.963,8.95A8.672,8.672,0,0,0,144.9.2a8.672,8.672,0,0,0,8.962-8.95A8.672,8.672,0,0,0,144.9-17.7Zm0,1.475a7.174,7.174,0,0,1,7.363,7.475A7.174,7.174,0,0,1,144.9-1.275a7.177,7.177,0,0,1-7.375-7.475A7.177,7.177,0,0,1,144.9-16.225ZM157.413-17.5V0h1.525V-7.763h2.675L168.138,0h1.9l-6.625-7.763h.688c3.725,0,6.025-1.862,6.025-4.875,0-3.1-2.175-4.863-6.037-4.863Zm6.663,1.438c2.875,0,4.475,1.188,4.475,3.425s-1.575,3.488-4.475,3.488h-5.138v-6.913ZM185.6-1.438H175.075V-8.1h10.138V-9.525H175.075v-6.538h10.438V-17.5H173.55V0H185.6Z",transform:"translate(0 32.612)",className:"minioApplicationName"}),r.createElement("g",{transform:"translate(2.003)"},r.createElement("g",{transform:"translate(0 0.129)"},r.createElement("rect",{width:"2.49",height:"7.352",transform:"translate(14.42)",className:"minioSection"}),r.createElement("path",{d:"M237.8,365.332l-5.053,3.086a.226.226,0,0,1-.235,0l-5.053-3.086a.694.694,0,0,0-.362-.1H227.1a.693.693,0,0,0-.693.693v6.65h2.489v-3.165a.249.249,0,0,1,.379-.212l2.832,1.733a.886.886,0,0,0,.912.009L236,369.184a.249.249,0,0,1,.374.215v3.174h2.488v-6.65a.693.693,0,0,0-.692-.693h-.006A.694.694,0,0,0,237.8,365.332Z",transform:"translate(-226.403 -365.23)",className:"minioSection"}),r.createElement("path",{d:"M257.822,365.23H255.3v3.346a.249.249,0,0,1-.366.22l-6.543-3.485a.7.7,0,0,0-.326-.081h0a.693.693,0,0,0-.693.693v6.651h2.5v-3.343a.249.249,0,0,1,.365-.22L256.8,372.5a.692.692,0,0,0,.325.081h0a.693.693,0,0,0,.693-.693Z",transform:"translate(-228.498 -365.23)",className:"minioSection"})),r.createElement("path",{d:"M261.159,372.582V365.23H262.3v7.352Z",transform:"translate(-229.877 -365.101)",className:"minioSection"}),r.createElement("path",{d:"M269.337,372.7c-3.082,0-5.268-1.462-5.268-3.805s2.2-3.806,5.268-3.806,5.281,1.462,5.281,3.806S272.458,372.7,269.337,372.7Zm0-6.637c-2.292,0-4.056,1-4.056,2.832s1.765,2.831,4.056,2.831,4.07-.988,4.07-2.831S271.628,366.062,269.337,366.062Z",transform:"translate(-230.168 -365.087)",className:"minioSection"}))))))))},Ar=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 665.85156 145.5",inverse:t,onClick:n},r.createElement("g",null,r.createElement("rect",{className:"minioSection",x:"67.37841",y:".72967",width:"11.2565",height:"32.97504"}),r.createElement("path",{className:"minioSection",d:"m53.83768,1.04115l-22.84946,13.95519c-.32497.19877-.73368.19877-1.05894,0L7.07897,1.04115c-.49161-.30001-1.05636-.45948-1.63315-.45948h-.02811c-1.73067,0-3.13293,1.40226-3.13293,3.13293v29.99011s11.24934,0,11.24934,0v-14.23111c0-.87853.96228-1.41832,1.71202-.95998l12.80533,7.83389c1.26229.7724,2.84639.78674,4.12331.03872l13.51263-7.92568c.74975-.43998,1.69453.10067,1.69453.97031v14.27385s11.24934,0,11.24934,0V3.7146c0-1.73067-1.40226-3.13293-3.13293-3.13293h-.02811c-.57536,0-1.14097.15861-1.63258.45948Z"}),r.createElement("path",{className:"minioSection",d:"m134.87128.72164h-11.41598s0,15.13144,0,15.13144c0,.8487-.90435,1.39193-1.65409.99297L92.2161,1.08934c-.45289-.2415-.95912-.3677-1.47224-.3677h-.02008c-1.73067,0-3.13293,1.40226-3.13293,3.13293v29.85014s11.32505,0,11.32505,0v-14.88936c0-.84812.90262-1.39107,1.65265-.99354l29.70271,15.75412c.45202.23978.95568.36541,1.46822.36541h0c1.73067,0,3.13293-1.40226,3.13293-3.13293V.72164s-.00114,0-.00114,0Z"}),r.createElement("path",{className:"minioSection",d:"m144.00791,33.69667V.72164h5.23446v32.97504h-5.23446Z"}),r.createElement("path",{className:"minioSection",d:"m179.38707,34.41831c-13.93426,0-23.8189-6.61032-23.8189-17.20887C155.56787,6.66969,165.51219,0,179.38707,0c13.8746,0,23.87856,6.60946,23.87856,17.20887,0,10.59941-9.76591,17.20944-23.87856,17.20944Zm0-30.01248c-10.36107,0-18.34066,4.52572-18.34066,12.80304,0,8.33698,7.97959,12.80218,18.34066,12.80218,10.36107,0,18.40032-4.46606,18.40032-12.80218,0-8.27732-8.03927-12.80304-18.40032-12.80304Z"})),r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"m54.1377,87.12884c-5.87305-3.63086-13.02734-6.35352-21.1958-6.35352-8.38232,0-14.30859,3.30957-14.30859,8.96875,0,5.5,6.45996,7.15527,15.42969,8.64941l4.21777.69434c13.34766,2.18945,23.81201,7.90137,23.81201,20.92871,0,16.49805-14.52197,24.34668-30.59277,24.34668-11.31836,0-23.4917-3.31055-31.5-9.77051l7.74121-12.0127c5.39258,4.32422,14.20215,8.06152,23.8125,8.06152,8.27539,0,14.68213-3.25684,14.68213-9.02246,0-5.17969-5.4458-7.10156-15.85693-8.75684l-4.75146-.74707c-13.1875-2.08203-22.79785-7.90137-22.79785-21.40918,0-15.59082,13.88135-23.70605,29.79199-23.70605,10.46436,0,19.16699,2.34961,28.56396,7.95508l-7.04785,12.17383Z"}),r.createElement("path",{className:"minioApplicationName",d:"m138.80615,113.18255c0,20.66211-13.1875,31.18066-32.19482,31.18066s-32.19434-10.51855-32.19434-31.18066v-44.90137h14.94922v44.1543c0,12.28027,6.94092,17.67188,17.24512,17.67188s17.24512-5.3916,17.24512-17.67188v-44.1543h14.94971v44.90137Z"}),r.createElement("path",{className:"minioApplicationName",d:"m185.45703,68.28118c17.40527,0,28.35059,6.46094,28.35059,20.71582,0,7.52832-4.5918,13.56152-10.83838,15.85742,6.83398,2.29492,12.43994,8.70215,12.43994,16.76465,0,14.36133-10.19775,21.40918-28.13672,21.40918h-32.35449v-74.74707h30.53906Zm-15.64307,13.13477v17.45801h15.26953c7.42139,0,13.1875-1.54785,13.1875-8.80859,0-7.04785-5.87305-8.64941-13.24072-8.64941h-15.21631Zm0,30.53906v17.93945l16.71094.05273c8.22217,0,13.40088-1.92188,13.40088-9.07617,0-6.99414-5.17871-8.91602-13.40088-8.91602h-16.71094Z"}),r.createElement("path",{className:"minioApplicationName",d:"m295.64355,143.02825h-13.98828l-37.90723-49.91992-.05322,49.91992h-14.896v-74.74707h13.93457l37.96094,49.9209v-49.9209h14.94922v74.74707Z"}),r.createElement("path",{className:"minioApplicationName",d:"m368.45557,143.02825h-55.84619v-74.74707h55.41895v13.66797h-40.52295v16.55176h38.6543v13.66797h-38.6543v17.19141h40.9502v13.66797Z"}),r.createElement("path",{className:"minioApplicationName",d:"m438.17188,82.21673h-23.17139v60.81152h-14.896v-60.81152h-23.17139v-13.93555h61.23877v13.93555Z"}),r.createElement("path",{className:"minioApplicationName",d:"m523.16113,105.65521c0,22.42383-16.44434,38.22754-38.28076,38.22754s-38.28125-15.80371-38.28125-38.22754,16.44434-38.22754,38.28125-38.22754,38.28076,15.80371,38.28076,38.22754Zm-69.78125,0c0,19.06055,13.7749,31.92676,31.50049,31.92676,17.67236,0,31.44678-12.86621,31.44678-31.92676s-13.77441-31.92773-31.44678-31.92773c-17.72559,0-31.50049,12.86719-31.50049,31.92773Z"}),r.createElement("path",{className:"minioApplicationName",d:"m547.49512,112.59564v30.43262h-6.51367v-74.74707h27.76318c16.49756,0,26.42822,8.16895,26.42822,22.15723s-9.93066,22.15723-26.42822,22.15723h-21.24951Zm0-38.17383v31.98047h21.08936c12.49316,0,19.80762-5.39258,19.80762-15.96387s-7.31445-16.0166-19.80762-16.0166h-21.08936Z"}),r.createElement("path",{className:"minioApplicationName",d:"m660.67285,80.98821c-5.81934-4.11035-13.56104-7.31445-23.38525-7.31445-12.0127,0-20.82227,5.55273-20.82227,14.89648,0,7.4209,5.49951,11.95898,18.25977,13.40039l8.16895.9082c13.29395,1.49512,22.95752,6.72656,22.95752,19.16699,0,14.52246-13.24072,21.7832-29.36475,21.7832-11.21191,0-22.31689-4.11133-28.9375-9.34375l3.57715-5.17871c5.23242,4.16504,14.94922,8.3291,25.30713,8.3291,12.65332,0,22.6377-4.96484,22.6377-15.05566,0-8.11523-6.51367-12.06641-18.95361-13.45508l-8.48926-.96094c-13.66797-1.54785-21.94336-7.6875-21.94336-19.16699,0-13.77441,12.27979-21.5166,27.65625-21.5166,11.58545,0,20.23486,3.63086,26.69531,8.22266l-3.36377,5.28516Z"})))},_r=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 52",inverse:t,onClick:n},r.createElement("path",{d:"m22.19,31.57h-3.13c-.19-.9-.51-1.69-.96-2.37-.46-.68-1.01-1.25-1.66-1.72-.65-.47-1.37-.82-2.16-1.05-.79-.24-1.61-.35-2.47-.35-1.56,0-2.98.4-4.24,1.19s-2.27,1.95-3.01,3.49c-.74,1.54-1.12,3.42-1.12,5.66s.37,4.12,1.12,5.66c.74,1.54,1.75,2.7,3.01,3.49,1.27.79,2.68,1.19,4.24,1.19.86,0,1.68-.12,2.47-.35.79-.24,1.51-.59,2.16-1.05.65-.47,1.21-1.04,1.66-1.73.46-.68.78-1.47.96-2.36h3.13c-.24,1.32-.66,2.5-1.29,3.54-.62,1.04-1.4,1.93-2.32,2.65-.92.73-1.96,1.28-3.11,1.66s-2.37.57-3.68.57c-2.2,0-4.16-.54-5.88-1.61s-3.06-2.61-4.05-4.59c-.98-1.98-1.48-4.34-1.48-7.06s.49-5.08,1.48-7.06c.98-1.98,2.33-3.51,4.05-4.59,1.71-1.08,3.67-1.61,5.88-1.61,1.3,0,2.53.19,3.68.57s2.18.93,3.11,1.66c.92.73,1.7,1.61,2.32,2.65.62,1.04,1.05,2.22,1.29,3.55h0Z",className:"minioApplicationName"}),r.createElement("path",{d:"m27.23,49.32v-25.82h3.13v23.05h12v2.77h-15.13Z",className:"minioApplicationName"}),r.createElement("path",{d:"m67.98,36.41c0,2.72-.49,5.08-1.48,7.06-.98,1.98-2.33,3.51-4.05,4.59s-3.67,1.61-5.88,1.61-4.16-.54-5.88-1.61-3.06-2.61-4.05-4.59c-.98-1.98-1.48-4.34-1.48-7.06s.49-5.08,1.48-7.06c.98-1.98,2.33-3.51,4.05-4.59,1.71-1.08,3.67-1.61,5.88-1.61s4.16.54,5.88,1.61c1.71,1.08,3.06,2.61,4.05,4.59.98,1.98,1.48,4.34,1.48,7.06Zm-3.03,0c0-2.24-.37-4.12-1.12-5.66-.74-1.54-1.75-2.7-3.01-3.49-1.27-.79-2.68-1.19-4.24-1.19s-2.98.4-4.24,1.19-2.27,1.95-3.01,3.49c-.74,1.54-1.12,3.42-1.12,5.66s.37,4.12,1.12,5.66c.74,1.54,1.75,2.7,3.01,3.49,1.27.79,2.68,1.19,4.24,1.19s2.98-.39,4.24-1.19c1.26-.79,2.27-1.95,3.01-3.49.74-1.54,1.12-3.42,1.12-5.66Z",className:"minioApplicationName"}),r.createElement("path",{d:"m90.17,23.5h3.13v17.1c0,1.76-.41,3.34-1.24,4.72-.83,1.38-1.99,2.47-3.5,3.27-1.5.79-3.27,1.19-5.3,1.19s-3.79-.4-5.3-1.19c-1.5-.79-2.67-1.88-3.5-3.27-.83-1.38-1.24-2.96-1.24-4.72v-17.1h3.13v16.84c0,1.26.28,2.38.83,3.36.55.98,1.35,1.75,2.38,2.31,1.03.56,2.26.84,3.7.84s2.67-.28,3.71-.84c1.03-.56,1.83-1.33,2.38-2.31.55-.98.83-2.1.83-3.36v-16.84Z",className:"minioApplicationName"}),r.createElement("path",{d:"m107.52,49.32h-7.97v-25.82h8.32c2.5,0,4.65.52,6.43,1.54,1.78,1.03,3.15,2.5,4.1,4.43.95,1.92,1.42,4.22,1.42,6.89s-.48,5-1.44,6.94c-.96,1.94-2.35,3.43-4.19,4.46-1.83,1.04-4.06,1.56-6.68,1.56Zm-4.84-2.77h4.64c2.13,0,3.9-.41,5.31-1.24,1.4-.82,2.45-2,3.14-3.52.69-1.52,1.03-3.33,1.03-5.43s-.34-3.88-1.02-5.39c-.68-1.51-1.7-2.67-3.05-3.48-1.35-.81-3.04-1.22-5.06-1.22h-4.99v20.27h0Z",className:"minioApplicationName"}),r.createElement("rect",{x:"21.65",y:".24",width:"3.74",height:"10.97",className:"minioSection"}),r.createElement("path",{d:"m17.14.35l-7.6,4.64c-.11.07-.24.07-.35,0L1.59.35c-.16-.1-.35-.15-.54-.15h0C.47.19,0,.66,0,1.24v9.97h3.74v-4.73c0-.29.32-.47.57-.32l4.26,2.61c.42.26.95.26,1.37.01l4.49-2.64c.25-.15.56.03.56.32v4.75h3.74V1.24c0-.58-.47-1.04-1.04-1.04h0c-.19,0-.38.05-.54.15h0Z",className:"minioSection"}),r.createElement("path",{d:"m44.09.24h-3.8v5.03c0,.28-.3.46-.55.33L29.9.36c-.15-.08-.32-.12-.49-.12h0c-.58,0-1.04.47-1.04,1.04v9.93h3.77v-4.95c0-.28.3-.46.55-.33l9.88,5.24c.15.08.32.12.49.12h0c.58,0,1.04-.47,1.04-1.04V.24h0,0Z",className:"minioSection"}),r.createElement("path",{d:"m47.13,11.21V.24h1.74v10.97h-1.74Z",className:"minioSection"}),r.createElement("path",{d:"m58.89,11.45c-4.63,0-7.92-2.2-7.92-5.72,0-3.5,3.31-5.72,7.92-5.72s7.94,2.2,7.94,5.72-3.25,5.72-7.94,5.72Zm0-9.98c-3.45,0-6.1,1.5-6.1,4.26s2.65,4.26,6.1,4.26,6.12-1.49,6.12-4.26-2.67-4.26-6.12-4.26h0Z",className:"minioSection"}))},Tr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 189.7 49.96",inverse:t,onClick:n},r.createElement("g",null,r.createElement("g",null,r.createElement("rect",{x:"21.86",y:".19",width:"3.76",height:"11.1",className:"minioSection"}),r.createElement("path",{d:"m17.3.35l-7.63,4.66c-.11.07-.25.07-.35,0L1.69.35c-.16-.1-.35-.15-.55-.15h0C.55.19.08.66.08,1.24v10.04h3.76v-4.78c0-.21.17-.38.38-.38.07,0,.14.02.2.06l4.28,2.62c.42.26.95.26,1.38.01l4.51-2.65c.18-.1.41-.04.51.14.03.06.05.12.05.19v4.79h3.76V1.24c0-.58-.47-1.05-1.04-1.05h0c-.19,0-.38.05-.55.15Z",className:"minioSection"}),r.createElement("path",{d:"m44.37.19h-3.81v5.05c0,.21-.17.38-.38.38-.06,0-.12-.02-.18-.04L30.12.32c-.15-.08-.32-.12-.49-.12h0c-.58,0-1.05.47-1.05,1.05v10.05h3.78v-5.05c0-.21.17-.38.38-.38.06,0,.12.02.18.04l9.92,5.26c.15.08.32.12.49.12h0c.58,0,1.05-.47,1.05-1.05V.19Z",className:"minioSection"})),r.createElement("path",{d:"m47.32,11.3V.2h1.73v11.1h-1.73Z",className:"minioSection"}),r.createElement("path",{d:"m59.23,11.49c-4.65,0-7.95-2.21-7.95-5.75s3.32-5.75,7.95-5.75,7.98,2.21,7.98,5.75-3.26,5.75-7.98,5.75Zm0-10.02c-3.46,0-6.13,1.51-6.13,4.28s2.67,4.28,6.13,4.28,6.15-1.49,6.15-4.28c0-2.76-2.68-4.28-6.15-4.28Z",className:"minioSection"})),r.createElement("g",null,r.createElement("path",{d:"m0,24.14h10.73c3,0,5.29.67,6.89,2.02,1.6,1.35,2.4,3.25,2.4,5.7,0,2.09-.69,3.8-2.07,5.14s-3.28,2.12-5.71,2.35l7.81,10.17h-6.12l-7.39-10.09h-1.49v10.09H0v-25.37Zm10.64,4.66h-5.58v6.21h5.58c2.79,0,4.19-1.05,4.19-3.15s-1.4-3.06-4.19-3.06Z",className:"minioApplicationName"}),r.createElement("path",{d:"m43.59,44.87v4.64h-18.95v-25.37h18.81v4.64h-13.75v5.62h13.12v4.64h-13.12v5.83h13.9Z",className:"minioApplicationName"}),r.createElement("path",{d:"m67.24,44.78v4.73h-18.46v-25.37h5.06v20.64h13.41Z",className:"minioApplicationName"}),r.createElement("path",{d:"m89.65,44.87v4.64h-18.95v-25.37h18.81v4.64h-13.75v5.62h13.12v4.64h-13.12v5.83h13.9Z",className:"minioApplicationName"}),r.createElement("path",{d:"m108.37,24.14l9.88,25.37h-5.4l-2.21-5.91h-10.82l-2.21,5.91h-5.27l9.88-25.37h6.16Zm-3.13,5l-3.68,9.8h7.34l-3.66-9.8Z",className:"minioApplicationName"}),r.createElement("path",{d:"m140.8,26.4l-2.39,4.13c-2.33-1.44-4.73-2.16-7.19-2.16-1.45,0-2.62.27-3.51.81-.89.54-1.34,1.29-1.34,2.23,0,.45.12.83.36,1.16.24.33.62.6,1.14.82s1.05.4,1.6.53c.55.13,1.26.27,2.13.42l1.43.24c5.39.88,8.08,3.25,8.08,7.1,0,1.35-.28,2.57-.85,3.64-.57,1.08-1.33,1.94-2.3,2.6-.97.66-2.07,1.16-3.3,1.5-1.23.34-2.54.52-3.93.52-1.98,0-3.93-.29-5.84-.86-1.92-.57-3.53-1.39-4.85-2.46l2.63-4.08c.99.79,2.2,1.44,3.62,1.96,1.42.52,2.91.78,4.46.78,1.45,0,2.64-.27,3.58-.81.94-.54,1.4-1.29,1.4-2.25,0-.83-.42-1.46-1.27-1.88-.85-.42-2.22-.78-4.11-1.09l-1.61-.25c-5.16-.81-7.74-3.23-7.74-7.27,0-1.28.27-2.44.82-3.48.54-1.04,1.28-1.88,2.22-2.54.94-.65,2.01-1.15,3.22-1.5,1.21-.35,2.49-.53,3.86-.53,1.79,0,3.46.21,5,.64s3.11,1.11,4.69,2.06Z",className:"minioApplicationName"}),r.createElement("path",{d:"m164.66,44.87v4.64h-18.95v-25.37h18.81v4.64h-13.75v5.62h13.12v4.64h-13.12v5.83h13.9Z",className:"minioApplicationName"}),r.createElement("path",{d:"m189.4,26.4l-2.39,4.13c-2.33-1.44-4.73-2.16-7.19-2.16-1.45,0-2.62.27-3.51.81-.89.54-1.34,1.29-1.34,2.23,0,.45.12.83.36,1.16.24.33.62.6,1.14.82s1.05.4,1.6.53c.55.13,1.26.27,2.13.42l1.43.24c5.39.88,8.08,3.25,8.08,7.1,0,1.35-.28,2.57-.85,3.64-.57,1.08-1.33,1.94-2.3,2.6-.97.66-2.07,1.16-3.3,1.5-1.23.34-2.54.52-3.93.52-1.98,0-3.93-.29-5.84-.86-1.92-.57-3.53-1.39-4.85-2.46l2.63-4.08c.99.79,2.2,1.44,3.62,1.96,1.42.52,2.91.78,4.46.78,1.45,0,2.64-.27,3.58-.81.94-.54,1.4-1.29,1.4-2.25,0-.83-.42-1.46-1.27-1.88-.85-.42-2.22-.78-4.11-1.09l-1.61-.25c-5.16-.81-7.74-3.23-7.74-7.27,0-1.28.27-2.44.82-3.48.54-1.04,1.28-1.88,2.22-2.54.94-.65,2.01-1.15,3.22-1.5,1.21-.35,2.49-.53,3.86-.53,1.79,0,3.46.21,5,.64s3.11,1.11,4.69,2.06Z",className:"minioApplicationName"})))},Cr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 189.7 49.96",inverse:t,onClick:n},r.createElement("g",null,r.createElement("g",null,r.createElement("rect",{x:"21.92",y:".09",width:"3.8",height:"11.1",className:"minioSection"}),r.createElement("path",{d:"m17.33.29l-7.6,4.6c-.1.1-.2.1-.4,0L1.73.29c-.2-.1-.4-.2-.5-.2h0C.62.09.12.59.12,1.09v10h3.8v-4.7c0-.2.2-.4.4-.4q.1,0,.2.1l4.3,2.6c.4.3,1,.3,1.4,0l4.4-2.6c.2-.1.4,0,.5.1,0,.1.1.1.1.2v4.8h3.8V1.09c0-.6-.5-1-1-1h0c-.3,0-.5.1-.7.2Z",className:"minioSection"}),r.createElement("path",{d:"m44.42.09h-3.8v5.1c0,.2-.2.4-.4.4h-.2L30.12.19c-.1-.1-.3-.1-.5-.1h0c-.6,0-1,.5-1,1v10h3.8v-5c0-.2.2-.4.4-.4h.2l9.9,5.3c.2.1.3.1.5.1h0c.6,0,1-.5,1-1V.09Z",className:"minioSection"})),r.createElement("path",{d:"m47.33,11.2V.1h1.8v11.1h-1.8Z",className:"minioSection"}),r.createElement("path",{d:"m59.33,11.4c-4.7,0-8-2.2-8-5.7s3.3-5.7,8-5.7,8,2.2,8,5.7-3.3,5.7-8,5.7Zm0-10c-3.5,0-6.2,1.5-6.2,4.2s2.7,4.3,6.1,4.3,6.1-1.5,6.1-4.3c.1-2.7-2.6-4.2-6-4.2Z",className:"minioSection"})),r.createElement("g",null,r.createElement("path",{d:"m21.7,23.5l-8.2,21.8h-5.3L0,23.5h4.6l6.3,17.4,6.3-17.4h4.5Z",className:"minioApplicationName"}),r.createElement("path",{d:"m48.6,23.5v21.8h-4.3v-16.5l-5.4,14.4h-4.6l-5.4-14.2v16.3h-4.3v-21.8h6.4l5.7,14.7,5.7-14.7s6.2,0,6.2,0Z",className:"minioApplicationName"}),r.createElement("path",{d:"m51.9,23.5h8.4c2.4,0,4.4.5,5.8,1.4s2.1,2.4,2.1,4.4c0,1.2-.3,2.2-.9,3-.6.8-1.4,1.4-2.4,1.8,1.1.4,2.1,1,2.7,1.9s1,2,1,3.3c0,2.1-.7,3.6-2.1,4.6s-3.3,1.5-5.9,1.5h-8.9v-21.9h.2Zm8.4,2.4h-5.8v7.2h5.9c.8,0,1.5-.1,2.1-.2s1.2-.3,1.7-.6.9-.6,1.2-1.1c.3-.5.4-1.1.4-1.8s-.1-1.3-.4-1.8-.7-.9-1.2-1.1-1.1-.4-1.7-.6c-.7,0-1.4,0-2.2,0Zm.4,9.5h-6.2v7.5h6.2c.9,0,1.6-.1,2.2-.2.6-.1,1.2-.3,1.7-.6s.9-.7,1.1-1.2.4-1.1.4-1.8c0-1.4-.5-2.3-1.4-2.9s-2.3-.8-4-.8Z",className:"minioApplicationName"}),r.createElement("path",{d:"m73.8,23.5h8.6c2.5,0,4.3.5,5.6,1.6,1.3,1.1,2,2.6,2,4.6s-.7,3.4-2,4.5c-1.4,1.1-3.2,1.7-5.5,1.7h-.4l7.8,9.5h-3.1l-7.7-9.6h-2.8v9.5h-2.5v-21.8Zm8.5,2.4h-6v7.7h6c1.7,0,2.9-.3,3.8-1s1.3-1.6,1.3-2.9-.4-2.2-1.3-2.8-2.1-1-3.8-1Z",className:"minioApplicationName"}),r.createElement("path",{d:"m104.9,23.2c2.1,0,4.1.5,5.8,1.4,1.7,1,3.1,2.3,4,4,1,1.7,1.5,3.6,1.5,5.8s-.5,4.1-1.5,5.8-2.3,3-4,4-3.6,1.4-5.8,1.4c-1.6,0-3.1-.3-4.5-.8-1.4-.6-2.6-1.3-3.6-2.3s-1.8-2.2-2.3-3.6c-.6-1.4-.9-2.9-.9-4.5s.3-3.1.9-4.5,1.4-2.6,2.3-3.6c1-1,2.2-1.8,3.6-2.3s2.9-.8,4.5-.8Zm0,2.4c-1.2,0-2.4.2-3.4.6-1.1.4-2,1-2.7,1.8-.8.8-1.4,1.7-1.8,2.8-.4,1.1-.7,2.3-.7,3.6s.2,2.5.7,3.6c.4,1.1,1,2,1.8,2.8s1.7,1.4,2.7,1.8c1.1.4,2.2.6,3.4.6,1.6,0,3.1-.4,4.4-1.1,1.3-.7,2.3-1.8,3.1-3.1s1.1-2.9,1.1-4.6-.4-3.2-1.1-4.6-1.8-2.4-3.1-3.1c-1.3-.7-2.8-1.1-4.4-1.1Z",className:"minioApplicationName"}),r.createElement("path",{d:"m135.9,45.3l-9.6-9.8h-2.6v9.8h-2.5v-21.8h2.5v9.7h2.6l9.1-9.7h3.2l-10.3,10.7,10.9,11.1h-3.3Z",className:"minioApplicationName"}),r.createElement("path",{d:"m158.2,43v2.4h-15.4v-21.9h15.2v2.4h-12.7v7.3h12.3v2.3h-12.3v7.5h12.9Z",className:"minioApplicationName"}),r.createElement("path",{d:"m163.8,23.5h8.6c2.5,0,4.3.5,5.6,1.6s2,2.6,2,4.6-.7,3.4-2,4.5c-1.4,1.1-3.2,1.7-5.5,1.7h-.4l7.8,9.5h-3.1l-7.7-9.5h-2.8v9.5h-2.5v-21.9Zm8.6,2.4h-6v7.7h6c1.7,0,2.9-.3,3.8-1s1.3-1.6,1.3-2.9-.4-2.2-1.3-2.8-2.2-1-3.8-1Z",className:"minioApplicationName"})))},xr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 149.6 41.2",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M45.9,30.5c0,7.1-4.5,10.7-11,10.7s-11-3.6-11-10.7V15.1H29v15.1c0,4.2,2.4,6,5.9,6\n\t\ts5.9-1.8,5.9-6V15.1h5.1L45.9,30.5z"}),r.createElement("path",{className:"minioApplicationName",d:"M93.4,36v4.7H74.7V15.1h18.6v4.7H79.7v5.7h13v4.7h-13V36H93.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M61.3,15.1c6.1,0,9.4,2.9,9.4,7.8c0,4.2-2.9,7.1-7.8,7.5l7.9,10.2h-6.2l-7.5-10.2h-1.5v10.2\n\t\th-5.1V15.1H61.3z M55.6,19.8v6.3h5.6c2.8,0,4.2-1,4.2-3.2c0-2.1-1.5-3.1-4.2-3.1H55.6z"}),r.createElement("path",{className:"minioApplicationName",d:"M106.3,30.2h-2.4v10.5h-5.1V15.1h5.1v10.4h2.4l8.5-10.4h6.4l-10.7,12.5L122,40.7h-6.6\n\t\tL106.3,30.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M149.6,40.7h-5.4l-2.2-6H131l-2.2,6h-5.3l10-25.6h6.2L149.6,40.7z M132.8,30.1h7.4l-3.7-9.9\n\t\tL132.8,30.1z"})),r.createElement("g",null,r.createElement("path",{className:"minioSection",d:"M11.7,0.2L6.5,3.4c-0.1,0-0.2,0-0.2,0L1.1,0.2C1,0.2,0.8,0.1,0.7,0.1h0C0.3,0.1,0,0.5,0,0.8\n\t\tc0,0,0,0,0,0v6.8h2.5V4.4c0-0.1,0.1-0.3,0.3-0.3c0,0,0.1,0,0.1,0L5.8,6c0.3,0.2,0.6,0.2,0.9,0l3.1-1.8c0.1-0.1,0.3,0,0.3,0.1\n\t\tc0,0,0,0.1,0,0.1v3.3h2.5V0.8c0-0.4-0.3-0.7-0.7-0.7c0,0,0,0,0,0h0C11.9,0.1,11.8,0.2,11.7,0.2"}),r.createElement("rect",{x:"14.8",y:"0.1",className:"minioSection",width:"2.5",height:"7.5"}),r.createElement("path",{className:"minioSection",d:"M30,0.1h-2.6v3.4c0,0.1-0.1,0.3-0.3,0.3c0,0-0.1,0-0.1,0l-6.7-3.6c-0.1-0.1-0.2-0.1-0.3-0.1\n\t\tl0,0c-0.4,0-0.7,0.3-0.7,0.7v6.8h2.6V4.2C21.9,4.1,22,4,22.1,4c0,0,0.1,0,0.1,0L29,7.6c0.3,0.2,0.8,0.1,1-0.3C30,7.2,30,7.1,30,6.9\n\t\tL30,0.1z"}),r.createElement("rect",{x:"32",y:"0.1",className:"minioSection",width:"1.2",height:"7.5"}),r.createElement("path",{className:"minioSection",d:"M40.1,7.8c-3.2,0-5.4-1.5-5.4-3.9S37,0,40.1,0s5.4,1.5,5.4,3.9S43.3,7.8,40.1,7.8 M40.1,1\n\t\tC37.8,1,36,2,36,3.9s1.8,2.9,4.2,2.9s4.2-1,4.2-2.9S42.5,1,40.1,1L40.1,1z"}),r.createElement("rect",{className:"minioApplicationName",y:"15",width:"19.1",height:"5"}),r.createElement("rect",{className:"minioApplicationName",y:"25.5",width:"12.8",height:"5"}),r.createElement("rect",{className:"minioApplicationName",y:"36.1",width:"19.1",height:"5"})))},Ir=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 208.7 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{id:"Path_116",className:"minioApplicationName",d:"M164.5,50.7c0.3,0,6.8,0,9.5,0v-0.4c-0.3-0.3-0.6-0.5-0.9-0.8c-6.3-5.2-12.5-10.4-18.8-15.5\n\t\tc-1.2-1-1.2-1.1,0-2.1c5.6-4.7,11.2-9.3,16.7-13.9c1-0.8,2-1.7,3.2-2.8c-0.7-0.1-1.1-0.1-1.5-0.1c-2.6,0-5.2-0.1-7.8,0\n\t\tc-0.8,0-1.6,0.3-2.2,0.8c-4.3,3.5-8.4,7.1-12.7,10.7c-0.4,0.3-0.8,0.5-1.4,1c0-0.8-0.1-1.2-0.1-1.7c0-6,0-12,0-18.1\n\t\tc0-1.1-0.3-1.5-1.4-1.4c-1.2,0.1-2.5,0-3.7,0c-1.2,0-1.7,0.6-1.7,1.7c0,7.2,0,14.3,0,21.5c0,6.6,0,13.1,0,19.7\n\t\tc0,0.5,0.1,0.9,0.3,1.1c0.2,0.2,0.6,0.2,1,0.2c0.8,0,1.6,0.1,2.4,0.1c0.7,0,1.4-0.1,2-0.1c0.4,0,0.7,0,0.9-0.2\n\t\tc0.2-0.2,0.3-0.5,0.3-1c0-3.2,0-6.3,0-9.5c0-0.4,0.1-0.9,0.1-1.5c0.6,0.4,1.1,0.7,1.5,1c4.3,3.5,8.3,7,10.5,8.7\n\t\tc0.1,0.1,0.4,0.3,0.8,0.6c1.1,0.8,1.1,0.8,1.9,1.4c0.2,0.1,0.4,0.2,0.6,0.4c0.1,0.1,0.3,0.2,0.4,0.2\n\t\tC164.3,50.6,164.4,50.7,164.5,50.7L164.5,50.7z"}),r.createElement("path",{id:"Path_117",className:"minioApplicationName",d:"M18.8,50.6c-5.5,0-11.1,0-16.6,0c-1.1,0-1.5-0.3-1.5-1.4c0.1-8.6,0.1-17.2,0-25.9\n\t\tC0.6,22.2,1,22,2.1,22c11.1,0,14.7,0,25.8,0c1.1,0,1.5,0.3,1.4,1.4c-0.1,1.4,0,2.9,0,4.3c0,1.1-0.6,1.6-1.7,1.6c-8.5,0-9.5,0-18,0\n\t\tc-1.2,0-1.7,0.3-1.6,1.6c0.1,3.6,0,7.3,0,10.9c0,1.6,0,1.6,1.7,1.6c8.4,0,16.9,0,25.3,0c1.2,0,1.9,0.6,1.9,1.9c0,1.4,0,2.8,0,4.2\n\t\tc0,0.9-0.3,1.2-1.2,1.2C30,50.6,24.4,50.6,18.8,50.6L18.8,50.6z"}),r.createElement("path",{id:"Path_118",className:"minioApplicationName",d:"M72.4,26.6c0,3.2,0.1,6.3,0,9.5c-0.2,8.3-7.5,14.9-15.9,14.6C49,50.6,41.9,44.3,41.7,36\n\t\tc-0.2-6.6,0-13.3-0.1-19.9c0-0.8,0.3-1.1,1.1-1.1c1.5,0,3,0.1,4.5,0c1.1-0.1,1.3,0.4,1.3,1.4c0,6.1,0,12.3,0,18.4\n\t\tc0,3.6,1.4,6.5,4.7,8.3c5.3,2.8,12-0.8,12.2-6.8c0.2-6.4,0.1-12.9,0.1-19.3c0-1.3,0.7-2,2-2c1.2,0,2.3,0.1,3.5,0\n\t\tc1.1-0.1,1.4,0.3,1.4,1.4C72.4,19.8,72.4,23.2,72.4,26.6L72.4,26.6L72.4,26.6z"}),r.createElement("path",{id:"Path_119",className:"minioApplicationName",d:"M77.5,39.5c0-2.9,0-5.9,0-8.8c0.1-7.1,4.2-12.9,10.9-15c2-0.6,4.1-0.6,6.2-0.7\n\t\tc1.4-0.1,2.8,0,4.2,0c0.8,0,1,0.3,1,1c0,1.6,0,3.1,0,4.7c0,0.9-0.3,1.2-1.2,1.1c-1.9,0-3.7,0-5.6,0c-5.1,0.1-8.7,3.6-8.8,8.7\n\t\tc-0.1,6.2-0.1,12.4,0,18.5c0,0.6-0.1,1-0.3,1.2c-0.2,0.2-0.5,0.2-1.1,0.2c-1.3,0-1.9,0.1-2,0.1c-0.1,0-0.7,0-2.1-0.1\n\t\tc-0.5,0-0.8,0-1.1-0.3c-0.2-0.2-0.3-0.6-0.3-1.1C77.5,46.1,77.5,42.8,77.5,39.5L77.5,39.5z"}),r.createElement("path",{id:"Path_120",className:"minioApplicationName",d:"M18.8,7.6c-5.5,0-11.1,0-16.6,0c-1.2,0-1.6-0.4-1.5-1.6c0.1-1.3,0-2.6,0-4\n\t\tc0-1.2,0.6-1.8,1.9-1.8h23.6c3.1,0,6.3,0,9.4,0c0.4-0.1,0.7,0.1,1,0.3c0.2,0.2,0.2,0.5,0.3,1c0,0.4,0,0.7,0,1.1c0,0.3,0,0.7,0,1\n\t\tc0,1.2,0,1.5,0,2.4c0,0.9-0.1,1.1-0.3,1.3c-0.2,0.3-0.7,0.4-1.3,0.3C29.8,7.6,24.3,7.7,18.8,7.6L18.8,7.6z"}),r.createElement("path",{id:"Path_121",className:"minioApplicationName",d:"M123.9,43.1c-0.1,0-0.2,0-0.2,0.1c-2.1,0.9-4.4,1-6.9,0.5c-3.3-0.7-6.1-2.8-7.6-5.8\n\t\tc-0.5-0.9-0.3-1.3,0.7-1.3c0.4,0,0.7,0,1.1,0c8.1,0,16.2,0,24.3,0c1.3,0,1.9-0.5,1.8-1.7c-0.1-2.3,0-4.8-0.6-7\n\t\tc-2.7-9.5-12.5-15.1-22-12.4c-10.7,2.9-16.3,14.7-11.7,24.8c5.2,11.3,19.2,14.1,28.5,5.9c0.7-0.6,1.3-1.2,1.8-1.9\n\t\tc0.2-0.3,0.2-0.7-0.1-0.9c-0.1-0.1-0.3-0.2-0.4-0.2H123.9L123.9,43.1z M119.4,21.6c4.7-0.1,9.8,3.7,10.4,7.4\n\t\tc0.1,0.4-0.2,0.7-0.6,0.8c0,0-0.1,0-0.1,0h-19.7c-0.4,0-0.7-0.3-0.7-0.7c0,0,0-0.1,0-0.1C109.3,25.5,114.8,21.7,119.4,21.6\n\t\tL119.4,21.6L119.4,21.6z"}),r.createElement("path",{id:"Path_122",className:"minioApplicationName",d:"M207.8,50.6h-6c-0.2,0-0.3-0.1-0.3-0.3l0,0v-3.2c-0.4,0.2-0.7,0.3-0.9,0.5\n\t\tc-10.1,6.6-23.1,1.9-26.6-9.6c-2.8-9.3,3.3-19.8,12.9-21.8c10.3-2.2,19.9,4.5,21.3,15c0,0.1,0,0.2,0,0.3c0,6.3,0,12.5,0,18.9\n\t\tC208.1,50.5,208,50.6,207.8,50.6L207.8,50.6z M180.1,33.1c-0.1,5.9,4.6,10.7,10.5,10.7c0,0,0,0,0,0c5.9,0.1,10.7-4.7,10.8-10.6\n\t\tc0,0,0-0.1,0-0.1c0-5.9-4.8-10.7-10.6-10.7C184.9,22.4,180.1,27.2,180.1,33.1C180.1,33.1,180.1,33.1,180.1,33.1L180.1,33.1\n\t\tL180.1,33.1z"}),r.createElement("g",null,r.createElement("rect",{x:"60.8",y:"0.3",className:"minioSection",width:"3.2",height:"8.4"}),r.createElement("g",null,r.createElement("g",null,r.createElement("path",{className:"minioSection",d:"M56.8,0.4L50.3,4C50.2,4,50,4,50,4l-6.6-3.5c-0.1-0.1-0.3-0.1-0.5-0.1h0c-0.5,0-0.9,0.4-0.9,0.8v7.6h3.2\n\t\t\t\t\tV5.1c0-0.2,0.3-0.4,0.5-0.2l3.7,2c0.4,0.2,0.8,0.2,1.2,0l3.9-2c0.2-0.1,0.5,0,0.5,0.2v3.6h3.2V1.1c0-0.4-0.4-0.8-0.9-0.8h0\n\t\t\t\t\tC57.1,0.3,57,0.3,56.8,0.4"}),r.createElement("path",{className:"minioSection",d:"M80.2,0.3h-3.3v3.8c0,0.2-0.3,0.4-0.5,0.2l-8.5-4c-0.1-0.1-0.3-0.1-0.4-0.1h0c-0.5,0-0.9,0.4-0.9,0.8v7.6\n\t\t\t\t\th3.3V4.9c0-0.2,0.3-0.4,0.5-0.2l8.6,4c0.1,0.1,0.3,0.1,0.4,0.1c0.5,0,0.9-0.4,0.9-0.8L80.2,0.3L80.2,0.3z"}),r.createElement("rect",{x:"82.7",y:"0.3",className:"minioSection",width:"1.5",height:"8.4"}),r.createElement("path",{className:"minioSection",d:"M93,8.9c-4,0-6.9-1.7-6.9-4.4S89,0.2,93,0.2c4,0,6.9,1.7,6.9,4.4S97.1,8.9,93,8.9 M93,1.3\n\t\t\t\t\tc-3,0-5.3,1.1-5.3,3.2S90,7.7,93,7.7c3,0,5.3-1.1,5.3-3.2S96,1.3,93,1.3"}))))))},Or=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M1.4,50.3V24.1h3.2v13h0.3l11.8-13h4.1l-11,11.8l11,14.4H17L7.9,38.1l-3.3,3.7v8.5H1.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M24.9,24.1h3.8l8.9,21.7h0.3l8.9-21.7h3.8v26.2h-3V30.4h-0.3l-8.2,19.9h-2.9l-8.2-19.9h-0.3v19.9h-3\n\t\tC24.9,50.3,24.9,24.1,24.9,24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M71.3,30.6c-0.2-1.3-0.8-2.3-1.9-3c-1.1-0.7-2.4-1.1-4-1.1c-1.2,0-2.2,0.2-3,0.6s-1.5,0.9-2,1.5\n\t\tc-0.5,0.7-0.7,1.4-0.7,2.2c0,0.7,0.2,1.3,0.5,1.8c0.3,0.5,0.8,0.9,1.3,1.2c0.5,0.3,1.1,0.6,1.7,0.8c0.6,0.2,1.1,0.4,1.6,0.5\n\t\tl2.7,0.7c0.7,0.2,1.4,0.4,2.3,0.7c0.8,0.3,1.6,0.7,2.4,1.3c0.8,0.5,1.4,1.2,1.9,2.1c0.5,0.8,0.8,1.9,0.8,3.1c0,1.4-0.4,2.7-1.1,3.8\n\t\tc-0.7,1.1-1.8,2.1-3.2,2.7c-1.4,0.7-3.1,1-5.1,1c-1.9,0-3.5-0.3-4.9-0.9c-1.4-0.6-2.4-1.4-3.2-2.5c-0.8-1.1-1.2-2.3-1.3-3.8h3.3\n\t\tc0.1,1,0.4,1.8,1,2.4c0.6,0.6,1.3,1.1,2.2,1.4c0.9,0.3,1.9,0.5,2.9,0.5c1.2,0,2.3-0.2,3.3-0.6c1-0.4,1.7-1,2.3-1.7\n\t\tc0.6-0.7,0.8-1.5,0.8-2.5c0-0.9-0.2-1.6-0.7-2.1c-0.5-0.5-1.1-1-1.9-1.3c-0.8-0.3-1.7-0.6-2.6-0.9l-3.2-0.9c-2-0.6-3.7-1.4-4.9-2.5\n\t\tc-1.2-1.1-1.8-2.5-1.8-4.3c0-1.5,0.4-2.7,1.2-3.8c0.8-1.1,1.9-1.9,3.2-2.6c1.4-0.6,2.9-0.9,4.5-0.9c1.7,0,3.2,0.3,4.5,0.9\n\t\tc1.3,0.6,2.4,1.4,3.1,2.5c0.8,1,1.2,2.2,1.2,3.5L71.3,30.6L71.3,30.6z"}),r.createElement("rect",{x:"22",y:"0.5",className:"minioSection",width:"3.8",height:"11.1"}),r.createElement("path",{className:"minioSection",d:"M17.4,0.6L9.7,5.3c-0.1,0.1-0.2,0.1-0.4,0L1.6,0.6C1.5,0.5,1.3,0.4,1.1,0.4h0C0.5,0.4,0,0.9,0,1.5v10.1h3.8\n\t\tV6.8c0-0.3,0.3-0.5,0.6-0.3l4.3,2.6c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.1,0.6,0,0.6,0.3v4.8H19V1.5c0-0.6-0.5-1.1-1.1-1.1h0\n\t\tC17.8,0.4,17.6,0.5,17.4,0.6L17.4,0.6z"}),r.createElement("path",{className:"minioSection",d:"M44.7,0.5h-3.9v5.1c0,0.3-0.3,0.5-0.6,0.3l-10-5.3c-0.2-0.1-0.3-0.1-0.5-0.1h0c-0.6,0-1.1,0.5-1.1,1.1v10.1\n\t\th3.8v-5c0-0.3,0.3-0.5,0.6-0.3l10,5.3c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L44.7,0.5L44.7,0.5L44.7,0.5z"}),r.createElement("path",{className:"minioSection",d:"M47.8,11.6V0.5h1.8v11.1L47.8,11.6L47.8,11.6z"}),r.createElement("path",{className:"minioSection",d:"M59.8,11.9c-4.7,0-8-2.2-8-5.8c0-3.6,3.4-5.8,8-5.8c4.7,0,8.1,2.2,8.1,5.8S64.5,11.9,59.8,11.9z M59.8,1.7\n\t\tc-3.5,0-6.2,1.5-6.2,4.3c0,2.8,2.7,4.3,6.2,4.3c3.5,0,6.2-1.5,6.2-4.3C66,3.3,63.3,1.7,59.8,1.7L59.8,1.7z"})))},kr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 288.6 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M1,50.5V24.1h4.8v22.4h11.6v4H1z"}),r.createElement("path",{className:"minioApplicationName",d:"M44.1,37.3c0,2.8-0.5,5.3-1.6,7.3s-2.5,3.6-4.3,4.6c-1.8,1.1-3.9,1.6-6.2,1.6c-2.3,0-4.4-0.5-6.2-1.6\n\t\tc-1.8-1.1-3.3-2.6-4.3-4.7c-1.1-2-1.6-4.5-1.6-7.3c0-2.8,0.5-5.3,1.6-7.3c1.1-2,2.5-3.6,4.3-4.6c1.8-1.1,3.9-1.6,6.2-1.6\n\t\tc2.3,0,4.4,0.5,6.2,1.6c1.8,1.1,3.3,2.6,4.3,4.6C43.6,32.1,44.1,34.5,44.1,37.3z M39.3,37.3c0-2-0.3-3.7-0.9-5.1\n\t\tc-0.6-1.4-1.5-2.4-2.6-3.1c-1.1-0.7-2.4-1.1-3.8-1.1c-1.4,0-2.7,0.4-3.8,1.1c-1.1,0.7-2,1.8-2.6,3.1c-0.6,1.4-0.9,3.1-0.9,5.1\n\t\tc0,2,0.3,3.7,0.9,5.1c0.6,1.4,1.5,2.4,2.6,3.1c1.1,0.7,2.4,1.1,3.8,1.1c1.4,0,2.7-0.4,3.8-1.1c1.1-0.7,2-1.8,2.6-3.1\n\t\tC39,41,39.3,39.3,39.3,37.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M50.6,50.5h-5.1l9.3-26.4h5.9L70,50.5h-5.1l-7.1-21h-0.2L50.6,50.5z M50.8,40.2h13.9V44H50.8V40.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M82.4,50.5h-8.9V24.1h9.1c2.6,0,4.9,0.5,6.8,1.6c1.9,1.1,3.3,2.6,4.4,4.5c1,2,1.5,4.3,1.5,7.1\n\t\tc0,2.8-0.5,5.1-1.5,7.1s-2.5,3.5-4.4,4.6C87.4,50,85.1,50.5,82.4,50.5L82.4,50.5z M78.3,46.4h3.9c1.8,0,3.4-0.3,4.6-1\n\t\tc1.2-0.7,2.2-1.7,2.8-3c0.6-1.3,0.9-3,0.9-5c0-2-0.3-3.7-0.9-5c-0.6-1.3-1.5-2.3-2.7-3c-1.2-0.7-2.7-1-4.5-1h-4.1L78.3,46.4\n\t\tL78.3,46.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M100.7,50.5V24.1h8.9c1.7,0,3.2,0.3,4.3,0.9c1.1,0.6,2,1.4,2.6,2.5c0.6,1,0.9,2.2,0.9,3.5c0,1.1-0.2,2-0.6,2.8\n\t\tc-0.4,0.8-0.9,1.4-1.5,1.9c-0.6,0.5-1.3,0.8-2.1,1V37c0.9,0.1,1.7,0.4,2.5,0.9c0.8,0.5,1.5,1.3,2,2.2s0.8,2.1,0.8,3.5\n\t\tc0,1.3-0.3,2.5-0.9,3.6c-0.6,1-1.5,1.9-2.7,2.5c-1.2,0.6-2.8,0.9-4.7,0.9H100.7z M103.1,36.1h6.7c1,0,2-0.2,2.7-0.6\n\t\tc0.8-0.4,1.4-1,1.8-1.8c0.4-0.8,0.7-1.6,0.7-2.6c0-1.4-0.5-2.5-1.4-3.4c-0.9-0.9-2.3-1.3-4.1-1.3h-6.5V36.1z M103.1,48.4h7\n\t\tc2,0,3.5-0.5,4.5-1.4c1-0.9,1.5-2,1.5-3.4c0-1-0.2-1.9-0.7-2.7c-0.5-0.8-1.2-1.5-2-2c-0.9-0.5-1.9-0.7-3.1-0.7h-7.1V48.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M124.2,50.5h-2.5l9.6-26.4h2.6l9.6,26.4H141l-8.3-23.3h-0.2L124.2,50.5z M126,40.4h13.1v2.2H126V40.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M148,50.5V24.1h2.4v24.2H163v2.2H148z"}),r.createElement("path",{className:"minioApplicationName",d:"M170.1,50.5h-2.5l9.6-26.4h2.6l9.6,26.4h-2.5l-8.3-23.3h-0.2L170.1,50.5L170.1,50.5z M171.9,40.4H185v2.2\n\t\th-13.1L171.9,40.4L171.9,40.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M214.5,24.1v26.4h-2.3l-15.6-22.1h-0.2v22.1h-2.4V24.1h2.3l15.6,22.1h0.2V24.1\n\t\tC212.1,24.1,214.5,24.1,214.5,24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M242.1,32.4h-2.4c-0.2-0.9-0.5-1.7-1-2.5c-0.5-0.8-1.1-1.4-1.8-2c-0.7-0.6-1.5-1-2.4-1.3\n\t\tc-0.9-0.3-1.9-0.5-2.9-0.5c-1.7,0-3.2,0.4-4.6,1.3c-1.4,0.9-2.5,2.1-3.3,3.8c-0.8,1.7-1.2,3.7-1.2,6.2c0,2.4,0.4,4.5,1.2,6.2\n\t\tc0.8,1.7,1.9,2.9,3.3,3.8c1.4,0.9,2.9,1.3,4.6,1.3c1,0,2-0.2,2.9-0.5c0.9-0.3,1.7-0.8,2.4-1.3c0.7-0.6,1.3-1.2,1.8-2\n\t\tc0.5-0.8,0.8-1.6,1-2.5h2.4c-0.2,1.2-0.6,2.3-1.2,3.4c-0.6,1-1.3,2-2.2,2.7c-0.9,0.8-1.9,1.4-3.1,1.8c-1.2,0.4-2.5,0.7-3.9,0.7\n\t\tc-2.2,0-4.2-0.6-5.9-1.7c-1.7-1.1-3.1-2.7-4-4.7c-1-2-1.5-4.4-1.5-7.2s0.5-5.2,1.5-7.2c1-2,2.3-3.6,4-4.7c1.7-1.1,3.7-1.7,5.9-1.7\n\t\tc1.4,0,2.7,0.2,3.9,0.7c1.2,0.4,2.2,1,3.1,1.8c0.9,0.8,1.7,1.7,2.2,2.7C241.5,30,241.9,31.2,242.1,32.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M247.8,50.5V24.1h15.3v2.2h-12.9v9.9h12.1v2.2h-12.1v10h13.2v2.2H247.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M269.4,50.5V24.1h8.5c1.9,0,3.4,0.3,4.7,1c1.3,0.7,2.2,1.6,2.8,2.8c0.6,1.2,1,2.6,1,4.1c0,1.5-0.3,2.9-1,4.1\n\t\tc-0.6,1.2-1.6,2.1-2.8,2.8s-2.8,1-4.7,1h-7.3v-2.2h7.2c1.4,0,2.5-0.2,3.4-0.7c0.9-0.5,1.6-1.1,2-1.9c0.5-0.8,0.7-1.8,0.7-3\n\t\tc0-1.2-0.2-2.2-0.7-3c-0.5-0.9-1.1-1.5-2.1-2c-0.9-0.5-2.1-0.7-3.5-0.7h-6v24.2H269.4z M281,38.6l6.5,11.9h-2.8l-6.4-11.9H281z"}),r.createElement("rect",{x:"22.3",y:"0.4",className:"minioSection",width:"3.8",height:"11.2"}),r.createElement("path",{className:"minioSection",d:"M17.7,0.5L9.9,5.2c-0.1,0.1-0.2,0.1-0.4,0L1.8,0.5C1.6,0.4,1.4,0.3,1.2,0.3h0c-0.6,0-1.1,0.5-1.1,1.1v10.2H4\n\t\tV6.7c0-0.3,0.3-0.5,0.6-0.3l4.4,2.7c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.1,0.6,0,0.6,0.3v4.9h3.8V1.4c0-0.6-0.5-1.1-1.1-1.1h0\n\t\tC18,0.3,17.8,0.4,17.7,0.5L17.7,0.5z"}),r.createElement("path",{className:"minioSection",d:"M45.2,0.4h-3.9v5.1c0,0.3-0.3,0.5-0.6,0.3L30.7,0.5c-0.2-0.1-0.3-0.1-0.5-0.1h0c-0.6,0-1.1,0.5-1.1,1.1v10.1\n\t\tH33V6.5c0-0.3,0.3-0.5,0.6-0.3l10.1,5.4c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L45.2,0.4L45.2,0.4L45.2,0.4z"}),r.createElement("path",{className:"minioSection",d:"M48.3,11.6V0.4h1.8v11.2L48.3,11.6L48.3,11.6z"}),r.createElement("path",{className:"minioSection",d:"M60.3,11.8c-4.7,0-8.1-2.2-8.1-5.9c0-3.6,3.4-5.9,8.1-5.9c4.7,0,8.1,2.2,8.1,5.9S65.1,11.8,60.3,11.8z\n\t\t M60.3,1.6c-3.5,0-6.2,1.5-6.2,4.4c0,2.8,2.7,4.4,6.2,4.4c3.5,0,6.3-1.5,6.3-4.4C66.6,3.1,63.9,1.6,60.3,1.6L60.3,1.6z"})))},Nr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M4.7,24.3V51H1.5V24.3C1.5,24.3,4.7,24.3,4.7,24.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M32.3,24.3V51h-3.1L14.7,30h-0.3v21h-3.2V24.3h3.1l14.6,21h0.3v-21C29.2,24.3,32.3,24.3,32.3,24.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M47,51h-8.2V24.3h8.6c2.6,0,4.8,0.5,6.6,1.6c1.8,1.1,3.3,2.6,4.2,4.6c1,2,1.5,4.4,1.5,7.1\n\t\tc0,2.8-0.5,5.2-1.5,7.2c-1,2-2.4,3.5-4.3,4.6C52.1,50.5,49.7,51,47,51z M42,48.1h4.8c2.2,0,4-0.4,5.5-1.3c1.5-0.9,2.5-2.1,3.2-3.6\n\t\tc0.7-1.6,1.1-3.4,1.1-5.6c0-2.2-0.4-4-1.1-5.6c-0.7-1.6-1.8-2.8-3.2-3.6c-1.4-0.8-3.1-1.3-5.2-1.3H42V48.1L42,48.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M65.2,51V24.3h16.1v2.9H68.4v9h12v2.9h-12v9.1h13.1V51H65.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M88.7,24.3l6.9,11.1h0.2l6.9-11.1h3.8l-8.4,13.4l8.4,13.4h-3.8l-6.9-10.9h-0.2L88.7,51h-3.8l8.6-13.4\n\t\tl-8.6-13.4C84.9,24.3,88.7,24.3,88.7,24.3z"}),r.createElement("rect",{x:"22.4",y:"0.3",className:"minioSection",width:"3.9",height:"11.3"}),r.createElement("path",{className:"minioSection",d:"M17.7,0.4L9.9,5.2c-0.1,0.1-0.3,0.1-0.4,0L1.6,0.4C1.5,0.3,1.3,0.2,1.1,0.2h0C0.5,0.2,0,0.7,0,1.3v10.3h3.9\n\t\tV6.7c0-0.3,0.3-0.5,0.6-0.3l4.4,2.7c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.2,0.6,0,0.6,0.3v4.9h3.9V1.3c0-0.6-0.5-1.1-1.1-1.1h0\n\t\tC18.1,0.2,17.9,0.3,17.7,0.4L17.7,0.4z"}),r.createElement("path",{className:"minioSection",d:"M45.6,0.2h-3.9v5.2c0,0.3-0.3,0.5-0.6,0.3L30.9,0.4c-0.2-0.1-0.3-0.1-0.5-0.1h0c-0.6,0-1.1,0.5-1.1,1.1v10.3\n\t\th3.9V6.5c0-0.3,0.3-0.5,0.6-0.3L44,11.5c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L45.6,0.2L45.6,0.2L45.6,0.2z"}),r.createElement("path",{className:"minioSection",d:"M48.7,11.6V0.2h1.8v11.3L48.7,11.6L48.7,11.6z"}),r.createElement("path",{className:"minioSection",d:"M60.9,11.8c-4.8,0-8.2-2.3-8.2-5.9c0-3.6,3.4-5.9,8.2-5.9c4.8,0,8.2,2.3,8.2,5.9S65.8,11.8,60.9,11.8z\n\t\t M60.9,1.5c-3.6,0-6.3,1.6-6.3,4.4c0,2.9,2.7,4.4,6.3,4.4c3.6,0,6.3-1.5,6.3-4.4C67.2,3.1,64.5,1.5,60.9,1.5L60.9,1.5z"})))},Rr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 184.538 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M22.8,32.4h-3.2c-0.2-0.9-0.5-1.7-1-2.4c-0.5-0.7-1-1.3-1.7-1.8c-0.7-0.5-1.4-0.8-2.2-1.1\n\t\tc-0.8-0.2-1.7-0.4-2.5-0.4c-1.6,0-3.1,0.4-4.4,1.2s-2.3,2-3.1,3.6c-0.8,1.6-1.1,3.5-1.1,5.8s0.4,4.2,1.1,5.8\n\t\tc0.8,1.6,1.8,2.8,3.1,3.6c1.3,0.8,2.8,1.2,4.4,1.2c0.9,0,1.7-0.1,2.5-0.4c0.8-0.2,1.6-0.6,2.2-1.1c0.7-0.5,1.2-1.1,1.7-1.8\n\t\tc0.5-0.7,0.8-1.5,1-2.4h3.2c-0.2,1.4-0.7,2.6-1.3,3.6c-0.6,1.1-1.4,2-2.4,2.7c-0.9,0.7-2,1.3-3.2,1.7c-1.2,0.4-2.4,0.6-3.8,0.6\n\t\tc-2.3,0-4.3-0.6-6-1.7s-3.1-2.7-4.2-4.7c-1-2-1.5-4.5-1.5-7.2c0-2.8,0.5-5.2,1.5-7.2c1-2,2.4-3.6,4.2-4.7c1.8-1.1,3.8-1.7,6-1.7\n\t\tc1.3,0,2.6,0.2,3.8,0.6c1.2,0.4,2.2,1,3.2,1.7c0.9,0.7,1.7,1.7,2.4,2.7C22.1,29.8,22.5,31,22.8,32.4L22.8,32.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M29,50.6h-3.4l9.7-26.5h3.3l9.7,26.5h-3.4l-7.9-22.3H37L29,50.6z M30.3,40.3h13.6v2.8H30.3V40.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M72.7,32.4h-3.2c-0.2-0.9-0.5-1.7-1-2.4c-0.5-0.7-1-1.3-1.7-1.8c-0.7-0.5-1.4-0.8-2.2-1.1\n\t\tc-0.8-0.2-1.7-0.4-2.5-0.4c-1.6,0-3.1,0.4-4.4,1.2c-1.3,0.8-2.3,2-3.1,3.6c-0.8,1.6-1.1,3.5-1.1,5.8s0.4,4.2,1.1,5.8\n\t\tc0.8,1.6,1.8,2.8,3.1,3.6C59,47.6,60.4,48,62,48c0.9,0,1.7-0.1,2.5-0.4c0.8-0.2,1.6-0.6,2.2-1.1c0.7-0.5,1.2-1.1,1.7-1.8\n\t\tc0.5-0.7,0.8-1.5,1-2.4h3.2c-0.2,1.4-0.7,2.6-1.3,3.6c-0.6,1.1-1.4,2-2.4,2.7c-0.9,0.7-2,1.3-3.2,1.7C64.6,50.8,63.4,51,62,51\n\t\tc-2.3,0-4.3-0.6-6-1.7c-1.8-1.1-3.1-2.7-4.2-4.7c-1-2-1.5-4.5-1.5-7.2c0-2.8,0.5-5.2,1.5-7.2c1-2,2.4-3.6,4.2-4.7\n\t\tc1.8-1.1,3.8-1.7,6-1.7c1.3,0,2.6,0.2,3.8,0.6c1.2,0.4,2.2,1,3.2,1.7c0.9,0.7,1.7,1.7,2.4,2.7C72,29.8,72.5,31,72.7,32.4L72.7,32.4\n\t\tz"}),r.createElement("path",{className:"minioApplicationName",d:"M77.9,50.6V24.1h3.2v11.8h14.1V24.1h3.2v26.5h-3.2V38.8H81.1v11.9H77.9L77.9,50.6z"}),r.createElement("path",{className:"minioApplicationName",d:"M104.9,50.6V24.1h16V27h-12.8v9h12v2.8h-12v9h13v2.8H104.9z"}),r.createElement("rect",{x:"22.2",y:"0.2",className:"minioSection",width:"3.8",height:"11.3"}),r.createElement("path",{className:"minioSection",d:"M17.6,0.4L9.8,5.1c-0.1,0.1-0.3,0.1-0.4,0L1.6,0.4C1.5,0.3,1.3,0.2,1.1,0.2h0C0.5,0.2,0,0.7,0,1.3v10.2h3.8\n\t\tV6.6c0-0.3,0.3-0.5,0.6-0.3L8.8,9c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.2,0.6,0,0.6,0.3v4.9h3.8V1.3c0-0.6-0.5-1.1-1.1-1.1h0\n\t\tC18,0.2,17.8,0.3,17.6,0.4L17.6,0.4z"}),r.createElement("path",{className:"minioSection",d:"M45.3,0.2h-3.9v5.2c0,0.3-0.3,0.5-0.6,0.3L30.7,0.4c-0.2-0.1-0.3-0.1-0.5-0.1h0c-0.6,0-1.1,0.5-1.1,1.1v10.2\n\t\tH33V6.4c0-0.3,0.3-0.5,0.6-0.3l10.1,5.4c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L45.3,0.2L45.3,0.2L45.3,0.2z"}),r.createElement("path",{className:"minioSection",d:"M48.4,11.5V0.2h1.8v11.3L48.4,11.5L48.4,11.5z"}),r.createElement("path",{className:"minioSection",d:"M60.5,11.8c-4.8,0-8.1-2.3-8.1-5.9c0-3.6,3.4-5.9,8.1-5.9c4.7,0,8.2,2.3,8.2,5.9S65.3,11.8,60.5,11.8z\n\t\t M60.5,1.5c-3.5,0-6.3,1.5-6.3,4.4c0,2.8,2.7,4.4,6.3,4.4c3.5,0,6.3-1.5,6.3-4.4C66.7,3,64,1.5,60.5,1.5L60.5,1.5z"})))},Mr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 167.8 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M1.4,24.1h3.8l9,22h0.3l9-22h3.8v26.5h-3V30.5h-0.3l-8.3,20.1H13L4.7,30.5H4.5v20.1h-3V24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M56.2,37.4c0,2.8-0.5,5.2-1.5,7.2c-1,2-2.4,3.6-4.2,4.7c-1.8,1.1-3.8,1.7-6,1.7c-2.3,0-4.3-0.6-6-1.7\n\t\tc-1.8-1.1-3.1-2.7-4.2-4.7c-1-2-1.5-4.5-1.5-7.2c0-2.8,0.5-5.2,1.5-7.2c1-2,2.4-3.6,4.2-4.7c1.8-1.1,3.8-1.7,6-1.7\n\t\tc2.3,0,4.3,0.6,6,1.7c1.8,1.1,3.1,2.7,4.2,4.7C55.7,32.2,56.2,34.6,56.2,37.4z M53.1,37.4c0-2.3-0.4-4.2-1.1-5.8\n\t\tc-0.8-1.6-1.8-2.8-3.1-3.6c-1.3-0.8-2.8-1.2-4.4-1.2s-3.1,0.4-4.4,1.2c-1.3,0.8-2.3,2-3.1,3.6c-0.8,1.6-1.1,3.5-1.1,5.8\n\t\ts0.4,4.2,1.1,5.8c0.8,1.6,1.8,2.8,3.1,3.6c1.3,0.8,2.8,1.2,4.4,1.2s3.1-0.4,4.4-1.2c1.3-0.8,2.3-2,3.1-3.6\n\t\tC52.7,41.6,53.1,39.7,53.1,37.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M82.6,24.1v26.5h-3.1L65.1,29.8h-0.3v20.8h-3.2V24.1h3.1L79.2,45h0.3V24.1H82.6z"}),r.createElement("path",{className:"minioApplicationName",d:"M92.3,24.1v26.5h-3.2V24.1H92.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M97.2,27v-2.8h19.9V27h-8.3v23.7h-3.2V27H97.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M143.4,37.4c0,2.8-0.5,5.2-1.5,7.2c-1,2-2.4,3.6-4.2,4.7c-1.8,1.1-3.8,1.7-6,1.7c-2.3,0-4.3-0.6-6-1.7\n\t\tc-1.8-1.1-3.1-2.7-4.2-4.7c-1-2-1.5-4.5-1.5-7.2c0-2.8,0.5-5.2,1.5-7.2c1-2,2.4-3.6,4.2-4.7c1.8-1.1,3.8-1.7,6-1.7\n\t\tc2.3,0,4.3,0.6,6,1.7c1.8,1.1,3.1,2.7,4.2,4.7C142.9,32.2,143.4,34.6,143.4,37.4z M140.3,37.4c0-2.3-0.4-4.2-1.1-5.8\n\t\tc-0.8-1.6-1.8-2.8-3.1-3.6c-1.3-0.8-2.8-1.2-4.4-1.2c-1.6,0-3.1,0.4-4.4,1.2s-2.3,2-3.1,3.6c-0.8,1.6-1.1,3.5-1.1,5.8\n\t\ts0.4,4.2,1.1,5.8c0.8,1.6,1.8,2.8,3.1,3.6c1.3,0.8,2.8,1.2,4.4,1.2c1.6,0,3.1-0.4,4.4-1.2c1.3-0.8,2.3-2,3.1-3.6\n\t\tC139.9,41.6,140.3,39.7,140.3,37.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M148.8,50.6V24.1h9c2.1,0,3.8,0.4,5.1,1.1c1.3,0.7,2.3,1.7,3,2.9c0.6,1.2,1,2.6,1,4.2s-0.3,2.9-1,4.2\n\t\tc-0.6,1.2-1.6,2.2-2.9,2.8c-1.3,0.7-3,1-5.1,1h-7.2v-2.9h7.1c1.4,0,2.6-0.2,3.4-0.6c0.9-0.4,1.5-1,1.9-1.8c0.4-0.8,0.6-1.7,0.6-2.7\n\t\tc0-1.1-0.2-2-0.6-2.8c-0.4-0.8-1-1.4-1.9-1.8c-0.9-0.4-2-0.7-3.5-0.7H152v23.7L148.8,50.6L148.8,50.6z M161.2,38.7l6.5,11.9H164\n\t\tl-6.4-11.9H161.2z"}),r.createElement("rect",{x:"22.2",y:"0.2",className:"minioSection",width:"3.8",height:"11.3"}),r.createElement("path",{className:"minioSection",d:"M17.6,0.4L9.8,5.1c-0.1,0.1-0.3,0.1-0.4,0L1.6,0.4C1.5,0.3,1.3,0.2,1.1,0.2h0C0.5,0.2,0,0.7,0,1.3v10.2h3.8\n\t\tV6.6c0-0.3,0.3-0.5,0.6-0.3L8.8,9c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.2,0.6,0,0.6,0.3v4.9h3.8V1.3c0-0.6-0.5-1.1-1.1-1.1h0\n\t\tC18,0.2,17.8,0.3,17.6,0.4L17.6,0.4z"}),r.createElement("path",{className:"minioSection",d:"M45.3,0.2h-3.9v5.2c0,0.3-0.3,0.5-0.6,0.3L30.7,0.4c-0.2-0.1-0.3-0.1-0.5-0.1h0c-0.6,0-1.1,0.5-1.1,1.1v10.2\n\t\tH33V6.4c0-0.3,0.3-0.5,0.6-0.3l10.1,5.4c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L45.3,0.2L45.3,0.2L45.3,0.2z"}),r.createElement("path",{className:"minioSection",d:"M48.4,11.5V0.2h1.8v11.3L48.4,11.5L48.4,11.5z"}),r.createElement("path",{className:"minioSection",d:"M60.5,11.8c-4.8,0-8.1-2.3-8.1-5.9c0-3.6,3.4-5.9,8.1-5.9c4.7,0,8.2,2.3,8.2,5.9S65.3,11.8,60.5,11.8z\n\t\t M60.5,1.5c-3.5,0-6.3,1.5-6.3,4.4c0,2.8,2.7,4.4,6.3,4.4c3.5,0,6.3-1.5,6.3-4.4C66.7,3,64,1.5,60.5,1.5L60.5,1.5z"})))},Lr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 161.2 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M23.8,37.3c0,2.8-0.5,5.2-1.5,7.2c-1,2-2.4,3.6-4.1,4.7c-1.8,1.1-3.8,1.7-6,1.7c-2.3,0-4.3-0.6-6-1.7\n\t\ts-3.1-2.7-4.1-4.7c-1-2-1.5-4.4-1.5-7.2s0.5-5.2,1.5-7.2c1-2,2.4-3.6,4.1-4.7c1.8-1.1,3.8-1.7,6-1.7c2.3,0,4.3,0.6,6,1.7\n\t\tc1.8,1.1,3.1,2.7,4.1,4.7C23.3,32.1,23.8,34.5,23.8,37.3z M20.7,37.3c0-2.3-0.4-4.2-1.1-5.8c-0.8-1.6-1.8-2.8-3.1-3.6\n\t\tc-1.3-0.8-2.7-1.2-4.3-1.2S9,27.1,7.7,27.9c-1.3,0.8-2.3,2-3.1,3.6c-0.8,1.6-1.1,3.5-1.1,5.8s0.4,4.2,1.1,5.8\n\t\tc0.8,1.6,1.8,2.8,3.1,3.6c1.3,0.8,2.7,1.2,4.3,1.2s3.1-0.4,4.3-1.2c1.3-0.8,2.3-2,3.1-3.6C20.3,41.5,20.7,39.6,20.7,37.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M29.1,50.5V24.1h9.2c1.8,0,3.4,0.3,4.6,0.9c1.2,0.6,2.1,1.5,2.7,2.5c0.6,1.1,0.9,2.2,0.9,3.5\n\t\tc0,1.1-0.2,2.1-0.6,2.8c-0.4,0.7-0.9,1.3-1.6,1.8c-0.7,0.4-1.4,0.7-2.1,1v0.3c0.8,0.1,1.6,0.3,2.4,0.9c0.8,0.5,1.5,1.3,2.1,2.2\n\t\tc0.6,1,0.8,2.1,0.8,3.5c0,1.3-0.3,2.5-0.9,3.6c-0.6,1.1-1.6,1.9-2.9,2.5c-1.3,0.6-3,0.9-5.1,0.9L29.1,50.5L29.1,50.5z M32.3,35.7\n\t\th5.9c1,0,1.8-0.2,2.6-0.6c0.8-0.4,1.4-0.9,1.9-1.6c0.5-0.7,0.7-1.5,0.7-2.4c0-1.2-0.4-2.2-1.2-3c-0.8-0.8-2.1-1.2-3.8-1.2h-6V35.7z\n\t\t M32.3,47.7h6.4c2.1,0,3.6-0.4,4.5-1.2c0.9-0.8,1.3-1.8,1.3-3c0-0.9-0.2-1.7-0.7-2.5c-0.5-0.8-1.1-1.4-2-1.8\n\t\tc-0.8-0.5-1.8-0.7-3-0.7h-6.5C32.3,38.5,32.3,47.7,32.3,47.7z"}),r.createElement("path",{className:"minioApplicationName",d:"M67.3,30.7c-0.2-1.3-0.8-2.3-1.9-3c-1.1-0.7-2.5-1.1-4.1-1.1c-1.2,0-2.2,0.2-3.1,0.6c-0.9,0.4-1.6,0.9-2,1.6\n\t\tc-0.5,0.7-0.7,1.4-0.7,2.3c0,0.7,0.2,1.3,0.5,1.8c0.3,0.5,0.8,0.9,1.3,1.3c0.5,0.3,1.1,0.6,1.7,0.8c0.6,0.2,1.1,0.4,1.6,0.5\n\t\tl2.7,0.7c0.7,0.2,1.5,0.4,2.3,0.7c0.8,0.3,1.7,0.8,2.4,1.3c0.8,0.5,1.4,1.2,1.9,2.1c0.5,0.9,0.8,1.9,0.8,3.1c0,1.4-0.4,2.7-1.1,3.9\n\t\tc-0.7,1.2-1.8,2.1-3.3,2.8c-1.4,0.7-3.2,1-5.2,1c-1.9,0-3.5-0.3-4.9-0.9c-1.4-0.6-2.5-1.5-3.3-2.6c-0.8-1.1-1.2-2.4-1.3-3.8H55\n\t\tc0.1,1,0.4,1.8,1,2.5c0.6,0.7,1.3,1.1,2.2,1.4c0.9,0.3,1.9,0.5,2.9,0.5c1.2,0,2.3-0.2,3.3-0.6c1-0.4,1.7-1,2.3-1.7\n\t\tc0.6-0.7,0.9-1.6,0.9-2.5c0-0.9-0.2-1.6-0.7-2.1c-0.5-0.6-1.1-1-1.9-1.3s-1.7-0.6-2.6-0.9L59.1,38c-2.1-0.6-3.7-1.4-4.9-2.5\n\t\tc-1.2-1.1-1.8-2.5-1.8-4.3c0-1.5,0.4-2.8,1.2-3.9c0.8-1.1,1.9-2,3.3-2.6c1.4-0.6,2.9-0.9,4.6-0.9c1.7,0,3.2,0.3,4.5,0.9\n\t\tc1.3,0.6,2.4,1.4,3.2,2.5c0.8,1.1,1.2,2.2,1.2,3.6L67.3,30.7L67.3,30.7z"}),r.createElement("path",{className:"minioApplicationName",d:"M76,50.5V24.1h16v2.8H79.2v8.9h11.9v2.8H79.2v9h13v2.8H76z"}),r.createElement("path",{className:"minioApplicationName",d:"M97.8,50.5V24.1h8.9c2.1,0,3.8,0.4,5.1,1.1c1.3,0.7,2.3,1.7,2.9,2.9c0.6,1.2,1,2.6,1,4.2s-0.3,2.9-1,4.1\n\t\tc-0.6,1.2-1.6,2.2-2.9,2.8c-1.3,0.7-3,1-5.1,1h-7.2v-2.9h7.1c1.4,0,2.6-0.2,3.4-0.6c0.9-0.4,1.5-1,1.9-1.8c0.4-0.8,0.6-1.7,0.6-2.7\n\t\tc0-1.1-0.2-2-0.6-2.8c-0.4-0.8-1-1.4-1.9-1.8c-0.9-0.4-2-0.7-3.4-0.7H101v23.6L97.8,50.5L97.8,50.5z M110.2,38.6l6.5,11.9H113\n\t\tl-6.4-11.9H110.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M121.5,24.1l7.9,22.3h0.3l7.9-22.3h3.4l-9.7,26.5h-3.3l-9.7-26.5H121.5z"}),r.createElement("path",{className:"minioApplicationName",d:"M145,50.5V24.1h16v2.8h-12.8v8.9h11.9v2.8h-11.9v9h13v2.8H145z"}),r.createElement("rect",{x:"22.2",y:"0.2",className:"minioSection",width:"3.8",height:"11.2"}),r.createElement("path",{className:"minioSection",d:"M17.6,0.4L9.8,5.1c-0.1,0.1-0.2,0.1-0.4,0L1.6,0.4C1.5,0.3,1.3,0.2,1.1,0.2h0C0.5,0.2,0,0.7,0,1.3v10.2h3.8\n\t\tV6.6c0-0.3,0.3-0.5,0.6-0.3L8.8,9c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.1,0.6,0,0.6,0.3v4.9h3.8V1.3c0-0.6-0.5-1.1-1.1-1.1h0\n\t\tC17.9,0.2,17.7,0.3,17.6,0.4L17.6,0.4z"}),r.createElement("path",{className:"minioSection",d:"M45.2,0.2h-3.9v5.2c0,0.3-0.3,0.5-0.6,0.3L30.6,0.4c-0.2-0.1-0.3-0.1-0.5-0.1h0c-0.6,0-1.1,0.5-1.1,1.1v10.2\n\t\th3.9V6.4c0-0.3,0.3-0.5,0.6-0.3l10.1,5.4c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L45.2,0.2L45.2,0.2L45.2,0.2z"}),r.createElement("path",{className:"minioSection",d:"M48.3,11.5V0.2h1.8v11.2L48.3,11.5L48.3,11.5z"}),r.createElement("path",{className:"minioSection",d:"M60.3,11.7c-4.7,0-8.1-2.3-8.1-5.9c0-3.6,3.4-5.9,8.1-5.9c4.7,0,8.1,2.3,8.1,5.9S65.2,11.7,60.3,11.7z\n\t\t M60.3,1.5c-3.5,0-6.2,1.5-6.2,4.4c0,2.8,2.7,4.4,6.2,4.4c3.5,0,6.3-1.5,6.3-4.4C66.6,3,63.9,1.5,60.3,1.5L60.3,1.5z"})))},Dr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 327.6 51",inverse:t,onClick:n},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M0.8,24.1h5.8L14.4,43h0.3l7.7-18.9h5.8v26.1h-4.5V32.3h-0.2l-7.2,17.9h-3.4L5.6,32.3H5.4v18H0.8\n\t\tC0.8,50.2,0.8,24.1,0.8,24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M38.1,24.1v26.1h-4.7V24.1C33.4,24.1,38.1,24.1,38.1,24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M57.4,31.3c-0.1-1.1-0.6-2-1.5-2.6c-0.9-0.6-2-0.9-3.4-0.9c-1,0-1.8,0.1-2.5,0.4c-0.7,0.3-1.2,0.7-1.6,1.2\n\t\ts-0.6,1.1-0.6,1.7c0,0.5,0.1,1,0.4,1.4c0.3,0.4,0.6,0.7,1,1s0.9,0.5,1.4,0.7c0.5,0.2,1.1,0.3,1.6,0.5l2.4,0.6\n\t\tc1,0.2,1.9,0.5,2.8,0.9c0.9,0.4,1.7,0.9,2.5,1.5c0.7,0.6,1.3,1.3,1.7,2.2c0.4,0.8,0.6,1.8,0.6,3c0,1.5-0.4,2.9-1.2,4\n\t\tc-0.8,1.2-1.9,2.1-3.4,2.7c-1.5,0.7-3.3,1-5.3,1c-2,0-3.8-0.3-5.3-0.9c-1.5-0.6-2.7-1.5-3.5-2.8c-0.8-1.2-1.3-2.7-1.4-4.4h4.7\n\t\tc0.1,0.9,0.3,1.7,0.8,2.3c0.5,0.6,1.1,1.1,1.9,1.4c0.8,0.3,1.7,0.4,2.7,0.4c1,0,1.9-0.2,2.7-0.5c0.8-0.3,1.4-0.7,1.8-1.3\n\t\tc0.4-0.6,0.7-1.2,0.7-2c0-0.7-0.2-1.2-0.6-1.7c-0.4-0.4-0.9-0.8-1.6-1.1c-0.7-0.3-1.5-0.6-2.5-0.8l-3-0.8c-2.1-0.6-3.8-1.4-5.1-2.5\n\t\tc-1.2-1.1-1.9-2.6-1.9-4.5c0-1.5,0.4-2.9,1.3-4c0.8-1.2,2-2.1,3.4-2.7c1.4-0.6,3.1-1,4.9-1c1.9,0,3.5,0.3,4.9,1\n\t\tc1.4,0.6,2.5,1.5,3.3,2.7c0.8,1.1,1.2,2.4,1.2,3.9H57.4z"}),r.createElement("path",{className:"minioApplicationName",d:"M80.7,31.3c-0.1-1.1-0.6-2-1.5-2.6c-0.9-0.6-2-0.9-3.4-0.9c-1,0-1.8,0.1-2.5,0.4c-0.7,0.3-1.2,0.7-1.6,1.2\n\t\tc-0.4,0.5-0.6,1.1-0.6,1.7c0,0.5,0.1,1,0.4,1.4c0.3,0.4,0.6,0.7,1,1c0.4,0.3,0.9,0.5,1.4,0.7c0.5,0.2,1.1,0.3,1.6,0.5l2.4,0.6\n\t\tc1,0.2,1.9,0.5,2.8,0.9c0.9,0.4,1.7,0.9,2.5,1.5c0.7,0.6,1.3,1.3,1.7,2.2c0.4,0.8,0.6,1.8,0.6,3c0,1.5-0.4,2.9-1.2,4\n\t\tc-0.8,1.2-1.9,2.1-3.4,2.7c-1.5,0.7-3.3,1-5.3,1c-2,0-3.8-0.3-5.3-0.9c-1.5-0.6-2.7-1.5-3.5-2.8c-0.8-1.2-1.3-2.7-1.4-4.4h4.7\n\t\tc0.1,0.9,0.3,1.7,0.8,2.3c0.5,0.6,1.1,1.1,1.9,1.4c0.8,0.3,1.7,0.4,2.7,0.4c1,0,1.9-0.2,2.7-0.5c0.8-0.3,1.4-0.7,1.8-1.3\n\t\tc0.4-0.6,0.7-1.2,0.7-2c0-0.7-0.2-1.2-0.6-1.7c-0.4-0.4-0.9-0.8-1.6-1.1s-1.5-0.6-2.5-0.8l-3-0.8c-2.1-0.6-3.8-1.4-5.1-2.5\n\t\tc-1.2-1.1-1.9-2.6-1.9-4.5c0-1.5,0.4-2.9,1.3-4c0.8-1.2,2-2.1,3.4-2.7c1.4-0.6,3.1-1,4.9-1c1.9,0,3.5,0.3,4.9,1\n\t\tc1.4,0.6,2.5,1.5,3.3,2.7c0.8,1.1,1.2,2.4,1.2,3.9H80.7z"}),r.createElement("path",{className:"minioApplicationName",d:"M94.5,24.1v26.1h-4.7V24.1C89.8,24.1,94.5,24.1,94.5,24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M123,37.2c0,2.8-0.5,5.2-1.6,7.2c-1,2-2.5,3.5-4.3,4.6c-1.8,1.1-3.9,1.6-6.1,1.6c-2.3,0-4.3-0.5-6.1-1.6\n\t\tc-1.8-1.1-3.2-2.6-4.3-4.6c-1-2-1.6-4.4-1.6-7.2c0-2.8,0.5-5.2,1.6-7.2c1-2,2.5-3.5,4.3-4.6c1.8-1.1,3.9-1.6,6.1-1.6\n\t\tc2.3,0,4.3,0.5,6.1,1.6c1.8,1.1,3.2,2.6,4.3,4.6C122.5,32,123,34.4,123,37.2z M118.2,37.2c0-2-0.3-3.7-0.9-5\n\t\tc-0.6-1.4-1.5-2.4-2.6-3.1c-1.1-0.7-2.3-1.1-3.8-1.1c-1.4,0-2.7,0.4-3.8,1.1c-1.1,0.7-1.9,1.7-2.6,3.1c-0.6,1.4-0.9,3-0.9,5\n\t\tc0,2,0.3,3.7,0.9,5c0.6,1.4,1.5,2.4,2.6,3.1c1.1,0.7,2.3,1.1,3.8,1.1c1.4,0,2.7-0.4,3.8-1.1c1.1-0.7,1.9-1.7,2.6-3.1\n\t\tC117.9,40.8,118.2,39.2,118.2,37.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M148.9,24.1v26.1h-4.2l-12.3-17.8h-0.2v17.8h-4.7V24.1h4.2L144,41.9h0.2V24.1\n\t\tC144.2,24.1,148.9,24.1,148.9,24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M175.4,32.3H173c-0.2-0.9-0.5-1.7-1-2.5c-0.5-0.8-1-1.4-1.7-2c-0.7-0.6-1.5-1-2.4-1.3\n\t\tc-0.9-0.3-1.8-0.5-2.9-0.5c-1.6,0-3.2,0.4-4.5,1.3c-1.4,0.9-2.4,2.1-3.2,3.8c-0.8,1.7-1.2,3.7-1.2,6.1c0,2.4,0.4,4.5,1.2,6.1\n\t\tc0.8,1.7,1.9,2.9,3.2,3.8c1.4,0.9,2.9,1.3,4.5,1.3c1,0,2-0.2,2.9-0.5c0.9-0.3,1.7-0.8,2.4-1.3c0.7-0.6,1.3-1.2,1.7-2\n\t\tc0.5-0.8,0.8-1.6,1-2.5h2.4c-0.2,1.2-0.6,2.3-1.2,3.3c-0.6,1-1.3,1.9-2.2,2.7c-0.9,0.8-1.9,1.4-3.1,1.8c-1.2,0.4-2.4,0.6-3.8,0.6\n\t\tc-2.2,0-4.1-0.5-5.8-1.7c-1.7-1.1-3-2.7-4-4.7c-1-2-1.4-4.4-1.4-7.1s0.5-5.1,1.4-7.1c1-2,2.3-3.6,4-4.7c1.7-1.1,3.6-1.7,5.8-1.7\n\t\tc1.4,0,2.7,0.2,3.8,0.6c1.2,0.4,2.2,1,3.1,1.8c0.9,0.8,1.6,1.7,2.2,2.7C174.8,30,175.2,31.1,175.4,32.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M202.4,37.2c0,2.7-0.5,5.1-1.5,7.1c-1,2-2.3,3.6-4,4.7c-1.7,1.1-3.6,1.7-5.8,1.7c-2.2,0-4.1-0.5-5.8-1.7\n\t\tc-1.7-1.1-3-2.7-4-4.7c-1-2-1.4-4.4-1.4-7.1c0-2.7,0.5-5.1,1.4-7.1c1-2,2.3-3.6,4-4.7c1.7-1.1,3.6-1.7,5.8-1.7\n\t\tc2.2,0,4.1,0.6,5.8,1.7c1.7,1.1,3,2.7,4,4.7C201.9,32.1,202.4,34.5,202.4,37.2z M200.1,37.2c0-2.3-0.4-4.3-1.2-6\n\t\tc-0.8-1.7-1.8-2.9-3.2-3.8c-1.4-0.9-2.9-1.3-4.6-1.3c-1.7,0-3.2,0.4-4.6,1.3c-1.4,0.9-2.4,2.2-3.2,3.8c-0.8,1.7-1.2,3.7-1.2,6\n\t\tc0,2.3,0.4,4.3,1.2,6c0.8,1.7,1.8,2.9,3.2,3.8c1.4,0.9,2.9,1.3,4.6,1.3c1.7,0,3.3-0.4,4.6-1.3c1.4-0.9,2.4-2.2,3.2-3.8\n\t\tC199.7,41.5,200.1,39.5,200.1,37.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M228.5,24.1v26.1h-2.3l-15.4-21.9h-0.2v21.9h-2.4V24.1h2.3L225.9,46h0.2V24.1\n\t\tC226.1,24.1,228.5,24.1,228.5,24.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M233.8,26.3v-2.1h18.9v2.1h-8.3v24h-2.4v-24C242.1,26.3,233.8,26.3,233.8,26.3z"}),r.createElement("path",{className:"minioApplicationName",d:"M258.1,50.2V24.1h8.4c1.9,0,3.4,0.3,4.6,1s2.2,1.6,2.8,2.8c0.6,1.2,0.9,2.5,0.9,4c0,1.5-0.3,2.9-0.9,4\n\t\tc-0.6,1.2-1.6,2.1-2.8,2.7c-1.2,0.7-2.8,1-4.6,1h-7.2v-2.2h7.1c1.4,0,2.5-0.2,3.4-0.7c0.9-0.5,1.6-1.1,2-1.9c0.4-0.8,0.7-1.8,0.7-3\n\t\tc0-1.1-0.2-2.1-0.7-3s-1.1-1.5-2-2c-0.9-0.5-2-0.7-3.4-0.7h-6v24H258.1z M269.6,38.5l6.4,11.8h-2.8l-6.4-11.8H269.6z"}),r.createElement("path",{className:"minioApplicationName",d:"M302.2,37.2c0,2.7-0.5,5.1-1.5,7.1c-1,2-2.3,3.6-4,4.7c-1.7,1.1-3.6,1.7-5.8,1.7c-2.2,0-4.1-0.5-5.8-1.7\n\t\tc-1.7-1.1-3-2.7-4-4.7c-1-2-1.4-4.4-1.4-7.1c0-2.7,0.5-5.1,1.4-7.1c1-2,2.3-3.6,4-4.7c1.7-1.1,3.6-1.7,5.8-1.7\n\t\tc2.2,0,4.1,0.6,5.8,1.7c1.7,1.1,3,2.7,4,4.7C301.7,32.1,302.2,34.5,302.2,37.2z M299.8,37.2c0-2.3-0.4-4.3-1.2-6s-1.8-2.9-3.2-3.8\n\t\tc-1.4-0.9-2.9-1.3-4.6-1.3c-1.7,0-3.2,0.4-4.6,1.3c-1.4,0.9-2.4,2.2-3.2,3.8c-0.8,1.7-1.2,3.7-1.2,6c0,2.3,0.4,4.3,1.2,6\n\t\tc0.8,1.7,1.8,2.9,3.2,3.8c1.4,0.9,2.9,1.3,4.6,1.3c1.7,0,3.3-0.4,4.6-1.3c1.4-0.9,2.4-2.2,3.2-3.8S299.8,39.5,299.8,37.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M307.9,50.2V24.1h2.4v24h12.4v2.1H307.9z"}),r.createElement("rect",{x:"21.9",y:"0.6",className:"minioSection",width:"3.8",height:"11.1"}),r.createElement("path",{className:"minioSection",d:"M17.3,0.7L9.6,5.4c-0.1,0.1-0.2,0.1-0.4,0L1.6,0.7C1.4,0.6,1.3,0.6,1.1,0.6h0C0.5,0.6,0,1,0,1.6v10.1h3.8V6.9\n\t\tc0-0.3,0.3-0.5,0.6-0.3l4.3,2.6c0.4,0.3,1,0.3,1.4,0l4.5-2.7c0.3-0.1,0.6,0,0.6,0.3v4.8h3.8V1.6c0-0.6-0.5-1.1-1.1-1.1h0\n\t\tC17.7,0.6,17.5,0.6,17.3,0.7L17.3,0.7z"}),r.createElement("path",{className:"minioSection",d:"M44.6,0.6h-3.8v5.1c0,0.3-0.3,0.5-0.6,0.3l-9.9-5.3c-0.2-0.1-0.3-0.1-0.5-0.1h0c-0.6,0-1.1,0.5-1.1,1.1v10h3.8\n\t\tv-5c0-0.3,0.3-0.5,0.6-0.3l10,5.3c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L44.6,0.6L44.6,0.6L44.6,0.6z"}),r.createElement("path",{className:"minioSection",d:"M47.6,11.7V0.6h1.8v11.1L47.6,11.7L47.6,11.7z"}),r.createElement("path",{className:"minioSection",d:"M59.5,11.9c-4.7,0-8-2.2-8-5.8c0-3.5,3.3-5.8,8-5.8c4.7,0,8,2.2,8,5.8S64.3,11.9,59.5,11.9z M59.5,1.9\n\t\tc-3.5,0-6.2,1.5-6.2,4.3c0,2.8,2.7,4.3,6.2,4.3c3.5,0,6.2-1.5,6.2-4.3C65.7,3.4,63,1.9,59.5,1.9L59.5,1.9z"})))},Pr=function(e){var t=e.inverse;return r.createElement(mr,{viewBox:"0 0 219 51",inverse:t},r.createElement("g",null,r.createElement("rect",{x:"22.2",y:"0.2",className:"minioSection",width:"3.8",height:"11.2"}),r.createElement("path",{className:"minioSection",d:"M17.6,0.4L9.8,5.1c-0.1,0.1-0.2,0.1-0.4,0L1.6,0.4C1.5,0.3,1.3,0.2,1.1,0.2l0,0C0.5,0.2,0,0.7,0,1.3v10.2h3.8\n\t\tV6.6c0-0.3,0.3-0.5,0.6-0.3L8.8,9c0.4,0.3,1,0.3,1.4,0l4.6-2.7c0.3-0.1,0.6,0,0.6,0.3v4.9h3.8V1.3c0-0.6-0.5-1.1-1.1-1.1l0,0\n\t\tC17.9,0.2,17.7,0.3,17.6,0.4L17.6,0.4z"}),r.createElement("path",{className:"minioSection",d:"M45.2,0.2h-3.9v5.2c0,0.3-0.3,0.5-0.6,0.3L30.6,0.4c-0.2-0.1-0.3-0.1-0.5-0.1l0,0c-0.6,0-1.1,0.5-1.1,1.1v10.2\n\t\th3.9V6.4c0-0.3,0.3-0.5,0.6-0.3l10.1,5.4c0.2,0.1,0.3,0.1,0.5,0.1l0,0c0.6,0,1.1-0.5,1.1-1.1L45.2,0.2L45.2,0.2L45.2,0.2z"}),r.createElement("path",{className:"minioSection",d:"M48.3,11.5V0.2h1.8v11.2L48.3,11.5L48.3,11.5z"}),r.createElement("path",{className:"minioSection",d:"M60.3,11.7c-4.7,0-8.1-2.3-8.1-5.9s3.4-5.9,8.1-5.9s8.1,2.3,8.1,5.9S65.2,11.7,60.3,11.7z M60.3,1.5\n\t\tc-3.5,0-6.2,1.5-6.2,4.4c0,2.8,2.7,4.4,6.2,4.4s6.3-1.5,6.3-4.4S63.9,1.5,60.3,1.5L60.3,1.5z"}),r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M15.6,19.8c2.6,0,5.1,0.6,7.3,1.7c2.2,1.1,3.9,2.7,5.1,4.6l-2.9,1.9c-1-1.5-2.3-2.7-4-3.6c-1.7-0.9-3.5-1.3-5.5-1.3\n\t\t\tc-1.7,0-3.3,0.3-4.7,0.9c-1.5,0.6-2.7,1.4-3.8,2.5c-1.1,1.1-1.9,2.3-2.5,3.9c-0.6,1.5-0.9,3.2-0.9,5s0.3,3.4,0.9,5\n\t\t\tc0.6,1.5,1.5,2.8,2.5,3.9c1.1,1.1,2.3,1.9,3.8,2.5c1.5,0.6,3.1,0.9,4.7,0.9c2,0,3.8-0.4,5.5-1.3c1.6-0.9,3-2,4-3.6l2.8,2.1\n\t\t\tc-1.3,1.9-3,3.4-5.1,4.5c-2.2,1.1-4.5,1.6-7.1,1.6c-2.2,0-4.3-0.4-6.2-1.2c-1.9-0.8-3.6-1.9-5-3.2c-1.4-1.4-2.5-3-3.3-4.9\n\t\t\tc-0.8-1.9-1.2-4-1.2-6.3s0.4-4.3,1.2-6.3c0.8-1.9,1.9-3.6,3.3-4.9c1.4-1.4,3-2.4,5-3.2C11.3,20.2,13.4,19.8,15.6,19.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M48.2,19.8c3,0,5.6,0.7,8,2c2.4,1.3,4.2,3.2,5.6,5.5c1.3,2.4,2,5.1,2,8s-0.7,5.7-2,8c-1.3,2.4-3.2,4.2-5.6,5.6\n\t\t\tc-2.4,1.3-5.1,2-8,2c-2.2,0-4.3-0.4-6.2-1.2c-1.9-0.8-3.6-1.9-5-3.2c-1.4-1.4-2.5-3-3.3-4.9c-0.8-1.9-1.2-4-1.2-6.3\n\t\t\ts0.4-4.3,1.2-6.3c0.8-1.9,1.9-3.6,3.3-4.9c1.4-1.4,3-2.4,5-3.2C43.9,20.2,46,19.8,48.2,19.8z M48.2,23.2c-1.7,0-3.3,0.3-4.7,0.9\n\t\t\tc-1.5,0.6-2.7,1.4-3.8,2.5c-1.1,1.1-1.9,2.3-2.5,3.9c-0.6,1.5-0.9,3.2-0.9,5s0.3,3.4,0.9,5c0.6,1.5,1.5,2.8,2.5,3.9\n\t\t\tc1.1,1.1,2.3,1.9,3.8,2.5c1.5,0.6,3.1,0.9,4.7,0.9c2.3,0,4.3-0.5,6.1-1.5c1.8-1,3.3-2.5,4.3-4.3c1.1-1.9,1.6-4,1.6-6.4\n\t\t\ts-0.5-4.5-1.6-6.4s-2.5-3.3-4.3-4.3C52.5,23.7,50.5,23.2,48.2,23.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M96.2,20.3v30.3h-3.1L74.3,26.2v24.3h-3.5V20.3H74l18.8,24.3V20.3H96.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M126.5,23.2l-1.8,2.8c-2.8-1.9-5.8-2.8-9.1-2.8c-2.3,0-4.2,0.5-5.7,1.5c-1.4,1-2.2,2.3-2.2,4c0,1.4,0.6,2.5,1.7,3.3\n\t\t\tc1.1,0.8,2.9,1.3,5.3,1.6l2.9,0.3c1.3,0.2,2.5,0.4,3.6,0.8c1.1,0.4,2.1,0.8,3,1.4c0.9,0.6,1.6,1.4,2.1,2.4c0.5,1,0.8,2.1,0.8,3.4\n\t\t\tc0,1.9-0.6,3.6-1.7,5c-1.1,1.4-2.5,2.4-4.3,3.1c-1.8,0.7-3.8,1-6,1c-2.2,0-4.3-0.4-6.5-1.1s-4-1.7-5.4-2.8l1.9-2.8\n\t\t\tc1.1,0.9,2.6,1.7,4.4,2.4c1.8,0.7,3.7,1,5.6,1c2.5,0,4.5-0.5,6-1.4c1.6-1,2.4-2.3,2.4-4.1c0-1.4-0.6-2.6-1.8-3.4\n\t\t\tc-1.2-0.8-3.1-1.3-5.5-1.6l-3.1-0.3c-2.7-0.3-4.9-1.1-6.5-2.4c-1.6-1.3-2.4-3.2-2.4-5.6c0-1.9,0.5-3.5,1.6-4.9\n\t\t\tc1-1.4,2.4-2.4,4.1-3.1c1.7-0.7,3.6-1,5.8-1C119.8,19.9,123.4,21,126.5,23.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M147.9,19.8c3,0,5.6,0.7,8,2c2.4,1.3,4.2,3.2,5.6,5.5c1.3,2.4,2,5.1,2,8s-0.7,5.7-2,8c-1.3,2.4-3.2,4.2-5.6,5.6\n\t\t\tc-2.4,1.3-5.1,2-8,2c-2.2,0-4.3-0.4-6.2-1.2c-1.9-0.8-3.6-1.9-5-3.2c-1.4-1.4-2.5-3-3.3-4.9c-0.8-1.9-1.2-4-1.2-6.3\n\t\t\ts0.4-4.3,1.2-6.3s1.9-3.6,3.3-4.9c1.4-1.4,3-2.4,5-3.2C143.6,20.2,145.7,19.8,147.9,19.8z M147.9,23.2c-1.7,0-3.3,0.3-4.7,0.9\n\t\t\tc-1.5,0.6-2.7,1.4-3.8,2.5c-1.1,1.1-1.9,2.3-2.5,3.9c-0.6,1.5-0.9,3.2-0.9,5s0.3,3.4,0.9,5c0.6,1.5,1.5,2.8,2.5,3.9\n\t\t\tc1.1,1.1,2.3,1.9,3.8,2.5c1.5,0.6,3.1,0.9,4.7,0.9c2.3,0,4.3-0.5,6.1-1.5c1.8-1,3.3-2.5,4.3-4.3c1.1-1.9,1.6-4,1.6-6.4\n\t\t\ts-0.5-4.5-1.6-6.4s-2.5-3.3-4.3-4.3C152.2,23.7,150.2,23.2,147.9,23.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M191.6,47.3v3.3h-21V20.3h3.5v27H191.6z"}),r.createElement("path",{className:"minioApplicationName",d:"M218.2,47.3v3.3h-21.3V20.3H218v3.3h-17.6v10.1h17.1v3.2h-17.1v10.4H218.2z"}))))},Br=o.Ay.svg((function(e){return{fill:Wn(e,"theme.logoColor","#C51C3F")}})),Fr=function(e){var t=e.width,n=e.onClick;return r.createElement(Br,{viewBox:"0 0 162.612 24.465",width:t,onClick:n},r.createElement("path",{d:"M52.751.414h9.108v23.63h-9.108zM41.711.74l-18.488 9.92a.919.919 0 0 1-.856 0L3.879.74A2.808 2.808 0 0 0 2.558.414h-.023A2.4 2.4 0 0 0 0 2.641v21.376h9.1V13.842a.918.918 0 0 1 1.385-.682l10.361 5.568a3.634 3.634 0 0 0 3.336.028l10.933-5.634a.917.917 0 0 1 1.371.69v10.205h9.1V2.641A2.4 2.4 0 0 0 43.055.414h-.023a2.808 2.808 0 0 0-1.321.326zm65.564-.326h-9.237v10.755a.913.913 0 0 1-1.338.706L72.762.675a2.824 2.824 0 0 0-1.191-.261h-.016a2.4 2.4 0 0 0-2.535 2.227v21.377h9.163V13.275a.914.914 0 0 1 1.337-.707l24.032 11.2a2.813 2.813 0 0 0 1.188.26 2.4 2.4 0 0 0 2.535-2.227zm7.161 23.63V.414h4.191v23.63zm28.856.421c-11.274 0-19.272-4.7-19.272-12.232C124.02 4.741 132.066 0 143.292 0s19.32 4.7 19.32 12.233-7.902 12.232-19.32 12.232zm0-21.333c-8.383 0-14.84 3.217-14.84 9.1 0 5.926 6.457 9.1 14.84 9.1s14.887-3.174 14.887-9.1c0-5.883-6.504-9.1-14.887-9.1z"}))},jr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 249.2 51",inverse:t,onClick:n},r.createElement("g",{transform:"translate(26.059 -11)"},r.createElement("g",{transform:"translate(-29 11)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("g",{transform:"translate(3.025 0)"},r.createElement("g",{transform:"translate(0 0.194)"},r.createElement("g",null,r.createElement("rect",{x:"21.8",y:"0",className:"minioSection",width:"3.8",height:"11.1"})),r.createElement("g",null,r.createElement("path",{className:"minioSection",d:"M17.2,0.2L9.6,4.8c-0.1,0.1-0.2,0.1-0.4,0L1.6,0.2C1.4,0.1,1.2,0,1.1,0l0,0C0.5,0,0,0.5,0,1v10h3.8\n\t\t\t\t\t\t\tV6.3c0-0.2,0.2-0.4,0.4-0.4c0.1,0,0.1,0,0.2,0.1l4.3,2.6c0.4,0.3,1,0.3,1.4,0L14.5,6c0.2-0.1,0.4,0,0.5,0.1\n\t\t\t\t\t\t\tc0,0.1,0.1,0.1,0.1,0.2v4.8h3.8V1c0-0.6-0.5-1-1-1l0,0C17.6,0,17.4,0.1,17.2,0.2z"})),r.createElement("g",null,r.createElement("path",{className:"minioSection",d:"M44.3,0h-3.8v5.1c0,0.2-0.2,0.4-0.4,0.4c-0.1,0-0.1,0-0.2,0L30,0.1C29.9,0,29.7,0,29.5,0l0,0\n\t\t\t\t\t\t\tc-0.6,0-1,0.5-1,1v10h3.8V6c0-0.2,0.2-0.4,0.4-0.4c0.1,0,0.1,0,0.2,0l9.9,5.3C43,11,43.1,11,43.3,11l0,0c0.6,0,1-0.5,1-1V0z"}))),r.createElement("g",null,r.createElement("path",{className:"minioSection",d:"M47.2,11.3V0.2H49v11.1H47.2z"})),r.createElement("g",null,r.createElement("path",{className:"minioSection",d:"M59.2,11.5c-4.7,0-8-2.2-8-5.7s3.3-5.7,8-5.7s8,2.2,8,5.7S63.9,11.5,59.2,11.5z M59.2,1.5\n\t\t\t\t\t\tC55.7,1.5,53,3,53,5.7c0,2.8,2.7,4.3,6.1,4.3s6.1-1.5,6.1-4.3C65.3,3,62.6,1.5,59.2,1.5z"})))),r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M23.1,45.2v4.2H2.8V21.6h20v4.2H7.3v7.5h15v4.2h-15v7.7H23.1z"}),r.createElement("path",{className:"minioApplicationName",d:"M53.9,21.6v27.8h-4L34.4,29.3l0,20.1h-4.5V21.6h4l15.5,20.1V21.6H53.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M80.9,21.6v4.2h-9v23.5h-4.5V25.9h-9v-4.2H80.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M105.7,45.2v4.2H85.4V21.6h20v4.2H89.9v7.5h15v4.2h-15v7.7H105.7z"}),r.createElement("path",{className:"minioApplicationName",d:"M112.5,21.6h11.4c3.2,0,5.6,0.7,7.3,2.1c1.7,1.4,2.5,3.4,2.5,6c0,2.4-0.8,4.3-2.5,5.7c-1.7,1.5-3.9,2.2-6.8,2.3l9.2,11.7\n\t\t\t\th-5.6l-8.9-11.7H117v11.7h-4.5V21.6z M123.8,25.8H117v7.8h6.8c1.8,0,3.1-0.3,4-1c0.9-0.7,1.3-1.7,1.3-3c0-1.3-0.4-2.3-1.3-2.9\n\t\t\t\tC126.9,26.2,125.6,25.8,123.8,25.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M150.5,38.5h-6.3v10.9h-4.5V21.6h10.8c3.2,0,5.6,0.7,7.3,2.2s2.6,3.6,2.6,6.2s-0.9,4.7-2.6,6.2\n\t\t\t\tC156.1,37.8,153.7,38.5,150.5,38.5z M150.4,25.9h-6.2v8.4h6.2c1.8,0,3.1-0.3,4-1c0.9-0.7,1.3-1.7,1.3-3.2s-0.4-2.5-1.3-3.2\n\t\t\t\tC153.6,26.2,152.2,25.9,150.4,25.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M166,21.6h11.4c3.2,0,5.6,0.7,7.3,2.1c1.7,1.4,2.5,3.4,2.5,6c0,2.4-0.8,4.3-2.5,5.7c-1.7,1.5-3.9,2.2-6.8,2.3l9.2,11.7\n\t\t\t\th-5.6l-8.9-11.7h-2.3v11.7H166V21.6z M177.3,25.8h-6.8v7.8h6.8c1.8,0,3.1-0.3,4-1c0.9-0.7,1.3-1.7,1.3-3c0-1.3-0.4-2.3-1.3-2.9\n\t\t\t\tS179.1,25.8,177.3,25.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M197.7,21.6v27.8h-4.5V21.6H197.7z"}),r.createElement("path",{className:"minioApplicationName",d:"M225.8,24.2l-2.3,3.6c-2.5-1.6-5.1-2.4-7.8-2.4c-1.9,0-3.4,0.4-4.5,1.1c-1.2,0.8-1.7,1.8-1.7,3c0,1.1,0.5,1.9,1.4,2.5\n\t\t\t\ts2.4,1,4.3,1.3l1.9,0.3c6,0.8,9,3.4,9,7.6c0,1.8-0.5,3.4-1.5,4.8c-1,1.4-2.4,2.4-4,3c-1.7,0.7-3.5,1-5.5,1c-2,0-4-0.3-6-1\n\t\t\t\ts-3.8-1.6-5.1-2.8l2.4-3.6c1,0.9,2.3,1.6,3.9,2.2c1.6,0.6,3.2,0.9,4.8,0.9c1.9,0,3.4-0.4,4.6-1.1c1.2-0.7,1.8-1.7,1.8-3\n\t\t\t\tc0-1.1-0.5-1.9-1.5-2.5c-1-0.6-2.6-1-4.7-1.3l-2.2-0.3c-0.9-0.1-1.7-0.3-2.5-0.5c-0.8-0.2-1.5-0.5-2.2-1\n\t\t\t\tc-0.7-0.4-1.3-0.9-1.9-1.4c-0.5-0.5-0.9-1.2-1.2-2.1c-0.3-0.8-0.5-1.7-0.5-2.7c0-1.8,0.5-3.4,1.5-4.7s2.3-2.3,4-3\n\t\t\t\tc1.6-0.7,3.5-1,5.5-1C219.4,21.2,222.8,22.2,225.8,24.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M252.4,45.2v4.2h-20.3V21.6h20v4.2h-15.5v7.5h15v4.2h-15v7.7H252.4z"})))))},zr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 174.3 51",inverse:t,onClick:n},r.createElement("g",{transform:"translate(5485.708 23935.906)"},r.createElement("g",{transform:"translate(-5507 -23935.906)"},r.createElement("g",{transform:"translate(21.291 0)"},r.createElement("g",{transform:"translate(0 5.05)"},r.createElement("rect",{x:"56.7",y:"-4.4",className:"minioSection",width:"9.7",height:"28.7"}),r.createElement("path",{className:"minioSection",d:"M45-4L25.3,8c-0.3,0.2-0.6,0.2-0.9,0L4.6-4C4.2-4.3,3.7-4.4,3.2-4.4h0c-1.5,0-2.7,1.2-2.7,2.7v25.9h9.7\n\t\t\t\t\tV11.9c0-0.5,0.4-1,1-1c0.2,0,0.4,0,0.5,0.1l11,6.8c1.1,0.7,2.5,0.7,3.6,0L37.9,11c0.5-0.3,1.1-0.1,1.3,0.3\n\t\t\t\t\tc0.1,0.1,0.1,0.3,0.1,0.5v12.4h9.7V-1.7c0-1.5-1.2-2.7-2.7-2.7c0,0,0,0,0,0h0C45.9-4.4,45.4-4.3,45-4z"}),r.createElement("path",{className:"minioSection",d:"M114.9-4.4H105v13c0,0.5-0.4,1-1,1c-0.2,0-0.3,0-0.5-0.1L78.1-4.1c-0.4-0.2-0.8-0.3-1.3-0.3h0\n\t\t\t\t\tc-1.5,0-2.7,1.2-2.7,2.7v25.9h9.8v-13c0-0.5,0.4-1,1-1c0.2,0,0.3,0,0.5,0.1l25.6,13.6c0.4,0.2,0.8,0.3,1.3,0.3l0,0\n\t\t\t\t\tc1.5,0,2.7-1.2,2.7-2.7L114.9-4.4z"})),r.createElement("path",{className:"minioSection",d:"M122.5,29.3V0.7h4.5v28.7H122.5z"}),r.createElement("path",{className:"minioSection",d:"M153.2,29.8c-12,0-20.5-5.7-20.5-14.8c0-9.1,8.6-14.8,20.5-14.8c12,0,20.6,5.7,20.6,14.8\n\t\t\t\tC173.8,24.1,165.4,29.8,153.2,29.8z M153.2,4c-8.9,0-15.8,3.9-15.8,11c0,7.2,6.9,11,15.8,11c8.9,0,15.9-3.9,15.9-11\n\t\t\t\tC169.1,7.9,162.2,4,153.2,4L153.2,4z"})),r.createElement("path",{className:"minioApplicationName",d:"M33.3,48.2h-9v-4.4h8.5v-2.4h-8.5v-4.3h8.8v-2.4H21.8v15.8h11.5V48.2z M54,34.8h-2.5v11.4l-8.8-11.4h-2.3v15.8h2.5l0-11.4\n\t\t\tl8.8,11.4H54V34.8z M72.5,34.8H59.8v2.4h5.1v13.4h2.5V37.2h5.1L72.5,34.8z M89.8,48.2h-9v-4.4h8.5v-2.4h-8.5v-4.3h8.8v-2.4H78.2\n\t\t\tv15.8h11.5V48.2z M96.8,34.8v15.8h2.5v-6.6h1.3l5,6.6h3.2l-5.2-6.6c3.2-0.1,5.3-1.9,5.3-4.6c0-2.9-2-4.6-5.6-4.6L96.8,34.8z\n\t\t\t M103.2,37.2c2,0,3,0.7,3,2.2c0,1.5-1,2.3-3,2.3h-3.9v-4.4H103.2z M121.5,44.4c3.6,0,5.6-1.8,5.6-4.8s-2-4.8-5.6-4.8h-6.1v15.8\n\t\t\th2.5v-6.2H121.5z M121.5,37.2c2.1,0,3,0.8,3,2.4s-0.9,2.4-3,2.4H118v-4.8H121.5z M133.5,34.8v15.8h2.5v-6.6h1.3l5,6.6h3.2\n\t\t\tl-5.2-6.6c3.2-0.1,5.3-1.9,5.3-4.6c0-2.9-2-4.6-5.6-4.6H133.5z M139.9,37.2c2,0,3,0.7,3,2.2c0,1.5-1,2.3-3,2.3H136v-4.4\n\t\t\tL139.9,37.2z M154.7,34.8h-2.5v15.8h2.5V34.8z M173.8,36.2c-1.6-1.1-3.4-1.7-5.7-1.7c-3.4,0-6.2,1.8-6.2,4.9c0,2.9,2.3,4,4.7,4.4\n\t\t\tl1.2,0.2c2.3,0.3,3.6,0.9,3.6,2.1c0,1.5-1.6,2.3-3.7,2.3c-1.8,0-3.9-0.7-5-1.7l-1.4,2c1.6,1.4,4.2,2.1,6.3,2.1\n\t\t\tc3.4,0,6.3-1.8,6.3-5c0-2.9-2.5-4-5.1-4.3l-1.1-0.1c-2.1-0.3-3.3-0.8-3.3-2.1c0-1.4,1.4-2.4,3.6-2.4c1.6,0,3.1,0.5,4.4,1.4\n\t\t\tL173.8,36.2z M192,48.2h-9v-4.4h8.5v-2.4h-8.5v-4.3h8.8v-2.4h-11.4v15.8H192V48.2z"}))))},Ur=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 482.6 67.4",inverse:t,onClick:n},r.createElement("g",{id:"Group_16740"},r.createElement("g",{id:"Group_1082"},r.createElement("rect",{id:"Rectangle_674",x:"28.6",y:"0.3",className:"minioSection",width:"4.9",height:"14.6"}),r.createElement("path",{id:"Path_87",className:"minioSection",d:"M22.6,0.5l-10,6.1c-0.1,0.1-0.3,0.1-0.5,0l-10-6.1C1.9,0.3,1.6,0.3,1.4,0.3h0\n\t\t\tC0.6,0.3,0,0.9,0,1.6v13.2h4.9V8.5C4.9,8.3,5.1,8,5.4,8c0.1,0,0.2,0,0.3,0.1l5.6,3.4c0.6,0.3,1.2,0.4,1.8,0L19,8.1\n\t\t\tc0.2-0.1,0.5-0.1,0.7,0.2c0,0.1,0.1,0.2,0.1,0.3v6.3h4.9V1.6c0-0.8-0.6-1.4-1.4-1.4h0C23.1,0.3,22.8,0.3,22.6,0.5L22.6,0.5\n\t\t\tL22.6,0.5z"}),r.createElement("path",{id:"Path_88",className:"minioSection",d:"M58.1,0.3h-5v6.6c0,0.3-0.2,0.5-0.5,0.5c-0.1,0-0.2,0-0.2-0.1l-13-6.9c-0.2-0.1-0.4-0.2-0.7-0.2\n\t\t\tl0,0c-0.8,0-1.4,0.6-1.4,1.4v13.2h5V8.2c0-0.3,0.2-0.5,0.5-0.5c0.1,0,0.2,0,0.2,0.1l13,6.9c0.2,0.1,0.4,0.2,0.7,0.2l0,0\n\t\t\tc0.8,0,1.4-0.6,1.4-1.4L58.1,0.3L58.1,0.3z"})),r.createElement("path",{id:"Path_89",className:"minioSection",d:"M62,14.8V0.3h2.3v14.6L62,14.8L62,14.8z"}),r.createElement("path",{id:"Path_90",className:"minioSection",d:"M77.7,15.1c-6.1,0-10.4-2.9-10.4-7.5S71.6,0,77.7,0s10.5,2.9,10.5,7.6S83.9,15.1,77.7,15.1z\n\t\t M77.7,1.9c-4.5,0-8,2-8,5.6s3.5,5.6,8,5.6s8.1-2,8.1-5.6C85.7,3.9,82.2,1.9,77.7,1.9L77.7,1.9z"})),r.createElement("g",{id:"ENTERPRISE"},r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M23.8,57.9H0V26.1h23.6v5.8H6.3V39h16.5v5.8H6.3v7.3h17.4V57.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M49.9,43.9v14H44V45.8c0-3.2-1.6-4.9-4.3-4.9c-2.5,0-4.7,1.7-4.7,5v12.1h-5.9v-22h5.8v2.6\n\t\t\tc1.6-2.3,4-3.2,6.5-3.2C46.4,35.3,49.9,38.8,49.9,43.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M71.1,41.2h-8v8c0,2.8,1.5,3.8,3.3,3.8c1.4,0,2.9-0.7,4.1-1.4l2.2,4.6c-1.9,1.3-4.2,2.3-7.3,2.3\n\t\t\tc-5.5,0-8.2-3.1-8.2-8.8v-8.5h-4.2v-5.3h4.2v-6.5h5.9v6.5h8V41.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M95.8,46.9c0,0.7-0.1,1.5-0.1,2H80.1c0.6,3.2,2.9,4.6,5.7,4.6c1.9,0,4-0.8,5.6-2.1l3.5,3.8\n\t\t\tc-2.5,2.3-5.7,3.3-9.4,3.3C78.7,58.5,74,53.9,74,47s4.6-11.7,11.1-11.7S95.8,40,95.8,46.9z M80.1,44.8h9.8\n\t\t\tc-0.6-2.8-2.2-4.4-4.8-4.4C82.3,40.4,80.6,42.1,80.1,44.8L80.1,44.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M115,35.8l-0.9,5.9c-1-0.4-2.4-0.7-3.6-0.7c-2.8,0-4.6,1.7-4.6,5v12H100v-22h5.8v2.4c1.4-2.1,3.5-3,6.2-3\n\t\t\tC113.2,35.3,114.2,35.5,115,35.8L115,35.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M141.5,46.9c0,6.6-4.6,11.6-10.7,11.6c-3,0-5.1-1.2-6.5-2.9V67h-5.9V35.9h5.8v2.4c1.4-1.8,3.6-3,6.6-3\n\t\t\tC136.9,35.3,141.5,40.3,141.5,46.9L141.5,46.9z M124,46.9c0,3.5,2.3,6.1,5.7,6.1s5.7-2.7,5.7-6.1s-2.2-6.1-5.7-6.1\n\t\t\tS124,43.4,124,46.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M160.7,35.8l-0.9,5.9c-1-0.4-2.4-0.7-3.6-0.7c-2.8,0-4.6,1.7-4.6,5v12h-5.9v-22h5.8v2.4c1.4-2.1,3.5-3,6.2-3\n\t\t\tC158.9,35.3,159.9,35.5,160.7,35.8L160.7,35.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M170.8,28.7c0,2.1-1.7,3.8-3.8,3.8s-3.8-1.6-3.8-3.8s1.6-3.8,3.8-3.8S170.8,26.6,170.8,28.7z M170,57.9h-5.9\n\t\t\tv-22h5.9V57.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M191.3,42c-1.8-0.9-4.6-1.8-7-1.8c-2.2,0-3.4,0.8-3.4,2c0,1.3,1.6,1.6,3.6,1.9l2,0.3c4.8,0.7,7.4,2.9,7.4,6.6\n\t\t\tc0,4.5-3.7,7.5-10.1,7.5c-3,0-6.9-0.6-9.8-2.6l2.3-4.5c1.9,1.2,4.2,2.2,7.5,2.2c2.8,0,4.1-0.8,4.1-2.1c0-1.1-1.1-1.7-3.7-2\n\t\t\tl-1.8-0.2c-5.1-0.7-7.6-2.9-7.6-6.7c0-4.5,3.5-7.2,9.3-7.2c3.5,0,6.3,0.7,9.2,2.1L191.3,42L191.3,42z"}),r.createElement("path",{className:"minioApplicationName",d:"M218.3,46.9c0,0.7-0.1,1.5-0.1,2h-15.6c0.6,3.2,2.9,4.6,5.7,4.6c1.9,0,4-0.8,5.6-2.1l3.5,3.8\n\t\t\tc-2.5,2.3-5.7,3.3-9.4,3.3c-6.8,0-11.4-4.6-11.4-11.5s4.6-11.7,11.1-11.7S218.3,40,218.3,46.9L218.3,46.9z M202.6,44.8h9.8\n\t\t\tc-0.6-2.8-2.2-4.4-4.8-4.4C204.8,40.4,203.1,42.1,202.6,44.8L202.6,44.8z"}),r.createElement("path",{className:"minioSection",d:"M263.1,42c0,9.5-6.9,16.4-16.5,16.4s-16.5-6.9-16.5-16.4s6.9-16.4,16.5-16.4S263.1,32.5,263.1,42z M234.4,42\n\t\t\tc0,7.5,5.3,12.5,12.3,12.5S259,49.5,259,42s-5.3-12.5-12.3-12.5S234.4,34.5,234.4,42z"}),r.createElement("path",{className:"minioSection",d:"M289.1,47.1c0,6.5-4.8,11.2-10.8,11.2c-3.4,0-5.9-1.3-7.6-3.3v2.9h-3.7V25.2h3.7v14c1.7-2,4.2-3.3,7.6-3.3\n\t\t\tC284.3,35.9,289.1,40.6,289.1,47.1z M270.4,47.1c0,4.4,3,7.8,7.4,7.8s7.4-3.5,7.4-7.8s-3-7.8-7.4-7.8S270.4,42.7,270.4,47.1z"}),r.createElement("path",{className:"minioSection",d:"M297.4,61.3c0,4-2.2,6.1-5.6,6.1c-1.1,0-2.3-0.3-3.1-0.7l0.9-3.2c0.6,0.2,1.2,0.4,1.9,0.4\n\t\t\tc1.3,0,2.2-0.8,2.2-2.8V36.3h3.7L297.4,61.3L297.4,61.3z M298.1,28.8c0,1.5-1.2,2.6-2.7,2.6s-2.6-1.1-2.6-2.6s1.1-2.7,2.6-2.7\n\t\t\tS298.1,27.2,298.1,28.8z"}),r.createElement("path",{className:"minioSection",d:"M322.7,47.1c0,0.5,0,1-0.1,1.4h-17c0.5,4.5,3.6,6.7,7.3,6.7c2.5,0,4.8-1,6.7-2.6l2,2.5\n\t\t\tc-2.7,2.5-5.7,3.3-8.9,3.3c-6.4,0-11-4.5-11-11.2s4.5-11.2,10.7-11.2S322.7,40.5,322.7,47.1L322.7,47.1z M305.7,45.5h13.2\n\t\t\tc-0.5-3.8-2.9-6.3-6.4-6.3C308.6,39.2,306.3,41.8,305.7,45.5L305.7,45.5z"}),r.createElement("path",{className:"minioSection",d:"M344.8,39.3l-2.4,2.5c-1.6-1.5-3.4-2.4-5.7-2.4c-4.2,0-7.3,3.2-7.3,7.8s3.2,7.8,7.3,7.8c2.3,0,4.3-1,5.8-2.5\n\t\t\tl2.3,2.6c-2,2.2-4.8,3.4-8,3.4c-6.7,0-11.2-4.8-11.2-11.2s4.5-11.2,11.2-11.2C339.9,35.9,342.8,37.1,344.8,39.3L344.8,39.3z"}),r.createElement("path",{className:"minioSection",d:"M364.4,39.7h-9.1v10.5c0,3.2,1.7,4.7,4.1,4.7c1.6,0,3.2-0.6,4.4-1.5l1.8,2.8c-1.7,1.2-3.8,2.1-6.5,2.1\n\t\t\tc-4.7,0-7.5-2.6-7.5-8.1V39.7H347v-3.4h4.6v-6.8h3.7v6.8h9.1V39.7L364.4,39.7z"}),r.createElement("path",{className:"minioSection",d:"M398.1,32.4c-2.6-1.8-5.8-2.9-9.4-2.9c-4.7,0-8,2.1-8,5.5c0,2.9,2.4,4.4,7.2,5l2.8,0.3c5.4,0.7,10,2.8,10,8.5\n\t\t\tc0,6.3-5.8,9.7-12.6,9.7c-4.5,0-9.5-1.6-12.5-4.1l2.2-3.2c2.2,1.9,6.3,3.5,10.4,3.5c4.8,0,8.5-1.9,8.5-5.5c0-3-2.7-4.4-7.6-5\n\t\t\tl-3-0.4c-5.2-0.6-9.4-3.1-9.4-8.5c0-6.1,5.5-9.6,12.2-9.6c4.8,0,8.5,1.4,11.5,3.5L398.1,32.4L398.1,32.4z"}),r.createElement("path",{className:"minioSection",d:"M419.2,39.7h-9.1v10.5c0,3.2,1.7,4.7,4.1,4.7c1.6,0,3.2-0.6,4.4-1.5l1.8,2.8c-1.7,1.2-3.8,2.1-6.5,2.1\n\t\t\tc-4.7,0-7.5-2.6-7.5-8.1V39.7h-4.6v-3.4h4.6v-6.8h3.7v6.8h9.1V39.7L419.2,39.7z"}),r.createElement("path",{className:"minioSection",d:"M443.8,47.1c0,6.4-4.9,11.2-11.4,11.2S421,53.5,421,47.1s4.9-11.2,11.4-11.2S443.8,40.7,443.8,47.1z\n\t\t\t M424.8,47.1c0,4.5,3.3,7.8,7.6,7.8s7.6-3.2,7.6-7.8s-3.3-7.8-7.6-7.8S424.8,42.6,424.8,47.1z"}),r.createElement("path",{className:"minioSection",d:"M461.5,36.6l-0.9,3.7c-1-0.5-2.5-0.8-3.7-0.8c-3.3,0-5.6,2.5-5.6,6.5v12h-3.7V36.3h3.7v2.8\n\t\t\tc1.5-2.1,3.8-3.3,6.3-3.3C459.1,35.9,460.3,36.1,461.5,36.6L461.5,36.6z"}),r.createElement("path",{className:"minioSection",d:"M482.6,47.1c0,0.5,0,1-0.1,1.4h-17c0.5,4.5,3.6,6.7,7.3,6.7c2.5,0,4.8-1,6.7-2.6l2,2.5\n\t\t\tc-2.7,2.5-5.7,3.3-8.9,3.3c-6.4,0-11-4.5-11-11.2s4.5-11.2,10.7-11.2S482.6,40.5,482.6,47.1L482.6,47.1z M465.6,45.5h13.2\n\t\t\tc-0.5-3.8-2.9-6.3-6.4-6.3C468.6,39.2,466.2,41.8,465.6,45.5L465.6,45.5z"}))))},Hr=function(e){var t=e.inverse,n=e.onClick;return r.createElement(mr,{viewBox:"0 0 252.6 117.4",inverse:t,onClick:n},r.createElement("g",{id:"Group_16740"},r.createElement("g",{id:"Group_1082"},r.createElement("rect",{id:"Rectangle_674",x:"28.6",y:"0.3",className:"minioSection",width:"4.9",height:"14.6"}),r.createElement("path",{id:"Path_87",className:"minioSection",d:"M22.6,0.5l-10,6.1c-0.1,0.1-0.3,0.1-0.5,0l-10-6.1C1.9,0.3,1.6,0.3,1.4,0.3h0\n\t\t\tC0.6,0.3,0,0.9,0,1.6v13.2h4.9V8.5C4.9,8.3,5.1,8,5.4,8c0.1,0,0.2,0,0.3,0.1l5.6,3.4c0.6,0.3,1.2,0.4,1.8,0L19,8.1\n\t\t\tc0.2-0.1,0.5-0.1,0.7,0.2c0,0.1,0.1,0.2,0.1,0.3v6.3h4.9V1.6c0-0.8-0.6-1.4-1.4-1.4h0C23.1,0.3,22.8,0.3,22.6,0.5L22.6,0.5\n\t\t\tL22.6,0.5z"}),r.createElement("path",{id:"Path_88",className:"minioSection",d:"M58.1,0.3h-5v6.6c0,0.3-0.2,0.5-0.5,0.5c-0.1,0-0.2,0-0.2-0.1l-13-6.9c-0.2-0.1-0.4-0.2-0.7-0.2\n\t\t\tl0,0c-0.8,0-1.4,0.6-1.4,1.4v13.2h5V8.2c0-0.3,0.2-0.5,0.5-0.5c0.1,0,0.2,0,0.2,0.1l13,6.9c0.2,0.1,0.4,0.2,0.7,0.2l0,0\n\t\t\tc0.8,0,1.4-0.6,1.4-1.4L58.1,0.3L58.1,0.3z"})),r.createElement("path",{id:"Path_89",className:"minioSection",d:"M62,14.8V0.3h2.3v14.6L62,14.8L62,14.8z"}),r.createElement("path",{id:"Path_90",className:"minioSection",d:"M77.7,15.1c-6.1,0-10.4-2.9-10.4-7.5S71.6,0,77.7,0s10.5,2.9,10.5,7.6S83.9,15.1,77.7,15.1z\n\t\t M77.7,1.9c-4.5,0-8,2-8,5.6s3.5,5.6,8,5.6s8.1-2,8.1-5.6C85.7,3.9,82.2,1.9,77.7,1.9L77.7,1.9z"})),r.createElement("g",null,r.createElement("path",{className:"minioApplicationName",d:"M23.8,58.9H0V27.1h23.6v5.8H6.3v7h16.5v5.8H6.3v7.3h17.4V58.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M49.9,44.9v14H44V46.8c0-3.2-1.6-4.9-4.3-4.9c-2.5,0-4.7,1.7-4.7,5v12.1h-5.9v-22h5.8v2.6c1.6-2.3,4-3.2,6.5-3.2\n\t\tC46.4,36.3,49.9,39.8,49.9,44.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M71.1,42.2h-8v8c0,2.8,1.5,3.8,3.3,3.8c1.4,0,2.9-0.7,4.1-1.4l2.2,4.6c-1.9,1.3-4.2,2.3-7.3,2.3c-5.5,0-8.2-3.1-8.2-8.8\n\t\tv-8.5h-4.2v-5.3h4.2v-6.5h5.9v6.5h8V42.2z"}),r.createElement("path",{className:"minioApplicationName",d:"M95.8,47.9c0,0.7-0.1,1.5-0.1,2H80.1c0.6,3.2,2.9,4.6,5.7,4.6c1.9,0,4-0.8,5.6-2.1l3.5,3.8c-2.5,2.3-5.7,3.3-9.4,3.3\n\t\tC78.7,59.5,74,54.9,74,48s4.6-11.7,11.1-11.7S95.8,41,95.8,47.9z M80.1,45.8h9.8c-0.6-2.8-2.2-4.4-4.8-4.4\n\t\tC82.3,41.4,80.6,43.1,80.1,45.8L80.1,45.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M115,36.8l-0.9,5.9c-1-0.4-2.4-0.7-3.6-0.7c-2.8,0-4.6,1.7-4.6,5v12H100v-22h5.8v2.4c1.4-2.1,3.5-3,6.2-3\n\t\tC113.2,36.3,114.2,36.5,115,36.8L115,36.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M141.5,47.9c0,6.6-4.6,11.6-10.7,11.6c-3,0-5.1-1.2-6.5-2.9V68h-5.9V36.9h5.8v2.4c1.4-1.8,3.6-3,6.6-3\n\t\tC136.9,36.3,141.5,41.3,141.5,47.9L141.5,47.9z M124,47.9c0,3.5,2.3,6.1,5.7,6.1s5.7-2.7,5.7-6.1s-2.2-6.1-5.7-6.1\n\t\tS124,44.4,124,47.9z"}),r.createElement("path",{className:"minioApplicationName",d:"M160.7,36.8l-0.9,5.9c-1-0.4-2.4-0.7-3.6-0.7c-2.8,0-4.6,1.7-4.6,5v12h-5.9v-22h5.8v2.4c1.4-2.1,3.5-3,6.2-3\n\t\tC158.9,36.3,159.9,36.5,160.7,36.8L160.7,36.8z"}),r.createElement("path",{className:"minioApplicationName",d:"M170.8,29.7c0,2.1-1.7,3.8-3.8,3.8s-3.8-1.6-3.8-3.8s1.6-3.8,3.8-3.8S170.8,27.6,170.8,29.7z M170,58.9h-5.9v-22h5.9V58.9z\n\t\t"}),r.createElement("path",{className:"minioApplicationName",d:"M191.3,43c-1.8-0.9-4.6-1.8-7-1.8c-2.2,0-3.4,0.8-3.4,2c0,1.3,1.6,1.6,3.6,1.9l2,0.3c4.8,0.7,7.4,2.9,7.4,6.6\n\t\tc0,4.5-3.7,7.5-10.1,7.5c-3,0-6.9-0.6-9.8-2.6l2.3-4.5c1.9,1.2,4.2,2.2,7.5,2.2c2.8,0,4.1-0.8,4.1-2.1c0-1.1-1.1-1.7-3.7-2\n\t\tl-1.8-0.2c-5.1-0.7-7.6-2.9-7.6-6.7c0-4.5,3.5-7.2,9.3-7.2c3.5,0,6.3,0.7,9.2,2.1L191.3,43L191.3,43z"}),r.createElement("path",{className:"minioApplicationName",d:"M218.3,47.9c0,0.7-0.1,1.5-0.1,2h-15.6c0.6,3.2,2.9,4.6,5.7,4.6c1.9,0,4-0.8,5.6-2.1l3.5,3.8c-2.5,2.3-5.7,3.3-9.4,3.3\n\t\tc-6.8,0-11.4-4.6-11.4-11.5s4.6-11.7,11.1-11.7S218.3,41,218.3,47.9L218.3,47.9z M202.6,45.8h9.8c-0.6-2.8-2.2-4.4-4.8-4.4\n\t\tC204.8,41.4,203.1,43.1,202.6,45.8L202.6,45.8z"}),r.createElement("path",{className:"minioSection",d:"M33.1,92c0,9.5-6.9,16.4-16.5,16.4S0.2,101.5,0.2,92s6.9-16.4,16.5-16.4S33.1,82.5,33.1,92L33.1,92z M4.4,92\n\t\tc0,7.5,5.3,12.6,12.3,12.6S29,99.5,29,92s-5.3-12.6-12.3-12.6S4.4,84.5,4.4,92z"}),r.createElement("path",{className:"minioSection",d:"M59.1,97.1c0,6.5-4.8,11.2-10.8,11.2c-3.4,0-5.9-1.3-7.6-3.3v2.9h-3.7V75.2h3.7v14c1.7-2,4.2-3.3,7.6-3.3\n\t\tC54.3,85.9,59.1,90.6,59.1,97.1z M40.4,97.1c0,4.4,3,7.8,7.4,7.8s7.4-3.5,7.4-7.8s-3-7.8-7.4-7.8S40.4,92.7,40.4,97.1z"}),r.createElement("path",{className:"minioSection",d:"M67.3,111.3c0,4-2.2,6.1-5.6,6.1c-1.1,0-2.3-0.3-3.1-0.7l0.9-3.2c0.6,0.2,1.2,0.4,1.9,0.4\n\t\tc1.3,0,2.2-0.8,2.2-2.8V86.3h3.7V111.3L67.3,111.3z M68.1,78.8c0,1.5-1.2,2.6-2.7,2.6s-2.6-1.1-2.6-2.6s1.1-2.7,2.6-2.7\n\t\tS68.1,77.2,68.1,78.8z"}),r.createElement("path",{className:"minioSection",d:"M92.7,97.1c0,0.5-0.1,1-0.1,1.4h-17c0.5,4.5,3.6,6.7,7.3,6.7c2.5,0,4.8-1,6.7-2.6l2,2.6\n\t\tc-2.7,2.5-5.7,3.3-8.9,3.3c-6.4,0-11-4.5-11-11.2s4.5-11.2,10.7-11.2S92.7,90.5,92.7,97.1L92.7,97.1z M75.7,95.5h13.2\n\t\tc-0.4-3.8-2.9-6.3-6.4-6.3C78.6,89.2,76.3,91.8,75.7,95.5L75.7,95.5z"}),r.createElement("path",{className:"minioSection",d:"M114.8,89.3l-2.4,2.5c-1.6-1.6-3.4-2.4-5.7-2.4c-4.2,0-7.3,3.2-7.3,7.8s3.2,7.8,7.3,7.8c2.3,0,4.3-1,5.8-2.5\n\t\tl2.3,2.6c-1.9,2.2-4.8,3.4-8,3.4c-6.7,0-11.2-4.8-11.2-11.2s4.5-11.2,11.2-11.2C109.9,85.9,112.8,87.1,114.8,89.3L114.8,89.3z"}),r.createElement("path",{className:"minioSection",d:"M134.4,89.7h-9.1v10.5c0,3.2,1.7,4.7,4.1,4.7c1.6,0,3.2-0.6,4.4-1.5l1.8,2.8c-1.7,1.2-3.8,2.1-6.5,2.1\n\t\tc-4.7,0-7.5-2.6-7.5-8.1V89.7H117v-3.4h4.6v-6.8h3.7v6.8h9.1V89.7L134.4,89.7z"}),r.createElement("path",{className:"minioSection",d:"M168.1,82.4c-2.6-1.8-5.8-2.9-9.4-2.9c-4.7,0-8,2.1-8,5.5c0,2.9,2.4,4.4,7.2,5l2.8,0.3c5.4,0.7,10,2.8,10,8.5\n\t\tc0,6.3-5.8,9.7-12.6,9.7c-4.5,0-9.5-1.6-12.6-4.1l2.2-3.2c2.2,1.9,6.3,3.5,10.4,3.5c4.8,0,8.5-1.9,8.5-5.5c0-3-2.7-4.4-7.6-5\n\t\tl-3-0.4c-5.2-0.6-9.4-3.1-9.4-8.5c0-6.1,5.5-9.6,12.2-9.6c4.8,0,8.5,1.4,11.5,3.5L168.1,82.4L168.1,82.4z"}),r.createElement("path",{className:"minioSection",d:"M189.2,89.7h-9.1v10.5c0,3.2,1.7,4.7,4.1,4.7c1.6,0,3.2-0.6,4.4-1.5l1.8,2.8c-1.7,1.2-3.8,2.1-6.5,2.1\n\t\tc-4.7,0-7.5-2.6-7.5-8.1V89.7h-4.6v-3.4h4.6v-6.8h3.7v6.8h9.1V89.7L189.2,89.7z"}),r.createElement("path",{className:"minioSection",d:"M213.8,97.1c0,6.4-4.9,11.2-11.4,11.2S191,103.5,191,97.1s4.9-11.2,11.4-11.2S213.8,90.7,213.8,97.1z\n\t\t M194.8,97.1c0,4.5,3.3,7.8,7.6,7.8s7.6-3.2,7.6-7.8s-3.3-7.8-7.6-7.8S194.8,92.6,194.8,97.1z"}),r.createElement("path",{className:"minioSection",d:"M231.5,86.6l-0.9,3.7c-1-0.6-2.5-0.8-3.7-0.8c-3.3,0-5.6,2.5-5.6,6.5v12h-3.7V86.3h3.7v2.8\n\t\tc1.5-2.1,3.8-3.3,6.3-3.3C229.1,85.9,230.3,86.1,231.5,86.6z"}),r.createElement("path",{className:"minioSection",d:"M252.6,97.1c0,0.5-0.1,1-0.1,1.4h-17c0.5,4.5,3.6,6.7,7.3,6.7c2.5,0,4.8-1,6.7-2.6l2,2.6\n\t\tc-2.7,2.5-5.7,3.3-8.9,3.3c-6.4,0-11-4.5-11-11.2s4.5-11.2,10.7-11.2S252.6,90.5,252.6,97.1L252.6,97.1z M235.6,95.5h13.2\n\t\tc-0.4-3.8-2.9-6.3-6.4-6.3C238.6,89.2,236.2,91.8,235.6,95.5L235.6,95.5z"})))},Gr=function(e){var t=e.applicationName,n=e.subVariant,o=void 0===n?"simple":n,a=e.inverse,i=e.onClick;switch(t){case"console":switch(o){case"standard":return r.createElement(fr,{inverse:!!a,onClick:i});case"enterprise":return r.createElement(br,{inverse:!!a,onClick:i});case"AGPL":return r.createElement(gr,{inverse:!!a,onClick:i});default:return r.createElement(Sr,{inverse:!!a,onClick:i})}case"directpv":return r.createElement(vr,{inverse:!!a,onClick:i});case"subnet":return r.createElement(wr,{inverse:!!a,onClick:i});case"kes":return r.createElement(Er,{inverse:!!a,onClick:i});case"operator":return r.createElement(yr,{inverse:!!a,onClick:i});case"subnetops":return r.createElement(Ar,{inverse:!!a,onClick:i});case"cloud":return r.createElement(_r,{inverse:!!a,onClick:i});case"releases":return r.createElement(Tr,{inverse:!!a,onClick:i});case"vmbroker":return r.createElement(Cr,{inverse:!!a,onClick:i});case"eureka":return"new"===o?r.createElement(xr,{inverse:!!a,onClick:i}):r.createElement(Ir,{inverse:!!a,onClick:i});case"kms":return r.createElement(Or,{inverse:!!a,onClick:i});case"loadbalancer":return r.createElement(kr,{inverse:!!a,onClick:i});case"index":return r.createElement(Nr,{inverse:!!a,onClick:i});case"cache":return r.createElement(Rr,{inverse:!!a,onClick:i});case"monitor":return r.createElement(Mr,{inverse:!!a,onClick:i});case"observe":return r.createElement(Lr,{inverse:!!a,onClick:i});case"missioncontrol":return r.createElement(Dr,{inverse:!!a,onClick:i});case"globalconsole":return r.createElement(Pr,{inverse:!!a,onClick:i});case"enterprise":return r.createElement(jr,{inverse:!!a,onClick:i});case"minio":switch(o){case"enterprise":return r.createElement(zr,{inverse:!!a,onClick:i});case"enterpriseos":return r.createElement(Ur,{inverse:!!a,onClick:i});case"enterpriseosvertical":return r.createElement(Hr,{inverse:!!a,onClick:i});default:return r.createElement(Fr,{onClick:i})}}},Vr=o.Ay.div((function(e){var t={boxSizing:"border-box"};if(e.container)t={display:"flex",flexWrap:e.wrap||"wrap",flexDirection:e.direction||"row",columnGap:"".concat(e.columnSpacing,"px")||0,rowGap:"".concat(e.rowSpacing,"px")||0,boxSizing:"content-box"};else if(e.item){var n=Object.keys(i);n.forEach((function(r,o){var a,s,c=Wn(e,r,!1);if(c){var u={};if("number"==typeof c&&(u={flexBasis:l(Wn(e,r,12)),width:l(Wn(e,r,12))}),"hidden"===c){var d="";n[o+1]&&(d="and (max-width: ".concat(Wn(i,n[o+1],0),"px)")),t=Ve(Ve({},t),((a={})["@media (min-width: ".concat(Wn(i,r,0),"px) ").concat(d)]={display:"none"},a))}t=Ve(Ve({},t),((s={})["@media (min-width: ".concat(Wn(i,r,0),"px)")]=Ve({flexGrow:"1"},u),s))}}))}return Ve(Ve({},t),e.sx)})),qr=function(e){return r.createElement(Vr,Ve({},e),e.children)};function Wr(e,t,n,r){return new(n||(n=Promise))((function(o,a){function i(e){try{l(r.next(e))}catch(e){a(e)}}function s(e){try{l(r.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,s)}l((r=r.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;const Zr=["geforce 320m","geforce 8600","geforce 8600m gt","geforce 8800 gs","geforce 8800 gt","geforce 9400","geforce 9400m g","geforce 9400m","geforce 9600m gt","geforce 9600m","geforce fx go5200","geforce gt 120","geforce gt 130","geforce gt 330m","geforce gtx 285","google swiftshader","intel g41","intel g45","intel gma 4500mhd","intel gma x3100","intel hd 3000","intel q45","legacy","mali-2","mali-3","mali-4","quadro fx 1500","quadro fx 4","quadro fx 5","radeon hd 2400","radeon hd 2600","radeon hd 4670","radeon hd 4850","radeon hd 4870","radeon hd 5670","radeon hd 5750","radeon hd 6290","radeon hd 6300","radeon hd 6310","radeon hd 6320","radeon hd 6490m","radeon hd 6630m","radeon hd 6750m","radeon hd 6770m","radeon hd 6970m","sgx 543","sgx543"];function $r(e){return e.toLowerCase().replace(/.*angle ?\((.+)\)(?: on vulkan [0-9.]+)?$/i,"$1").replace(/\s(\d{1,2}gb|direct3d.+$)|\(r\)| \([^)]+\)$/g,"").replace(/(?:vulkan|opengl) \d+\.\d+(?:\.\d+)?(?: \((.*)\))?/,"$1")}const Yr="undefined"==typeof window,Kr=(()=>{if(Yr)return;const{userAgent:e,platform:t,maxTouchPoints:n}=window.navigator,r=/(iphone|ipod|ipad)/i.test(e),o="iPad"===t||"MacIntel"===t&&n>0&&!window.MSStream;return{isIpad:o,isMobile:/android/i.test(e)||r||o,isSafari12:/Version\/12.+Safari/.test(e),isFirefox:/Firefox/.test(e)}})();class Xr extends Error{constructor(e){super(e),Object.setPrototypeOf(this,new.target.prototype)}}const Jr=[],Qr=[];function eo(e,t){if(e===t)return 0;const n=e;e.length>t.length&&(e=t,t=n);let r=e.length,o=t.length;for(;r>0&&e.charCodeAt(~-r)===t.charCodeAt(~-o);)r--,o--;let a,i=0;for(;ic?l>c?c+1:l:l>s?s+1:l;return c}function to(e){return null!=e}const no=function(){let{mobileTiers:e=[0,15,30,60],desktopTiers:t=[0,15,30,60],override:n={},glContext:r,failIfMajorPerformanceCaveat:o=!1,benchmarksURL:a="https://unpkg.com/detect-gpu@5.0.39/dist/benchmarks"}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Wr(void 0,void 0,void 0,(function*(){const i={};if(Yr)return{tier:0,type:"SSR"};const{isIpad:s=!!(null==Kr?void 0:Kr.isIpad),isMobile:l=!!(null==Kr?void 0:Kr.isMobile),screenSize:c=window.screen,loadBenchmarks:u=(e=>Wr(void 0,void 0,void 0,(function*(){const t=yield fetch("".concat(a,"/").concat(e)).then((e=>e.json()));if(parseInt(t.shift().split(".")[0],10)<4)throw new Xr("Detect GPU benchmark data is out of date. Please update to version 4x");return t})))}=n;let{renderer:d}=n;const p=(e,t,n,r,o)=>({device:o,fps:r,gpu:n,isMobile:l,tier:e,type:t});let h,m="";if(d)d=$r(d),h=[d];else{const e=r||function(e){const t={alpha:!1,antialias:!1,depth:!1,failIfMajorPerformanceCaveat:arguments.length>1&&void 0!==arguments[1]&&arguments[1],powerPreference:"high-performance",stencil:!1};e&&delete t.powerPreference;const n=window.document.createElement("canvas"),r=n.getContext("webgl",t)||n.getContext("experimental-webgl",t);return null!=r?r:void 0}(null==Kr?void 0:Kr.isSafari12,o);if(!e)return p(0,"WEBGL_UNSUPPORTED");const t=(null==Kr?void 0:Kr.isFirefox)?null:e.getExtension("WEBGL_debug_renderer_info");if(d=t?e.getParameter(t.UNMASKED_RENDERER_WEBGL):e.getParameter(e.RENDERER),!d)return p(1,"FALLBACK");m=d,d=$r(d),h=function(e,t,n){return"apple gpu"===t?function(e,t,n){if(!n)return[t];const r=function(e){const t=e.createShader(35633),n=e.createShader(35632),r=e.createProgram();if(!(n&&t&&r))return;e.shaderSource(t,"\n precision highp float;\n attribute vec3 aPosition;\n varying float vvv;\n void main() {\n vvv = 0.31622776601683794;\n gl_Position = vec4(aPosition, 1.0);\n }\n "),e.shaderSource(n,"\n precision highp float;\n varying float vvv;\n void main() {\n vec4 enc = vec4(1.0, 255.0, 65025.0, 16581375.0) * vvv;\n enc = fract(enc);\n enc -= enc.yzww * vec4(1.0 / 255.0, 1.0 / 255.0, 1.0 / 255.0, 0.0);\n gl_FragColor = enc;\n }\n "),e.compileShader(t),e.compileShader(n),e.attachShader(r,t),e.attachShader(r,n),e.linkProgram(r),e.detachShader(r,t),e.detachShader(r,n),e.deleteShader(t),e.deleteShader(n),e.useProgram(r);const o=e.createBuffer();e.bindBuffer(34962,o),e.bufferData(34962,new Float32Array([-1,-1,0,3,-1,0,-1,3,0]),35044);const a=e.getAttribLocation(r,"aPosition");e.vertexAttribPointer(a,3,5126,!1,0,0),e.enableVertexAttribArray(a),e.clearColor(1,1,1,1),e.clear(16384),e.viewport(0,0,1,1),e.drawArrays(4,0,3);const i=new Uint8Array(4);return e.readPixels(0,0,1,1,6408,5121,i),e.deleteProgram(r),e.deleteBuffer(o),i.join("")}(e),o="801621810",a="8016218135",i="80162181161",s=(null==Kr?void 0:Kr.isIpad)?[["a7",i,12],["a8",a,15],["a8x",a,15],["a9",a,15],["a9x",a,15],["a10",a,15],["a10x",a,15],["a12",o,15],["a12x",o,15],["a12z",o,15],["a14",o,15],["a15",o,15],["m1",o,15],["m2",o,15]]:[["a7",i,12],["a8",a,12],["a9",a,15],["a10",a,15],["a11",o,15],["a12",o,15],["a13",o,15],["a14",o,15],["a15",o,15],["a16",o,15],["a17",o,15]];let l;return"80162181255"===r?l=s.filter((e=>{let[,,t]=e;return t>=14})):(l=s.filter((e=>{let[,t]=e;return t===r})),l.length||(l=s)),l.map((e=>{let[t]=e;return"apple ".concat(t," gpu")}))}(e,t,n):[t]}(e,d,l)}const f=(yield Promise.all(h.map((function(e){var t;return Wr(this,void 0,void 0,(function*(){const n=(e=>{const t=l?["adreno","apple","mali-t","mali","nvidia","powervr","samsung"]:["intel","apple","amd","radeon","nvidia","geforce","adreno"];for(const n of t)if(e.includes(n))return n})(e);if(!n)return;const r="".concat(l?"m":"d","-").concat(n).concat(s?"-ipad":"",".json"),o=i[r]=null!==(t=i[r])&&void 0!==t?t:u(r);let a;try{a=yield o}catch(n){if(n instanceof Xr)throw n;return}const d=function(e){var t;const n=(e=e.replace(/\([^)]+\)/,"")).match(/\d+/)||e.match(/(\W|^)([A-Za-z]{1,3})(\W|$)/g);return null!==(t=null==n?void 0:n.join("").replace(/\W|amd/g,""))&&void 0!==t?t:""}(e);let p=a.filter((e=>{let[,t]=e;return t===d}));p.length||(p=a.filter((t=>{let[n]=t;return n.includes(e)})));const h=p.length;if(0===h)return;const m=e.split(/[.,()\[\]/\s]/g).sort().filter(((e,t,n)=>0===t||e!==n[t-1])).join(" ");let f,[g,,,,b]=h>1?p.map((e=>[e,eo(m,e[2])])).sort(((e,t)=>{let[,n]=e,[,r]=t;return n-r}))[0][0]:p[0],y=Number.MAX_VALUE;const{devicePixelRatio:v}=window,E=c.width*v*c.height*v;for(const e of b){const[t,n]=e,r=t*n,o=Math.abs(E-r);o{let[n=Number.MAX_VALUE,r]=e,[o=Number.MAX_VALUE,a]=t;return n===o?r-a:n-o}));if(!f.length){const e=Zr.find((e=>d.includes(e)));return e?p(0,"BLOCKLISTED",e):p(1,"FALLBACK","".concat(d," (").concat(m,")"))}const[,g,b,y]=f[0];if(-1===g)return p(0,"BLOCKLISTED",b,g,y);const v=l?e:t;let E=0;for(let e=0;e=v[e]&&(E=e);return p(E,"BENCHMARK",b,g,y)}))};var ro,oo,ao,io,so,lo,co,uo,po,ho,mo,fo,go,bo,yo,vo,Eo=n(84967),wo=n(89671),So=o.Ay.div((function(e){var t,n=e.theme;return{"& .mainContainer":{height:"100vh"},"& .decorationPanel":{position:"relative",backgroundColor:Wn(n,"login.promoBG","#000110"),"& .videoContainer":{width:"100%",height:"auto",minHeight:200,position:"absolute",bottom:"0",right:0,filter:Wn(n,"login.bgFilter","none"),"&:before":{position:"absolute",width:"100%",height:60,display:"block",content:"' '",background:"linear-gradient(to bottom, rgba(0,1,16,1) 0%,rgba(0,0,0,0.02) 100%)",top:0},"&:after":{position:"absolute",width:120,height:"100%",display:"block",content:"' '",background:"linear-gradient(to right, rgba(0,1,16,1) 0%,rgba(0,0,0,0.02) 100%)",top:0},"& .videoBG":{width:"100%"}},"& .bgExtend":{backgroundImage:"linear-gradient(45deg,rgba(172,223,234,0) 0,#7fc0e4 100%)",position:"absolute",width:500,left:0},"& .promoContainer":{zIndex:100,width:"80%",maxWidth:"687px",position:"absolute",top:"190px",left:"50%",transform:"translateX(-50%)","& .promoHeader":{color:Wn(n,"login.promoHeader","#fff"),fontSize:"46px",textAlign:"left",fontWeight:"900",lineHeight:"60px"},"& .promoInfo":{marginTop:"31px",maxWidth:"542px",color:Wn(n,"login.promoText","#fff"),fontSize:"18px",textAlign:"left",fontWeight:"300",lineHeight:"30px",textShadow:"0 0 5ppx #000","& a":{color:Wn(n,"login.promoText","#fff"),textDecoration:"none",fontWeight:"bold","&:hover":{textDecoration:"underline"}}}}},"& .formPanel":(t={maxWidth:"520px",backgroundColor:Wn(n,"login.formBG","#fff")},t["@media (min-width: ".concat(Wn(i,"xs",0),"px) and (max-width: ").concat(Wn(i,"md",0),"px)")]={maxWidth:"100%"},t["& .logoContainer"]={display:"flex",height:"215px",alignItems:"center",justifyContent:"center",boxShadow:"0 3px 10px 2px #00000010","& svg":{width:"325px"}},t["& .formContainer"]={paddingTop:"40px",display:"flex",flexDirection:"column",alignItems:"center",minHeight:"calc(100vh - 215px)","& .form":{width:"328px",flexGrow:"1",height:"100%"},"& .footer":{display:"flex",width:"328px",borderTop:"".concat(Wn(n,"login.footerDivider","#f2f2f2")," 1px solid"),padding:"35px 0",textAlign:"center",alignItems:"flex-end",justifyContent:"center"},"& .footer, & .footer a":{color:Wn(n,"login.footerElements","#000"),fontSize:"14px",textDecoration:"none"}},t)}})),Ao=function(e){var t=e.logoProps,n=e.form,o=e.formFooter,a=e.promoInfo,i=e.promoHeader,s=e.backgroundAnimation,l=void 0===s||s,c=(0,r.useState)(!1),u=c[0],d=c[1];return(0,r.useEffect)((function(){!function(e,t,n,r){new(n||(n=Promise))((function(o,a){function i(e){try{l(r.next(e))}catch(e){a(e)}}function s(e){try{l(r.throw(e))}catch(e){a(e)}}function l(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,s)}l((r=r.apply(e,t||[])).next())}))}(void 0,void 0,void 0,(function(){var e;return function(e,t){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function s(s){return function(l){return function(s){if(n)throw new TypeError("Generator is already executing.");for(;a&&(a=0,s[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&s[0]?r.return:s[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,s[1])).done)return o;switch(r=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return i.label++,{value:s[1],done:!1};case 5:i.label++,r=s[1],s=[0];continue;case 7:s=i.ops.pop(),i.trys.pop();continue;default:if(!((o=(o=i.trys).length>0&&o[o.length-1])||6!==s[0]&&2!==s[0])){i=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]=2),[2]}}))}))}),[]),r.createElement(So,null,r.createElement(qr,{container:!0,className:"mainContainer",wrap:"nowrap"},r.createElement(qr,{item:!0,xs:"hidden",sm:"hidden",md:!0,className:"decorationPanel"},(a||i)&&r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,className:"promoContainer"},r.createElement(qr,{item:!0,className:"promoHeader"},i),r.createElement(qr,{item:!0,className:"promoInfo"},a))),r.createElement(qr,{item:!0,className:"videoContainer"},u&&l?r.createElement("video",{autoPlay:!0,playsInline:!0,muted:!0,loop:!0,disablePictureInPicture:!0,poster:wo,className:"videoBG"},r.createElement("source",{src:Eo,type:"video/mp4"})):r.createElement("img",{src:wo,className:"videoBG"}))),r.createElement(qr,{item:!0,xs:12,className:"formPanel"},r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,xs:12,className:"logoContainer"},r.createElement(Gr,Ve({},t))),r.createElement(qr,{item:!0,xs:12,className:"formContainer"},r.createElement(qr,{item:!0,xs:!0,className:"form"},n),o&&r.createElement(qr,{item:!0,xs:!0,className:"footer"},o))))))},_o=(0,o.i7)(ro||(ro=Ze(["0% {\n transform: translate(139.785027px, 140.086989px) rotate(45.236493deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 10% {\n transform: translate(139.785027px, 140.086989px) rotate(-197.740907deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 20% {\n transform: translate(139.785027px, 140.086989px) rotate(-108.6deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 30% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.484014deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 33.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.48deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }\n 100% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }"],["0% {\n transform: translate(139.785027px, 140.086989px) rotate(45.236493deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 10% {\n transform: translate(139.785027px, 140.086989px) rotate(-197.740907deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 20% {\n transform: translate(139.785027px, 140.086989px) rotate(-108.6deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 30% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.484014deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 33.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(-17.48deg);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }\n 100% {\n transform: translate(139.785027px, 140.086989px) rotate(160.887995deg);\n }"]))),To=(0,o.i7)(oo||(oo=Ze(["\n 0% {\n transform: scale(1, 0.995019);\n }\n 33.333333% {\n transform: scale(1, 0.995019);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: scale(0.101121, 0.102033);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 50% {\n transform: scale(0.1, 0.1);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 60% {\n transform: scale(1, 1);\n }\n 100% {\n transform: scale(1, 1);\n }\n"],["\n 0% {\n transform: scale(1, 0.995019);\n }\n 33.333333% {\n transform: scale(1, 0.995019);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 43.333333% {\n transform: scale(0.101121, 0.102033);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 50% {\n transform: scale(0.1, 0.1);\n animation-timing-function: cubic-bezier(0.42, 0, 0.58, 1);\n }\n 60% {\n transform: scale(1, 1);\n }\n 100% {\n transform: scale(1, 1);\n }\n"]))),Co=(0,o.i7)(ao||(ao=Ze(["\n 0% {\n opacity: 1;\n }\n 6.666667% {\n opacity: 1;\n }\n 10% {\n opacity: 0;\n }\n 13.333333% {\n opacity: 0;\n }\n 20% {\n opacity: 1;\n }\n 30% {\n opacity: 1;\n }\n 36.666667% {\n opacity: 1;\n }\n 40% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"],["\n 0% {\n opacity: 1;\n }\n 6.666667% {\n opacity: 1;\n }\n 10% {\n opacity: 0;\n }\n 13.333333% {\n opacity: 0;\n }\n 20% {\n opacity: 1;\n }\n 30% {\n opacity: 1;\n }\n 36.666667% {\n opacity: 1;\n }\n 40% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"]))),xo=(0,o.i7)(io||(io=Ze(['\n 0% {\n d: path("M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 10% {\n d: path("M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 20% {\n d: path("M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 30% {\n d: path("M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 33.333333% {\n d: path("M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 43.333333% {\n d: path("M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z");\n }\n 100% {\n d: path("M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z");\n }\n'],['\n 0% {\n d: path("M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 10% {\n d: path("M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 20% {\n d: path("M85.4,249.8C85.4,249.8,85.399999,249.800001,85.399999,249.800001C85.399999,249.800001,85.4,249.800002,85.4,249.800002C85.4,249.800002,90.484102,251.966034,95.043213,248.269966C100.484052,243.859082,98.694728,236.722769,97.073675,234.469349C95.517658,232.306335,94.559418,231.751273,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 30% {\n d: path("M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 33.333333% {\n d: path("M85.4,249.8C109.08,255.3,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,110.79,235.19,90.73,230.52C78.19,227.61,72.85,246.88,85.4,249.8C85.4,249.8,85.4,249.8,85.4,249.8Z");\n }\n 43.333333% {\n d: path("M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z");\n }\n 100% {\n d: path("M84.281285,246.076032C107.50521,254.051555,133.72,257.37,157.65,252.14C181.65,246.89,202.95,233.55,219.27,215.35C227.84,205.79,213.74,191.6,205.13,201.21C190.9,217.1,173.27,228.26,152.34,232.86C132.03,237.32,86.465691,239.82846,53.85604,207.193233C41.31604,204.283233,32.439249,213.928672,40.474905,219.54755C40.474905,219.54755,61.310295,238.187372,84.281285,246.076032Z");\n }\n']))),Io=(0,o.i7)(so||(so=Ze(['\n 0% {\n d: path("M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z");\n }\n 10% {\n d: path("M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z");\n }\n 20% {\n d: path("M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z");\n }\n 30% {\n d: path("M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z");\n }\n 33.333333% {\n d: path("M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z");\n }\n 43.333333% {\n d: path("M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z");\n }\n 100% {\n d: path("M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z");\n }\n'],['\n 0% {\n d: path("M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z");\n }\n 10% {\n d: path("M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z");\n }\n 20% {\n d: path("M250.887564,168.08137C250.887564,168.081368,250.887563,168.081375,250.887563,168.081375C250.887563,168.081375,253.7831,157.676613,244.778825,154.781475C235.762034,151.882313,232.694053,158.881918,231.752888,162.486547C231.017121,165.304508,231.564293,168.517464,232.231509,169.666243C233.407087,171.690293,235.517449,173.828597,238.467701,174.606956C241.339242,175.364549,245.542656,175.427978,248.770823,172.704057C248.770823,172.704057,250.400569,171.202441,250.887564,168.08137Z");\n }\n 30% {\n d: path("M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z");\n }\n 33.333333% {\n d: path("M249.74,169.63C255.24,145.95,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,191.54,41.29,201.15,49.9C217.04,64.13,228.2,81.76,232.8,102.69C237.26,123,235.13,144.24,230.46,164.3C227.54,176.84,246.82,182.18,249.74,169.63C249.74,169.63,249.74,169.63,249.74,169.63Z");\n }\n 43.333333% {\n d: path("M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z");\n }\n 100% {\n d: path("M241.985702,180.287452C255.201364,145.393106,257.31,121.31,252.08,97.38C246.83,73.38,233.49,52.08,215.29,35.76C205.73,27.19,189.760952,38.146938,199.370952,46.756938C229.706596,66.855753,234.126292,101.544407,234.194759,127.574104C235.798839,155.047874,216.192342,185.901625,205.13,201.21C199.980012,208.336696,214.039151,220.128533,219.270001,215.35C219.270001,215.35,237.299554,192.660656,241.985702,180.287452Z");\n }\n']))),Oo=(0,o.i7)(lo||(lo=Ze(['\n 0% {\n d: path("M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z");\n }\n 10% {\n d: path("M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z");\n }\n 20% {\n d: path("M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z");\n }\n 30% {\n d: path("M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z");\n }\n 33.333333% {\n d: path("M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z");\n }\n 43.333333% {\n d: path("M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z");\n }\n 100% {\n d: path("M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z");\n }\n'],['\n 0% {\n d: path("M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z");\n }\n 10% {\n d: path("M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z");\n }\n 20% {\n d: path("M171.58686,7.8192C164.834536,7.661923,162.882928,13.414575,162.613915,14.669774C162.613914,14.669774,161.858025,17.37084,162.366976,18.743708C162.782522,19.864622,163.527502,21.022768,164.723558,21.957074C165.842173,22.830886,168.859974,24.254302,168.859974,24.254302C168.859974,24.254302,168.859968,24.254306,168.859967,24.254304C181.289967,27.534304,184.046866,11.109212,171.586866,7.819212C171.586866,7.819212,171.58686,7.8192,171.58686,7.8192Z");\n }\n 30% {\n d: path("M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z");\n }\n 33.333333% {\n d: path("M171.68,7.71C148.17,1.51,123.61,-1.28,99.53,3.25C75.39,7.79,53.7,20.49,36.85,38.21C28.01,47.52,41.68,62.11,50.57,52.76C65.27,37.3,83.22,26.66,104.27,22.68C124.7,18.82,145.87,21.58,165.79,26.83C178.22,30.11,184.14,11,171.68,7.71C171.68,7.71,171.68,7.71,171.68,7.71Z");\n }\n 43.333333% {\n d: path("M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z");\n }\n 100% {\n d: path("M154.601291,1.547478C127.732134,-3.659063,101.676041,0.16217,89.834975,4.047622C73.018778,9.565582,43.015709,29.967817,36.85,38.21C28.01,47.52,41.568561,62.002759,50.57,52.76C67.005248,35.884138,77.788003,22.937369,100.935291,18.024709C148.028227,8.029949,175.904245,24.591662,199.370952,46.756938C210.775532,51.88401,219.463487,39.878796,215.289997,35.759998C189.664787,10.470596,154.601291,1.547478,154.601291,1.547478Z");\n }\n']))),ko=(0,o.i7)(co||(co=Ze(['\n 0% {\n d: path("M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z");\n }\n 3.333333% {\n d: path("M4.90273,88.748028C1.236063,104.534694,0.694614,122.375568,4.181281,138.328902C7.119767,155.82704,18.329955,178.442148,31.722495,188.944182C39.448991,194.869945,48.960631,181.919808,35.808325,167.974185C27.053341,155.46954,26.778713,144.786038,23.180834,130.168643C19.139468,114.899686,18.114526,100.786543,20.952073,87.411869C21.572437,79.045425,6.897064,77.595457,4.916661,86.915441L4.90273,88.748028Z");\n }\n 10% {\n d: path("M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z");\n }\n 20% {\n d: path("M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z");\n }\n 30% {\n d: path("M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z");\n }\n 33.333333% {\n d: path("M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z");\n }\n 43.333333% {\n d: path("M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z");\n }\n 100% {\n d: path("M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z");\n }\n'],['\n 0% {\n d: path("M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z");\n }\n 3.333333% {\n d: path("M4.90273,88.748028C1.236063,104.534694,0.694614,122.375568,4.181281,138.328902C7.119767,155.82704,18.329955,178.442148,31.722495,188.944182C39.448991,194.869945,48.960631,181.919808,35.808325,167.974185C27.053341,155.46954,26.778713,144.786038,23.180834,130.168643C19.139468,114.899686,18.114526,100.786543,20.952073,87.411869C21.572437,79.045425,6.897064,77.595457,4.916661,86.915441L4.90273,88.748028Z");\n }\n 10% {\n d: path("M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z");\n }\n 20% {\n d: path("M3.04819,95.324083C3.04819,95.324083,5.563842,99.566705,5.563842,99.566705C5.563842,99.566705,11.253926,104.287825,15.031546,103.153927C19.091035,103.791214,24.274539,98.764542,25.851733,95.404259C27.275674,92.370488,25.596139,87.698114,24.002501,85.705929C20.798403,80.519057,13.463578,80.659628,12.636219,80.655608C8.65731,80.636275,3.191193,86.96637,3.089982,89.826322L3.04819,95.324083Z");\n }\n 30% {\n d: path("M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z");\n }\n 33.333333% {\n d: path("M5.83,85.46C0.33,109.14,-1.74,133.78,3.49,157.71C8.74,181.71,22.08,203.01,40.28,219.33C49.84,227.9,64.03,213.8,54.42,205.19C38.53,190.96,27.37,173.33,22.77,152.4C18.31,132.09,20.44,110.85,25.11,90.79C28.03,78.25,8.75,72.91,5.83,85.46L5.83,85.46Z");\n }\n 43.333333% {\n d: path("M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z");\n }\n 100% {\n d: path("M36.436007,38.11681C-7.498754,85.801617,-0.826469,134.911183,5.658972,158.164678C15.873566,192.855226,35.43893,215.965329,40.28,219.33C49.84,227.9,63.271136,215.585685,53.661136,206.975685C38.384036,191.128398,25.999041,166.121323,22.77,152.4C12.429986,121.009925,27.020185,73.061168,50.245766,52.61587C65.058304,39.576508,51.054205,23.186387,36.436019,38.116819L36.436007,38.11681Z");\n }\n']))),No=(0,o.i7)(uo||(uo=Ze(["\n 0% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 30% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 43.333333% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 50% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 60% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n 100% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n"],["\n 0% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 30% {\n transform: translate(139.784999px, 140.086986px) scale(1, 1);\n }\n 43.333333% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 50% {\n transform: translate(139.784999px, 140.086986px) scale(0.102813, 0.102813);\n }\n 60% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n 100% {\n transform: translate(139.784999px, 140.086986px) scale(1.001075, 1.001075);\n }\n"]))),Ro=(0,o.i7)(po||(po=Ze(["\n 0% {\n opacity: 0;\n }\n 30% {\n opacity: 0;\n }\n 36.666667% {\n opacity: 0;\n }\n 40% {\n opacity: 1;\n }\n 100% {\n opacity: 1;\n }\n"],["\n 0% {\n opacity: 0;\n }\n 30% {\n opacity: 0;\n }\n 36.666667% {\n opacity: 0;\n }\n 40% {\n opacity: 1;\n }\n 100% {\n opacity: 1;\n }\n"]))),Mo=(0,o.i7)(ho||(ho=Ze(["0% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 10% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 20% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }\n 100% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }"],["0% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 10% {\n transform: translate(139.785004px, 140.086979px) rotate(0deg);\n }\n 20% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }\n 100% {\n transform: translate(139.785004px, 140.086979px) rotate(90.041277deg);\n }"]))),Lo=(0,o.i7)(mo||(mo=Ze(["\n 0% {\n opacity: 0;\n }\n 6.666667% {\n opacity: 0;\n }\n 10% {\n opacity: 1;\n }\n 13.333333% {\n opacity: 1;\n }\n 20% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"],["\n 0% {\n opacity: 0;\n }\n 6.666667% {\n opacity: 0;\n }\n 10% {\n opacity: 1;\n }\n 13.333333% {\n opacity: 1;\n }\n 20% {\n opacity: 0;\n }\n 100% {\n opacity: 0;\n }\n"]))),Do=o.Ay.svg({width:40,height:40},(0,o.AH)(fo||(fo=Ze(["\n path {\n fill: ",";\n }\n #section1 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section2 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section3 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section4 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section5 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section6 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section7 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section8 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section9 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section10 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section11 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n "],["\n path {\n fill: ",";\n }\n #section1 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section2 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section3 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section4 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section5 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section6 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section7 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section8 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section9 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section10 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n #section11 {\n animation: "," 3000ms linear infinite normal forwards;\n }\n "])),(function(e){return Wn(e,"theme.loaderColor","#113053")}),_o,To,Co,xo,Io,Oo,ko,No,Ro,Mo,Lo)),Po=function(e){return r.createElement(Do,Ve({viewBox:"0 0 280 280",shapeRendering:"geometricPrecision",textRendering:"geometricPrecision",className:"min-loader"},e),r.createElement("g",{id:"section1",transform:"translate(139.785027,140.086989) rotate(45.236493)"},r.createElement("g",{id:"section2",transform:"scale(1,0.995019)"},r.createElement("g",{id:"section3",transform:"translate(-127.784998,-128.086989)"},r.createElement("g",null,r.createElement("path",{id:"section4",d:"M85.4,249.8c23.68,5.5,48.32,7.57,72.25,2.34c24-5.25,45.3-18.59,61.62-36.79c8.57-9.56-5.53-23.75-14.14-14.14-14.23,15.89-31.86,27.05-52.79,31.65-20.31,4.46-41.55,2.33-61.61-2.34-12.54-2.91-17.88,16.36-5.33,19.28c0,0,0,0,0,0Z"})),r.createElement("g",null,r.createElement("path",{id:"section5",d:"M249.74,169.63c5.5-23.68,7.57-48.32,2.34-72.25-5.25-24-18.59-45.3-36.79-61.62-9.56-8.57-23.75,5.53-14.14,14.14c15.89,14.23,27.05,31.86,31.65,52.79c4.46,20.31,2.33,41.55-2.34,61.61-2.92,12.54,16.36,17.88,19.28,5.33c0,0,0,0,0,0Z"})),r.createElement("g",null,r.createElement("path",{id:"section6",d:"M171.68,7.71c-23.51-6.2-48.07-8.99-72.15-4.46C75.39,7.79,53.7,20.49,36.85,38.21c-8.84,9.31,4.83,23.9,13.72,14.55c14.7-15.46,32.65-26.1,53.7-30.08c20.43-3.86,41.6-1.1,61.52,4.15c12.43,3.28,18.35-15.83,5.89-19.12c0,0,0,0,0,0Z"})),r.createElement("g",null,r.createElement("path",{id:"section7",d:"M5.83,85.46c-5.5,23.68-7.57,48.32-2.34,72.25c5.25,24,18.59,45.3,36.79,61.62c9.56,8.57,23.75-5.53,14.14-14.14-15.89-14.23-27.05-31.86-31.65-52.79-4.46-20.31-2.33-41.55,2.34-61.61C28.03,78.25,8.75,72.91,5.83,85.46v0Z",transform:"translate(.194904 0.217549)"}))))),r.createElement("g",{id:"section8",transform:"translate(139.784999,140.086986) scale(1,1)"},r.createElement("g",{id:"section9",transform:"translate(-127.999996,-128.000003)",opacity:"0"},r.createElement("path",{d:"M234.23,128c0-58.67-47.56-106.23-106.23-106.23s-106.23,47.56-106.23,106.23s47.56,106.23,106.23,106.23c58.64-.06,106.17-47.59,106.23-106.23m21.25,0c0,70.4-57.07,127.48-127.48,127.48s-127.48-57.08-127.48-127.48s57.08-127.48,127.48-127.48s127.48,57.08,127.48,127.48Z"}))),r.createElement("g",{id:"section10",transform:"translate(139.785004,140.086979) rotate(0)"},r.createElement("g",{id:"section11",transform:"translate(-127.999968,-127.995139)",opacity:"0"},r.createElement("path",{d:"M128,0.47h.33c.36,0,.73,0,1.09.01h.17c5.45.09,9.79,4.57,9.73,10.02-.07,5.51-4.57,9.93-10.07,9.91h-1.24c-5.51-.04-9.96-4.51-9.96-10.02-.01-5.45,4.39-9.88,9.84-9.91h.11ZM245.62,118.39h.03c5.45.01,9.86,4.42,9.88,9.87c0,.04,0,.08,0,.12v0c0,.12,0,.24,0,.36v0c0,.01,0,.03,0,.04v.09c0,.37,0,.73-.01,1.09-.11,5.45-4.6,9.78-10.05,9.7-5.51-.08-9.92-4.6-9.88-10.1l.01-1.24c.06-5.49,4.52-9.92,10.02-9.93ZM126.01,235.58h.12l1.24.01c5.51.07,9.93,4.57,9.9,10.08-.04,5.48-4.51,9.89-9.99,9.85-.01,0-.02,0-.03,0h-.46-.19l-.82-.01h-.12c-5.45-.12-9.77-4.63-9.67-10.07.09-5.47,4.55-9.85,10.02-9.86ZM10.4,115.63h.2c5.51.12,9.89,4.65,9.82,10.16l-.02,1.24c-.09,5.5-4.59,9.91-10.1,9.88-5.45-.04-9.85-4.47-9.83-9.93c0-.04,0-.08,0-.12v0c0-.36,0-.73.01-1.09v-.09v0c0-.13,0-.27.01-.41.14-5.37,4.54-9.64,9.91-9.64Z"}))))},Bo=o.Ay.div((function(e){var t,n=e.theme,r=e.sx;return Ve(((t={display:"flex",flexDirection:"row",width:"100%",minHeight:83,backgroundColor:Wn(n,"pageHeader.background","#fff"),left:0,borderBottom:"1px solid ".concat(Wn(n,"pageHeader.border","#E5E5E5")),flexWrap:"wrap",justifyContent:"space-between",alignItems:"center"})["@media (max-width: ".concat(Wn(i,"md",0),"px)")]={"& > div":{margin:"4px 0",padding:"0 20px,"}},t),r)})),Fo=o.Ay.div((function(e){var t=e.theme;return{color:Wn(t,"pageHeader.color","#000"),fontSize:18,fontWeight:700,paddingLeft:20,display:"flex",flexGrow:1,marginRight:10,"& a":{color:Wn(t,"pageHeader.color","#000"),textDecoration:"none"}}})),jo=o.Ay.div((function(){return{display:"flex",justifyContent:"center",alignItems:"center",flexGrow:1,margin:"0 10px"}})),zo=o.Ay.div((function(){return{display:"flex",justifyContent:"flex-end",paddingRight:20,flexGrow:1,marginLeft:10,"& button":{marginLeft:8}}})),Uo=function(e){var t=e.label,n=e.middleComponent,o=e.actions,a=e.sx;return r.createElement(Bo,{sx:a,className:"page-header"},r.createElement(qr,{className:"page-header-label",item:!0,xs:12,sm:12,md:n?4:6},r.createElement(Fo,null,t)),n&&r.createElement(qr,{className:"page-header-middle",item:!0,xs:12,sm:12,md:4},r.createElement(jo,null,n)),r.createElement(qr,{className:"page-header-actions",item:!0,xs:12,sm:12,md:n?4:6},r.createElement(zo,null,o)))},Ho=(0,o.i7)(go||(go=Ze(["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"],["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"]))),Go=o.Ay.span({display:"inline-flex",position:"relative"},(0,o.AH)(bo||(bo=Ze(["\n &:hover {\n & .tooltipElement {\n display: block;\n animation: "," 1s;\n }\n }\n "],["\n &:hover {\n & .tooltipElement {\n display: block;\n animation: "," 1s;\n }\n }\n "])),Ho)),Vo=o.Ay.div((function(e){var t=e.theme,n=e.placement,r="6px",o=Wn(t,"tooltip.background","#737373"),a=Wn(t,"tooltip.color","#FFFFFF"),i={},s={content:"' '",left:"50%",border:"solid transparent",height:0,width:0,position:"absolute",pointerEvents:"none",borderWidth:r,marginLeft:"calc(".concat(r," * -1);")};switch(n){case"top":i={transform:"translateX(-50%) translateY(-50%)","&::before":Ve(Ve({},s),{top:"100%",borderTopColor:o})};break;case"right":i={transform:"translateX(0) translateY(-50%)","&::before":Ve(Ve({},s),{left:"calc(".concat(r," * -1)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderRightColor:o})};break;case"left":i={transform:"translateX(-100%) translateY(-50%)","&::before":Ve(Ve({},s),{left:"auto",right:"calc(".concat(r," * -2)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderLeftColor:o})};break;default:i={transform:"translateX(-50%)","&::before":Ve(Ve({},s),{bottom:"100%",borderBottomColor:o})}}return Ve({position:"fixed",borderRadius:4,color:a,background:o,lineHeight:1,zIndex:10001,padding:8,fontSize:12,boxShadow:"#00000050 0px 3px 10px",maxWidth:350},i)})),qo=function(e){var t=e.placement,n=e.content,o=e.anchorEl,a={},i=t;if(o){var s=o.getBoundingClientRect(),l=document.documentElement.offsetWidth,c=document.documentElement.offsetHeight;switch(t){case"bottom":s.top+s.height+45>c&&(i="top");break;case"left":s.left-175<0&&(i="right");break;case"right":s.left+s.width+175>l&&(i="left");break;case"top":s.top<45&&(i="bottom")}switch(i){case"bottom":a={top:s.top+s.height+10,left:s.left+s.width/2};break;case"left":a={top:s.top+s.height/2,left:s.left-12};break;case"right":a={top:s.top+s.height/2,left:s.left+s.width+12};break;case"top":a={top:s.top-s.height/2-10,left:s.left+s.width/2}}}return r.createElement(Vo,{placement:i,style:a},n)},Wo=function(e){var t=e.children,n=e.tooltip,o=e.errorProps,i=e.placement,s=void 0===i?"bottom":i,l=(0,r.useState)(null),c=l[0],u=l[1],d=(0,r.useState)(!1),p=d[0],h=d[1];return""===n?r.createElement(r.Fragment,null,o?(0,r.cloneElement)(t,Ve({},o)):t):r.createElement(r.Fragment,null,r.createElement(Go,{onPointerEnter:function(e){u(e.currentTarget),h(!0)},onPointerLeave:function(){h(!1)}},o?(0,r.cloneElement)(t,Ve({},o)):t,p&&(0,a.createPortal)(r.createElement(qo,{placement:s,content:n,anchorEl:c}),document.body)))},Zo=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 10.906 10.906"},e),r.createElement("path",{id:"Trazado_7002","data-name":"Trazado 7002",d:"M8.577,3a5.447,5.447,0,1,0,5.144,4.037,8.109,8.109,0,0,1-.951.783,6.211,6.211,0,0,1-2.174,1,2.252,2.252,0,0,1-2.143-.373,2.252,2.252,0,0,1-.373-2.143,6.234,6.234,0,0,1,1-2.174,8.085,8.085,0,0,1,.783-.951A5.483,5.483,0,0,0,8.577,3Zm2.961,8.536a4.343,4.343,0,0,0,1.228-2.42c-1.934,1.115-3.964,1.225-5.083.106s-1.009-3.149.106-5.083a4.362,4.362,0,1,0,3.75,7.4Z",transform:"translate(-3.001 -3.001)",fill:"#969fa8"}))},$o=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 16 16"},e),r.createElement("g",null,r.createElement("path",{id:"Trazado_7232","data-name":"Trazado 7232",d:"M8,0a8,8,0,1,0,8,8A8,8,0,0,0,8,0m3.235,5.4L8.965,8.174,10.949,10.6a.857.857,0,0,1-1.327,1.086h0L7.857,9.528,6.092,11.686A.857.857,0,0,1,4.765,10.6L6.749,8.174,4.479,5.4A.857.857,0,0,1,5.806,4.314L7.857,6.821l2.05-2.506A.857.857,0,1,1,11.235,5.4"})))},Yo=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1043","data-name":"Rect\xe1ngulo 1043",width:"255.479",height:"241.736",fill:"none"})),r.createElement("clipPath",{id:"clip-Format_Drives"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Format_Drives","data-name":"Format Drives",clipPath:"url(#clip-Format_Drives)"},r.createElement("g",{id:"Format_Drives_Icon","data-name":"Format Drives Icon"},r.createElement("g",{id:"Format_Drives_Icon-2","data-name":"Format Drives Icon",transform:"translate(0 -3)"},r.createElement("g",{id:"Grupo_2430","data-name":"Grupo 2430",transform:"translate(0 10)"},r.createElement("path",{id:"Trazado_7192","data-name":"Trazado 7192",d:"M0,256.464v65.03c0,9.7,41.2,28.6,116.725,28.6s116.722-18.726,116.722-28.6v-65.13c-26.62,13.381-71.916,20.19-116.722,20.19S26.621,269.674,0,256.464M40.1,318.11A17.441,17.441,0,1,1,45.765,294.1,17.442,17.442,0,0,1,40.1,318.11",transform:"translate(0 -108.359)"}),r.createElement("path",{id:"Trazado_7193","data-name":"Trazado 7193",d:"M223.775,18.83C207.485,9.744,170.954,0,116.724,0,41.2,0,0,18.9,0,28.6S41.2,57.2,116.724,57.2l0,0a393.878,393.878,0,0,0,42.7-2.213,48.4,48.4,0,0,0,.4,20.494,428.272,428.272,0,0,1-43.1,2.145c-44.807,0-90.1-6.877-116.724-20.19v61.728c0,9.7,41.2,28.6,116.724,28.6s116.722-18.9,116.722-28.6V104.95a48.484,48.484,0,0,0-9.672-86.12M40.1,121.058a17.441,17.441,0,1,1,5.666-24.006A17.441,17.441,0,0,1,40.1,121.058m167.186-18.426a38.3,38.3,0,1,1,38.3-38.3,38.3,38.3,0,0,1-38.3,38.3",transform:"translate(0)"}),r.createElement("path",{id:"Trazado_7194","data-name":"Trazado 7194",d:"M352.322,69.425,344.043,77.7l-.913-.912a9.594,9.594,0,0,0-13.553,0L316.939,89.432a.185.185,0,0,0-.014.017.823.823,0,0,0-.054.065h0a1.109,1.109,0,0,0-.091.125c-.006.009-.013.016-.018.025l-4.4,7.751a1.091,1.091,0,0,0,.177,1.309l2.98,2.979v0l0,0,3.79,3.79,0,0,0,0,3.79,3.79v0h0l3.789,3.789,0,0,0,0,3.79,3.79v0h0l3.79,3.79,0,0,0,0,2.981,2.98a1.09,1.09,0,0,0,1.719-.233l4.327-7.623,12.534-12.534a9.6,9.6,0,0,0,0-13.553l-.912-.913,8.279-8.28a7.844,7.844,0,0,0-11.093-11.093M338,121.1l-1.383-1.385,2.27-4a1.091,1.091,0,0,0-1.9-1.077l-1.973,3.477-2.193-2.193,2.27-4a1.09,1.09,0,0,0-1.9-1.076l-1.973,3.477-2.194-2.195,2.27-4a1.09,1.09,0,0,0-1.9-1.077l-1.973,3.477-2.193-2.193,2.27-4a1.09,1.09,0,0,0-1.9-1.076l-1.973,3.477-2.194-2.194,2.27-4a1.09,1.09,0,0,0-1.9-1.077l-1.973,3.477-2.194-2.194,2.271-4a1.091,1.091,0,0,0-1.9-1.077l-1.973,3.477-1.382-1.382,3.283-5.784,23.33,23.33Z",transform:"translate(-131.967 -28.375)"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1044","data-name":"Rect\xe1ngulo 1044",width:"256",height:"256",fill:"none"}))))},Ko=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"SpeedTestIcon"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 850",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 426",d:"m63.413 63.057-.1.084a5.326 5.326 0 0 0 3.505 9.344l-.011.063a5.319 5.319 0 0 0 3.516-1.371l.1-.084q.167-.135.322-.281a5.337 5.337 0 1 0-7.333-7.756Z"}),r.createElement("path",{"data-name":"Trazado 427",d:"M48.827 88.433a4.336 4.336 0 0 0-5.884 1.729v.095a4.336 4.336 0 0 0 3.817 6.344l-.011.01a4.361 4.361 0 0 0 2.078-8.178Z"}),r.createElement("path",{"data-name":"Trazado 428",d:"M127.29 52.816h.293a7.816 7.816 0 1 0-.046-15.631h-.247a7.816 7.816 0 0 0 0 15.631Z"}),r.createElement("path",{"data-name":"Trazado 429",d:"M37.263 119.721h-.028a2.958 2.958 0 0 0-3.324 2.541v.08a2.973 2.973 0 0 0 2.559 3.336 3.173 3.173 0 0 0 .379 0l-.021.007a2.972 2.972 0 0 0 2.959-2.558v-.056a2.966 2.966 0 0 0-2.524-3.35Z"}),r.createElement("path",{"data-name":"Trazado 430",d:"m91.954 44.052-.209.078a7.07 7.07 0 0 0 2.5 13.688l-.022.065a7.009 7.009 0 0 0 2.537-.529l.165-.066.1-.039a7.071 7.071 0 1 0-5.076-13.2Z"}),r.createElement("path",{"data-name":"Trazado 431",d:"M192.48 73.763a9.817 9.817 0 0 0-.929-13.852l-.268-.235a9.817 9.817 0 0 0-12.881 14.8l.246.212a9.806 9.806 0 0 0 6.452 2.426 9.815 9.815 0 0 0 7.38-3.351Z"}),r.createElement("path",{"data-name":"Trazado 432",d:"M205.131 108.033Z"}),r.createElement("path",{"data-name":"Trazado 433",d:"m227.69 121.128-.067-.495a12.786 12.786 0 0 0-12.612-11.007 12.761 12.761 0 0 0-12.638 14.485v.428a12.786 12.786 0 0 0 12.612 11.047 13.068 13.068 0 0 0 1.778-.12 12.76 12.76 0 0 0 10.927-14.338Z"}),r.createElement("path",{"data-name":"Trazado 434",d:"M210.416 102.215a11.283 11.283 0 0 0 4.537-15.3l-.2-.361a16.398 16.398 0 0 0-.27-.5 11.283 11.283 0 1 0-19.545 11.281l.187.336a11.278 11.278 0 0 0 15.289 4.538Z"}),r.createElement("path",{"data-name":"Trazado 435",d:"m160.575 42.633-.289-.111a8.657 8.657 0 1 0-6.052 16.222l.255.1a8.643 8.643 0 0 0 3.048.556l-.01.066a8.7 8.7 0 0 0 3.048-16.833Z"}),r.createElement("path",{"data-name":"Trazado 436",d:"m148.433 112.148-13.839 11.867a.333.333 0 0 1-.331 0 17.171 17.171 0 1 0 10.435 12.167.333.333 0 0 1 0-.316l13.9-11.866a7.807 7.807 0 0 0-10.165-11.851Zm-12.039 27.588a8.26 8.26 0 1 1-8.26-8.26 8.26 8.26 0 0 1 8.26 8.259Z"}),r.createElement("path",{"data-name":"Trazado 437",d:"M138.134 194.756h-20.3a3.765 3.765 0 0 0 0 7.53h20.33a3.764 3.764 0 0 0 3.764-3.765v-.03a3.765 3.765 0 0 0-3.794-3.735Z"}),r.createElement("path",{"data-name":"Trazado 438",d:"M127.999 0a128 128 0 1 0 128 128 128.15 128.15 0 0 0-128-128Zm0 233.412A105.412 105.412 0 1 1 233.414 128a105.412 105.412 0 0 1-105.415 105.412Z"}))))},Xo=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 864",fill:"none",d:"M0 0h256v255.259H0z"}),r.createElement("path",{"data-name":"Trazado 396",d:"M241.464 0H14.521A14.433 14.433 0 0 0 .001 14.3v51.963a14.433 14.433 0 0 0 14.52 14.3h226.943A14.437 14.437 0 0 0 256 66.263V14.3A14.437 14.437 0 0 0 241.464 0Zm.285 66.263a.283.283 0 0 1-.285.28l-227.224-.28.281-52.241 227.229.278Z",stroke:"#000"}),r.createElement("path",{"data-name":"Trazado 397",d:"M241.464 87.715H14.521a14.431 14.431 0 0 0-14.52 14.3v51.959a14.432 14.432 0 0 0 14.52 14.3h226.943a14.436 14.436 0 0 0 14.536-14.3v-51.959a14.435 14.435 0 0 0-14.536-14.3Zm.285 66.259a.281.281 0 0 1-.285.28l-227.224-.28.281-52.241 227.229.282Z",stroke:"#000"}),r.createElement("path",{"data-name":"Trazado 398",d:"M241.464 175.427H14.521a14.441 14.441 0 0 0-14.52 14.31v51.959a14.434 14.434 0 0 0 14.52 14.3h226.943a14.437 14.437 0 0 0 14.536-14.3v-51.959a14.445 14.445 0 0 0-14.536-14.31Zm.285 66.269a.279.279 0 0 1-.285.281l-227.224-.281.281-52.245 227.229.286Z",stroke:"#000"}),r.createElement("rect",{"data-name":"Rect\\xE1ngulo 813",width:23.651,height:15.695,rx:.643,transform:"translate(20.301 21.991)",stroke:"#000",strokeWidth:.5}),r.createElement("rect",{"data-name":"Rect\\xE1ngulo 814",width:23.651,height:15.695,rx:.643,transform:"translate(20.301 111.056)",stroke:"#000",strokeWidth:.5}),r.createElement("rect",{"data-name":"Rect\\xE1ngulo 815",width:23.651,height:15.695,rx:.643,transform:"translate(20.301 200.016)",stroke:"#000",strokeWidth:.5})))},Jo=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 373",d:"M18 145.888A110.2 110.2 0 0 1 126.767 35.85L113.78 22.869c-12.378-12.378 6.448-31.2 18.822-18.824l37.722 37.72a13.32 13.32 0 0 1 0 18.979l-37.722 37.714c-12.374 12.374-31.2-6.442-18.822-18.82l14.085-14.085a80.434 80.434 0 0 0-80.1 80.335 80.443 80.443 0 0 0 80.349 80.35 80.441 80.441 0 0 0 80.349-80.35 14.878 14.878 0 0 1 14.879-14.877 14.879 14.879 0 0 1 14.882 14.877A110.234 110.234 0 0 1 128.114 256 110.232 110.232 0 0 1 18 145.888Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 871",fill:"none",d:"M0 0h256v256H0z"})))},Qo=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{d:"m144.506 255.256-14.883-15.1a2.5 2.5 0 0 1-.721-1.758v-88.02c-4.229 2.145-8.4 4.255-12.479 6.313-5.391 2.731-10.971 5.553-16.449 8.336l-20.359 10.364-11.967 6.092a2.514 2.514 0 0 1-2.635-.217 2.508 2.508 0 0 1-.973-2.458 120.437 120.437 0 0 1 4.3-16.642 154.087 154.087 0 0 1 7.375-18.167 160.659 160.659 0 0 1 10.453-18.526 148.6 148.6 0 0 1 13.559-17.688 161.263 161.263 0 0 1 21-19.616 157.34 157.34 0 0 1 24.42-15.569 2.512 2.512 0 0 1 2.455.086 2.512 2.512 0 0 1 1.205 2.145v43.791a27.491 27.491 0 0 0 8.039-6.747 27.647 27.647 0 0 0 5.527-11.558 27.41 27.41 0 0 0-.295-12.7 27.57 27.57 0 0 0-6.549-11.788c-5.266-5.679-10.748-11.349-16.051-16.837-4.262-4.407-8.676-8.97-12.955-13.52-.342-.365-.689-.729-1.039-1.1-2.916-3.07-5.934-6.248-7.914-10.09a22.79 22.79 0 0 1-1.416-17.614 23.808 23.808 0 0 1 4.559-8.124 24.373 24.373 0 0 1 7.617-5.952A23.519 23.519 0 0 1 138.992 0a25.109 25.109 0 0 1 12.957 3.756 30.3 30.3 0 0 1 9.525 9.222l1.318 1.945c.018.026.035.056.053.082l1.033 1.663c2.971 4.767 6.035 9.7 9.018 14.584a9375.397 9375.397 0 0 1 19.088 31.434 7.057 7.057 0 0 1 .754 1.962c.049.183.1.352.141.486a2.514 2.514 0 0 1-1.117 2.948l-.582.343a2.514 2.514 0 0 1-2.895-.251 27.192 27.192 0 0 0-.447-.369 13.275 13.275 0 0 1-1.291-1.137l-2.756-2.875c-8.3-8.649-16.881-17.593-25.3-26.415a2847.157 2847.157 0 0 1-5.229-5.5c-4.15-4.372-9.322-9.816-10.338-10.841a5.772 5.772 0 0 0-4-1.88 4.533 4.533 0 0 0-3.152 1.333 4.7 4.7 0 0 0-1.594 3.269 5.364 5.364 0 0 0 1.693 3.791 7287.52 7287.52 0 0 0 18.535 19.351c4.8 5.01 9.777 10.19 14.656 15.292a47.4 47.4 0 0 1 6.354 8.306 46.309 46.309 0 0 1 4.229 9.152 46.6 46.6 0 0 1 2.131 9.648 46.826 46.826 0 0 1 .061 9.786 46.84 46.84 0 0 1-1.953 9.539 46.211 46.211 0 0 1-3.947 9 46.028 46.028 0 0 1-5.895 8.114 46.986 46.986 0 0 1-7.812 6.874 79.956 79.956 0 0 1-9.746 5.548 192.77 192.77 0 0 0-3.555 1.833c-.039.021-.084.047-.121.065v113.437a2.517 2.517 0 0 1-1.561 2.323 2.529 2.529 0 0 1-.951.186 2.513 2.513 0 0 1-1.79-.748Zm-23.9-141.771a136 136 0 0 0-10.672 11.727 137.8 137.8 0 0 0-9.287 12.973q-2.262 3.589-4.359 7.394c.139-.074.277-.143.416-.217 4.941-2.527 9.605-4.915 14.33-7.342l1.783-.916c5.258-2.7 10.693-5.5 16-8.306.018-.014.039-.035.061-.053.061-7.372.053-15.174.039-22.768a139.007 139.007 0 0 0-8.312 7.508Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 861",fill:"none",d:"M0 0h256v256H0z"})))},ea=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{d:"m127.996 255.998-48-64H42.252a31.385 31.385 0 0 1-14.189-3.563 54.7 54.7 0 0 1-14.061-10.69 55.543 55.543 0 0 1-10.5-14.313 32.835 32.835 0 0 1-3.5-14.434v-106a32.839 32.839 0 0 1 3.5-14.438 55.538 55.538 0 0 1 10.5-14.312A54.623 54.623 0 0 1 28.063 3.561 31.4 31.4 0 0 1 42.252 0h171.494a31.389 31.389 0 0 1 14.188 3.561 54.7 54.7 0 0 1 14.068 10.687 55.531 55.531 0 0 1 10.5 14.313 32.839 32.839 0 0 1 3.5 14.437v106a32.835 32.835 0 0 1-3.5 14.438 55.532 55.532 0 0 1-10.5 14.313 54.676 54.676 0 0 1-14.064 10.69 31.371 31.371 0 0 1-14.187 3.563h-37.758l-47.994 64Zm2.3-164.808c3.25 6.531 8.105 16.287 12.771 25.671l2.207 4.436c4.8 9.657 8.277 16.634 8.4 16.856a28.061 28.061 0 0 0 11.422 12.328 33.352 33.352 0 0 0 16.873 4.511 34.058 34.058 0 0 0 9.076-1.229 7.893 7.893 0 0 0 4.939-3.831 6.445 6.445 0 0 0 .395-5.167 7.229 7.229 0 0 0-2.971-3.688 8.874 8.874 0 0 0-4.754-1.376 9.005 9.005 0 0 0-2.395.324 16.147 16.147 0 0 1-4.268.574 15.731 15.731 0 0 1-8.162-2.244 13.156 13.156 0 0 1-5.385-6.093l-.385-.771-2.3-4.636-.037-.073c-8.051-16.214-29.434-59.283-32.84-65.75l-.711-1.376-.127-.241v-.007c-2.111-3.99-5.3-10.021-10.895-15.062a34.192 34.192 0 0 0-10.361-6.44 40.584 40.584 0 0 0-14.949-2.656c-4.457 0-8.082 3.223-8.082 7.185s3.625 7.19 8.082 7.19h.014c12.277 0 16.834 6.963 21.516 16.065l.779 1.469c.379.724 1 1.938 1.85 3.617l.105.211 1.953 3.842-44.129 69.447a6.471 6.471 0 0 0-.658 5.161 7.3 7.3 0 0 0 3.842 4.43 8.881 8.881 0 0 0 3.973.933 8.922 8.922 0 0 0 3.906-.893 7.746 7.746 0 0 0 3-2.558l38.313-60.161Z"})))},ta=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 21 21"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path-help-icon"},r.createElement("rect",{id:"Rect\xe1ngulo_961","data-name":"Rect\xe1ngulo 961",width:"21",height:"21",transform:"translate(0 -0.159)",fill:"currentcolor"}))),r.createElement("g",{id:"HelpIcon-Full",transform:"translate(0 0.159)"},r.createElement("g",{id:"Grupo_2320","data-name":"Grupo 2320",clipPath:"url(#clip-path-help-icon)"},r.createElement("path",{id:"Trazado_7048","data-name":"Trazado 7048",d:"M10.42,0A10.42,10.42,0,1,0,20.84,10.42,10.42,10.42,0,0,0,10.42,0M9.534,18.477a2,2,0,0,1-1.953-1.953h0a1.943,1.943,0,1,1,1.953,1.953m1.309-6.32-.082,1.176H8.3V9.856h.982c1.974,0,3.037-.624,3.037-1.82,0-1.1-1.053-1.7-3.007-1.7-.552,0-1.125.041-1.554.081L7.561,3.73A15.939,15.939,0,0,1,9.626,3.6c3.569,0,5.635,1.647,5.635,4.234,0,2.362-1.575,3.876-4.418,4.326",fill:"currentcolor"}))))},na=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 860",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"share-icn"},r.createElement("path",{"data-name":"Trazado 410",d:"M251.315 67.671 207.79 25.459c-14.279-13.851-35.342 7.862-21.063 21.716l12.959 12.567a156.689 156.689 0 0 0-82.95 23.182 156.774 156.774 0 0 0-71.051 97.677 15.547 15.547 0 0 0 11.474 18.755 15.62 15.62 0 0 0 3.655.438 15.555 15.555 0 0 0 15.1-11.909c14.6-60.586 70.74-100.461 130.9-96.758l-3.335 4.317-15.767 16.248c-13.849 14.285 7.867 35.345 21.719 21.063l42.214-43.518a15.131 15.131 0 0 0-.33-21.566Z"}),r.createElement("path",{"data-name":"Trazado 411",d:"M229.501 156.071c-7.927 0-14.351 6.747-14.351 15.066v54.731H28.703V30.133h126.71c7.925 0 14.351-6.744 14.351-15.066S163.337.001 155.413.001h-130.1C11.356.001.002 11.921.002 26.575v202.854c0 14.652 11.354 26.572 25.311 26.572h193.23c13.957 0 25.311-11.92 25.311-26.572v-58.291c-.001-8.32-6.428-15.067-14.353-15.067Z"}))))},ra=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"edit-icn",d:"M201.683 0a56.44 56.44 0 0 0-38.86 15.85L18.897 159.94a13.219 13.219 0 0 0-3.838 7.2L.187 239.67a13.355 13.355 0 0 0 3.838 12.488A14.56 14.56 0 0 0 14.1 256a6.078 6.078 0 0 0 2.879-.48l71.962-13.932a13.2 13.2 0 0 0 7.2-3.842L240.063 93.658c21.109-21.133 21.109-56.2 0-77.328A52.948 52.948 0 0 0 201.683 0ZM51.521 220.938a29.883 29.883 0 0 0-6.717-9.126 40.622 40.622 0 0 0-9.115-6.724l5.277-24.976a46.056 46.056 0 0 1 23.508 12.008 42.7 42.7 0 0 1 11.994 23.535ZM220.393 73.966 92.299 201.726a56.271 56.271 0 0 0-14.872-23.054 65.573 65.573 0 0 0-23.028-14.89l128.094-128.24a26.406 26.406 0 0 1 19.19-7.685 28.509 28.509 0 0 1 19.19 7.685 27.729 27.729 0 0 1-.48 38.424Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 867",fill:"none",d:"M0 0h256v256H0z"})))},oa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"JSONIcon"},r.createElement("g",{"data-name":"Grupo 2269"},r.createElement("path",{"data-name":"Uni\\xF3n 21",d:"M190.07 233.208a8.967 8.967 0 0 1-2.645-6.377 8.974 8.974 0 0 1 2.645-6.389 8.949 8.949 0 0 1 6.375-2.633 24.023 24.023 0 0 0 9.363-1.895 23.98 23.98 0 0 0 7.656-5.163 24.228 24.228 0 0 0 5.152-7.648 23.763 23.763 0 0 0 1.895-9.361v-47.057a26.541 26.541 0 0 1 7.129-18.122 26.567 26.567 0 0 1-7.129-18.133V63.373a23.707 23.707 0 0 0-1.895-9.351 23.978 23.978 0 0 0-5.152-7.648 23.977 23.977 0 0 0-7.656-5.162 23.815 23.815 0 0 0-9.363-1.9 8.959 8.959 0 0 1-6.375-2.644 8.95 8.95 0 0 1-2.645-6.378 8.949 8.949 0 0 1 2.645-6.377 8.959 8.959 0 0 1 6.375-2.644 42.145 42.145 0 0 1 42.109 42.1v47.057a8.636 8.636 0 0 0 8.625 8.624 8.959 8.959 0 0 1 6.375 2.644 8.967 8.967 0 0 1 2.645 6.377c0 .148 0 .307-.012.488.012.17.012.329.012.477a8.974 8.974 0 0 1-2.645 6.389 8.949 8.949 0 0 1-6.375 2.633 8.636 8.636 0 0 0-8.625 8.624v47.057a42.154 42.154 0 0 1-42.109 42.109 8.959 8.959 0 0 1-6.375-2.64ZM17.465 193.742v-47.057a8.641 8.641 0 0 0-8.625-8.624 8.981 8.981 0 0 1-6.387-2.645 8.936 8.936 0 0 1-2.633-6.377c0-.147 0-.307.012-.477-.012-.182-.012-.34-.012-.488a8.956 8.956 0 0 1 2.633-6.377 8.98 8.98 0 0 1 6.387-2.644 8.641 8.641 0 0 0 8.625-8.624V63.372a42.142 42.142 0 0 1 42.1-42.1 8.972 8.972 0 0 1 6.391 2.633 8.963 8.963 0 0 1 2.633 6.388 8.957 8.957 0 0 1-2.633 6.378 8.982 8.982 0 0 1-6.391 2.644 23.8 23.8 0 0 0-9.359 1.9 24.22 24.22 0 0 0-7.648 5.151 23.985 23.985 0 0 0-5.164 7.659 23.975 23.975 0 0 0-1.883 9.351v47.057a26.56 26.56 0 0 1-7.137 18.133 26.512 26.512 0 0 1 7.137 18.122v47.057a24.07 24.07 0 0 0 1.883 9.361 24.068 24.068 0 0 0 5.164 7.648 24.076 24.076 0 0 0 7.648 5.163 23.994 23.994 0 0 0 9.359 1.884 8.982 8.982 0 0 1 6.391 2.644 8.963 8.963 0 0 1 2.633 6.389 8.956 8.956 0 0 1-2.633 6.377 8.982 8.982 0 0 1-6.391 2.644 42.151 42.151 0 0 1-42.1-42.115ZM160 128.008a16 16 0 0 1 16-16 16.006 16.006 0 0 1 16.012 16 16.012 16.012 0 0 1-16.012 16 16.007 16.007 0 0 1-16-16Zm-48 0a16 16 0 0 1 16-16 16 16 0 0 1 16 16 16 16 0 0 1-16 16 16.01 16.01 0 0 1-16-16Zm-47 0a15.758 15.758 0 0 1 15.5-16 15.758 15.758 0 0 1 15.5 16 15.764 15.764 0 0 1-15.5 16 15.764 15.764 0 0 1-15.5-16Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 891",fill:"none",d:"M0 0h256v256H0z"}))))},aa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"search-icn"},r.createElement("path",{"data-name":"Trazado 399",d:"M200.076 179.436a109.04 109.04 0 0 0 24.225-68.582C224.301 49.663 174.057 0 112.151 0S.001 49.663.001 110.854s50.243 110.855 112.15 110.855a111.975 111.975 0 0 0 66.393-21.58l52.037 51.437A15.108 15.108 0 0 0 241.048 256a14.929 14.929 0 0 0 10.467-25.423ZM29.908 110.854c0-44.933 36.785-81.293 82.243-81.293s82.243 36.36 82.243 81.293-37.084 81.293-82.243 81.293-82.243-36.36-82.243-81.293Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 866",fill:"none",d:"M0 0h256v255.7H0z"})))},ia=function(e){return r.createElement("svg",Ve({id:"WarnIcon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256"},e,{className:"min-icon",fill:"currentcolor"}),r.createElement("g",{id:"download-icn",transform:"translate(0 0.087)"},r.createElement("path",{id:"Uni\xf3n_24","data-name":"Uni\xf3n 24",d:"M19388-6740.606a107.642,107.642,0,0,0-107.52,107.52,107.642,107.642,0,0,0,107.52,107.52,107.642,107.642,0,0,0,107.52-107.52,107.642,107.642,0,0,0-107.52-107.52m0-20.48a128,128,0,0,1,128,128,128,128,0,0,1-128,128,128,128,0,0,1-128-128A128,128,0,0,1,19388-6761.087Z",transform:"translate(-19260 6761)"})),r.createElement("rect",{id:"Rect\xe1ngulo_893","data-name":"Rect\xe1ngulo 893",width:"256",height:"256",fill:"none"}),r.createElement("path",{id:"Trazado_7001","data-name":"Trazado 7001",d:"M43.3-140H12.1l3.6,91.9h24ZM27.8-35.5c-10.2,0-19.1,8.7-19.1,18.9A19.565,19.565,0,0,0,27.8,2.5c10.1,0,18.9-8.9,18.9-19.1A19.282,19.282,0,0,0,27.8-35.5Z",transform:"translate(101 201)"}))},sa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("circle",{"data-name":"circle-icn",cx:128,cy:128,r:128}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 852",fill:"none",d:"M0 0h256v256H0z"})))},la=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256"}),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Object Browser",clipPath:"url(#prefix__a)"},r.createElement("g",{"data-name":"Grupo 1541",transform:"translate(87.918 103.898)"},r.createElement("circle",{"data-name":"Elipse 57",cx:11.515,cy:11.515,r:11.515,transform:"rotate(-10.901 280.738 -178.561)"}),r.createElement("rect",{"data-name":"Rect\\xE1ngulo 805",width:24.592,height:20.853,rx:1.35,transform:"translate(14.546 25.545)"}),r.createElement("path",{"data-name":"Trazado 365",d:"M28.151 60.295a2.427 2.427 0 00-4.2 0l-9.1 15.761a2.425 2.425 0 002.1 3.64h18.2a2.43 2.43 0 002.105-3.64z"}),r.createElement("path",{"data-name":"Trazado 366",d:"M79.273 28.199a151.334 151.334 0 00-.187-17.51c-.395-4.294-2.262-7.942-6.512-9.468a15.5 15.5 0 00-1.836-.529 38.335 38.335 0 00-7.332-.658c-4.289-.125-8.57.136-12.855.116-8.582-.036-17.16.116-25.746.152H6.301a6.308 6.308 0 00-6.3 6.3v80.617a6.307 6.307 0 006.3 6.3h66.684a6.3 6.3 0 006.3-6.3V47.054c-.004-6.273-.168-12.584-.012-18.855zm-7.648 53.334a5.435 5.435 0 01-5.434 5.439h-54.2a5.442 5.442 0 01-5.441-5.439V12.3a5.441 5.441 0 015.441-5.442h36.367v9.3a13.809 13.809 0 0013.789 13.794h9.48zm0-57.6h-9.48a7.781 7.781 0 01-7.773-7.777v-9.3h11.82a5.435 5.435 0 015.434 5.442z"})),r.createElement("path",{"data-name":"Trazado 367",d:"M101.585 42.067c6.6 0 13.672 18.858 20.742 18.858h87.934a9.453 9.453 0 019.426 9.429v4.715H40.292V51.496h-.234a9.455 9.455 0 019.426-9.429h52.1m124.219 44.5a9.8 9.8 0 019.773 9.772L225.56 204.095a9.8 9.8 0 01-9.773 9.771H39.615a9.8 9.8 0 01-9.773-9.771L20.065 96.339a9.806 9.806 0 019.777-9.772h195.961M101.584 21.999h-52.1a29.528 29.528 0 00-29.492 29.5 20.028 20.028 0 00.234 3.081v13.513A29.9 29.9 0 00-.001 96.344c0 .605.031 1.208.086 1.814l9.711 107.089a29.874 29.874 0 0029.82 28.691h176.172a29.873 29.873 0 0029.813-28.663l9.961-107.074c.051-.617.082-1.239.082-1.857a29.875 29.875 0 00-15.887-26.376 29.534 29.534 0 00-29.5-29.106H128.87c-.4-.532-.785-1.059-1.121-1.517-5.094-6.906-12.785-17.342-26.168-17.342z"})))},ca=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 373",d:"M18 145.888A110.2 110.2 0 0 1 126.767 35.85L113.78 22.869c-12.378-12.378 6.448-31.2 18.822-18.824l37.722 37.72a13.32 13.32 0 0 1 0 18.979l-37.722 37.714c-12.374 12.374-31.2-6.442-18.822-18.82l14.085-14.085a80.434 80.434 0 0 0-80.1 80.335 80.443 80.443 0 0 0 80.349 80.35 80.441 80.441 0 0 0 80.349-80.35 14.878 14.878 0 0 1 14.879-14.877 14.879 14.879 0 0 1 14.882 14.877A110.234 110.234 0 0 1 128.114 256 110.232 110.232 0 0 1 18 145.888Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 871",fill:"none",d:"M0 0h256v256H0z"})))},ua=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1045","data-name":"Rect\xe1ngulo 1045",width:"256",height:"230.638",fill:"none"})),r.createElement("clipPath",{id:"clip-Change_Access_Policy"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Change_Access_Policy","data-name":"Change Access Policy",clipPath:"url(#clip-Change_Access_Policy)"},r.createElement("g",{id:"Change_Access_Policy_Icon","data-name":"Change Access Policy Icon"},r.createElement("g",{id:"Grupo_2432","data-name":"Grupo 2432",transform:"translate(0 13)"},r.createElement("g",{id:"Grupo_2431","data-name":"Grupo 2431"},r.createElement("path",{id:"Trazado_7195","data-name":"Trazado 7195",d:"M230.943,74.7A72.225,72.225,0,0,0,217.05,30.786,74.4,74.4,0,0,0,82.376,74.139a73.1,73.1,0,0,0,3.216,21.5L0,181.212v49.426H49.426l2.217-2.22L38.01,214.786l17.257-17.257L68.9,211.161l14.776-14.778L70.043,182.753,87.3,165.5l13.629,13.63L135,145.045a73.794,73.794,0,0,0,41.481.594A45.523,45.523,0,1,0,230.943,74.7m15.771,40.663a35.971,35.971,0,1,1-35.971-35.971,35.971,35.971,0,0,1,35.971,35.971M228.838,99.516A8.172,8.172,0,0,0,222.913,97a8.71,8.71,0,0,0-6,2.447l-22.22,22.245a2.041,2.041,0,0,0-.593,1.112L191.8,134a2.062,2.062,0,0,0,.593,1.928,2.246,2.246,0,0,0,1.555.593.938.938,0,0,0,.444-.074l11.11-2.152a2.036,2.036,0,0,0,1.111-.593l22.219-22.245a8.511,8.511,0,0,0,0-11.938M148.261,65.9a16.475,16.475,0,1,1,16.475,16.475A16.475,16.475,0,0,1,148.261,65.9",transform:"translate(0 0)"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1046","data-name":"Rect\xe1ngulo 1046",width:"256",height:"256",fill:"none"}))))},da=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"servers-icn"},r.createElement("path",{"data-name":"Trazado 404",d:"M128 0C64.408 0 0 15.267 0 44.414v167.17c0 29.147 64.408 44.415 128 44.415s128-15.268 128-44.415V44.414C256 15.267 191.592 0 128 0Zm105.743 211.584c0 8.945-37.324 25.909-105.739 25.909s-105.74-17.118-105.74-25.909v-58.911c24.116 11.967 65.15 18.2 105.74 18.2s81.623-6.169 105.739-18.29Zm0-85.128c0 8.791-37.324 25.908-105.739 25.908s-105.74-17.118-105.74-25.908V70.537c24.116 12.06 65.15 18.29 105.74 18.29s81.623-6.168 105.739-18.29ZM128.004 70.321c-68.416 0-105.74-17.118-105.74-25.908s37.324-25.908 105.74-25.908 105.739 17.119 105.739 25.909S196.415 70.323 128 70.323Z"}),r.createElement("circle",{"data-name":"Elipse 59",cx:15.793,cy:15.793,r:15.793,transform:"rotate(-31.72 348.405 44.732)"}),r.createElement("circle",{"data-name":"Elipse 60",cx:15.793,cy:15.793,r:15.793,transform:"rotate(-31.72 207.061 4.576)"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 854",fill:"none",d:"M0 0h256v256H0z"})))},pa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{transform:"translate(14.827 15.767) rotate(180)"},r.createElement("path",{fill:"currentcolor",d:"M-147.9-183c-4.1-4.1-10.8-4.1-14.9,0c0,0,0,0,0,0l-63.3,63.3c-4.1,4.1-4.1,10.8,0,14.9\n\t\tc0,0,0,0,0,0l63.3,63.3c4.1,4.1,10.8,4.1,14.9,0c4.1-4.1,4.1-10.8,0-14.9l-55.9-55.9l55.9-55.9C-143.7-172.2-143.7-178.9-147.9-183\n\t\tC-147.9-183-147.9-183-147.9-183L-147.9-183z"}),r.createElement("path",{fill:"currentcolor",d:"M-60.4-112.2c0-5.8-4.7-10.5-10.5-10.5h-137.1c-5.8,0-10.6,4.7-10.6,10.6\n\t\tc0,5.8,4.7,10.6,10.6,10.6h137.1C-65.1-101.7-60.4-106.4-60.4-112.2C-60.4-112.2-60.4-112.2-60.4-112.2z M-7.6,14.4\n\t\tc-5.8,0-10.5-4.7-10.5-10.5v-232.2c0-5.8,4.7-10.6,10.6-10.6c5.8,0,10.6,4.7,10.6,10.6V3.9C2.9,9.7-1.8,14.4-7.6,14.4L-7.6,14.4z"})))},ha=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 10.868 22"},e),r.createElement("path",{id:"minio-logo-color",d:"M36.179,13.541q-.834-1.379-1.673-2.755c-.29-.476-.585-.949-.88-1.422l-.116-.172a2.047,2.047,0,0,0-2.624-.836,1.84,1.84,0,0,0-.846,2.481,4.385,4.385,0,0,0,.749.931c.841.894,1.709,1.762,2.544,2.662a2.626,2.626,0,0,1-.915,4.225l-.056.023V14.492a13.556,13.556,0,0,0-3.918,3.036,13.227,13.227,0,0,0-3.075,6.117L28.2,22.2c.942-.479,1.878-.95,2.856-1.446V28.83l1.3,1.323V20.076s.03-.014.127-.067a10.787,10.787,0,0,0,1.143-.633,3.862,3.862,0,0,0,.567-5.84c-.969-1.013-1.942-2.022-2.91-3.037a.623.623,0,0,1,0-.93.643.643,0,0,1,.935.053c.135.136,1.043,1.1,1.367,1.435q1.228,1.286,2.459,2.567a1.752,1.752,0,0,0,.136.116l.051-.03A.815.815,0,0,0,36.179,13.541Zm-5.124,5.715a.235.235,0,0,1-.119.159c-.519.275-1.042.543-1.564.811l-1.9.976a12.318,12.318,0,0,1,3.568-4.421l.023-.019C31.06,17.572,31.063,18.448,31.055,19.257Z",transform:"translate(-25.369 -8.153)"}))},ma=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 18",d:"M17.271 255.95a17.247 17.247 0 0 1-12.236-5.086 17.291 17.291 0 0 1-5.086-12.239V17.274A17.25 17.25 0 0 1 5.035 5.035 17.245 17.245 0 0 1 17.271-.051h221.354a17.237 17.237 0 0 1 12.244 5.091 17.238 17.238 0 0 1 5.08 12.253v221.332a17.256 17.256 0 0 1-5.084 12.239 17.256 17.256 0 0 1-12.24 5.086Zm5.121-233.556a14.786 14.786 0 0 0-4.357 10.526v190.083a14.784 14.784 0 0 0 4.357 10.521 14.782 14.782 0 0 0 10.52 4.362h190.09a14.788 14.788 0 0 0 10.518-4.362 14.778 14.778 0 0 0 4.359-10.521l-.016-190.083a14.758 14.758 0 0 0-4.357-10.521 14.758 14.758 0 0 0-10.514-4.362H32.912a14.777 14.777 0 0 0-10.52 4.356Zm133.525 194.628a15.4 15.4 0 0 1-10.963-4.539 15.409 15.409 0 0 1-4.545-10.969V178.65a15.406 15.406 0 0 1 4.545-10.964 15.4 15.4 0 0 1 10.957-4.539h48.84a15.4 15.4 0 0 1 10.959 4.539 15.409 15.409 0 0 1 4.539 10.964v22.873a15.4 15.4 0 0 1-4.539 10.959 15.385 15.385 0 0 1-10.959 4.539Zm-99.047-.02c-8.545 0-15.5-6.375-15.5-14.213v-74.217c0-7.838 6.957-14.218 15.5-14.218h48.834c8.547 0 15.5 6.38 15.5 14.218v74.217c0 7.837-6.949 14.213-15.5 14.213Zm99.047-75.462c-8.545 0-15.5-6.375-15.5-14.213V53.11c0-7.838 6.957-14.218 15.5-14.218h48.824c8.553 0 15.508 6.38 15.508 14.218v74.217c0 7.838-6.955 14.213-15.508 14.213ZM56.87 92.781a15.4 15.4 0 0 1-10.957-4.539 15.407 15.407 0 0 1-4.545-10.964V54.395a15.406 15.406 0 0 1 4.545-10.964 15.4 15.4 0 0 1 10.957-4.539h48.824a15.408 15.408 0 0 1 10.969 4.544A15.4 15.4 0 0 1 121.2 54.4v22.873a15.4 15.4 0 0 1-4.537 10.964 15.408 15.408 0 0 1-10.969 4.544Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 881",fill:"none",d:"M0 0h256v256H0z"})))},fa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 41",d:"M175.369 255.999a41.227 41.227 0 0 1-40.01-31.491h-14.736a41.3 41.3 0 0 1-39.988 31.491h-.006a41.192 41.192 0 0 1-41.152-41.145 41.068 41.068 0 0 1 14.268-31.134l-8.084-14.819a41.386 41.386 0 0 1-4.5.251A41.2 41.2 0 0 1 .007 128.003a41.2 41.2 0 0 1 41.154-41.154 41.31 41.31 0 0 1 6.041.443l7.676-14.071a41.09 41.09 0 0 1-15.393-32.069A41.194 41.194 0 0 1 80.637-.002a41.211 41.211 0 0 1 40.893 36.5h12.957a41.207 41.207 0 0 1 40.891-36.5 41.194 41.194 0 0 1 41.152 41.154 41.115 41.115 0 0 1-14.035 30.886l8.193 15.021a41.42 41.42 0 0 1 4.172-.21 41.2 41.2 0 0 1 41.148 41.154 41.273 41.273 0 0 1-41.148 41.149q-1.31 0-2.6-.082l-8.652 15.861a41.05 41.05 0 0 1 12.926 29.922 41.263 41.263 0 0 1-41.148 41.145Zm-15.461-41.145a15.479 15.479 0 0 0 15.461 15.462 15.485 15.485 0 0 0 15.471-15.462 15.515 15.515 0 0 0-15.471-15.471 15.485 15.485 0 0 0-15.461 15.473Zm-94.744 0a15.484 15.484 0 0 0 15.465 15.462 15.484 15.484 0 0 0 15.467-15.462 15.512 15.512 0 0 0-15.471-15.471 15.485 15.485 0 0 0-15.461 15.473Zm69.055-.351a41.147 41.147 0 0 1 18.393-33.922l-8.525-14.725a40.926 40.926 0 0 1-16.082 3.3 40.981 40.981 0 0 1-12.812-2.042l-8.984 15.522a41.109 41.109 0 0 1 15.578 31.87Zm61.25-35.552 6.477-11.871a41.28 41.28 0 0 1-27.734-32.58h-5.58a41.235 41.235 0 0 1-14.312 25.076l9.186 15.868a41.037 41.037 0 0 1 11.865-1.744 40.9 40.9 0 0 1 20.098 5.253Zm-133.391-.828a40.919 40.919 0 0 1 18.551-4.423 40.934 40.934 0 0 1 15.193 2.907l8.617-14.884A41.216 41.216 0 0 1 87.363 134.5h-5.582a41.378 41.378 0 0 1-26.059 31.969Zm137.309-50.119a15.477 15.477 0 0 0 15.465 15.462 15.477 15.477 0 0 0 15.461-15.462 15.5 15.5 0 0 0-15.471-15.471 15.483 15.483 0 0 0-15.455 15.472ZM128 143.467a15.477 15.477 0 0 0 15.465-15.462A15.5 15.5 0 0 0 128 112.534a15.4 15.4 0 0 0-5.734 1.1l-3.818 2.21A15.452 15.452 0 0 0 112.54 128a15.441 15.441 0 0 0 5.914 12.155l3.789 2.2a15.379 15.379 0 0 0 5.757 1.112ZM25.686 128.005a15.482 15.482 0 0 0 15.467 15.462 15.481 15.481 0 0 0 15.465-15.462 15.507 15.507 0 0 0-15.465-15.471 15.49 15.49 0 0 0-15.467 15.471Zm148.379-5.5a41.276 41.276 0 0 1 26.506-33.1l-6.379-11.693a40.928 40.928 0 0 1-18.818 4.591 41.039 41.039 0 0 1-11.865-1.743l-9.17 15.843a41.135 41.135 0 0 1 14.451 26.1Zm-86.848 0a41.2 41.2 0 0 1 17.221-28.223l-8.627-14.9a40.952 40.952 0 0 1-15.176 2.925h-.006a40.908 40.908 0 0 1-17.254-3.794l-6.3 11.548a41.266 41.266 0 0 1 24.863 32.448Zm56.881-32.375 8.514-14.707a41.2 41.2 0 0 1-18.049-28.922h-13.135a41.238 41.238 0 0 1-15.242 26.844l9 15.549A41 41 0 0 1 128 86.852a40.932 40.932 0 0 1 16.1 3.278Zm15.811-48.976a15.476 15.476 0 0 0 15.461 15.461 15.482 15.482 0 0 0 15.471-15.461 15.515 15.515 0 0 0-15.471-15.471 15.484 15.484 0 0 0-15.462 15.471Zm-94.744 0A15.481 15.481 0 0 0 80.63 56.615a15.481 15.481 0 0 0 15.467-15.461 15.512 15.512 0 0 0-15.471-15.471 15.484 15.484 0 0 0-15.462 15.471Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 924",fill:"none",d:"M0 0h256v256H0z"})))},ga=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 39",d:"M119.5 246.769v-19a9 9 0 0 1 9-9 9 9 0 0 1 9 9v19a9 9 0 0 1-9 9 9.006 9.006 0 0 1-9-9Zm0-43.852v-19a9.006 9.006 0 0 1 9-9 9 9 0 0 1 9 9v19a9 9 0 0 1-9 9 9.006 9.006 0 0 1-9-9Zm117.967-22.283-71.154-41.4a12.875 12.875 0 0 1-6.463-11.237 12.889 12.889 0 0 1 6.463-11.237l71.154-41.394A13 13 0 0 1 257 86.6v82.794a13.018 13.018 0 0 1-13.021 13.02 12.877 12.877 0 0 1-6.514-1.78Zm-54.674-52.636 56.211 32.7v-65.4ZM0 169.4V86.6a13 13 0 0 1 19.535-11.237l71.15 41.394a12.879 12.879 0 0 1 6.461 11.237 12.865 12.865 0 0 1-6.461 11.237l-71.15 41.4a12.9 12.9 0 0 1-6.518 1.783A13.015 13.015 0 0 1 0 169.4Zm18-8.7L74.205 128 18 95.3Zm101.5-1.636v-19a9 9 0 0 1 9-9 9 9 0 0 1 9 9v19a9 9 0 0 1-9 9 9 9 0 0 1-9-8.998Zm0-43.857v-19a9.006 9.006 0 0 1 9-9 9 9 0 0 1 9 9v19a9 9 0 0 1-9 9 9.006 9.006 0 0 1-9-8.999Zm0-43.852v-19a9 9 0 0 1 9-9 9 9 0 0 1 9 9v19a9 9 0 0 1-9 9 9 9 0 0 1-9-8.998Zm0-43.857v-19a9.006 9.006 0 0 1 9-9 9 9 0 0 1 9 9v19a9 9 0 0 1-9 9 9.006 9.006 0 0 1-9-8.998Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 923",fill:"none",d:"M0 0h256v256H0z"})))},ba=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"ToolsIcon"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 846",fill:"none",d:"M0 0h255.535v255.516H0z"}),r.createElement("g",{"data-name":"Grupo 1552"},r.createElement("path",{"data-name":"Uni\\xF3n 12",d:"M187.377 246.393 68.398 127.416q-2.3.164-4.6.164a63.373 63.373 0 0 1-45.111-18.629A64.284 64.284 0 0 1 2.218 47.216a19.958 19.958 0 0 1 33.414-9.02l12.7 12.695 3.006-3-12.7-12.7a19.962 19.962 0 0 1 9.02-33.412A65.038 65.038 0 0 1 64.283-.384a63.344 63.344 0 0 1 45.113 18.635 64.122 64.122 0 0 1 18.461 49.688l.59.59c.146-.153.291-.3.441-.453l23.5-23.312-.055-3.286a19.965 19.965 0 0 1 10.5-17.912l40.215-21.659a19.949 19.949 0 0 1 23.523 3.4l23.526 23.33a19.973 19.973 0 0 1 3.266 24.089l-22.524 39.362a19.955 19.955 0 0 1-17.4 10.049l-2.51-.009-24.086 23.888c-.15.151-.3.3-.461.443l60.469 60.463a31.038 31.038 0 0 1 0 43.848l-15.619 15.622a31.015 31.015 0 0 1-43.855 0Zm14.119-14.117a11.039 11.039 0 0 0 15.617 0l15.619-15.617a11.033 11.033 0 0 0 0-15.617L106.566 74.884a43.813 43.813 0 0 0-53.811-53.81L79.57 47.886l-31.239 31.23-26.812-26.8a43.815 43.815 0 0 0 53.809 53.8Zm-29.2-191.135.2 11.8-29.549 29.307 29.838 29.6 29.951-29.712 10.777.041 22.524-39.368-23.52-23.331Z"}),r.createElement("g",{"data-name":"Grupo 1551"},r.createElement("path",{"data-name":"Trazado 444",d:"m80.891 143.919-57.656 57.656a10.859 10.859 0 0 0 0 15.357l15.357 15.359a10.861 10.861 0 0 0 15.359 0l57.652-57.655-30.712-30.717m0-20a20 20 0 0 1 14.142 5.858l30.716 30.717a20 20 0 0 1 0 28.284l-57.656 57.656a30.661 30.661 0 0 1-21.822 9.039 30.658 30.658 0 0 1-21.821-9.039l-15.358-15.36a30.657 30.657 0 0 1-9.038-21.82 30.656 30.656 0 0 1 9.04-21.822l57.654-57.655a20 20 0 0 1 14.143-5.858Z"}))))))},ya=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"arrow-icn",d:"M19.795 108.063c-26.394 0-26.394 40.032 0 40.032h167.688l-22.739 22.669c-18.656 18.622 9.725 46.922 28.382 28.316l56.877-56.732a19.991 19.991 0 000-28.548l-56.877-56.716c-18.656-18.6-47.038 9.684-28.382 28.3l22.739 22.68H19.795z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 863",fill:"none",d:"M0 0h256v256H0z"})))},va=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 463",d:"M32.291 232.53a32.336 32.336 0 0 1-32.289-32.3V76.935a32.33 32.33 0 0 1 32.289-32.3 8.837 8.837 0 0 1 8.832 8.822 8.845 8.845 0 0 1-8.832 8.831 14.663 14.663 0 0 0-14.648 14.648v123.295a14.661 14.661 0 0 0 14.648 14.64h191.4a14.66 14.66 0 0 0 14.641-14.64V76.936a14.661 14.661 0 0 0-14.641-14.648h-54.07a8.845 8.845 0 0 1-8.832-8.831 8.762 8.762 0 0 1 2.586-6.236 8.735 8.735 0 0 1 6.246-2.586h54.07a32.345 32.345 0 0 1 32.313 32.3V200.23a32.351 32.351 0 0 1-32.312 32.3Zm140.445-33.006a3.078 3.078 0 0 1-3.082-3.07V179.02a3.08 3.08 0 0 1 3.082-3.08h47.18a3.077 3.077 0 0 1 3.07 3.08v17.434a3.075 3.075 0 0 1-3.07 3.07Zm-113.141 0a22.643 22.643 0 0 1-20.648-12.767 26.835 26.835 0 0 1 1.891-26.579l.02-.019c.094-.143.2-.285.3-.428.273-.409.559-.827.871-1.245a70.651 70.651 0 0 1 52.277-28.5 62.967 62.967 0 0 1 3.543-.095 67.043 67.043 0 0 1 15.211 1.777 71.594 71.594 0 0 1 14.734 5.219 71.248 71.248 0 0 1 26.73 22.149 27.371 27.371 0 0 1 2.672 27.53 22.363 22.363 0 0 1-20.629 12.956Zm-3.719-30.372v.01l-.047.058c-.191.256-.371.5-.531.741v.028l-.258.371a8.365 8.365 0 0 0-.715 8.261 5.526 5.526 0 0 0 5.27 3.1h76.969a6.062 6.062 0 0 0 3.156-.761 4.988 4.988 0 0 0 1.949-2.243 8.485 8.485 0 0 0 .715-4.524 9.18 9.18 0 0 0-1.7-4.468 54.088 54.088 0 0 0-42.969-22.007c-.93 0-1.75.019-2.508.066h-.012a53.055 53.055 0 0 0-39.318 21.368Zm116.859-5.01a3.08 3.08 0 0 1-3.082-3.079v-17.425a3.08 3.08 0 0 1 3.082-3.08h47.18a3.077 3.077 0 0 1 3.07 3.08v17.425a3.077 3.077 0 0 1-3.07 3.079Zm-.59-38.7a2.5 2.5 0 0 1-2.492-2.5V82.066a2.5 2.5 0 0 1 2.492-2.5h48.348a2.5 2.5 0 0 1 2.492 2.5v40.876a2.5 2.5 0 0 1-2.492 2.5ZM50.981 74.213c0-28.233 22.09-51.209 49.242-51.209s49.258 22.976 49.258 51.209a52.579 52.579 0 0 1-3.867 19.906 51.257 51.257 0 0 1-10.551 16.274 49.07 49.07 0 0 1-15.656 11 47.257 47.257 0 0 1-19.184 4.041c-27.151 0-49.241-22.976-49.241-51.22Zm17.977 0c0 18.033 14.031 32.711 31.266 32.711 17.262 0 31.3-14.678 31.3-32.711s-14.039-32.7-31.3-32.7c-17.234 0-31.265 14.668-31.265 32.701Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 883",fill:"none",d:"M0 0h256v256H0z"})))},Ea=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"online-registration-back_svg__a"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 1600",fill:"#2781b0",d:"M0 0h256v199.269H0z"}))),r.createElement("path",{"data-name":"Rect\\xE1ngulo 1602",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"Grupo 2521"},r.createElement("g",{"data-name":"Grupo 2520",clipPath:"url(#online-registration-back_svg__a)",fill:"#2781b0",transform:"translate(0 22.634)"},r.createElement("path",{"data-name":"Trazado 7245",d:"M110.325 123.433a78.259 78.259 0 0 0 .768 10.936h13.5v-21.871h-13.5a78.271 78.271 0 0 0-.768 10.936Z"}),r.createElement("path",{"data-name":"Trazado 7246",d:"M112.411 105.696h12.187V85.56c-4.871 2.382-9.583 9.676-12.187 20.141"}),r.createElement("path",{"data-name":"Trazado 7247",d:"M124.599 161.316v-20.141h-12.188c2.6 10.464 7.316 17.761 12.187 20.141"}),r.createElement("path",{"data-name":"Trazado 7248",d:"M162.4 105.7a38.951 38.951 0 0 0-18.91-17.748 52.941 52.941 0 0 1 7.113 17.748Z"}),r.createElement("path",{"data-name":"Trazado 7249",d:"M103.53 123.433a85.92 85.92 0 0 1 .711-10.937H90.854a38.2 38.2 0 0 0 0 21.873h13.384a86.293 86.293 0 0 1-.711-10.936"}),r.createElement("path",{"data-name":"Trazado 7250",d:"M112.5 87.95a38.954 38.954 0 0 0-18.909 17.748h11.8a53.038 53.038 0 0 1 7.113-17.748"}),r.createElement("path",{"data-name":"Trazado 7251",d:"M93.597 141.173a38.956 38.956 0 0 0 18.909 17.748 52.942 52.942 0 0 1-7.113-17.748Z"}),r.createElement("path",{"data-name":"Trazado 7252",d:"M151.757 112.499a84.331 84.331 0 0 1 0 21.873h13.385a38.182 38.182 0 0 0 0-21.873Z"}),r.createElement("path",{"data-name":"Trazado 7253",d:"M143.491 158.922a38.962 38.962 0 0 0 18.91-17.748h-11.8a52.968 52.968 0 0 1-7.113 17.748"}),r.createElement("path",{"data-name":"Trazado 7254",d:"M192.789 69.359c.12-1.539.177-2.98.177-4.393a64.966 64.966 0 0 0-129.932 0c0 1.413.058 2.854.177 4.393a64.967 64.967 0 0 0 1.754 129.91h126.069a64.967 64.967 0 0 0 1.754-129.91Zm-21.947 69.376a3.373 3.373 0 0 1-.2.561 45.463 45.463 0 0 1-85.276 0 3.126 3.126 0 0 1-.2-.561 44.686 44.686 0 0 1 0-30.59 3.233 3.233 0 0 1 .2-.561 45.463 45.463 0 0 1 85.277 0 3.128 3.128 0 0 1 .2.561 44.711 44.711 0 0 1 0 30.59"}),r.createElement("path",{"data-name":"Trazado 7255",d:"M131.398 141.173v20.141c4.871-2.38 9.583-9.677 12.187-20.141Z"}),r.createElement("path",{"data-name":"Trazado 7256",d:"M131.398 85.557v20.141h12.187c-2.6-10.464-7.316-17.758-12.187-20.141"}),r.createElement("path",{"data-name":"Trazado 7257",d:"M145.671 123.433a78.26 78.26 0 0 0-.769-10.937h-13.5v21.872h13.5a78.262 78.262 0 0 0 .769-10.936Z"}))))},wa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 43",d:"M65.865 256a8.03 8.03 0 0 1-8.029-8.035 8.03 8.03 0 0 1 8.029-8.034h163.867a8.035 8.035 0 0 1 8.033 8.034 8.035 8.035 0 0 1-8.033 8.035Zm-57.834 0a8.03 8.03 0 0 1-8.029-8.035 8.03 8.03 0 0 1 8.029-8.034h29.99a8.035 8.035 0 0 1 8.033 8.034A8.035 8.035 0 0 1 38.021 256Zm57.834-28.917a8.03 8.03 0 0 1-8.029-8.034 8.03 8.03 0 0 1 8.029-8.035h163.867a8.035 8.035 0 0 1 8.033 8.035 8.035 8.035 0 0 1-8.033 8.034Zm-57.834 0a8.03 8.03 0 0 1-8.029-8.034 8.03 8.03 0 0 1 8.029-8.035h29.99a8.035 8.035 0 0 1 8.033 8.035 8.035 8.035 0 0 1-8.033 8.034Zm163.459-28.384H142a8.173 8.173 0 0 1-2.906-.533H65.865a8.03 8.03 0 0 1-8.029-8.034 8.03 8.03 0 0 1 8.029-8.035h34.445a8.134 8.134 0 0 1-3.521-2.068L76 159.218a8.128 8.128 0 0 1-2.377-5.208 8.128 8.128 0 0 1 1.641-5.474l12.373-16.585a68.993 68.993 0 0 1-2.988-7.079l-20.311-2.926a8.163 8.163 0 0 1-7.025-8.15V84.375a8.167 8.167 0 0 1 7.025-8.15l20.311-2.926a70.215 70.215 0 0 1 2.988-7.073L75.258 49.792a8.178 8.178 0 0 1-1.635-5.48 8.113 8.113 0 0 1 2.381-5.2l20.781-20.807a8.141 8.141 0 0 1 5.779-2.393 8.1 8.1 0 0 1 4.93 1.657l16.5 12.373a69.937 69.937 0 0 1 7.09-2.972l2.914-20.333a8.146 8.146 0 0 1 2.723-5.016 8.155 8.155 0 0 1 5.428-2h29.572a8.159 8.159 0 0 1 5.342 2 8.138 8.138 0 0 1 2.727 5.016l2.92 20.333a72.131 72.131 0 0 1 7.086 2.972l16.439-12.373a8.039 8.039 0 0 1 4.9-1.657 8.109 8.109 0 0 1 5.766 2.393l20.8 20.958a8.142 8.142 0 0 1 2.381 5.2 8.135 8.135 0 0 1-1.633 5.474l-12.314 16.434a71.975 71.975 0 0 1 2.994 7.079l20.334 2.926a8.147 8.147 0 0 1 4.957 2.757 8.174 8.174 0 0 1 1.971 5.318v29.5a8.192 8.192 0 0 1-1.971 5.387 8.161 8.161 0 0 1-5.039 2.757l-20.34 2.926a67.225 67.225 0 0 1-2.971 7.079l12.234 16.353a8.209 8.209 0 0 1 1.627 5.486 8.133 8.133 0 0 1-2.367 5.208l-20.8 20.8a8.119 8.119 0 0 1-3.8 2.149h16.77a8.035 8.035 0 0 1 8.033 8.035 8.035 8.035 0 0 1-8.033 8.034h-55.26a8.157 8.157 0 0 1-2.9.533Zm37.543-16.6a8.118 8.118 0 0 1-2.953-1.413l-16.418-12.3a71.877 71.877 0 0 1-7.084 2.972l-1.547 10.745Zm-44.514 0 2.627-17.766a8.133 8.133 0 0 1 5.891-6.691 57.883 57.883 0 0 0 13.561-5.59 8.188 8.188 0 0 1 4.322-1.228 8.164 8.164 0 0 1 4.328 1.234l.039.029 14.875 11.371 10.77-10.995-11.168-14.9a8.122 8.122 0 0 1-1.275-4.368 8.1 8.1 0 0 1 1.264-4.35 62.735 62.735 0 0 0 5.26-13.358l.006-.011a8.194 8.194 0 0 1 6.7-5.868l18.439-2.676-.215-15.16-18.449-2.676a8.116 8.116 0 0 1-6.684-5.868 63.168 63.168 0 0 0-5.6-13.532 8.106 8.106 0 0 1 .578-8.961l11.367-14.876-10.984-10.774-14.9 11.168a8.1 8.1 0 0 1-4.594 1.413 8.215 8.215 0 0 1-4.066-1.083 57.452 57.452 0 0 0-13.562-5.584h-.006a8.154 8.154 0 0 1-5.891-6.7l-2.682-18.438h-15.23l-2.676 18.143a8.113 8.113 0 0 1-5.873 6.679 58.28 58.28 0 0 0-13.592 5.59 8.08 8.08 0 0 1-4.309 1.24 8.15 8.15 0 0 1-4.322-1.245l-.039-.029-14.877-11.371-10.988 10.995 11.395 14.911a8.111 8.111 0 0 1 1.264 4.362 8.137 8.137 0 0 1-1.252 4.344 64.4 64.4 0 0 0-5.283 13.509v.006a8.131 8.131 0 0 1-6.68 5.874l-18.449 2.688v15.229l18.139 2.676a8.163 8.163 0 0 1 6.678 5.874 63.854 63.854 0 0 0 5.59 13.509 8.183 8.183 0 0 1 1.258 4.356 8.161 8.161 0 0 1-1.264 4.368l-.029.035-11.365 14.864 10.988 10.775 14.9-11.168a8.127 8.127 0 0 1 4.58-1.408 8.129 8.129 0 0 1 4.063 1.089 58.074 58.074 0 0 0 13.59 5.584h.006a8.142 8.142 0 0 1 5.873 6.691l2.629 18.073Zm-31.975 0-1.551-10.745a68.569 68.569 0 0 1-7.08-2.972l-16.416 12.373a8.134 8.134 0 0 1-2.682 1.344ZM8.03 198.168a8.03 8.03 0 0 1-8.029-8.034 8.03 8.03 0 0 1 8.029-8.035h29.99a8.035 8.035 0 0 1 8.033 8.035 8.035 8.035 0 0 1-8.033 8.034Zm0-28.917a8.03 8.03 0 0 1-8.029-8.035 8.025 8.025 0 0 1 8.029-8.029h29.99a8.03 8.03 0 0 1 8.033 8.029 8.035 8.035 0 0 1-8.033 8.035Zm0-28.917a8.03 8.03 0 0 1-8.029-8.035 8.025 8.025 0 0 1 8.029-8.029h29.99a8.03 8.03 0 0 1 8.033 8.029 8.035 8.035 0 0 1-8.033 8.035Zm133.771-5.561a38.591 38.591 0 0 1-12.279-8.278 38.613 38.613 0 0 1-8.279-12.286 38.374 38.374 0 0 1-3.035-15.038 38.381 38.381 0 0 1 3.035-15.044 38.551 38.551 0 0 1 8.279-12.286 38.512 38.512 0 0 1 12.279-8.284 38.369 38.369 0 0 1 15.037-3.035 38.407 38.407 0 0 1 15.051 3.035 38.476 38.476 0 0 1 12.291 8.284 38.551 38.551 0 0 1 8.279 12.286 38.381 38.381 0 0 1 3.035 15.044 38.374 38.374 0 0 1-3.035 15.038 38.613 38.613 0 0 1-8.279 12.286 38.554 38.554 0 0 1-12.291 8.278 38.408 38.408 0 0 1-15.051 3.041 38.4 38.4 0 0 1-15.038-3.045Zm6.354-56.19a22.131 22.131 0 0 0-7.094 4.791 22.181 22.181 0 0 0-4.785 7.1 22.193 22.193 0 0 0-1.754 8.7 22.187 22.187 0 0 0 1.754 8.689 22.221 22.221 0 0 0 4.785 7.1 22.2 22.2 0 0 0 7.094 4.785 22.166 22.166 0 0 0 8.684 1.755 22.233 22.233 0 0 0 8.7-1.755 22.259 22.259 0 0 0 7.1-4.785 22.268 22.268 0 0 0 4.779-7.1 22.222 22.222 0 0 0 1.754-8.689 22.228 22.228 0 0 0-1.754-8.7 22.228 22.228 0 0 0-4.779-7.1 22.186 22.186 0 0 0-7.1-4.791 22.232 22.232 0 0 0-8.7-1.755 22.166 22.166 0 0 0-8.683 1.751ZM8.03 111.416a8.03 8.03 0 0 1-8.029-8.035 8.025 8.025 0 0 1 8.029-8.029h29.99a8.03 8.03 0 0 1 8.033 8.029 8.035 8.035 0 0 1-8.033 8.035Zm0-28.917a8.03 8.03 0 0 1-8.029-8.034 8.025 8.025 0 0 1 8.029-8.029h29.99a8.03 8.03 0 0 1 8.033 8.029 8.035 8.035 0 0 1-8.033 8.034Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 925",fill:"none",d:"M0 0h256v256H0z"})))},Sa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"watch-icn",transform:"translate(4333.082 464.859)"},r.createElement("g",{"data-name":"Grupo 1495"},r.createElement("path",{"data-name":"Trazado 345",d:"M-4237.731-461.928h-70.438a21.991 21.991 0 0 0-21.981 21.98v72.661a5.084 5.084 0 0 0 5.083 5.084h7.4a5.09 5.09 0 0 0 5.1-5.084v-57.382a19.671 19.671 0 0 1 19.665-19.672h55.169a5.081 5.081 0 0 0 5.076-5.084v-7.416a5.081 5.081 0 0 0-5.074-5.087Z"}),r.createElement("path",{"data-name":"Trazado 345 - Contorno",d:"M-4308.169-464.859h70.439a8.021 8.021 0 0 1 8.008 8.015v7.416a8.021 8.021 0 0 1-8.008 8.015h-55.17a16.756 16.756 0 0 0-16.733 16.74v57.386a8.032 8.032 0 0 1-8.03 8.015h-7.4a8.023 8.023 0 0 1-8.014-8.015v-72.661a24.94 24.94 0 0 1 24.908-24.911Zm70.439 17.583a2.151 2.151 0 0 0 2.145-2.152v-7.416a2.151 2.151 0 0 0-2.145-2.156h-70.439a19.071 19.071 0 0 0-19.05 19.049v72.661a2.154 2.154 0 0 0 2.151 2.153h7.4a2.163 2.163 0 0 0 2.168-2.153v-57.386a22.625 22.625 0 0 1 22.6-22.6Z"}),r.createElement("path",{"data-name":"Trazado 346",d:"M-4101.983-461.928h-77.172a5.088 5.088 0 0 0-5.09 5.084v7.416a5.088 5.088 0 0 0 5.09 5.084h61.9a19.677 19.677 0 0 1 19.674 19.672v57.386a5.085 5.085 0 0 0 5.089 5.084h7.4a5.076 5.076 0 0 0 5.074-5.084v-72.661a21.977 21.977 0 0 0-21.965-21.981Z"}),r.createElement("path",{"data-name":"Trazado 346 - Contorno",d:"M-4179.155-464.859h77.172a24.935 24.935 0 0 1 24.9 24.911v72.661a8.02 8.02 0 0 1-8.006 8.015h-7.4a8.028 8.028 0 0 1-8.021-8.015v-57.386a16.761 16.761 0 0 0-16.743-16.74h-61.9a8.027 8.027 0 0 1-8.021-8.015v-7.416a8.027 8.027 0 0 1 8.019-8.015Zm94.067 99.725a2.15 2.15 0 0 0 2.143-2.153v-72.661A19.066 19.066 0 0 0-4101.983-459h-77.172a2.158 2.158 0 0 0-2.158 2.153v7.416a2.158 2.158 0 0 0 2.158 2.152h61.9a22.63 22.63 0 0 1 22.605 22.6v57.386a2.158 2.158 0 0 0 2.158 2.153Z"}),r.createElement("path",{"data-name":"Trazado 347",d:"M-4085.088-313.79h-7.4a5.085 5.085 0 0 0-5.089 5.084v59.661a19.685 19.685 0 0 1-19.674 19.68h-61.9a5.086 5.086 0 0 0-5.094 5.075v7.424a5.085 5.085 0 0 0 5.09 5.075h77.172a21.972 21.972 0 0 0 21.97-21.98v-74.935a5.075 5.075 0 0 0-5.075-5.084Z"}),r.createElement("path",{"data-name":"Trazado 347 - Contorno",d:"M-4092.489-316.721h7.4a8.02 8.02 0 0 1 8.006 8.015v74.935a24.935 24.935 0 0 1-24.9 24.911h-77.172a8.023 8.023 0 0 1-8.021-8.006v-7.424a8.023 8.023 0 0 1 8.021-8.007h61.9a16.765 16.765 0 0 0 16.743-16.749v-59.661a8.027 8.027 0 0 1 8.023-8.014Zm-9.494 102a19.065 19.065 0 0 0 19.039-19.049v-74.935a2.15 2.15 0 0 0-2.143-2.153h-7.4a2.158 2.158 0 0 0-2.158 2.153v59.661a22.634 22.634 0 0 1-22.605 22.611h-61.9a2.153 2.153 0 0 0-2.158 2.144v7.424a2.153 2.153 0 0 0 2.158 2.143Z"}),r.createElement("path",{"data-name":"Trazado 348",d:"M-4237.731-229.365h-55.169a19.679 19.679 0 0 1-19.665-19.68v-59.661a5.089 5.089 0 0 0-5.1-5.084h-7.4a5.083 5.083 0 0 0-5.083 5.084v74.935a21.985 21.985 0 0 0 21.979 21.981h70.439a5.079 5.079 0 0 0 5.076-5.075v-7.425a5.079 5.079 0 0 0-5.077-5.075Z"}),r.createElement("path",{"data-name":"Trazado 348 - Contorno",d:"M-4237.73-208.859h-70.439a24.94 24.94 0 0 1-24.913-24.911v-74.935a8.023 8.023 0 0 1 8.014-8.015h7.4a8.032 8.032 0 0 1 8.03 8.015v59.661a16.76 16.76 0 0 0 16.733 16.749h55.169a8.016 8.016 0 0 1 8.008 8.007v7.424a8.016 8.016 0 0 1-8.002 8.005Zm-87.338-102a2.154 2.154 0 0 0-2.151 2.153v74.935a19.071 19.071 0 0 0 19.05 19.049h70.439a2.147 2.147 0 0 0 2.145-2.143v-7.424a2.147 2.147 0 0 0-2.145-2.144h-55.17a22.629 22.629 0 0 1-22.6-22.611v-59.661a2.163 2.163 0 0 0-2.168-2.153Z"})),r.createElement("ellipse",{"data-name":"Elipse 56",cx:56.415,cy:56.414,rx:56.415,ry:56.414,transform:"translate(-4260.489 -392.445)"}),r.createElement("path",{"data-name":"Elipse 56 - Contorno",d:"M-4205.074-393.376a51.345 51.345 0 1 1-51.346 51.345 51.4 51.4 0 0 1 51.346-51.345Zm0 96.827a45.482 45.482 0 1 0-45.483-45.482 45.535 45.535 0 0 0 45.483 45.482Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 890",fill:"none",d:"M0 0h256v256H0z"})))},Aa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1007","data-name":"Rect\xe1ngulo 1007",width:"256",height:"174.517",fill:"none"})),r.createElement("clipPath",{id:"clip-New_Service_Account_Created"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"New_Service_Account_Created","data-name":"New Access Key Created",clipPath:"url(#clip-New_Service_Account_Created)"},r.createElement("g",{id:"Create_Service_Account_Icon","data-name":"Create Access Key Icon"},r.createElement("rect",{id:"Rect\xe1ngulo_1006","data-name":"Rect\xe1ngulo 1006",width:"256",height:"256",fill:"none"}),r.createElement("g",{id:"Grupo_2394","data-name":"Grupo 2394",transform:"translate(0 41.709)"},r.createElement("g",{id:"Grupo_2393","data-name":"Grupo 2393",transform:"translate(0 -0.001)"},r.createElement("path",{id:"Trazado_7132","data-name":"Trazado 7132",d:"M209.54,0a46.254,46.254,0,0,0-29.083,10.24H27.839a27.482,27.482,0,0,0-10.808,2.2A28.109,28.109,0,0,0,2.2,27.269,27.507,27.507,0,0,0,0,38.078v108.6a27.507,27.507,0,0,0,2.2,10.809,28.112,28.112,0,0,0,14.834,14.834,27.5,27.5,0,0,0,10.808,2.2H195.985a27.5,27.5,0,0,0,10.808-2.2,28.11,28.11,0,0,0,14.833-14.834,27.486,27.486,0,0,0,2.2-10.809v-56A46.462,46.462,0,0,0,209.54,0m-5.828,67.986V53.635H189.362V39.283h14.351V24.933h14.351V39.283h14.351V53.635H218.064V67.985Zm-69.071,1.7h34.67a46.667,46.667,0,0,0,17.844,17.486H134.641a8.743,8.743,0,1,1,0-17.486M68.625,23.35h0c19.765,0,35.837,16.716,35.837,37.255a38.068,38.068,0,0,1-2.816,14.482,37.124,37.124,0,0,1-7.674,11.841,35.566,35.566,0,0,1-11.39,8A34.44,34.44,0,0,1,68.65,97.872h-.025C48.872,97.872,32.8,81.148,32.8,60.606S48.872,23.35,68.625,23.35m41.452,122.5a16.272,16.272,0,0,1-14.76,9.426H38.868a16.474,16.474,0,0,1-14.823-9.289,19.517,19.517,0,0,1,1.376-19.337l.013-.014c.051-.08.111-.164.162-.236l.056-.078c.24-.358.435-.637.635-.9a51.4,51.4,0,0,1,38.031-20.735c.806-.046,1.673-.07,2.578-.07v0a48.828,48.828,0,0,1,11.065,1.3,52.471,52.471,0,0,1,10.723,3.8,51.858,51.858,0,0,1,19.446,16.116,19.952,19.952,0,0,1,1.946,20.028m85.765,8.641h-61.2a8.743,8.743,0,1,1,0-17.486h61.2a8.743,8.743,0,1,1,0,17.486m0-33.223h-61.2a8.743,8.743,0,1,1,0-17.485h61.2a8.743,8.743,0,1,1,0,17.485m13.976-38.1a36.707,36.707,0,1,1,36.707-36.707,36.707,36.707,0,0,1-36.707,36.707",transform:"translate(0 0.001)",fill:"#4ccb92"}))))))},_a=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"heal-icn",d:"m157.546 239.085-4.729-4.747-24.864-24.809-29.5 29.555a57.519 57.519 0 0 1-81.482 0 57.729 57.729 0 0 1 0-81.769l29.5-29.547-24.864-24.927-4.635-4.629a57.738 57.738 0 0 1 0-81.777c21.764-21.913 59.749-21.913 81.482 0l4.729 4.645 24.77 24.911 29.593-29.555c21.764-21.913 59.718-21.913 81.482 0a57.738 57.738 0 0 1 0 81.777l-29.5 29.555 24.864 24.793 4.635 4.755a57.718 57.718 0 1 1-81.482 81.769Zm13.654-23.036 4.572 4.629c12.15 12.028 33.006 12.028 45.031 0a31.967 31.967 0 0 0 0-44.957l-4.791-4.747ZM35.261 175.721a31.814 31.814 0 0 0 0 44.957c11.962 12.028 32.943 12.028 44.968 0l29.471-29.547-45-45.09Zm22.954-72.88 6.482 6.52 81.638 81.769 6.482 6.5 44.968-45.074-6.482-6.52-81.603-81.63-6.514-6.52Zm117.556-67.992-29.436 29.557 44.965 44.955 29.5-29.555a31.6 31.6 0 0 0 9.238-22.541 31.28 31.28 0 0 0-9.238-22.416 32.381 32.381 0 0 0-45.031 0Zm-140.51 0a31.211 31.211 0 0 0-9.3 22.416 31.525 31.525 0 0 0 9.3 22.541l4.729 4.762 44.843-45.09-4.6-4.629a31.61 31.61 0 0 0-44.968 0Zm105.562 118.465a12.731 12.731 0 1 1 12.746 12.892 12.816 12.816 0 0 1-12.746-12.892Zm-25.616-25.546a12.808 12.808 0 1 1 12.745 12.773 12.747 12.747 0 0 1-12.744-12.773Zm-25.49-25.679a12.746 12.746 0 1 1 12.714 12.9 12.8 12.8 0 0 1-12.714-12.901Z"}),r.createElement("path",{"data-name":"heal-icn - Contorno",d:"M198.286 256.5a57.755 57.755 0 0 1-41.094-17.062l-4.729-4.747-24.509-24.455-29.146 29.2a57.907 57.907 0 0 1-82.189 0A57.353 57.353 0 0 1 3.9 220.544a58.292 58.292 0 0 1-4.4-22.407 57.536 57.536 0 0 1 17.121-41.177l29.144-29.192-24.512-24.573-4.634-4.629a58.238 58.238 0 0 1 0-82.486A54.985 54.985 0 0 1 35.647 3.644 59.5 59.5 0 0 1 46.5.536a61.384 61.384 0 0 1 22.457 0A59.431 59.431 0 0 1 79.8 3.644a54.885 54.885 0 0 1 19.007 12.437l4.73 4.646 24.417 24.555 29.238-29.2a54.994 54.994 0 0 1 19.023-12.438A59.465 59.465 0 0 1 187.061.536a61.355 61.355 0 0 1 22.451 0 59.465 59.465 0 0 1 10.846 3.108 55 55 0 0 1 19.024 12.439 58.238 58.238 0 0 1 0 82.485l-29.143 29.2 24.515 24.445 4.631 4.751a57.534 57.534 0 0 1 17.115 41.173 58.292 58.292 0 0 1-4.4 22.407 58.2 58.2 0 0 1-53.811 35.956Zm-70.334-47.678 25.218 25.162 4.73 4.748a57.218 57.218 0 0 0 80.775-81.061l-.006-.006-4.632-4.752-25.216-25.144 29.852-29.909a57.238 57.238 0 0 0 0-81.069 54.007 54.007 0 0 0-18.681-12.217 58.461 58.461 0 0 0-10.663-3.055 60.354 60.354 0 0 0-22.084 0 58.461 58.461 0 0 0-10.663 3.055A54 54 0 0 0 157.9 16.788l-29.948 29.91-25.124-25.265-4.728-4.646A53.891 53.891 0 0 0 79.432 4.574a58.431 58.431 0 0 0-10.663-3.055 60.384 60.384 0 0 0-22.09 0 58.5 58.5 0 0 0-10.666 3.055 54 54 0 0 0-18.686 12.214 57.238 57.238 0 0 0 0 81.07l4.636 4.63 25.217 25.28-29.851 29.9A56.544 56.544 0 0 0 .5 198.137a57.3 57.3 0 0 0 4.327 22.024 56.362 56.362 0 0 0 12.5 18.568 57.019 57.019 0 0 0 80.776 0Zm70.381 21.377a33.611 33.611 0 0 1-12.273-2.293 31.079 31.079 0 0 1-10.641-6.876l-4.92-4.982 45.513-45.78 5.146 5.1a31.859 31.859 0 0 1 6.984 10.44 32.695 32.695 0 0 1-6.983 35.226 30.651 30.651 0 0 1-10.571 6.877 33.426 33.426 0 0 1-12.255 2.288Zm-22.209-9.874a30.085 30.085 0 0 0 10.3 6.653 32.98 32.98 0 0 0 23.8 0 29.659 29.659 0 0 0 10.229-6.654 31.294 31.294 0 0 0 0-44.25l-4.435-4.394-44.118 44.37Zm-118.4 9.874a33.463 33.463 0 0 1-12.264-2.293 30.418 30.418 0 0 1-10.554-6.879 32.165 32.165 0 0 1 0-45.664L64.7 145.332l45.707 45.8-29.82 29.9a30.63 30.63 0 0 1-10.593 6.874 33.555 33.555 0 0 1-12.273 2.293ZM64.7 146.75l-29.084 29.324a31.314 31.314 0 0 0 0 44.25 29.428 29.428 0 0 0 10.212 6.655 33.006 33.006 0 0 0 23.8 0 29.635 29.635 0 0 0 10.246-6.653l29.115-29.194Zm88.119 51.593-6.836-6.859-81.64-81.769-6.834-6.874 45.675-45.663 6.867 6.874 81.607 81.636 6.834 6.874Zm-93.9-95.5 6.132 6.163 81.637 81.769 6.129 6.149 44.262-44.367-6.131-6.167-81.605-81.632-6.16-6.166Zm94.65 63.863a13.334 13.334 0 0 1-13.245-13.391 13.231 13.231 0 1 1 13.245 13.391Zm0-25.664a12.316 12.316 0 0 0-12.245 12.273 12.23 12.23 0 1 0 20.867-8.667 12.1 12.1 0 0 0-8.622-3.607Zm-25.616 0a13 13 0 0 1-5.134-1.051 13.319 13.319 0 0 1-4.211-2.855 13.254 13.254 0 0 1 9.345-22.648 13.351 13.351 0 0 1 9.44 3.857 13.2 13.2 0 0 1 0 18.792 13.32 13.32 0 0 1-9.44 3.904Zm0-25.554a12.277 12.277 0 0 0 0 24.554 12.326 12.326 0 0 0 8.737-3.614 12.2 12.2 0 0 0 0-17.371 12.357 12.357 0 0 0-8.737-3.57Zm-25.522 0A13.347 13.347 0 0 1 93.1 92.729a13.255 13.255 0 0 1 22.607 9.36 13.353 13.353 0 0 1-13.276 13.398Zm0-25.664a12.3 12.3 0 0 0-12.214 12.265 12.246 12.246 0 1 0 24.49 0 12.331 12.331 0 0 0-12.277-12.265Zm88.869 20.245-45.672-45.663 29.788-29.909a30.775 30.775 0 0 1 10.606-6.947 33.717 33.717 0 0 1 24.527 0 30.776 30.776 0 0 1 10.607 6.947 31.725 31.725 0 0 1 6.981 10.426 32.714 32.714 0 0 1-6.983 35.237Zm-44.259-45.663 44.262 44.25 29.145-29.2a31.714 31.714 0 0 0 6.765-34.15 30.732 30.732 0 0 0-6.764-10.1 29.784 29.784 0 0 0-10.266-6.723 32.717 32.717 0 0 0-23.792 0 29.782 29.782 0 0 0-10.265 6.723ZM39.989 85.278l-5.083-5.119a32.15 32.15 0 0 1 0-45.661 32.11 32.11 0 0 1 45.679 0l4.952 4.98Zm17.725-59.32a30.554 30.554 0 0 0-22.095 9.24l-.006.006a31.314 31.314 0 0 0 0 44.247l4.376 4.408 44.138-44.381-4.256-4.28a30.629 30.629 0 0 0-22.157-9.24Z",fill:"rgba(0,0,0,0)"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 879",fill:"none",d:"M0 0h256v256H0z"})))},Ta=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 33.055 39.954"},e),r.createElement("path",{id:"Trazado_6934","data-name":"Trazado 6934",d:"M2.663,53.686,0,55.018V78.391l2.663,1.324.016-.019V53.7l-.016-.018",transform:"translate(0 -46.754)",fill:"#8c3123"}),r.createElement("path",{id:"Trazado_6935","data-name":"Trazado 6935",d:"M34.876,76.323,20.624,79.715V53.686L34.876,57V76.323",transform:"translate(-17.961 -46.754)",fill:"#e05243"}),r.createElement("path",{id:"Trazado_6936","data-name":"Trazado 6936",d:"M81.178,125.086l6.045.77.038-.088.034-9.913-.072-.077-6.045.758v8.55",transform:"translate(-70.696 -100.829)",fill:"#8c3123"}),r.createElement("path",{id:"Trazado_6937","data-name":"Trazado 6937",d:"M128,76.361l13.864,3.362.022-.035V53.709l-.022-.023L128,57.043V76.361",transform:"translate(-111.469 -46.754)",fill:"#8c3123"}),r.createElement("path",{id:"Trazado_6938","data-name":"Trazado 6938",d:"M134.043,125.086l-6.047.77V115.778l6.047.758v8.55",transform:"translate(-111.469 -100.829)",fill:"#e05243"}),r.createElement("path",{id:"Trazado_6939","data-name":"Trazado 6939",d:"M93.27,78.958l-6.047,1.1-6.045-1.1,6.038-1.583,6.055,1.583",transform:"translate(-70.696 -67.384)",fill:"#5e1f18"}),r.createElement("path",{id:"Trazado_6940","data-name":"Trazado 6940",d:"M93.27,212.319l-6.047-1.109-6.045,1.109L87.216,214l6.054-1.685",transform:"translate(-70.696 -183.938)",fill:"#f2b0a9"}),r.createElement("path",{id:"Trazado_6941","data-name":"Trazado 6941",d:"M81.178,11.573l6.045-1.5.049-.015V.04L87.223,0,81.178,3.023v8.55",transform:"translate(-70.696)",fill:"#8c3123"}),r.createElement("path",{id:"Trazado_6942","data-name":"Trazado 6942",d:"M134.043,11.573,128,10.077V0l6.047,3.023v8.55",transform:"translate(-111.469)",fill:"#e05243"}),r.createElement("path",{id:"Trazado_6943","data-name":"Trazado 6943",d:"M87.219,231.378l-6.046-3.022v-8.55l6.046,1.5.089.1-.024,9.8-.065.174",transform:"translate(-70.692 -191.424)",fill:"#8c3123"}),r.createElement("path",{id:"Trazado_6944","data-name":"Trazado 6944",d:"M128,231.378l6.046-3.022v-8.55L128,221.3v10.077",transform:"translate(-111.469 -191.424)",fill:"#e05243"}),r.createElement("path",{id:"Trazado_6945","data-name":"Trazado 6945",d:"M235.367,53.686l2.664,1.332V78.391l-2.664,1.331V53.686",transform:"translate(-204.976 -46.754)",fill:"#e05243"}))},Ca=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{d:"M19.805 108.063c-26.4 0-26.4 40.032 0 40.032h167.684l-22.739 22.668c-18.656 18.622 9.725 46.922 28.382 28.316l56.873-56.731a19.991 19.991 0 0 0 0-28.548l-56.877-56.716c-18.656-18.6-47.038 9.684-28.382 28.3l22.743 22.679H19.805Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 863",fill:"none",d:"M.003 0h256v256h-256z"})))},xa=function(e){return r.createElement("svg",Ve({version:"1.1",id:"Layer_1",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("defs",null,r.createElement("rect",{id:"SVGID_1_",x:"2.6",y:"47.4",width:"250.4",height:"161.2"})),r.createElement("g",null,r.createElement("path",{d:"M127.8,95.5c-18,0-32.5,14.6-32.5,32.5c0,18,14.6,32.5,32.5,32.5l0,0\n\t\t\tc18,0,32.5-14.6,32.5-32.5C160.3,110,145.8,95.5,127.8,95.5",fill:"currentcolor"}),r.createElement("path",{d:"M248.2,112C204.1,45.5,114.5,27.4,48,71.4C31.9,82.1,18.1,95.9,7.5,112\n\t\t\tc-6.5,9.7-6.5,22.3,0,32c44.1,66.5,133.7,84.6,200.1,40.5c16.1-10.7,29.9-24.5,40.5-40.5C254.6,134.3,254.6,121.7,248.2,112\n\t\t\t M127.8,181.2c-29.4,0-53.2-23.8-53.2-53.2s23.8-53.2,53.2-53.2S181,98.6,181,128l0,0C181,157.4,157.2,181.2,127.8,181.2",fill:"currentcolor"}))))},Ia=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1024","data-name":"Rect\xe1ngulo 1024",width:"256",height:"255.998",fill:"none"})),r.createElement("clipPath",{id:"clip-Enable_Bucket_Quota"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Enable_Bucket_Quota","data-name":"Enable Bucket Quota",clipPath:"url(#clip-Enable_Bucket_Quota)"},r.createElement("g",{id:"Enable_Bucket_Quota_icon","data-name":"Enable Bucket Quota icon"},r.createElement("g",{id:"Grupo_2411","data-name":"Grupo 2411"},r.createElement("path",{id:"Trazado_7154","data-name":"Trazado 7154",d:"M250.852,8.773A21.516,21.516,0,0,0,233.731,0H22.263A21.507,21.507,0,0,0,5.148,8.773,25.866,25.866,0,0,0,.394,28.758c5.223,30.385,16.208,94.421,25,145.533l.015.1c4.457,26,8.336,48.644,10.616,61.787C37.988,247.665,47.17,256,57.875,256H198.129c10.712,0,19.873-8.33,21.859-19.818l10.59-61.711.077-.375,14.334-83.62.049-.243L255.6,28.758a25.8,25.8,0,0,0-4.748-19.985M37.855,98a9.546,9.546,0,0,1-9.408-7.931l-.007-.041a9.544,9.544,0,0,1,9.406-11.159H73.505A76.487,76.487,0,0,0,61.131,98ZM52.393,181.92a9.542,9.542,0,0,1-9.408-7.93l-.007-.041a9.543,9.543,0,0,1,9.406-11.158h9.537a76.056,76.056,0,0,0,13.085,19.123ZM95.5,184.747A65.491,65.491,0,0,1,166.073,74.4l-6.682,6.683a56.3,56.3,0,0,0-68.414,88.287h.016a56.4,56.4,0,0,0,68.255,8.755l6.7,6.7a65.481,65.481,0,0,1-70.445-.081m81.526-2.408-3.147-3.147L124.27,129.579l49.47-49.515,3.27-3.27,3.27,3.27a69.643,69.643,0,0,1,14.386,20.891q.409.909.789,1.828a70,70,0,0,1,0,53.585l.016-.013q-.46,1.113-.964,2.208A69.625,69.625,0,0,1,180.3,179.069Zm36.084-8.449h0a9.543,9.543,0,0,1-9.413,7.989l-11.062,0a80.263,80.263,0,0,0,11.888-18.775c.039-.085.079-.177.118-.264a9.542,9.542,0,0,1,8.469,11.047M227.4,89.971a9.542,9.542,0,0,1-9.414,7.989l-12.633,0c-.216-.509-.431-1.019-.659-1.526a80.169,80.169,0,0,0-10.75-17.566h24.04a9.544,9.544,0,0,1,9.416,11.1",transform:"translate(0)"}),r.createElement("path",{id:"Trazado_7155","data-name":"Trazado 7155",d:"M137.27,129.555,176.915,169.2a60.81,60.81,0,0,0,0-79.259Z",transform:"translate(-0.011)"})))))},Oa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Select Multiple",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{d:"M234.667 234.667v-30.486h-30.473v30.485h30.473m-91.43 0v-30.485h-30.473v30.485h30.473m-91.43 0v-30.485H21.333v30.485h30.473m182.861-91.43v-30.472h-30.473v30.473h30.473m-91.43 0v-30.473h-30.473v30.473h30.473m-91.43 0v-30.473H21.333v30.473h30.473m182.861-91.43V21.333h-30.473v30.473h30.473m-91.43 0V21.333h-30.473v30.473h30.473m-91.43 0V21.333H21.333v30.473h30.473M241.779 256h-44.7a14.225 14.225 0 0 1-14.221-14.234v-44.684a14.225 14.225 0 0 1 14.221-14.234h44.7A14.225 14.225 0 0 1 256 197.082v44.685A14.225 14.225 0 0 1 241.779 256Zm-91.43 0h-44.7a14.225 14.225 0 0 1-14.219-14.234v-44.684a14.225 14.225 0 0 1 14.221-14.234h44.7a14.225 14.225 0 0 1 14.221 14.234v44.685A14.225 14.225 0 0 1 150.349 256Zm-91.43 0h-44.7A14.233 14.233 0 0 1 0 241.766v-44.684a14.233 14.233 0 0 1 14.221-14.234h44.7a14.225 14.225 0 0 1 14.221 14.234v44.685A14.225 14.225 0 0 1 58.918 256Zm182.861-91.43h-44.7a14.222 14.222 0 0 1-14.221-14.221v-44.7a14.214 14.214 0 0 1 14.223-14.219h44.7A14.214 14.214 0 0 1 256 105.651v44.7a14.222 14.222 0 0 1-14.221 14.219Zm-91.43 0h-44.7a14.222 14.222 0 0 1-14.22-14.221v-44.7a14.214 14.214 0 0 1 14.221-14.219h44.7a14.214 14.214 0 0 1 14.221 14.221v44.7a14.222 14.222 0 0 1-14.223 14.219Zm-91.43 0h-44.7A14.23 14.23 0 0 1 0 150.349v-44.7A14.222 14.222 0 0 1 14.221 91.43h44.7a14.214 14.214 0 0 1 14.221 14.221v44.7a14.222 14.222 0 0 1-14.224 14.219Zm182.861-91.43h-44.7a14.214 14.214 0 0 1-14.221-14.221v-44.7A14.214 14.214 0 0 1 197.082 0h44.7A14.214 14.214 0 0 1 256 14.221v44.7a14.214 14.214 0 0 1-14.221 14.218Zm-91.43 0h-44.7A14.214 14.214 0 0 1 91.43 58.918v-44.7A14.214 14.214 0 0 1 105.651 0h44.7a14.214 14.214 0 0 1 14.219 14.221v44.7a14.214 14.214 0 0 1-14.221 14.218Zm-91.43 0h-44.7A14.222 14.222 0 0 1 0 58.918v-44.7A14.222 14.222 0 0 1 14.221 0h44.7a14.214 14.214 0 0 1 14.218 14.221v44.7a14.214 14.214 0 0 1-14.221 14.218Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 915",fill:"none",d:"M0 0h256v256H0z"})))},ka=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{id:"trash-icn",transform:"translate(0 0)"},r.createElement("path",{fill:"currentcolor",d:"M219.6,16.2h-49.7V8.4c0-3.4-2.7-6.1-6.1-6.1H92.2c-3.4,0-6.1,2.7-6.1,6.1v7.8H36.3\n\t\tc-3.4,0-6.1,2.8-6.1,6.2V38c0,3.4,2.7,6.1,6.1,6.1h183.3c3.4,0,6.1-2.7,6.1-6.1V22.4C225.8,19,223.1,16.2,219.6,16.2\n\t\tC219.7,16.2,219.6,16.2,219.6,16.2z"}),r.createElement("path",{fill:"currentcolor",d:"M44.2,225.5c0,15.6,12.7,28.2,28.2,28.2h111.2c15.6-0.1,28.2-12.7,28.2-28.2V58.1H44.2V225.5z"})))},Na=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1012","data-name":"Rect\xe1ngulo 1012",width:"219.579",height:"256"})),r.createElement("clipPath",{id:"clip-Edit_YAML"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Edit_YAML","data-name":"Edit YAML",clipPath:"url(#clip-Edit_YAML)"},r.createElement("g",{id:"Edit_YAML_Icon","data-name":"Edit YAML Icon"},r.createElement("rect",{id:"Rect\xe1ngulo_1013","data-name":"Rect\xe1ngulo 1013",width:"256",height:"256",fill:"none"}),r.createElement("g",{id:"Grupo_2399","data-name":"Grupo 2399",transform:"translate(25)"},r.createElement("g",{id:"Grupo_2398","data-name":"Grupo 2398"},r.createElement("path",{id:"Trazado_7135","data-name":"Trazado 7135",d:"M393.716,60.148a7.412,7.412,0,0,0-5.1,2.082L369.7,81.158a1.738,1.738,0,0,0-.5.946l-1.953,9.528a1.754,1.754,0,0,0,.5,1.64,1.912,1.912,0,0,0,1.323.5.8.8,0,0,0,.378-.063l9.453-1.83a1.736,1.736,0,0,0,.946-.5l18.906-18.928a7.242,7.242,0,0,0,0-10.158,6.957,6.957,0,0,0-5.042-2.145",transform:"translate(-207.088 -33.921)"}),r.createElement("path",{id:"Trazado_7136","data-name":"Trazado 7136",d:"M176.1,0a43.4,43.4,0,0,0-34.3,16.755c-4.119.092-8.241.181-12.357.164-21.964-.1-43.951.3-65.928.385-2.625.014-5.267.014-7.914.014H16.136A16.146,16.146,0,0,0,0,33.445V239.878A16.142,16.142,0,0,0,16.136,256H186.882A16.131,16.131,0,0,0,203,239.877V137.027c0-16.076-.4-32.234-.013-48.284.089-3.731.185-7.51.262-11.308A43.478,43.478,0,0,0,176.1,0M51.689,162.377v19.369H37.8V162.56l-19.3-31.977H34.44l10.343,19.333,10.306-19.333H70.547Zm81.6,19.369H119.4V149.733L111.182,177h-14.8l-8.223-27.262v32.014H74.271V130.583H93.53L103.8,161.354l10.233-30.771h19.259Zm45.823,0H140.6V130.583h13.888v38.372h24.631ZM176.359,77.831a34.352,34.352,0,1,1,34.352-34.352,34.352,34.352,0,0,1-34.352,34.352"}))))))},Ra=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Reported Usage",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 390",d:"M128.003 0a128.151 128.151 0 0 0-128 128c0 70.573 57.424 127.995 128 127.995a128.147 128.147 0 0 0 128-127.995 128.15 128.15 0 0 0-128-128Zm0 223.078a95.188 95.188 0 0 1-95.085-95.075 95.191 95.191 0 0 1 95.085-95.084v95.084h95.075a95.184 95.184 0 0 1-95.075 95.074Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 869",fill:"none",d:"M0 0h256v256H0z"})))},Ma=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"PrometheusIcon"},r.createElement("path",{d:"M128.908 0a128 128 0 1 0 128 128 128 128 0 0 0-128-128Zm0 239.565c-20.112 0-36.42-13.435-36.42-30h72.839c.004 16.561-16.302 30-36.419 30Zm60.154-39.941H68.751v-21.818h120.317v21.817Zm-.432-33.046H69.094c-.4-.458-.8-.91-1.188-1.375-12.315-14.954-15.216-22.76-18.032-30.717-.048-.262 14.933 3.06 25.556 5.45 0 0 5.466 1.265 13.458 2.722a49.95 49.95 0 0 1-12.23-32.117c0-25.658 19.68-48.08 12.58-66.2 6.91.562 14.3 14.583 14.8 36.506 7.346-10.152 10.42-28.691 10.42-40.057 0-11.769 7.755-25.44 15.512-25.908-6.915 11.4 1.79 21.165 9.53 45.4 2.9 9.1 2.532 24.423 4.772 34.139.744-20.178 4.213-49.621 17.014-59.785-5.647 12.8.836 28.819 5.27 36.519 7.154 12.424 11.49 21.836 11.49 39.639a49.518 49.518 0 0 1-11.84 31.959c8.452-1.586 14.289-3.016 14.289-3.016l27.451-5.355s-3.985 16.4-19.312 32.196Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 895",fill:"none",d:"M0 0h256v256H0z"}))))},La=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1028","data-name":"Rect\xe1ngulo 1028",width:"256",height:"256",fill:"none"})),r.createElement("clipPath",{id:"clip-Generic_Confirmation"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Generic_Confirmation","data-name":"Generic Confirmation",clipPath:"url(#clip-Generic_Confirmation)"},r.createElement("g",{id:"Generic_Confirmation_Icon","data-name":"Generic Confirmation Icon"},r.createElement("g",{id:"Grupo_2416","data-name":"Grupo 2416"},r.createElement("path",{id:"Trazado_7167","data-name":"Trazado 7167",d:"M128,0A128,128,0,1,0,256,128,128,128,0,0,0,128,0m.762,229.13A101.13,101.13,0,1,1,229.892,128a101.13,101.13,0,0,1-101.13,101.13M167.851,81.8,111,137.769,90.83,117.862A14.916,14.916,0,0,0,69.884,139.1l41.148,40.543,77.952-76.6a14.973,14.973,0,1,0-20.732-21.609q-.188.181-.37.367Z",fill:"#4ccb92"})))))},Da=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"NextArrowIcon"},r.createElement("path",{d:"M19.805 108.063c-26.4 0-26.4 40.032 0 40.032h167.684l-22.739 22.668c-18.656 18.622 9.725 46.922 28.382 28.316l56.873-56.731a19.991 19.991 0 0 0 0-28.548l-56.877-56.716c-18.656-18.6-47.038 9.684-28.382 28.3l22.743 22.679H19.805Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 863",fill:"none",d:"M.003 0h256v256h-256z"}))))},Pa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 36",d:"m203.074 254.064-74.746-44.835-74.746 44.835a13.592 13.592 0 0 1-20.586-11.636V46.276A46.324 46.324 0 0 1 79.277 0h98.078a46.328 46.328 0 0 1 46.281 46.276v196.152a13.576 13.576 0 0 1-20.562 11.636Zm-67.778-72.319 61.176 36.71V46.276a19.133 19.133 0 0 0-19.113-19.133H79.277a19.148 19.148 0 0 0-19.113 19.133v172.179l61.16-36.71a13.569 13.569 0 0 1 13.969 0Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 921",fill:"none",d:"M0 0h256v256H0z"})))},Ba=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 42.239 33.998"},e),r.createElement("g",{id:"google-cloud-logo-color",transform:"translate(-526 -141)"},r.createElement("g",{id:"Grupo_1820","data-name":"Grupo 1820",transform:"translate(526 141)"},r.createElement("path",{id:"Trazado_6946","data-name":"Trazado 6946",d:"M78,40.648h1.288l3.671-3.671.18-1.559A16.5,16.5,0,0,0,56.295,43.47a1.988,1.988,0,0,1,1.288-.076l7.343-1.212s.373-.619.568-.581a9.159,9.159,0,0,1,12.535-.953Z",transform:"translate(-51.201 -31.287)",fill:"#ea4335"}),r.createElement("path",{id:"Trazado_6947","data-name":"Trazado 6947",d:"M238.1,84.8a16.527,16.527,0,0,0-4.985-8.037l-5.152,5.152a9.161,9.161,0,0,1,3.362,7.267V90.1a4.587,4.587,0,0,1,0,9.173h-9.173l-.915.928v5.5l.915.915h9.173A11.932,11.932,0,0,0,238.1,84.8Z",transform:"translate(-201.103 -72.617)",fill:"#4285f4"}),r.createElement("path",{id:"Trazado_6948","data-name":"Trazado 6948",d:"M12.273,142.319a11.928,11.928,0,0,0-7.2,21.384l5.319-5.319a4.586,4.586,0,1,1,6.067-6.067L21.779,147a11.9,11.9,0,0,0-9.505-4.678Z",transform:"translate(-0.415 -132.197)",fill:"#fbbc05"}))))},Fa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"account"},r.createElement("path",{"data-name":"Trazado 463",d:"M32.291 232.53a32.336 32.336 0 0 1-32.289-32.3V76.935a32.33 32.33 0 0 1 32.289-32.3 8.837 8.837 0 0 1 8.832 8.822 8.845 8.845 0 0 1-8.832 8.831 14.663 14.663 0 0 0-14.648 14.648v123.295a14.661 14.661 0 0 0 14.648 14.64h191.4a14.66 14.66 0 0 0 14.641-14.64V76.936a14.661 14.661 0 0 0-14.641-14.648h-54.07a8.845 8.845 0 0 1-8.832-8.831 8.762 8.762 0 0 1 2.586-6.236 8.735 8.735 0 0 1 6.246-2.586h54.07a32.345 32.345 0 0 1 32.313 32.3V200.23a32.351 32.351 0 0 1-32.312 32.3Zm140.445-33.006a3.078 3.078 0 0 1-3.082-3.07V179.02a3.08 3.08 0 0 1 3.082-3.08h47.18a3.077 3.077 0 0 1 3.07 3.08v17.434a3.075 3.075 0 0 1-3.07 3.07Zm-113.141 0a22.643 22.643 0 0 1-20.648-12.767 26.835 26.835 0 0 1 1.891-26.579l.02-.019c.094-.143.2-.285.3-.428.273-.409.559-.827.871-1.245a70.651 70.651 0 0 1 52.277-28.5 62.967 62.967 0 0 1 3.543-.095 67.043 67.043 0 0 1 15.211 1.777 71.594 71.594 0 0 1 14.734 5.219 71.248 71.248 0 0 1 26.73 22.149 27.371 27.371 0 0 1 2.672 27.53 22.363 22.363 0 0 1-20.629 12.956Zm-3.719-30.372v.01l-.047.058c-.191.256-.371.5-.531.741v.028l-.258.371a8.365 8.365 0 0 0-.715 8.261 5.526 5.526 0 0 0 5.27 3.1h76.969a6.062 6.062 0 0 0 3.156-.761 4.988 4.988 0 0 0 1.949-2.243 8.485 8.485 0 0 0 .715-4.524 9.18 9.18 0 0 0-1.7-4.468 54.088 54.088 0 0 0-42.969-22.007c-.93 0-1.75.019-2.508.066h-.012a53.055 53.055 0 0 0-39.318 21.368Zm116.859-5.01a3.08 3.08 0 0 1-3.082-3.079v-17.425a3.08 3.08 0 0 1 3.082-3.08h47.18a3.077 3.077 0 0 1 3.07 3.08v17.425a3.077 3.077 0 0 1-3.07 3.079Zm-.59-38.7a2.5 2.5 0 0 1-2.492-2.5V82.066a2.5 2.5 0 0 1 2.492-2.5h48.348a2.5 2.5 0 0 1 2.492 2.5v40.876a2.5 2.5 0 0 1-2.492 2.5ZM50.981 74.213c0-28.233 22.09-51.209 49.242-51.209s49.258 22.976 49.258 51.209a52.579 52.579 0 0 1-3.867 19.906 51.257 51.257 0 0 1-10.551 16.274 49.07 49.07 0 0 1-15.656 11 47.257 47.257 0 0 1-19.184 4.041c-27.151 0-49.241-22.976-49.241-51.22Zm17.977 0c0 18.033 14.031 32.711 31.266 32.711 17.262 0 31.3-14.678 31.3-32.711s-14.039-32.7-31.3-32.7c-17.234 0-31.265 14.668-31.265 32.701Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 883",fill:"none",d:"M0 0h256v256H0z"}))))},ja=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("g",{id:"Add_Access_Rule","data-name":"Add Access Rule",clipPath:"url(#clip-Add_Access_Rule)"},r.createElement("g",{id:"Add_Access_Rule_Icon","data-name":"Add Access Rule Icon"},r.createElement("g",{id:"Grupo_2406","data-name":"Grupo 2406",transform:"translate(18)"},r.createElement("g",{id:"Grupo_2405","data-name":"Grupo 2405"},r.createElement("path",{id:"Trazado_7142","data-name":"Trazado 7142",d:"M104.258,94.5a8.671,8.671,0,1,0,12.263,0,8.672,8.672,0,0,0-12.263,0",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7143","data-name":"Trazado 7143",d:"M220.846,46.255a15.346,15.346,0,0,0-15.422-14.381h-.01l-2.217.017c-18.3,0-53.371-3.671-82.6-28.236A15.2,15.2,0,0,0,110.742,0a15.03,15.03,0,0,0-9.748,3.6C71.681,28.225,36.7,31.9,18.452,31.9l-2.764-.028A15.124,15.124,0,0,0,.665,46.358C-1.156,93.424-.821,159.771,23,192.41c22.161,30.467,65.486,55.314,78.912,61.614a20.721,20.721,0,0,0,17.7-.015c14.415-6.8,56.684-31.109,78.885-61.582,23.832-32.654,24.168-99,22.347-146.172m-92.069,94.893,0,25.363H118.635v12.845h10.146v11H118.635V203.2h10.148v1.651l-18.394,18.394L92,204.849l.007-63.7a38.469,38.469,0,0,1-9.2-6.8A39.158,39.158,0,0,1,116.79,68.09a38.019,38.019,0,0,1,23.45,13.338,39.022,39.022,0,0,1-11.463,59.72",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1019","data-name":"Rect\xe1ngulo 1019",width:"256",height:"256",fill:"none"}))))},za=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"UptimeIcon"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 851",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"Grupo 1558"},r.createElement("path",{"data-name":"Sustracci\\xF3n 3",d:"M220.67 154.223h-10.627c.012-.6.016-1.149.016-1.669a82.374 82.374 0 0 0-1.073-13.283h-64.771v-78.9l25.611 11.287 45.143 34.182 4.232 33.5a53.041 53.041 0 0 1 5.371 4.445 22.28 22.28 0 0 1 3.4 3.962c.938 1.48 1.252 2.729.941 3.709-.577 1.836-3.35 2.767-8.243 2.767Z",fill:"#e3e3e3"}),r.createElement("path",{"data-name":"Uni\\xF3n 9",d:"M24.003 152.341a102.96 102.96 0 0 1 24.863-67.172 104.134 104.134 0 0 1 61.651-35.019l.586-.1v22.866l-.4.084a81.178 81.178 0 0 0-64.137 79.337c0 44.762 36.557 81.18 81.492 81.18s81.492-36.418 81.492-81.18a80.636 80.636 0 0 0-18.828-51.854 81.865 81.865 0 0 0-20.838-17.8 80.846 80.846 0 0 0-26.053-10l-.408-.084V49.8l.582.089a103.267 103.267 0 0 1 34.789 11.962 104.595 104.595 0 0 1 27.953 22.727 103.042 103.042 0 0 1 25.363 67.76C232.114 209.5 185.437 256 128.062 256S24.003 209.5 24.003 152.341Zm104.625 9.91a10.07 10.07 0 0 1-1.023-.054c-4.723-.094-9.377-3.03-9.377-8.8V30.467l-10.9 10.113c-8.939 8.3-22.533-4.325-13.594-12.619l27.248-25.3a10.162 10.162 0 0 1 13.719 0l27.252 25.3c8.943 8.294-4.658 20.918-13.6 12.619L137.46 30.467v113.674h41.412a9.055 9.055 0 1 1 0 18.11Z"})))))},Ua=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 16 16"},e),r.createElement("g",null,r.createElement("path",{d:"M8,0a8,8,0,1,0,8,8A8,8,0,0,0,8,0m4.575,5.769-.005.005L7.837,11.69a.89.89,0,0,1-.635.284H7.185a.889.889,0,0,1-.628-.26h0L3.421,8.577a.889.889,0,1,1,1.2-1.31q.028.025.053.053L7.16,9.8l4.117-5.246.024-.026h0a.889.889,0,0,1,1.275,1.24"})))},Ha=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1031","data-name":"Rect\xe1ngulo 1031",width:"217",height:"256.004",fill:"none"})),r.createElement("clipPath",{id:"clip-Object_Preview"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Object_Preview","data-name":"Object Preview",clipPath:"url(#clip-Object_Preview)"},r.createElement("g",{id:"Object_Preview_Icon","data-name":"Object Preview Icon"},r.createElement("g",{id:"Grupo_2420","data-name":"Grupo 2420",transform:"translate(20)"},r.createElement("g",{id:"Grupo_2419","data-name":"Grupo 2419"},r.createElement("path",{id:"Trazado_7171","data-name":"Trazado 7171",d:"M110.1,110.805A28.093,28.093,0,1,0,138.137,138.9,28.063,28.063,0,0,0,110.1,110.805m-.064,42.209a14.079,14.079,0,1,1,14.05-14.079,14.065,14.065,0,0,1-14.05,14.079",transform:"translate(-0.168)"}),r.createElement("path",{id:"Trazado_7172","data-name":"Trazado 7172",d:"M216.564,77.2c.166-6.9.359-13.945.413-21h-31.1A25.6,25.6,0,0,1,160.334,30.6l0-30.544q-3.775.06-7.553.148c-4.892.108-9.79.228-14.681.208C114.67.31,91.212.733,67.766.824c-2.8.016-5.619.016-8.444.016H17.216A17.241,17.241,0,0,0,0,18.08V238.769A17.238,17.238,0,0,0,17.216,256l182.163,0a17.226,17.226,0,0,0,17.2-17.235V128.815c0-17.186-.424-34.46-.013-51.618m-34.353,71.335a86.569,86.569,0,0,1-144.462,0,17.428,17.428,0,0,1,0-19.27,86.569,86.569,0,0,1,144.462,0,17.435,17.435,0,0,1,0,19.27",transform:"translate(0)"}),r.createElement("path",{id:"Trazado_7173","data-name":"Trazado 7173",d:"M203.277,0H171.758V22.411c-1.233,19.062,12.107,22.137,22.106,22.151h23.489V13.406c0-7.007-7.08-13.4-14.074-13.406",transform:"translate(-0.351)"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1032","data-name":"Rect\xe1ngulo 1032",width:"256",height:"256",fill:"none"}))))},Ga=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Tenants Outline",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 452",d:"M135.881 213.702a42.222 42.222 0 0 1 7.779-24.429l-29.932-38.917a76.63 76.63 0 0 1-20.656 5.106l-.867 16.144a24.837 24.837 0 0 1 7.207 17.521 24.937 24.937 0 0 1-24.893 24.918 24.94 24.94 0 0 1-24.891-24.918 24.779 24.779 0 0 1 18.055-23.967l.6-11.047A78.47 78.47 0 0 1 7.002 77.955 78 78 0 0 1 84.861-.005a78 78 0 0 1 77.863 77.96 77.537 77.537 0 0 1-1.119 13.111l28.8 4.184a31.653 31.653 0 0 1 25.73-12.966 32.13 32.13 0 0 1 32.082 32.115 32.128 32.128 0 0 1-32.082 32.108 32.267 32.267 0 0 1-31.66-27.009l-31.1-4.519a78.56 78.56 0 0 1-18.219 22.474l28.188 36.653a42.235 42.235 0 0 1 14.787-2.7 42.307 42.307 0 0 1 42.238 42.293 42.313 42.313 0 0 1-42.238 42.293 42.322 42.322 0 0 1-42.25-42.29Zm28.877-23.668-3.377 1.911-2.689 2.762a27.045 27.045 0 0 0-7.75 19 27.231 27.231 0 0 0 27.182 27.218 27.232 27.232 0 0 0 27.184-27.218 27.232 27.232 0 0 0-27.184-27.218 27 27 0 0 0-13.366 3.548Zm-100.051-.906a9.84 9.84 0 0 0 9.813 9.842 9.847 9.847 0 0 0 9.824-9.842 9.889 9.889 0 0 0-4.2-8.058l-2.445-1.711-2.979-.054a9.827 9.827 0 0 0-10.016 9.826ZM22.078 77.956a62.885 62.885 0 0 0 55.014 62.386l4.365.535 4.355-.063a62.125 62.125 0 0 0 26.91-6.511l4-1.992 3.578-2.455a63.038 63.038 0 0 0 21.867-26.212l1.793-3.993 1.268-4.381a63.234 63.234 0 0 0 2.424-17.313 62.907 62.907 0 0 0-62.793-62.883A62.9 62.9 0 0 0 22.078 77.96Zm178.871 28.831-1.549 3.061-.219 3.54c-.051 10.4 7.58 18.045 16.949 18.045a17.044 17.044 0 0 0 17.018-17.032 17.046 17.046 0 0 0-17.018-17.04 16.888 16.888 0 0 0-15.181 9.429Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 865",fill:"none",d:"M0 0h256v256H0z"})))},Va=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 423",d:"M34.549 188.281h186.9a6.641 6.641 0 1 1 0 13.282h-186.9a6.641 6.641 0 0 1-6.641-6.641 6.641 6.641 0 0 1 6.641-6.641Z"}),r.createElement("path",{"data-name":"Trazado 425",d:"M38.567 162.693a10.385 10.385 0 1 1-10.385 10.385 10.385 10.385 0 0 1 10.385-10.385Z"}),r.createElement("path",{"data-name":"Trazado 424",d:"M66.709 162.83a10.384 10.384 0 1 1-8.588 11.911 10.384 10.384 0 0 1 8.588-11.912Z"}),r.createElement("path",{"data-name":"Trazado 405",d:"M255.699 154.149a37.6 37.6 0 0 0-2.994-12.568l-41.95-104.219C207.537 29.62 199.33 24 191.241 24H64.759c-8.089 0-16.3 5.62-19.514 13.362L3.295 141.581a37.61 37.61 0 0 0-2.994 12.568 22.107 22.107 0 0 0-.3 3.612v51.4a22.089 22.089 0 0 0 22.065 22.064h211.87a22.09 22.09 0 0 0 22.065-22.064v-51.4a22.134 22.134 0 0 0-.302-3.612ZM65.754 46.413h124.491l36.053 89.283H30.013Zm167.833 162.4H22.412v-50.708h211.175Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 855",fill:"none",d:"M0 0h256v256H0z"})))},qa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1026","data-name":"Rect\xe1ngulo 1026",width:"255.576",height:"182.735",fill:"none"})),r.createElement("clipPath",{id:"clip-Create_New_Path"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Create_New_Path","data-name":"Create New Path",clipPath:"url(#clip-Create_New_Path)"},r.createElement("g",{id:"Create_New_Path_Icon","data-name":"Create New Path Icon"},r.createElement("g",{id:"Grupo_2415","data-name":"Grupo 2415",transform:"translate(0.424 26.642)"},r.createElement("g",{id:"Grupo_2414","data-name":"Grupo 2414"},r.createElement("path",{id:"Trazado_7162","data-name":"Trazado 7162",d:"M21.8,141.76c-11.745,0-21.8,9.96-21.8,21.517a22.187,22.187,0,0,0,21.8,21.8c11.557,0,21.517-10.054,21.517-21.8A21.949,21.949,0,0,0,21.8,141.76",transform:"translate(0 -59.036)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7163","data-name":"Trazado 7163",d:"M21.8,235.632c-11.745,0-21.8,9.96-21.8,21.517a22.187,22.187,0,0,0,21.8,21.8c11.557,0,21.517-10.054,21.517-21.8A21.949,21.949,0,0,0,21.8,235.632",transform:"translate(0 -98.13)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7164","data-name":"Trazado 7164",d:"M200.314,0H187.871A11.54,11.54,0,0,0,177.5,6.479L99.6,166.135a11.54,11.54,0,0,0,10.371,16.6h12.443a11.54,11.54,0,0,0,10.371-6.479L210.684,16.6A11.539,11.539,0,0,0,200.314,0",transform:"translate(-40.986)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7165","data-name":"Trazado 7165",d:"M294.178,82.251c-1.23,0-2.445.061-3.652.149l32.106-65.8A11.539,11.539,0,0,0,312.262,0H299.819a11.539,11.539,0,0,0-10.371,6.479l-77.9,159.656a11.539,11.539,0,0,0,10.37,16.6h12.443a11.54,11.54,0,0,0,10.371-6.479l8.685-17.8a49,49,0,1,0,40.762-76.205m.292,87.721a38.717,38.717,0,1,1,38.717-38.717,38.717,38.717,0,0,1-38.717,38.717",transform:"translate(-87.607)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7166","data-name":"Trazado 7166",d:"M347.565,193.708H335.42v12.145H323.275V218H335.42v12.145h12.145V218h12.145V205.853H347.565Z",transform:"translate(-134.629 -80.67)",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1027","data-name":"Rect\xe1ngulo 1027",width:"256",height:"256",fill:"none"}))))},Wa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 30",d:"M.002 128.002a128 128 0 0 1 128-128 128 128 0 0 1 128 128 128 128 0 0 1-128 128 127.993 127.993 0 0 1-128-128Zm25 0a103.115 103.115 0 0 0 103 103 103.116 103.116 0 0 0 103-103 103.117 103.117 0 0 0-103-103A103.116 103.116 0 0 0 25 128.002Zm75.211 58.614c0-10.971 9.48-20.238 20.342-20.238a20.541 20.541 0 0 1 20.133 20.133c0 10.966-9.377 20.447-20.133 20.447-10.864 0-20.344-9.481-20.344-20.342Zm7.457-33.227v-36.213h10.223c20.557 0 31.633-6.495 31.633-18.956 0-11.5-10.971-17.675-31.312-17.675-5.748 0-11.715.423-16.186.846l-2.023-28.008a165.912 165.912 0 0 1 21.508-1.386c37.17 0 58.684 17.147 58.684 44.094 0 24.6-16.4 40.365-46.008 45.051l-.852 12.247Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 917",fill:"none",d:"M0 0h256v256H0z"})))},Za=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 37.001 37"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"rep-quota-clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_959","data-name":"Rect\xe1ngulo 959",width:"37",height:"37",transform:"translate(0 0)"}))),r.createElement("g",{id:"reported-usage-icn-full",transform:"translate(-0.213 -0.213)"},r.createElement("rect",{id:"Rect\xe1ngulo_869","data-name":"Rect\xe1ngulo 869",width:"37",height:"37",transform:"translate(0.213 0.213)",fill:"none"}),r.createElement("g",{id:"Grupo_2317","data-name":"Grupo 2317",transform:"translate(0.213 0.213)"},r.createElement("g",{id:"Grupo_2316","data-name":"Grupo 2316",transform:"translate(0 0)",clipPath:"url(#rep-quota-clip-path)"},r.createElement("path",{id:"Trazado_7046","data-name":"Trazado 7046",d:"M18.5,0A18.5,18.5,0,1,0,37,18.5,18.5,18.5,0,0,0,18.5,0m0,18.5V4.756A13.757,13.757,0,0,1,32.238,18.5H18.5Z",transform:"translate(0.074 0.074)"})))))},$a=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("g",{transform:"translate(0 7.836)"},r.createElement("g",null,r.createElement("path",{d:"M227.22,126.576A53.114,53.114,0,1,0,155.674,55.03L109.365,8.722A29.86,29.86,0,0,0,88.94,0L29.97.032A30.021,30.021,0,0,0,0,29.99l0,59.2a29.8,29.8,0,0,0,8.7,20.186L133.237,233.909a29.806,29.806,0,0,0,21.266,8.758v0a29.813,29.813,0,0,0,21.25-8.743l58.162-58.157a30.211,30.211,0,0,0-.018-42.511ZM60.958,76.033A15.072,15.072,0,1,1,76.031,60.96,15.091,15.091,0,0,1,60.958,76.033m100.274,3.334A41.967,41.967,0,1,1,203.2,121.334a41.967,41.967,0,0,1-41.967-41.967",fill:"#4ccb92"}),r.createElement("path",{d:"M316.362,94.258H303.2v13.164H290.033v13.165H303.2v13.165h13.164V120.587h13.164V107.422H316.362Z",transform:"translate(-106.58 -34.638)",fill:"#4ccb92"})))))},Ya=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"online-registration-icn_svg__a"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 1601",fill:"none",d:"M0 0h256v189.799H0z"}))),r.createElement("g",{"data-name":"Grupo 2523"},r.createElement("g",{"data-name":"Grupo 2522",transform:"translate(0 32.999)",clipPath:"url(#online-registration-icn_svg__a)"},r.createElement("path",{"data-name":"Trazado 7258",d:"M105.956 117.2a75.071 75.071 0 0 0 .763 10.469h12.926v-20.938h-12.926a75.072 75.072 0 0 0-.763 10.469"}),r.createElement("path",{"data-name":"Trazado 7259",d:"M119.607 100.222V80.94a29.091 29.091 0 0 0-11.667 19.282Z"}),r.createElement("path",{"data-name":"Trazado 7260",d:"M119.614 153.467h.008v-19.282h-11.675a29.062 29.062 0 0 0 11.667 19.282"}),r.createElement("path",{"data-name":"Trazado 7261",d:"M155.805 100.221a37.276 37.276 0 0 0-18.1-16.993 50.754 50.754 0 0 1 6.807 16.993Z"}),r.createElement("path",{"data-name":"Trazado 7262",d:"M99.417 117.2h.034a81.388 81.388 0 0 1 .679-10.469H87.323a36.628 36.628 0 0 0 0 20.938h12.773a82.781 82.781 0 0 1-.679-10.469"}),r.createElement("path",{"data-name":"Trazado 7263",d:"M108.039 83.229a37.31 37.31 0 0 0-18.099 16.992h11.293a50.754 50.754 0 0 1 6.806-16.993"}),r.createElement("path",{"data-name":"Trazado 7264",d:"M89.947 134.178a37.31 37.31 0 0 0 18.1 16.993 50.754 50.754 0 0 1-6.806-16.993Z"}),r.createElement("path",{"data-name":"Trazado 7265",d:"M145.603 106.731a80.807 80.807 0 0 1 0 20.938h12.811a36.5 36.5 0 0 0 0-20.938Z"}),r.createElement("path",{"data-name":"Trazado 7266",d:"M137.706 151.171a37.31 37.31 0 0 0 18.1-16.993h-11.294a50.754 50.754 0 0 1-6.806 16.993"}),r.createElement("path",{"data-name":"Trazado 7267",d:"m230.957 100.848-.443.221-.473.16a13.816 13.816 0 0 1-4.494.748v-.023h-.671a22.917 22.917 0 0 1-9.309-2.884 4.907 4.907 0 0 0-.671-.313q-.275.114-.549.252a18.913 18.913 0 0 1-13.636 2.472l-.992-.2-.9-.443a19.76 19.76 0 0 1-9.619-10.306 5.449 5.449 0 0 0-.305-.542 5.087 5.087 0 0 0-.488-.107 19.2 19.2 0 0 1-12.5-6.4l-.61-.687-.427-.809a20.457 20.457 0 0 1-1.908-13.735 5.126 5.126 0 0 0 .046-.969 5.773 5.773 0 0 0-.443-.526 20.249 20.249 0 0 1-6.379-12.682l-.092-.832.092-.832a20.268 20.268 0 0 1 6.394-12.682 4.831 4.831 0 0 0 .427-.549 5.1 5.1 0 0 0-.069-.961 20.376 20.376 0 0 1 .992-11.552A62.2 62.2 0 0 0 60.692 61.216c0 1.351.053 2.732.168 4.2a62.2 62.2 0 0 0 1.678 124.381h120.683a62.1 62.1 0 0 0 53.886-93.717 19.522 19.522 0 0 1-6.15 4.769m-67.064 30.957a3.466 3.466 0 0 1-.2.534 43.494 43.494 0 0 1-81.645 0 2.641 2.641 0 0 1-.2-.534 42.738 42.738 0 0 1 0-29.285 2.641 2.641 0 0 1 .2-.534 43.494 43.494 0 0 1 81.645 0 2.642 2.642 0 0 1 .2.534 42.827 42.827 0 0 1 0 29.285"}),r.createElement("path",{"data-name":"Trazado 7268",d:"M126.131 134.178v19.282a29.062 29.062 0 0 0 11.67-19.282Z"}),r.createElement("path",{"data-name":"Trazado 7269",d:"M126.131 80.94v19.282h11.67a29.091 29.091 0 0 0-11.67-19.282"}),r.createElement("path",{"data-name":"Trazado 7270",d:"M139.79 117.194Z"}),r.createElement("path",{"data-name":"Trazado 7271",d:"M139.789 117.2a75.154 75.154 0 0 0-.763-10.469H126.1v20.93h12.926a74.96 74.96 0 0 0 .763-10.461"}),r.createElement("path",{"data-name":"Trazado 7272",d:"m251.907 61.322-.023-.008a12.677 12.677 0 0 0 4.113-8.02 12.677 12.677 0 0 0-4.113-8.02 12.75 12.75 0 0 1-2.564-3.632 13.77 13.77 0 0 1 0-4.746 12.755 12.755 0 0 0-1.167-8.783 11.643 11.643 0 0 0-7.714-3.884 12.384 12.384 0 0 1-4.3-1.442 13.206 13.206 0 0 1-2.564-3.739 12.157 12.157 0 0 0-5.99-6.532 11.279 11.279 0 0 0-8.279 1.526 12.67 12.67 0 0 1-4.419 1.528 12.67 12.67 0 0 1-4.426-1.526 11.279 11.279 0 0 0-8.279-1.526 12.2 12.2 0 0 0-5.975 6.524 13.175 13.175 0 0 1-2.587 3.762 12.346 12.346 0 0 1-4.281 1.435 11.643 11.643 0 0 0-7.714 3.884 12.757 12.757 0 0 0-1.152 8.737 14.158 14.158 0 0 1 0 4.746 13.16 13.16 0 0 1-2.587 3.67 12.632 12.632 0 0 0-4.105 8.027 12.6 12.6 0 0 0 4.113 8.012 13.135 13.135 0 0 1 2.587 3.632 14.2 14.2 0 0 1 0 4.754 12.8 12.8 0 0 0 1.16 8.783 11.643 11.643 0 0 0 7.714 3.884 12.346 12.346 0 0 1 4.281 1.435 13.246 13.246 0 0 1 2.587 3.754 12.165 12.165 0 0 0 5.975 6.493 11.285 11.285 0 0 0 8.279-1.526 12.67 12.67 0 0 1 4.43-1.527 12.67 12.67 0 0 1 4.426 1.526 15.413 15.413 0 0 0 6.219 1.923 6.5 6.5 0 0 0 2.053-.336 12.155 12.155 0 0 0 5.975-6.516 13.246 13.246 0 0 1 2.587-3.754 12.346 12.346 0 0 1 4.281-1.435 11.643 11.643 0 0 0 7.714-3.884 12.717 12.717 0 0 0 1.167-8.828 14.158 14.158 0 0 1 0-4.746 12.834 12.834 0 0 1 2.587-3.624m-41.363 7.706L194.689 52.44l5.631-5.883 10.233 10.683 18.931-19.679 5.631 5.883Z"}))),r.createElement("path",{"data-name":"Rect\\xE1ngulo 1602",fill:"none",d:"M0 0h256v256H0z"}))},Ka=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 17",d:"M.449 128.494A128.188 128.188 0 0 1 128.494.45h10.6v52.857a76.1 76.1 0 0 1 46.531 25.151 75.572 75.572 0 0 1 13.854 22.845 75.251 75.251 0 0 1 5.039 27.189 76.11 76.11 0 0 1-76.023 76.022 76.1 76.1 0 0 1-76.012-76.022 75.291 75.291 0 0 1 5.037-27.189 75.678 75.678 0 0 1 13.85-22.845 76.135 76.135 0 0 1 46.555-25.151v-31.18a106.369 106.369 0 0 0-19.6 3.814 106.378 106.378 0 0 0-18.193 7.25 107.579 107.579 0 0 0-16.385 10.312A108.253 108.253 0 0 0 49.54 56.524a108.229 108.229 0 0 0-11.676 15.37 107.348 107.348 0 0 0-8.787 17.356 106.17 106.17 0 0 0-7.459 39.244 107.008 107.008 0 0 0 106.877 106.892 107.017 107.017 0 0 0 106.9-106.892 10.5 10.5 0 0 1 3.1-7.479 10.49 10.49 0 0 1 7.475-3.1 10.593 10.593 0 0 1 10.584 10.58 128.2 128.2 0 0 1-128.057 128.057A128.2 128.2 0 0 1 .449 128.494Zm99.967-47.048a55.106 55.106 0 0 0-14.062 12.016 54.643 54.643 0 0 0-9.336 16.083 54.492 54.492 0 0 0-3.379 18.95 54.464 54.464 0 0 0 4.316 21.333 54.924 54.924 0 0 0 5.068 9.317 55.648 55.648 0 0 0 6.7 8.12 55.546 55.546 0 0 0 8.125 6.7 54.955 54.955 0 0 0 9.316 5.068 54.353 54.353 0 0 0 21.328 4.316 54.917 54.917 0 0 0 54.854-54.857 54.492 54.492 0 0 0-3.379-18.95 54.614 54.614 0 0 0-9.326-16.083 55.144 55.144 0 0 0-14.049-12.016 54.571 54.571 0 0 0-17.5-6.723v30.482a25.816 25.816 0 0 1 10.824 9.254 25.366 25.366 0 0 1 4.211 14.035 25.433 25.433 0 0 1-2.014 9.982 25.524 25.524 0 0 1-5.494 8.145 25.5 25.5 0 0 1-8.145 5.493 25.518 25.518 0 0 1-9.982 2.015 25.477 25.477 0 0 1-9.973-2.015 25.621 25.621 0 0 1-8.148-5.493 25.538 25.538 0 0 1-5.488-8.145 25.522 25.522 0 0 1-2.016-9.982 25.393 25.393 0 0 1 4.207-14.035 25.82 25.82 0 0 1 10.848-9.254V74.72a54.537 54.537 0 0 0-17.508 6.73Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 878",fill:"none",d:"M0 0h256v256H0z"})))},Xa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Object Browser",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"Grupo 1559"},r.createElement("g",{"data-name":"Grupo 1541",transform:"translate(88.095 103.898)"},r.createElement("circle",{"data-name":"Elipse 57",cx:11.515,cy:11.515,r:11.515,transform:"rotate(-10.901 280.738 -178.561)"}),r.createElement("rect",{"data-name":"Rect\\xE1ngulo 805",width:24.592,height:20.853,rx:1.35,transform:"translate(14.546 25.545)"}),r.createElement("path",{"data-name":"Trazado 365",d:"M28.151 60.295a2.427 2.427 0 0 0-4.2 0l-9.1 15.761a2.425 2.425 0 0 0 2.1 3.64h18.2a2.43 2.43 0 0 0 2.105-3.64Z"}),r.createElement("path",{"data-name":"Trazado 366",d:"M79.273 28.199a151.334 151.334 0 0 0-.187-17.51c-.395-4.294-2.262-7.942-6.512-9.468a15.5 15.5 0 0 0-1.836-.529 38.335 38.335 0 0 0-7.332-.658c-4.289-.125-8.57.136-12.855.116-8.582-.036-17.16.116-25.746.152H6.301a6.308 6.308 0 0 0-6.3 6.3v80.617a6.307 6.307 0 0 0 6.3 6.3h66.684a6.3 6.3 0 0 0 6.3-6.3V47.054c-.004-6.273-.168-12.584-.012-18.855Zm-7.648 53.334a5.435 5.435 0 0 1-5.434 5.439h-54.2a5.442 5.442 0 0 1-5.441-5.439V12.3a5.441 5.441 0 0 1 5.441-5.442h36.367v9.3a13.809 13.809 0 0 0 13.789 13.794h9.48Zm0-57.6h-9.48a7.781 7.781 0 0 1-7.773-7.777v-9.3h11.82a5.435 5.435 0 0 1 5.434 5.442Z"})),r.createElement("path",{"data-name":"Trazado 367",d:"M101.726 42.067c6.607 0 13.691 18.858 20.771 18.858h88.056a9.46 9.46 0 0 1 9.439 9.429v4.715H40.348V51.496h-.235a9.462 9.462 0 0 1 9.439-9.429h52.174m124.392 44.5a9.812 9.812 0 0 1 9.787 9.772l-10.03 107.756a9.811 9.811 0 0 1-9.787 9.771H39.671a9.808 9.808 0 0 1-9.787-9.771L20.093 96.339a9.813 9.813 0 0 1 9.791-9.772h196.233M101.725 21.999H49.551a29.549 29.549 0 0 0-29.533 29.5 20 20 0 0 0 .235 3.081v13.513A29.9 29.9 0 0 0-.002 96.344c0 .605.031 1.208.086 1.814l9.724 107.089a29.9 29.9 0 0 0 29.862 28.691h176.417a29.9 29.9 0 0 0 29.854-28.663l9.975-107.074c.051-.617.082-1.239.082-1.857a29.87 29.87 0 0 0-15.909-26.376 29.555 29.555 0 0 0-29.537-29.106h-81.5c-.4-.532-.786-1.059-1.123-1.517-5.1-6.906-12.8-17.342-26.2-17.342Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 875",fill:"none",d:"M0 0h256v256H0z"})))},Ja=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 24.858 50.321"},e),r.createElement("path",{id:"minio-logo-color",d:"M50.1,20.478q-1.908-3.154-3.826-6.3c-.664-1.088-1.339-2.171-2.012-3.254l-.266-.393a4.682,4.682,0,0,0-6-1.913,4.208,4.208,0,0,0-1.936,5.674,10.029,10.029,0,0,0,1.714,2.129c1.924,2.044,3.91,4.031,5.818,6.089a6.008,6.008,0,0,1-2.092,9.664l-.128.052V22.652A31.007,31.007,0,0,0,32.4,29.6a30.255,30.255,0,0,0-7.034,13.992l6.481-3.3c2.155-1.1,4.295-2.172,6.532-3.308V55.447l2.984,3.027V35.425s.068-.032.292-.152a24.676,24.676,0,0,0,2.614-1.448,8.834,8.834,0,0,0,1.3-13.358c-2.216-2.318-4.443-4.626-6.656-6.946a1.424,1.424,0,0,1,0-2.128,1.47,1.47,0,0,1,2.138.12c.308.311,2.386,2.506,3.127,3.283q2.808,2.941,5.625,5.872a4.005,4.005,0,0,0,.311.266l.117-.069A1.864,1.864,0,0,0,50.1,20.478ZM38.375,33.551a.538.538,0,0,1-.273.364c-1.186.629-2.382,1.241-3.577,1.855C33.109,36.5,31.69,37.223,30.17,38a28.176,28.176,0,0,1,8.16-10.112l.053-.044C38.386,29.7,38.392,31.7,38.375,33.551Z",transform:"translate(-25.369 -8.153)",fill:"#c72c48"}))},Qa=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"WarpIcon",d:"M223.777 256c-4.293 0-7.777-3.137-7.777-7V7c0-3.868 3.484-7 7.777-7h24.445c4.295 0 7.777 3.132 7.777 7v242c0 3.862-3.482 7-7.777 7Zm-54 0c-4.293 0-7.777-3.137-7.777-7V60c0-3.868 3.484-7 7.777-7h24.445c4.295 0 7.777 3.132 7.777 7v189c0 3.862-3.482 7-7.777 7Zm-54 0c-4.293 0-7.777-3.137-7.777-7V111c0-3.868 3.484-7 7.777-7h24.445c4.295 0 7.777 3.132 7.777 7v138c0 3.862-3.482 7-7.777 7Zm-54 0c-4.293 0-7.777-3.137-7.777-7v-87c0-3.868 3.484-7 7.777-7h24.445c4.295 0 7.777 3.132 7.777 7v87c0 3.862-3.482 7-7.777 7Zm-54 0C3.484 256 0 252.863 0 249v-35c0-3.862 3.484-7 7.777-7h24.445c4.295 0 7.777 3.137 7.777 7v35c0 3.862-3.482 7-7.777 7Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 922",fill:"none",d:"M0 0h256v256H0z"})))},ei=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 6972",d:"M215.641 255.9H87.69a22.585 22.585 0 0 1-16.605-6.812 22.542 22.542 0 0 1-6.8-16.6v-162.8a21.969 21.969 0 0 1 6.807-16.058 22.654 22.654 0 0 1 16.6-6.807h127.951a21.95 21.95 0 0 1 16.059 6.807 22.014 22.014 0 0 1 6.813 16.058v162.8a22.6 22.6 0 0 1-6.812 16.613 21.94 21.94 0 0 1-16.037 6.8ZM87.69 232.486h127.951v-162.8H87.69ZM18 189V12A12 12 0 0 1 30 0h139a12 12 0 0 1 12 12 12 12 0 0 1-12 12H42v165a12 12 0 0 1-11.992 12A12 12 0 0 1 18 189Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 918",fill:"none",d:"M0 0h256v256H0z"})))},ti=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"OpenListIcon"},r.createElement("path",{"data-name":"Trazado 6842",d:"M0 71.037a14.843 14.843 0 0 1 4.511-10.526 14.978 14.978 0 0 1 21.427 0l101.874 101.874 102.25-101.874a14.978 14.978 0 0 1 21.427 0 14.978 14.978 0 0 1 0 21.427L138.714 194.714a14.843 14.843 0 0 1-10.526 4.511 13.65 13.65 0 0 1-10.526-4.511L4.887 81.938A15.229 15.229 0 0 1 0 71.037Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 896",fill:"none",d:"M0 0h256v256H0z"}))))},ni=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16 16"}),r.createElement("g",{id:"repliaction-icn",transform:"translate(0 0)"},r.createElement("g",{id:"Grupo_1696","data-name":"Grupo 1696",transform:"translate(3.434)"},r.createElement("path",{id:"Trazado_6841","data-name":"Trazado 6841",d:"M-502.661-53.081a1.054,1.054,0,0,0-.84-.432h-10.382a1.055,1.055,0,0,0-.84.432,1.272,1.272,0,0,0-.233.983l.178,1.038h7.843a1.894,1.894,0,0,1,1.509.776,2.21,2.21,0,0,1,.342.661h1.366l-.16.932h-1.107c-.005.058-.013.117-.023.175l-.518,3.021v0h1.1l-.16.932h-1.1l-.546,3.189-.005.032-.072.422h1.06a1.124,1.124,0,0,0,1.073-.975l.52-3.036c0-.006,0-.012,0-.018l.7-4.114,0-.012.518-3.024A1.271,1.271,0,0,0-502.661-53.081Z",transform:"translate(514.975 53.513)"})),r.createElement("path",{id:"Trazado_6842","data-name":"Trazado 6842",d:"M-609.21,43.432a1.055,1.055,0,0,0-.84-.432h-10.382a1.054,1.054,0,0,0-.84.432,1.271,1.271,0,0,0-.233.983c.256,1.495.8,4.646,1.226,7.16a.035.035,0,0,0,0,.005l.521,3.04a1.124,1.124,0,0,0,1.073.975h6.886a1.124,1.124,0,0,0,1.073-.975l.52-3.036,0-.018.7-4.114s0-.008,0-.012l.518-3.024A1.271,1.271,0,0,0-609.21,43.432Zm-1.924,8.519-8.214.01-.16-.932,8.534-.01Zm.708-4.131-9.629.01-.16-.932,9.949-.01Z",transform:"translate(621.524 -39.595)"})))},ri=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1016","data-name":"Rect\xe1ngulo 1016",width:"234.495",height:"256",fill:"#4ccb92"})),r.createElement("clipPath",{id:"clip-Add_Members_to_Group"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Add_Members_to_Group","data-name":"Add Members to Group",clipPath:"url(#clip-Add_Members_to_Group)"},r.createElement("g",{id:"Add_Members_to_Group_Icon","data-name":"Add Members to Group Icon"},r.createElement("g",{id:"Grupo_2404","data-name":"Grupo 2404",transform:"translate(12)"},r.createElement("g",{id:"Grupo_2403","data-name":"Grupo 2403"},r.createElement("path",{id:"Trazado_7140","data-name":"Trazado 7140",d:"M88.829,144.6h.048a66.829,66.829,0,0,0,27.035-5.707,69.009,69.009,0,0,0,22.1-15.529,72.055,72.055,0,0,0,14.891-22.977,73.863,73.863,0,0,0,5.463-28.1C158.372,32.435,127.183,0,88.831,0h0C50.5,0,19.316,32.43,19.316,72.292S50.5,144.6,88.829,144.6",transform:"translate(1.421)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7141","data-name":"Trazado 7141",d:"M170.085,117.467a64.39,64.39,0,0,0-57.412,35.223c-1.427-.4-2.86-.784-4.3-1.124A94.705,94.705,0,0,0,86.9,149.044v.005c-1.755,0-3.439.046-5,.135A99.747,99.747,0,0,0,8.1,189.42c-.388.519-.767,1.061-1.234,1.756l-.107.15c-.1.142-.214.3-.312.458l-.027.028a37.88,37.88,0,0,0-2.671,37.522A31.97,31.97,0,0,0,32.509,247.36H142.044a31.485,31.485,0,0,0,13.08-2.84,64.408,64.408,0,1,0,14.961-127.054m.383,115.3a50.889,50.889,0,1,1,50.888-50.888,50.888,50.888,0,0,1-50.888,50.888m-7.982-26.944V189.859H146.524V173.895h15.963V157.931H178.45v15.964h15.963v15.964H178.45v15.963Z",transform:"translate(0 8.64)",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1017","data-name":"Rect\xe1ngulo 1017",width:"256",height:"256",fill:"none"}))))},oi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{"data-name":"Rect\\xE1ngulo 1602",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{fill:"#2781b0"},r.createElement("path",{"data-name":"Trazado 7242",d:"m20.695 32.211 11.313-11.318 203.3 203.4-11.313 11.318Z"}),r.createElement("path",{"data-name":"Trazado 7243",d:"M19.371 106.631C6.694 118.186 0 133.962 0 152.26a61.725 61.725 0 0 0 20.253 46.312c12.578 11.424 29.547 17.714 47.778 17.714h114.108L55.275 89.429c-14.007 2.7-26.556 8.672-35.911 17.2Z"}),r.createElement("path",{"data-name":"Trazado 7244",d:"M238.286 203.889C249.875 194.662 256 180.961 256 164.264c0-30.939-24.23-47.692-48.894-51.341-3.258-20.595-12.03-38.216-25.568-51.249a76.817 76.817 0 0 0-53.589-21.459 73.336 73.336 0 0 0-41.553 12.506l151.47 151.492c.128-.107.285-.206.42-.313Z"})))},ai=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 23.786 22.2"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path-prom-error"},r.createElement("rect",{id:"Rect\xe1ngulo_1578","data-name":"Rect\xe1ngulo 1578",width:"23.786",height:"22.2",fill:"none"}))),r.createElement("g",{id:"Grupo_2402","data-name":"Grupo 2402",clipPath:"url(#clip-path-prom-error)"},r.createElement("path",{id:"Trazado_7049","data-name":"Trazado 7049",d:"M23.786,7.136a3.967,3.967,0,0,0-4.824-3.871A11.1,11.1,0,1,0,22.2,11.1c0-.26-.01-.518-.027-.773a3.958,3.958,0,0,0,1.613-3.192M11.1,20.776v0a2.92,2.92,0,0,1-3.158-2.6h6.317a2.922,2.922,0,0,1-3.159,2.6m5.217-3.464H5.883V15.42H16.317Zm-.038-2.865H5.913c-.035-.04-.07-.079-.1-.119a7.561,7.561,0,0,1-1.564-2.664c0-.023,1.295.266,2.22.476,0,0,.476.109,1.167.238A4.332,4.332,0,0,1,6.573,9.592c0-2.225,1.707-4.17,1.091-5.741.6.048,1.24,1.269,1.284,3.166a6.8,6.8,0,0,0,.9-3.474c0-1.02.672-2.207,1.348-2.247-.6.988.159,1.835.826,3.937.251.793.22,2.118.414,2.961.064-1.75.366-4.3,1.476-5.185a3.83,3.83,0,0,0,.457,3.167,6,6,0,0,1,1,3.437,4.294,4.294,0,0,1-1.031,2.775c.733-.137,1.239-.262,1.239-.262l2.379-.465a6.749,6.749,0,0,1-1.676,2.785M19.822,10.7A3.568,3.568,0,1,1,23.39,7.136,3.568,3.568,0,0,1,19.822,10.7",transform:"translate(0 -0.001)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7050","data-name":"Trazado 7050",d:"M491.022,131.222l.121-2.851h-1.17l.121,2.851Z",transform:"translate(-470.607 -123.297)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7051","data-name":"Trazado 7051",d:"M488.865,209.66a.655.655,0,1,0,.65.65.667.667,0,0,0-.65-.65",transform:"translate(-468.913 -201.374)",fill:"#c83b51"})))},ii=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("g",{transform:"translate(23.344 0.006)"},r.createElement("g",null,r.createElement("g",null,r.createElement("g",null,r.createElement("path",{d:"M76.7,73.6c4.6,4.6,11.9,4.6,16.5,0l0,0l25-25c4.6-4.6,4.6-11.9,0-16.5l0,0l-25-25\n\t\t\t\t\t\t\t\tc-4.6-4.6-11.9-4.6-16.5,0s-4.6,11.9,0,16.5l7.2,7.2c-47,9.9-80.8,51.3-80.8,99.4c0,6.4,5.2,11.7,11.7,11.7\n\t\t\t\t\t\t\t\ts11.7-5.2,11.7-11.7c0-32.4,20-61.4,50.2-73C72.2,61.8,72.2,69.1,76.7,73.6"}),r.createElement("path",{d:"M208.8,126.8c0-6.4-5.2-11.7-11.7-11.7c-6.4,0-11.7,5.2-11.7,11.7c0,32.4-20,61.4-50.2,73\n\t\t\t\t\t\t\t\tc4.5-4.6,4.4-12-0.2-16.5c-4.6-4.5-11.9-4.4-16.4,0.1l-25,25c-1.4,1.4-2.4,3.1-2.9,4.9c-0.5,1.8-0.6,3.7-0.3,5.5\n\t\t\t\t\t\t\t\tc0.4,2.3,1.6,4.4,3.2,6l0,0l25,25c4.6,4.6,11.9,4.6,16.5,0s4.6-11.9,0-16.5l-7.2-7.2C175,216.3,208.7,174.9,208.8,126.8"}),r.createElement("path",{d:"M92.8,157.8l6-4.5c0.9,0.4,1.8,0.8,2.8,1.2l1.1,7.5c0.2,1.4,1.4,2.4,2.8,2.4h10.6\n\t\t\t\t\t\t\t\tc1.4,0,2.6-1,2.8-2.4l1.1-7.5c0.9-0.3,1.9-0.7,2.8-1.2l6,4.5c1.1,0.8,2.6,0.7,3.6-0.2l7.5-7.5c1-1,1.1-2.5,0.2-3.6l-4.5-6\n\t\t\t\t\t\t\t\tc0.4-0.9,0.8-1.8,1.2-2.8l7.5-1.1c1.4-0.2,2.4-1.4,2.4-2.8v-10.7c0-1.4-1-2.5-2.3-2.7l-7.5-1.1c-0.3-0.9-0.7-1.9-1.2-2.8\n\t\t\t\t\t\t\t\tl4.5-6c0.8-1.1,0.7-2.6-0.3-3.6l-7.5-7.6c-1-1-2.5-1.1-3.6-0.2l-6,4.5c-0.9-0.4-1.8-0.8-2.8-1.2l-1.1-7.5\n\t\t\t\t\t\t\t\tc-0.2-1.4-1.4-2.4-2.8-2.4h-10.7c-1.4,0-2.6,1-2.7,2.4l-1.1,7.5c-0.9,0.3-1.9,0.7-2.8,1.2l-6-4.5c-1.1-0.8-2.6-0.7-3.6,0.2\n\t\t\t\t\t\t\t\tl-7.5,7.5c-1,1-1.1,2.5-0.3,3.6l4.5,6c-0.4,0.9-0.8,1.8-1.2,2.8l-7.5,1.1c-1.4,0.2-2.4,1.4-2.4,2.8v10.6c0,1.4,1,2.6,2.4,2.8\n\t\t\t\t\t\t\t\tl7.5,1.1c0.3,0.9,0.7,1.9,1.2,2.8l-4.5,6.1c-0.8,1.1-0.7,2.6,0.3,3.6l7.5,7.5C90.2,158.6,91.7,158.7,92.8,157.8 M102.5,128.5\n\t\t\t\t\t\t\t\tc-0.1-4.6,3.6-8.3,8.2-8.3c4.6-0.1,8.3,3.6,8.3,8.2c0,0.1,0,0.1,0,0.2l0,0c0,4.6-3.7,8.3-8.2,8.3l0,0\n\t\t\t\t\t\t\t\tC106.2,136.8,102.5,133.1,102.5,128.5L102.5,128.5L102.5,128.5z"}))))))},si=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1025","data-name":"Rect\xe1ngulo 1025",width:"256",height:"236.235",fill:"none"})),r.createElement("clipPath",{id:"clip-Drive_Format_Errors"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Drive_Format_Errors","data-name":"Drive Format Errors",clipPath:"url(#clip-Drive_Format_Errors)"},r.createElement("g",{id:"Drive_Format_Errors-Icon","data-name":"Drive Format Errors-Icon"},r.createElement("rect",{id:"Rect\xe1ngulo_1004","data-name":"Rect\xe1ngulo 1004",width:"256",height:"256",fill:"none"}),r.createElement("g",{id:"Grupo_2413","data-name":"Grupo 2413",transform:"translate(0.637 9.778)"},r.createElement("g",{id:"Grupo_2412","data-name":"Grupo 2412",transform:"translate(0 0.001)"},r.createElement("path",{id:"Trazado_7156","data-name":"Trazado 7156",d:"M97.03,336.139a9.708,9.708,0,1,1,.007,0",transform:"translate(-47.133 -168.561)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7157","data-name":"Trazado 7157",d:"M139.7,336.054a6.907,6.907,0,1,0-7.923-5.713,6.907,6.907,0,0,0,7.923,5.713",transform:"translate(-68.864 -168.564)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7158","data-name":"Trazado 7158",d:"M256.009,77.663A47.444,47.444,0,0,0,198.24,31.346a118.111,118.111,0,1,0,38,86.785c0-.642-.014-1.281-.024-1.921a47.383,47.383,0,0,0,19.793-38.546M43.519,118.312,67.309,58.88A5.7,5.7,0,0,1,72.6,55.3h91.06a5.686,5.686,0,0,1,2.687.677,47.446,47.446,0,0,0,26.623,66.516,5.7,5.7,0,0,1-5.312,3.641H48.809a5.7,5.7,0,0,1-5.29-7.818M201.9,175.033a5.937,5.937,0,0,1-5.936,5.936H40.294a5.936,5.936,0,0,1-5.936-5.936V146.671a5.936,5.936,0,0,1,5.936-5.936H195.96a5.937,5.937,0,0,1,5.936,5.936Zm6.94-59.871A37.494,37.494,0,1,1,246.33,77.668a37.494,37.494,0,0,1-37.494,37.494",transform:"translate(-0.009 -0.013)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7159","data-name":"Trazado 7159",d:"M282.274,335.577h-80.98a4.182,4.182,0,0,1-4.169-4.169v-5.956a4.182,4.182,0,0,1,4.169-4.169h80.98a4.182,4.182,0,0,1,4.169,4.169v5.956a4.182,4.182,0,0,1-4.169,4.169",transform:"translate(-103.088 -168.017)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7160","data-name":"Trazado 7160",d:"M435.958,142.765l1.282-30.209h-12.4l1.282,30.209Z",transform:"translate(-222.172 -58.862)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7161","data-name":"Trazado 7161",d:"M430.2,183.9a6.94,6.94,0,1,0,6.887,6.993v-.106A7.067,7.067,0,0,0,430.2,183.9",transform:"translate(-221.316 -96.17)",fill:"#c83b51"}))))))},li=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",width:20,height:20,className:"min-icon",fill:"currentcolor"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"registration-icon_svg__a"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 1593",fill:"#4ccb92",d:"M0 0h20v20H0z"}))),r.createElement("g",{"data-name":"Grupo 2469",clipPath:"url(#registration-icon_svg__a)"},r.createElement("path",{"data-name":"Trazado 7117",d:"M19.075 11.962a3.1 3.1 0 0 0 1.008-1.965 3.1 3.1 0 0 0-1.008-1.963 3.134 3.134 0 0 1-.633-.894 3.4 3.4 0 0 1 0-1.164 3.121 3.121 0 0 0-.286-2.154 2.856 2.856 0 0 0-1.892-.952 3.024 3.024 0 0 1-1.053-.353 3.232 3.232 0 0 1-.628-.917A2.982 2.982 0 0 0 13.118 0a2.77 2.77 0 0 0-2.029.383 3.079 3.079 0 0 1-1.085.368 3.079 3.079 0 0 1-1.085-.37A2.77 2.77 0 0 0 6.89-.002a2.99 2.99 0 0 0-1.465 1.599 3.236 3.236 0 0 1-.633.922 3.033 3.033 0 0 1-1.05.351 2.856 2.856 0 0 0-1.892.953 3.133 3.133 0 0 0-.284 2.142 3.448 3.448 0 0 1 0 1.164 3.216 3.216 0 0 1-.633.9A3.1 3.1 0 0 0-.075 9.996a3.1 3.1 0 0 0 1.008 1.965 3.246 3.246 0 0 1 .633.89 3.462 3.462 0 0 1 0 1.166 3.133 3.133 0 0 0 .284 2.154 2.856 2.856 0 0 0 1.892.952 3.033 3.033 0 0 1 1.05.351 3.234 3.234 0 0 1 .633.921 2.982 2.982 0 0 0 1.465 1.592 2.77 2.77 0 0 0 2.029-.383 3.076 3.076 0 0 1 1.085-.37 3.077 3.077 0 0 1 1.085.368 3.769 3.769 0 0 0 1.525.472 1.561 1.561 0 0 0 .5-.082 2.978 2.978 0 0 0 1.465-1.6 3.249 3.249 0 0 1 .633-.921 3.032 3.032 0 0 1 1.05-.351 2.856 2.856 0 0 0 1.892-.952 3.113 3.113 0 0 0 .284-2.157 3.445 3.445 0 0 1 0-1.164 3.16 3.16 0 0 1 .633-.889m-10.13 1.894-3.89-4.066 1.38-1.437 2.51 2.618 4.638-4.833 1.38 1.442Z",fill:"currentcolor"})))},ci=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 26 25"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path-call-home-feature"},r.createElement("rect",{id:"Rect\xe1ngulo_1614","data-name":"Rect\xe1ngulo 1614",width:"6.172",height:"6.309",stroke:"rgba(0,0,0,0)",strokeWidth:"1"}))),r.createElement("g",{id:"Grupo_2540","data-name":"Grupo 2540",transform:"translate(0.531 0.596)"},r.createElement("path",{id:"call-home-icon",d:"M16.865,8.241a1.7,1.7,0,0,1-1.6,1.092h-.633v5.3a1.694,1.694,0,0,1-1.694,1.694h-8.9a1.7,1.7,0,0,1-1.694-1.694v-5.3H1.71A1.694,1.694,0,0,1,.58,6.362L7.358.432a1.694,1.694,0,0,1,2.259,0L16.4,6.362h0a1.694,1.694,0,0,1,.47,1.879",transform:"translate(0 0)",fill:"#07193e",stroke:"rgba(0,0,0,0)",strokeWidth:"1"}),r.createElement("g",{id:"Grupo_2539","data-name":"Grupo 2539",transform:"translate(5.441 6.68)"},r.createElement("g",{id:"Grupo_2539-2","data-name":"Grupo 2539",clipPath:"url(#clip-path-call-home-feature)"},r.createElement("path",{id:"Trazado_7262","data-name":"Trazado 7262",d:"M4.6,38.068a.164.164,0,0,0-.231,0l-.377.377a.149.149,0,0,1-.21,0L2.254,36.918a.149.149,0,0,1,0-.21l.377-.377a.164.164,0,0,0,0-.231L1.4,34.871a.164.164,0,0,0-.231,0l-.763.763a1.4,1.4,0,0,0,0,1.982l2.669,2.672a1.4,1.4,0,0,0,1.982,0l.763-.763a.164.164,0,0,0,0-.231Z",transform:"translate(0 -34.389)",stroke:"rgba(0,0,0,0)",strokeWidth:"1"}))),r.createElement("g",{id:"Grupo_2537","data-name":"Grupo 2537",transform:"translate(12.323 0)"},r.createElement("g",{id:"Elipse_623","data-name":"Elipse 623",transform:"translate(-0.323 -0.249)",fill:"#4ccb92",stroke:"#fff",strokeWidth:"1"},r.createElement("circle",{cx:"7",cy:"7",r:"7",stroke:"none"}),r.createElement("circle",{cx:"7",cy:"7",r:"6.5",fill:"none"})),r.createElement("g",{id:"check",transform:"translate(2.934 4.069)"},r.createElement("path",{id:"Trazado_7261","data-name":"Trazado 7261",d:"M14.9,10.862a.622.622,0,1,1,.889.871l-3.311,4.139a.622.622,0,0,1-.9.017L9.384,13.694a.622.622,0,1,1,.879-.879L12,14.551l2.881-3.67.017-.018Z",transform:"translate(-9.182 -10.676)"})))))},ui=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"trace-icn",d:"m28.428 74.404 56.9 62.738v110.977A8.062 8.062 0 0 1 77.154 256H65.065a8.082 8.082 0 0 1-8.189-7.881v-98.742L.003 82.287V7.879A8.036 8.036 0 0 1 8.16 0h12.105a8.043 8.043 0 0 1 8.166 7.879Zm56.9-66.525A8.061 8.061 0 0 0 77.154 0H65.065a8.081 8.081 0 0 0-8.189 7.879v71.315l56.921 67.091v101.834a8.045 8.045 0 0 0 8.166 7.881h12.1a8.058 8.058 0 0 0 8.157-7.881V134.051L85.331 71.322ZM134.059 0h-12.1a8.044 8.044 0 0 0-8.166 7.879v39.1a8.044 8.044 0 0 0 8.166 7.88h12.1a8.058 8.058 0 0 0 8.157-7.88v-39.1a8.057 8.057 0 0 0-8.16-7.88Zm44.783 118.856h12.105a8.05 8.05 0 0 0 8.166-7.88V7.876a8.049 8.049 0 0 0-8.166-7.879h-12.105a8.056 8.056 0 0 0-8.174 7.879v103.1a8.058 8.058 0 0 0 8.172 7.88ZM247.818-.001h-12.1a8.043 8.043 0 0 0-8.165 7.879v39.1a8.044 8.044 0 0 0 8.165 7.88h12.1a8.059 8.059 0 0 0 8.182-7.88v-39.1a8.058 8.058 0 0 0-8.182-7.879Zm0 173.715h-12.1a8.044 8.044 0 0 0-8.165 7.881v66.523a8.044 8.044 0 0 0 8.165 7.881h12.1a8.059 8.059 0 0 0 8.182-7.881v-66.519a8.058 8.058 0 0 0-8.182-7.884Zm0-82.286h-12.1a8.044 8.044 0 0 0-8.165 7.881v17.727l-56.889 56.678v74.4a8.057 8.057 0 0 0 8.174 7.881h12.105a8.05 8.05 0 0 0 8.166-7.881v-56.115l56.889-67.09v-25.6a8.059 8.059 0 0 0-8.18-7.881ZM20.262 137.142H8.157A8.038 8.038 0 0 0 0 145.022v103.1a8.037 8.037 0 0 0 8.157 7.881h12.105a8.044 8.044 0 0 0 8.166-7.881v-103.1a8.045 8.045 0 0 0-8.166-7.88Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 880",fill:"none",d:"M0 0h256v256H0z"})))},di=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 858",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 20",d:"M102.405 230.399v-76.79h-76.8a25.607 25.607 0 0 1 0-51.214h76.8V25.601a25.6 25.6 0 1 1 51.2 0v76.792h76.8a25.607 25.607 0 0 1 0 51.214h-76.8v76.792a25.6 25.6 0 1 1-51.2 0Z"})))},pi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 21.883 17.614"},e),r.createElement("g",{id:"Grupo_2504","data-name":"Grupo 2504",transform:"translate(-492.881 -516.58)"},r.createElement("g",{id:"google-cloud-logo-color",transform:"translate(492.881 516.58)"},r.createElement("g",{id:"Grupo_1820","data-name":"Grupo 1820"},r.createElement("path",{id:"Trazado_6946","data-name":"Trazado 6946",d:"M67.542,36.137h.667l1.9-1.9.093-.808A8.55,8.55,0,0,0,56.3,37.6a1.03,1.03,0,0,1,.667-.039l3.8-.628s.193-.321.294-.3a4.745,4.745,0,0,1,6.494-.494Z",transform:"translate(-53.656 -31.287)"}),r.createElement("path",{id:"Trazado_6947","data-name":"Trazado 6947",d:"M229.968,80.926a8.562,8.562,0,0,0-2.582-4.164l-2.669,2.669a4.746,4.746,0,0,1,1.742,3.765v.474a2.376,2.376,0,0,1,0,4.752h-4.752l-.474.481v2.85l.474.474h4.752a6.182,6.182,0,0,0,3.51-11.3Z",transform:"translate(-210.804 -74.614)",fill:"#6b8295"}),r.createElement("path",{id:"Trazado_6948","data-name":"Trazado 6948",d:"M6.558,142.319A6.18,6.18,0,0,0,2.828,153.4l2.756-2.756A2.376,2.376,0,1,1,8.727,147.5l2.756-2.756a6.166,6.166,0,0,0-4.924-2.423Z",transform:"translate(-0.415 -137.075)",fill:"#9aafbf"})))))},hi=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 10"}),r.createElement("path",{d:"M0,0v10l2.8-2.2H10V0H0z M6.6,6L5.6,6.4l-0.8-2l-1.5,2L2.5,5.9l1.9-2.6L4.1,2.4H3.2v-1h1.5l1.4,3.7l0.9-0.4\n\tl0.4,0.9L6.6,6z"}))},mi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Back Settings",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"arrow-icn",d:"M236.198 108.063c26.394 0 26.394 40.032 0 40.032H68.514l22.739 22.668c18.656 18.623-9.726 46.923-28.382 28.318L5.998 142.348a19.991 19.991 0 0 1 0-28.548l56.877-56.716c18.656-18.6 47.038 9.684 28.382 28.3l-22.743 22.679h167.684Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 863",fill:"none",d:"M0 0h256v256H0z"})))},fi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 16",d:"M15.084 248.677c-8.375 0-15.186-7.333-15.186-16.344V70.89c0-9.016 6.811-16.354 15.186-16.354l118.74-1.037a62.9 62.9 0 0 1 4.355-11.793 62.879 62.879 0 0 1 6.645-10.7 61.818 61.818 0 0 1 8.719-9.186 61.885 61.885 0 0 1 10.6-7.323 62.176 62.176 0 0 1 29.791-7.6 62.232 62.232 0 0 1 62.164 62.164 61.645 61.645 0 0 1-3.574 20.762 61.809 61.809 0 0 1-9.9 17.787 62.654 62.654 0 0 1-14.977 13.581 61.989 61.989 0 0 1-18.74 8.129v103.014c0 9.011-6.8 16.344-15.17 16.344Zm4.492-172.963a14.386 14.386 0 0 0-3.795 9.851V217.65c0 7.682 5.8 13.93 12.939 13.93h151.4c7.121 0 12.916-6.248 12.916-13.93v-86.472a61.49 61.49 0 0 1-23.232-4.875 61.964 61.964 0 0 1-19.193-12.784 62.138 62.138 0 0 1-13.236-18.857 61.664 61.664 0 0 1-5.465-23.021H28.723a12.414 12.414 0 0 0-9.147 4.072Zm152.111-47.433a46.458 46.458 0 0 0-24.189 40.779 46.493 46.493 0 0 0 46.438 46.442 46.4 46.4 0 0 0 14.4-2.311 5.7 5.7 0 0 0 .391-.509l.184-.269v.566a46.525 46.525 0 0 0 12.549-6.574 46.832 46.832 0 0 0 10-10.039 46.2 46.2 0 0 0 6.57-12.7 46.119 46.119 0 0 0 2.357-14.6 46.5 46.5 0 0 0-46.453-46.447 46.451 46.451 0 0 0-22.247 5.662ZM45.818 209.303a1.006 1.006 0 0 1-1-1.009v-20.649a1.006 1.006 0 0 1 1-1.009h110.521a1.011 1.011 0 0 1 1.01 1.009v20.649a1.011 1.011 0 0 1-1.01 1.009Zm0-44.934a1.006 1.006 0 0 1-1-1.009v-20.649a1.006 1.006 0 0 1 1-1.009h110.521a1.011 1.011 0 0 1 1.01 1.009v20.649a1.011 1.011 0 0 1-1.01 1.009Zm0-44.934a1.006 1.006 0 0 1-1-1.009V97.777a1.006 1.006 0 0 1 1-1.009h88.053a1.009 1.009 0 0 1 1.008 1.009v20.649a1.009 1.009 0 0 1-1.008 1.009Zm144.836-27.656h-.023a6.229 6.229 0 0 1-4.484-1.886L172.17 75.921a6.4 6.4 0 0 1 .316-9.04 6.387 6.387 0 0 1 4.361-1.716 6.392 6.392 0 0 1 4.357 1.716l9.449 9.459 23.482-23.436a6.3 6.3 0 0 1 4.518-1.881 6.312 6.312 0 0 1 4.461 1.825l.053.057a6.323 6.323 0 0 1 1.895 4.484 6.3 6.3 0 0 1-1.838 4.5l-.057.057-27.982 27.951a6.211 6.211 0 0 1-4.48 1.886Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 877",fill:"none",d:"M0 0h256v256H0z"})))},gi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 6970",d:"M27 101h202a27 27 0 0 1 0 54H27a27 27 0 0 1 0-54Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 916",fill:"none",d:"M0 0h256v256H0z"})))},bi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 28 28"},e),r.createElement("g",{id:"Tiers-NotAvailable-icon",transform:"translate(-340 -149)"},r.createElement("circle",{id:"Elipse_594","data-name":"Elipse 594",cx:"14",cy:"14",r:"14",transform:"translate(340 149)",fill:"#c83b51"}),r.createElement("g",{id:"Grupo_2399","data-name":"Grupo 2399"},r.createElement("g",{id:"TiersIcon",transform:"translate(345 154)"},r.createElement("rect",{id:"Rect\xe1ngulo_848","data-name":"Rect\xe1ngulo 848",width:"17.95",height:"17.95",transform:"translate(0 0.021)",fill:"none"}),r.createElement("g",{id:"tiers-icn",transform:"translate(-0.001 0)"},r.createElement("g",{id:"tiers"},r.createElement("path",{id:"Trazado_441","data-name":"Trazado 441",d:"M13,3a.8.8,0,0,0-.392.092L4.374,7.482a.666.666,0,0,0,0,1.2l2.54,1.354-2.54,1.354a.666.666,0,0,0,0,1.2l2.54,1.353-2.54,1.354a.666.666,0,0,0,0,1.2l8.236,4.39a.8.8,0,0,0,.749,0l8.236-4.39a.666.666,0,0,0,0-1.2l-2.54-1.354,2.54-1.353a.666.666,0,0,0,0-1.2l-2.54-1.354L21.6,8.678a.666.666,0,0,0,0-1.2L13.36,3.092A.8.8,0,0,0,13,3ZM8.414,10.832l4.2,2.237a.8.8,0,0,0,.749,0l4.2-2.237,2.167,1.154-6.739,3.591L6.246,11.986Zm0,3.9,4.2,2.237a.8.8,0,0,0,.749,0l4.2-2.237,2.166,1.154-6.739,3.591L6.246,15.89Z",transform:"translate(-4 -3)"})))),r.createElement("g",{id:"Grupo_2398","data-name":"Grupo 2398",transform:"translate(-3 5)"},r.createElement("circle",{id:"Elipse_593","data-name":"Elipse 593",cx:"5",cy:"5",r:"5",transform:"translate(358 156)"}),r.createElement("path",{id:"Elipse_593_-_Contorno","data-name":"Elipse 593 - Contorno",d:"M5,1A4,4,0,1,0,9,5,4,4,0,0,0,5,1M5,0A5,5,0,1,1,0,5,5,5,0,0,1,5,0Z",transform:"translate(358 156)",fill:"#c83b51"}),r.createElement("g",{id:"Page-1",transform:"translate(361.707 159.513)"},r.createElement("g",{id:"Fill-2",transform:"translate(0 0)"},r.createElement("path",{id:"Trazado_6970","data-name":"Trazado 6970",d:"M2.978.3l-.3-.3L1.489,1.189.3,0,0,.3,1.189,1.489,0,2.678l.3.3L1.489,1.789,2.678,2.978l.3-.3L1.789,1.489Z",transform:"translate(0 0)",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_6970_-_Contorno","data-name":"Trazado 6970 - Contorno",d:"M.3-.354,1.489.835,2.678-.354,3.331.3,2.142,1.489,3.331,2.678l-.653.653L1.489,2.142.3,3.331l-.653-.653L.835,1.489-.354.3Z",transform:"translate(0 0)",fill:"#c83b51"})))))))},yi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 25 23"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path-perf-feat-icon"},r.createElement("rect",{id:"Rect\xe1ngulo_985","data-name":"Rect\xe1ngulo 985",width:"17",height:"17",transform:"translate(-0.12 0.298)",fill:"#07193e"}))),r.createElement("g",{id:"Grupo_2543","data-name":"Grupo 2543",transform:"translate(0.12 0.101)"},r.createElement("g",{id:"speedtest-icon-full",transform:"translate(0 5.601)"},r.createElement("g",{id:"Grupo_2352","data-name":"Grupo 2352",transform:"translate(0 0)",clipPath:"url(#clip-path-perf-feat-icon)"},r.createElement("path",{id:"Trazado_7077","data-name":"Trazado 7077",d:"M120.559,129.741a.529.529,0,1,0,.529.529h0a.529.529,0,0,0-.529-.529",transform:"translate(-112.345 -121.572)",fill:"#07193e"}),r.createElement("path",{id:"Trazado_7078","data-name":"Trazado 7078",d:"M8.2,0a8.2,8.2,0,1,0,8.2,8.2A8.2,8.2,0,0,0,8.2,0M8.16,2.27h.027a.5.5,0,1,1-.008,1H8.16a.5.5,0,0,1,0-1m-5.6,5.5v0a.19.19,0,0,1-.189.164H2.345a.19.19,0,0,1-.164-.214V7.717h0a.189.189,0,0,1,.213-.163h0a.19.19,0,0,1,.162.214M3,6.075H3a.278.278,0,0,1-.244-.406V5.662h0A.278.278,0,1,1,3,6.075M4.54,4.423l-.021.018-.006.005a.34.34,0,0,1-.225.088v0a.341.341,0,0,1-.224-.6l.006-.005h0l0,0a.342.342,0,1,1,.466.5m1.683-.868-.006,0-.011,0a.449.449,0,0,1-.162.034v0a.453.453,0,0,1-.16-.876l.013,0h0a.453.453,0,1,1,.325.845M9.1,12.6h0a.241.241,0,0,1-.241.241h-1.3a.241.241,0,1,1,0-.482h1.3A.241.241,0,0,1,9.1,12.6Zm1.067-4.771-.89.76a.021.021,0,0,0,0,.02,1.1,1.1,0,1,1-.668-.779.021.021,0,0,0,.021,0l.886-.76h0a.5.5,0,0,1,.651.759M10.1,3.7v0a.552.552,0,0,1-.2-.036L9.885,3.65a.554.554,0,0,1,.387-1.039l.019.007A.557.557,0,0,1,10.1,3.7m1.765,1.13a.628.628,0,0,1-.413-.155l-.016-.014a.629.629,0,0,1,.825-.948l.017.015a.628.628,0,0,1-.413,1.1M12.5,6.142l-.012-.022A.722.722,0,0,1,13.743,5.4l.017.032.013.023h0a.722.722,0,0,1-.291.979h0a.722.722,0,0,1-.979-.291m1.385,2.42a.817.817,0,0,1-.921-.7V7.835a.817.817,0,0,1,.809-.927.819.819,0,0,1,.807.7l0,.032a.817.817,0,0,1-.7.918",transform:"translate(0 -0.138)",fill:"#07193e"}))),r.createElement("g",{id:"Grupo_2538","data-name":"Grupo 2538",transform:"translate(11.203 0)"},r.createElement("g",{id:"Elipse_623","data-name":"Elipse 623",transform:"translate(-0.324 -0.101)",fill:"#4ccb92",stroke:"#fff",strokeWidth:"1"},r.createElement("circle",{cx:"7",cy:"7",r:"7",stroke:"none"}),r.createElement("circle",{cx:"7",cy:"7",r:"6.5",fill:"none"})),r.createElement("g",{id:"check",transform:"translate(2.797 4.098)"},r.createElement("path",{id:"Trazado_7261","data-name":"Trazado 7261",d:"M14.938,10.864a.627.627,0,1,1,.895.877L12.5,15.91a.627.627,0,0,1-.9.017l-2.21-2.211a.627.627,0,1,1,.886-.886l1.75,1.748,2.9-3.7.017-.018Z",transform:"translate(-9.182 -10.676)"})))))},vi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Add Folder",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"add folder-icn"},r.createElement("path",{"data-name":"Uni\\xF3n 11",d:"M39.666 233.405A29.865 29.865 0 0 1 9.8 204.786L.074 97.965A20.666 20.666 0 0 1 0 96.155a29.835 29.835 0 0 1 20.248-28.183V54.5a20.051 20.051 0 0 1-.236-3.083A29.515 29.515 0 0 1 49.549 22h52.166c13.4 0 21.111 10.416 26.211 17.3.338.458.727.981 1.119 1.513h81.508a29.514 29.514 0 0 1 29.531 29.034A29.779 29.779 0 0 1 256 96.155c0 .619-.031 1.234-.092 1.853l-9.963 106.8a29.87 29.87 0 0 1-29.865 28.593ZM20.092 96.155l9.787 107.485a9.8 9.8 0 0 0 9.787 9.749H216.08a9.8 9.8 0 0 0 9.8-9.749l10.03-107.485a9.809 9.809 0 0 0-9.8-9.753H29.879a9.8 9.8 0 0 0-9.787 9.753Zm20.015-44.734h.227v23.514H219.99v-4.7a9.449 9.449 0 0 0-9.437-9.4H122.5c-7.082 0-14.17-18.814-20.783-18.814H49.549a9.449 9.449 0 0 0-9.442 9.4Zm80.588 128.7v-23.339H97.264a7.783 7.783 0 1 1 0-15.565H120.7v-23.335a7.809 7.809 0 0 1 15.617 0v23.335h23.432a7.783 7.783 0 1 1 0 15.565h-23.436v23.335a7.809 7.809 0 0 1-15.617 0Z",stroke:"rgba(0,0,0,0)",strokeMiterlimit:10})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 873",fill:"none",d:"M0 0h256v256H0z"})))},Ei=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 18.201 22"},e),r.createElement("path",{id:"Trazado_6934","data-name":"Trazado 6934",d:"M1.477,53.686,0,54.417V67.239l1.477.726.009-.011V53.7l-.009-.01",transform:"translate(0 -49.842)",fill:"#6b8295"}),r.createElement("path",{id:"Trazado_6935","data-name":"Trazado 6935",d:"M28.526,66.1l-7.9,1.861V53.686l7.9,1.821V66.1",transform:"translate(-19.147 -49.842)"}),r.createElement("path",{id:"Trazado_6936","data-name":"Trazado 6936",d:"M81.178,120.939l3.352.427.021-.049.019-5.5-.04-.043-3.352.421v4.74",transform:"translate(-75.415 -107.566)",fill:"#6b8295"}),r.createElement("path",{id:"Trazado_6937","data-name":"Trazado 6937",d:"M128,66.125l7.687,1.844.012-.019V53.7l-.012-.013L128,55.527v10.6",transform:"translate(-118.959 -49.842)",fill:"#6b8295"}),r.createElement("path",{id:"Trazado_6938","data-name":"Trazado 6938",d:"M131.349,120.939l-3.353.427v-5.588l3.353.421v4.74",transform:"translate(-118.91 -107.566)"}),r.createElement("path",{id:"Trazado_6939","data-name":"Trazado 6939",d:"M87.883,78.252l-3.353.611-3.352-.611,3.348-.877,3.357.877",transform:"translate(-75.429 -71.876)",fill:"#5a6e7e"}),r.createElement("path",{id:"Trazado_6940","data-name":"Trazado 6940",d:"M87.883,211.825l-3.353-.615-3.352.615,3.348.934,3.357-.934",transform:"translate(-75.429 -196.201)",fill:"#9aafbf"}),r.createElement("path",{id:"Trazado_6941","data-name":"Trazado 6941",d:"M81.178,6.417l3.352-.829.027-.008V.022L84.53,0,81.178,1.676V6.417",transform:"translate(-75.415)",fill:"#6b8295"}),r.createElement("path",{id:"Trazado_6942","data-name":"Trazado 6942",d:"M131.349,6.417,128,5.587V0l3.353,1.676V6.417",transform:"translate(-118.91)"}),r.createElement("path",{id:"Trazado_6943","data-name":"Trazado 6943",d:"M84.525,226.222l-3.352-1.676v-4.741l3.352.829.049.056-.013,5.434-.036.1",transform:"translate(-75.411 -204.222)",fill:"#6b8295"}),r.createElement("path",{id:"Trazado_6944","data-name":"Trazado 6944",d:"M128,226.222l3.352-1.676v-4.741l-3.352.829v5.587",transform:"translate(-118.91 -204.222)"}),r.createElement("path",{id:"Trazado_6945","data-name":"Trazado 6945",d:"M235.367,53.686l1.477.731V67.239l-1.477.73V53.686",transform:"translate(-218.643 -49.842)"}))},wi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"IAM Policies",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"iam-policies-icn"},r.createElement("path",{"data-name":"Trazado 339",d:"M234.915 46.468v-.073a12.276 12.276 0 0 0-12.458-11.593c-19.233.3-55.932-3-86.768-28.92a12.132 12.132 0 0 0-15.811-.046C88.971 31.804 52.271 35.119 33.152 34.81a12.226 12.226 0 0 0-12.561 11.657c-1.8 46.628-1.509 112.307 21.777 144.214 21.779 29.942 64.527 54.463 77.79 60.687a17.75 17.75 0 0 0 7.584 1.7 17.744 17.744 0 0 0 7.619-1.713c14.233-6.71 55.947-30.7 77.768-60.659 23.292-31.913 23.59-97.599 21.786-144.228Zm-33.666 135.567c-19.9 27.341-59.77 50.186-72.17 56.035a3.18 3.18 0 0 1-2.687 0c-12.364-5.814-52.168-28.577-72.141-56.044-22.29-30.539-20.117-104.8-19.071-132.5h.273c21.464 0 59.431-4.411 92.3-31.128 32.821 26.709 70.8 31.119 92.384 31.119h.18c1.052 27.835 3.211 101.997-19.068 132.518Z"}),r.createElement("path",{"data-name":"Trazado 339 - Contorno",d:"M127.739.004a15.2 15.2 0 0 1 9.855 3.655c29.229 24.565 64.3 28.236 82.6 28.236l2.217-.017h.01a15.346 15.346 0 0 1 15.422 14.381c1.821 47.169 1.485 113.518-22.347 146.172-22.2 30.473-64.469 54.785-78.885 61.582a20.555 20.555 0 0 1-8.869 1.993 20.584 20.584 0 0 1-8.833-1.978c-13.426-6.3-56.751-31.147-78.912-61.614-23.821-32.639-24.156-98.986-22.335-146.052a15.124 15.124 0 0 1 15.023-14.484l2.764.028c18.245 0 53.229-3.677 82.542-28.306a15.029 15.029 0 0 1 9.748-3.596Zm92.455 37.753c-19.1 0-55.72-3.849-86.39-29.625a9.344 9.344 0 0 0-6.065-2.265 9.18 9.18 0 0 0-5.956 2.2c-30.753 25.84-67.289 29.7-86.332 29.7l-2.345-.019h-.019a9.344 9.344 0 0 0-9.568 8.874c-1.785 46.156-1.53 111.17 21.217 142.338 21.44 29.477 63.592 53.625 76.668 59.761a14.916 14.916 0 0 0 12.7-.009c14.043-6.621 55.179-30.255 76.653-59.736 22.757-31.181 23.013-96.2 21.227-142.389a9.343 9.343 0 0 0-9.2-8.852Zm-92.44-23.131 1.849 1.5c32.569 26.5 70.7 30.462 90.534 30.462h2.822l.286 2.82c.957 25.27 3.867 102.168-19.628 134.352-20.261 27.833-60.713 51.027-73.287 56.958a6.169 6.169 0 0 1-5.167.01c-12.568-5.909-52.967-29.043-73.282-56.98C28.394 151.57 31.298 74.683 32.252 49.417l.107-2.821h2.822c20.053 0 58.106-3.959 90.724-30.471Zm89.734 37.8c-21.007-.373-57.672-5.123-89.736-30.274-32.229 25.255-68.984 29.947-89.744 30.287-2.23 64.873 4.028 107.88 18.61 127.858 19.6 26.948 58.824 49.384 71.021 55.119l.1.019a.225.225 0 0 0 .1-.021c12.214-5.762 51.5-28.26 71.043-55.106 14.585-19.984 20.843-63.004 18.606-127.883Z"}),r.createElement("path",{"data-name":"Trazado 339 - Contorno",d:"M127.739 2.837a12.358 12.358 0 0 1 8.015 2.976 120.447 120.447 0 0 0 45.936 23.8 142.22 142.22 0 0 0 21.155 4.1 149.679 149.679 0 0 0 17.35 1.015c.753 0 1.514-.006 2.262-.018h.333a12.159 12.159 0 0 1 8.378 3.393 12.225 12.225 0 0 1 3.846 8.3v.077c1.8 46.64 1.506 112.345-21.805 144.286-21.848 29.994-63.571 53.979-77.8 60.689a17.751 17.751 0 0 1-7.66 1.722 17.771 17.771 0 0 1-7.625-1.708c-13.258-6.222-56.016-30.731-77.828-60.718-23.3-31.93-23.6-97.632-21.8-144.275a12.414 12.414 0 0 1 3.8-8.343 12.055 12.055 0 0 1 8.393-3.417c.156 0 .314 0 .47.009.757.012 1.529.018 2.294.018a148.3 148.3 0 0 0 17.294-1.019 141.918 141.918 0 0 0 21.123-4.113 120.786 120.786 0 0 0 45.948-23.838 12.209 12.209 0 0 1 7.921-2.936Zm92.455 32.086a149.9 149.9 0 0 1-17.373-1.016 142.431 142.431 0 0 1-21.184-4.107 120.644 120.644 0 0 1-46.01-23.838 12.163 12.163 0 0 0-7.888-2.929 12.012 12.012 0 0 0-7.8 2.883 120.985 120.985 0 0 1-46.021 23.877 142.125 142.125 0 0 1-21.153 4.119 148.491 148.491 0 0 1-17.317 1.021c-.766 0-1.54-.006-2.3-.018a12.138 12.138 0 0 0-.465-.009 11.861 11.861 0 0 0-8.258 3.362 12.22 12.22 0 0 0-3.739 8.211c-1.8 46.613-1.509 112.271 21.758 144.151 21.788 29.954 64.506 54.44 77.753 60.656a17.576 17.576 0 0 0 7.542 1.69 17.555 17.555 0 0 0 7.577-1.7c14.221-6.7 55.907-30.666 77.73-60.628 23.276-31.892 23.571-97.552 21.768-144.167v-.076a12.027 12.027 0 0 0-3.785-8.16 11.963 11.963 0 0 0-8.243-3.339h-.329c-.746.006-1.508.012-2.263.012Zm-92.441-16.645.062.05a135.656 135.656 0 0 0 50.371 25.557 157.366 157.366 0 0 0 23.039 4.435 163.564 163.564 0 0 0 18.913 1.106h.273v.094c.294 7.782.6 17.213.6 28.16 0 13.373-.462 25.856-1.382 37.1-2.583 31.568-8.74 54.215-18.3 67.312-19.915 27.358-59.8 50.216-72.208 56.066a3.228 3.228 0 0 1-1.38.307 3.288 3.288 0 0 1-1.389-.307c-12.38-5.821-52.213-28.618-72.179-56.075-9.563-13.1-15.723-35.768-18.3-67.365-.919-11.247-1.384-23.729-1.381-37.1 0-10.914.3-20.327.6-28.1v-.094h.367a162.536 162.536 0 0 0 18.844-1.106 157.194 157.194 0 0 0 23-4.436 135.97 135.97 0 0 0 50.391-25.564Zm92.469 31.343h-.085a163.735 163.735 0 0 1-18.936-1.107 157.57 157.57 0 0 1-23.067-4.44 135.854 135.854 0 0 1-50.381-25.544 136.178 136.178 0 0 1-50.4 25.551 157.4 157.4 0 0 1-23.033 4.441 162.713 162.713 0 0 1-18.866 1.107h-.179c-.292 7.748-.59 17.127-.592 27.994 0 13.364.461 25.84 1.38 37.082 2.579 31.56 8.725 54.192 18.268 67.266 19.942 27.424 59.736 50.2 72.1 56.013a3.094 3.094 0 0 0 1.307.288 3.035 3.035 0 0 0 1.3-.288c12.392-5.845 52.242-28.68 72.132-56 9.541-13.068 15.686-35.681 18.265-67.213.919-11.241 1.384-23.719 1.382-37.086-.002-10.91-.301-20.307-.594-28.069Z"}),r.createElement("path",{"data-name":"Trazado 340",d:"m154.932 82.763-7.4-3.7-5.737-2.866-14.1-7.057v12.363l-15.307 6.115 15.307-6.115v-12.37L100.447 82.76v9.628l-5.029 2.014v18.257l5.029.589v8.032l11.941-1.191v54.127l7.145 2.86v11.538l8.162 4.08v-86.488l-7.206 1.441V90.14l7.206-2.528v.007l7.195 2.521v17.5l-7.195-1.435v86.488l8.159-4.08v-11.538l13.528-5.367-.024-10.18-13.5 4.006v-11.54l13.528-2.689v-9.99l5.55-.5v-9.9h-11.929v-10.822l5.524.552 6.4.639v-9.628l5.036 1.008V94.407l-5.036-2.014Zm3.2 12.886v14.772l-2.83-.567-2.2-.44v9.843l-4.4-.441-5.525-.552-2.019-.206v14.7h11.941v6.387l-3.88.344-1.67.147v10.166l-12.063 2.4-1.473.293v15.51l2.353-.7 11.151-3.315.032 6.476-12.376 4.909-1.16.455v11.657l-4.487 2.242v-81.286l5 1.008 2.2.434v-1.876l6.277 1.265V87.622l-7.149-2.866-4.933-1.971-1.39-.552v-10.12l11.433 5.717 5.749 2.875 6.391 3.19v9.745l1.152.457Z"}),r.createElement("path",{"data-name":"Trazado 340 - Contorno",d:"m126.229 66.764 1.465.734 1.466-.733v1.466l13.293 6.652 5.736 2.866 8.208 4.11V91.4l5.036 2.014v21.037l-5.036-1.008v9.46l-11.93-1.191v7.741h11.93v12.707l-5.55.5v9.853l-13.529 2.689v8.373l13.5-4 .032 13.136-13.531 5.368v11.449l-8.158 4.08v1.465l-1.466-.733-1.465.733v-1.466l-8.163-4.08v-11.452l-7.145-2.86v-53.5l-11.941 1.191v-8.347l-5.028-.589V93.417l5.028-2.014v-9.542l27.249-13.627Zm0 13.743v-9l-24.317 12.161v9.714l-5.029 2.014v15.961l5.029.589v7.717l11.941-1.191v54.754l7.145 2.86v11.624l5.231 2.615v-82.33l-7.206 1.441V89.102l10.137-3.556v1.035l7.195 2.521v17.336l5.181 1.044v-18.87l-6.229-2.5-4.932-1.971-2.311-.917v-.3L112.93 88.97l-1.088-2.722Zm25.408 4.3-5.58-2.786-15.061-7.532v6.754l.464.184 4.937 1.973 8.07 3.235v24.434l-6.276-1.265v1.869l-3.954-.781-3.241-.654v77.122l1.555-.777v-11.751l2.086-.818 11.446-4.54-.018-3.52-13.514 4.017v-18.682l2.653-.528 10.884-2.162v-10.3l5.549-.491v-3.581h-11.941V116.44l3.633.37 8.308.831V107.63l5.029 1.007V96.645l-2.95-1.182-2.079-.823Zm-18.214 6.38-5.739-2.011-5.73 2.01v14.68l4.275-.855v-.585l1.465.292 1.466-.293v.586l4.263.85Z"}),r.createElement("path",{"data-name":"Trazado 340 - Contorno",d:"m127.597 68.978.1.049.1-.049v.1l14.049 7.03 5.737 2.866 7.451 3.731v9.623l5.037 2.014v18.443l-5.037-1.008v9.617l-11.929-1.191v10.621h11.929v10.088l-5.549.5v9.98l-.079.016-13.45 2.674v11.329l13.5-4.006v.131l.025 10.246-.062.025-13.467 5.342v11.532l-.054.027-8.1 4.053v.1l-.1-.049-.1.049v-.1l-8.162-4.08v-11.532l-7.145-2.86v-54.085l-11.941 1.191v-8.058l-5.029-.589V94.337l.062-.025 4.967-1.99v-9.623l.054-.027 27.194-13.6Zm0 12.455V69.294l-27.053 13.529v9.634l-5.028 2.014v18.1l5.028.589v8.011l11.941-1.191v54.168l7.145 2.86v11.544l7.967 3.982v-86.211l-7.206 1.441v-17.7l.065-.023 7.336-2.573v.076l7.194 2.521v17.689l-.117-.023-7.078-1.411v86.217l7.962-3.982v-11.544l.062-.024 13.467-5.342-.024-9.983-13.5 4.006v-11.751l.079-.016 13.45-2.674v-10l5.55-.5v-9.714h-11.93v-11.032l11.93 1.191v-9.64l5.036 1.008V94.468l-5.036-2.014V82.82l-7.343-3.677-5.736-2.866-13.961-6.986v12.271l-.062.025-15.308 6.115-.072-.181Zm7.195 8.779-7.107-2.49-7.1 2.49v17.319l7.011-1.4v-.039l.1.019.1-.019v.039l7 1.4Zm-5.359-18.257.142.071 17.181 8.592 6.445 3.217v9.739l1.091.432 3.938 1.577v14.954l-5.029-1.008v9.831l-4.5-.452-5.525-.552-1.912-.195v14.493h11.941v6.574l-5.55.492v10.156l-13.536 2.689v15.3l13.5-4.014v.13l.032 6.542-.062.025-12.376 4.909-1.1.431v11.651l-.054.027-4.628 2.313v-81.561l5.113 1.031 2.082.411v-1.876l6.276 1.265V87.683l-7.087-2.841-4.933-1.971-1.451-.576Zm23.573 12-6.337-3.163-17.04-8.521v9.9l1.328.527 4.933 1.971 7.21 2.891v21.837l-6.277-1.265v1.876l-2.315-.457-4.879-.984v81.007l4.291-2.145v-11.664l1.222-.479 12.313-4.885-.031-6.279-13.5 4.014v-15.721l1.552-.309 11.984-2.38v-10.179l5.55-.492v-6.2h-11.941v-14.9l2.127.217 9.814.982V109.3l5.028 1.008V95.721l-3.814-1.528-1.214-.481Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 887",fill:"none",d:"M0 0h256v256H0z"})))},Si=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"users-icn"},r.createElement("path",{"data-name":"Trazado 331",d:"M128.212 142.371c39.3 0 71.279-31.6 71.279-70.444S167.512 1.483 128.212 1.483s-71.268 31.6-71.268 70.444 31.977 70.444 71.268 70.444Zm0-121.306c28.383 0 51.463 22.818 51.463 50.862s-23.08 50.862-51.463 50.862-51.445-22.816-51.445-50.862 23.066-50.862 51.445-50.862Z"}),r.createElement("path",{"data-name":"Trazado 331 - Contorno",d:"M128.212 143.853c-40.124 0-72.768-32.266-72.768-71.927S88.088-.001 128.212-.001s72.779 32.266 72.779 71.927-32.649 71.927-72.779 71.927Zm0-140.888c-38.47 0-69.768 30.936-69.768 68.961s31.3 68.961 69.768 68.961 69.779-30.936 69.779-68.961-31.303-68.961-69.779-68.961Zm0 121.305c-29.194 0-52.945-23.481-52.945-52.344s23.751-52.345 52.945-52.345 52.963 23.482 52.963 52.345-23.76 52.345-52.963 52.345Zm0-101.724c-27.54 0-49.945 22.152-49.945 49.38s22.405 49.379 49.945 49.379 49.963-22.151 49.963-49.379-22.414-49.379-49.963-49.379Z"}),r.createElement("path",{"data-name":"Trazado 332",d:"M215.129 199.095a108.6 108.6 0 0 0-41.184-32.37 111.377 111.377 0 0 0-51.553-10.081c-31.26 1.575-62.109 17.524-80.5 41.632-.613.8-1.213 1.624-1.8 2.439a35.274 35.274 0 0 0-2.746 36.518c5.68 10.824 16.691 17.287 29.441 17.287h122.867c12.885 0 23.883-6.551 29.4-17.513a36.09 36.09 0 0 0-3.925-37.912Zm-13.812 29.2c-1.529 3.029-4.8 6.648-11.662 6.648H66.783c-7.25 0-10.545-4.215-11.861-6.724a15.692 15.692 0 0 1 1.361-16.225c.473-.647.938-1.29 1.43-1.93 14.951-19.6 40.129-32.58 65.688-33.869 1.408-.068 2.816-.1 4.213-.1 27.5 0 55.287 13.376 71.729 34.828a16.785 16.785 0 0 1 1.974 17.372Z"}),r.createElement("path",{"data-name":"Trazado 332 - Contorno",d:"M127.643 155.028a110.952 110.952 0 0 1 23.833 2.624 115.878 115.878 0 0 1 23.1 7.726 110.137 110.137 0 0 1 41.751 32.821 37.565 37.565 0 0 1 4.07 39.465 33.137 33.137 0 0 1-5.348 7.707 32.51 32.51 0 0 1-7.156 5.772 33.964 33.964 0 0 1-8.59 3.612 37.261 37.261 0 0 1-9.646 1.247H66.783a37.248 37.248 0 0 1-9.57-1.23 34.36 34.36 0 0 1-8.568-3.563 33.1 33.1 0 0 1-7.191-5.693 33.672 33.672 0 0 1-5.443-7.6 36.758 36.758 0 0 1 2.851-38.053l.009-.012c.576-.794 1.2-1.642 1.825-2.466 18.644-24.445 49.918-40.623 81.618-42.22 1.769-.092 3.556-.137 5.329-.137Zm62.011 98.007c12.31 0 22.8-6.24 28.053-16.691a34.607 34.607 0 0 0-3.773-36.354 107.135 107.135 0 0 0-40.617-31.92 112.854 112.854 0 0 0-22.492-7.524 107.908 107.908 0 0 0-23.179-2.552c-1.722 0-3.463.044-5.174.13-30.837 1.554-61.251 17.281-79.375 41.044-.608.8-1.214 1.627-1.779 2.4a33.793 33.793 0 0 0-2.638 34.976c5.418 10.324 15.926 16.488 28.11 16.488Zm-62.037-78.43a93.962 93.962 0 0 1 40.673 9.521 90.119 90.119 0 0 1 32.251 25.895 18.687 18.687 0 0 1 3.738 9.3 17.136 17.136 0 0 1-1.619 9.631 13.216 13.216 0 0 1-4.318 5.019 15.031 15.031 0 0 1-8.688 2.453H66.783a15.1 15.1 0 0 1-9.041-2.706 13.981 13.981 0 0 1-4.152-4.818 17.173 17.173 0 0 1 1.466-17.761l.01-.015.19-.261c.4-.554.822-1.127 1.258-1.694 15.213-19.942 40.813-33.145 66.808-34.457a84.647 84.647 0 0 1 4.295-.108Zm62.037 58.85a12.08 12.08 0 0 0 6.975-1.922 10.268 10.268 0 0 0 3.345-3.9 14.2 14.2 0 0 0 1.324-7.982 15.738 15.738 0 0 0-3.147-7.833 87.116 87.116 0 0 0-31.182-25.025 90.916 90.916 0 0 0-39.353-9.218c-1.373 0-2.765.034-4.14.1a89.517 89.517 0 0 0-36.2 9.9 84.252 84.252 0 0 0-28.362 23.379v.005c-.414.538-.8 1.072-1.216 1.637l-.186.254a14.21 14.21 0 0 0-1.252 14.683 10.988 10.988 0 0 0 3.259 3.788 12.148 12.148 0 0 0 7.271 2.136Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 885",fill:"none",d:"M0 0h256v256H0z"})))},Ai=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 44",d:"M68.023 254.27a84.932 84.932 0 0 1-16-4.981 85.034 85.034 0 0 1-14.469-7.867 85.9 85.9 0 0 1-12.605-10.417 86.052 86.052 0 0 1-10.4-12.633 85.293 85.293 0 0 1-7.857-14.5 84.868 84.868 0 0 1-4.965-16.024 86.347 86.347 0 0 1-1.732-17.194 85.284 85.284 0 0 1 4.422-27.2 84.814 84.814 0 0 1 12.285-23.571 85.562 85.562 0 0 1 18.707-18.5q2.35-1.7 4.787-3.216V19.084c0-5.291 2.291-9.882 6.814-13.658A23.864 23.864 0 0 1 62.7.001h101.867a23.167 23.167 0 0 1 15.266 5.427c4.512 3.771 6.807 8.362 6.813 13.648v55.263h47.275a23.173 23.173 0 0 1 15.264 5.427c4.512 3.775 6.8 8.367 6.813 13.648v108.21a17.675 17.675 0 0 1-6.812 14.023 23.153 23.153 0 0 1-15.248 5.421h-80.016a86.359 86.359 0 0 1-25.8 23.31 84.684 84.684 0 0 1-20.33 8.577 85.257 85.257 0 0 1-22.617 3.046 86.2 86.2 0 0 1-17.152-1.731ZM35.275 136.923a60 60 0 0 0-10.312 33.733A60.345 60.345 0 0 0 85.18 230.99a59.739 59.739 0 0 0 36.213-12.148 22.746 22.746 0 0 1-5.031-3.2 17.621 17.621 0 0 1-6.812-14.018v-54.893H62.71a23.732 23.732 0 0 1-15.7-5.431 17.831 17.831 0 0 1-6.568-10.988 60.318 60.318 0 0 0-5.167 6.61Zm100.654 60.824h94.119V97.293h-43.4v29.992a17.675 17.675 0 0 1-6.812 14.023 23.148 23.148 0 0 1-15.252 5.421H135.93Zm0-74.337H160.7V97.294h-24.771Zm-69.348 0h42.967V93.418c0-5.286 2.295-9.882 6.813-13.653a23.874 23.874 0 0 1 15.693-5.427H160.7V22.956H66.581Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 926",fill:"none",d:"M0 0h256v256H0z"})))},_i=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1023","data-name":"Rect\xe1ngulo 1023",width:"256",height:"255.998",fill:"none"})),r.createElement("clipPath",{id:"clip-Enable_Bucket_Encryption"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Enable_Bucket_Encryption","data-name":"Enable Bucket Encryption",clipPath:"url(#clip-Enable_Bucket_Encryption)"},r.createElement("g",{id:"Enable_Bucket_Encryption_Icon","data-name":"Enable Bucket Encryption Icon"},r.createElement("g",{id:"Grupo_2410","data-name":"Grupo 2410"},r.createElement("path",{id:"Trazado_7149","data-name":"Trazado 7149",d:"M127.927,130.84a8.009,8.009,0,0,0-4.486,14.645v6.451a4.238,4.238,0,0,0,4.228,4.228h.511a4.237,4.237,0,0,0,4.227-4.228v-6.451a8.009,8.009,0,0,0-4.48-14.645",transform:"translate(-0.009)"}),r.createElement("path",{id:"Trazado_7150","data-name":"Trazado 7150",d:"M250.852,8.773A21.516,21.516,0,0,0,233.732,0H22.264A21.507,21.507,0,0,0,5.148,8.773,25.864,25.864,0,0,0,.395,28.759c5.223,30.384,16.208,94.421,25,145.533l.014.1c4.457,26,8.337,48.644,10.616,61.787C37.988,247.666,47.17,256,57.875,256H198.129c10.712,0,19.873-8.332,21.859-19.818l10.591-61.712.076-.375,14.334-83.619.049-.243L255.6,28.759a25.8,25.8,0,0,0-4.748-19.986M37.855,98a9.544,9.544,0,0,1-9.408-7.93l-.007-.042a9.544,9.544,0,0,1,9.406-11.158h62.969A29.6,29.6,0,0,0,94.2,97.433v.176h-1.06a32.022,32.022,0,0,0-4.912.382Zm14.538,83.918a9.544,9.544,0,0,1-9.408-7.93l-.007-.041a9.544,9.544,0,0,1,9.405-11.159H63.256a26.924,26.924,0,0,0,8.909,18.292q.468.428.952.833ZM181.632,161.14c0,9.2-8.235,16.705-18.456,16.935l-35.261,6.136-35.259-6.135C82.434,177.844,74.2,170.337,74.2,161.14V125.55c0-9.342,8.5-16.941,18.943-16.941H105.2V97.433c0-11.162,10.19-20.244,22.714-20.244s22.714,9.08,22.714,20.244v11.176h12.059c10.446,0,18.944,7.6,18.944,16.941Zm31.479,12.751h0a9.543,9.543,0,0,1-9.413,7.989l-20.95.006c.311-.262.618-.529.918-.8a26.921,26.921,0,0,0,8.91-18.292H203.7a9.544,9.544,0,0,1,9.415,11.1M227.4,89.972a9.544,9.544,0,0,1-9.414,7.989l-50.5.012a32.024,32.024,0,0,0-4.8-.364h-1.06v-.176a29.6,29.6,0,0,0-6.613-18.56h62.97a9.544,9.544,0,0,1,9.416,11.1",transform:"translate(0)"}),r.createElement("path",{id:"Trazado_7151","data-name":"Trazado 7151",d:"M127.923,85.575c-7.334,0-13.3,5.32-13.3,11.858l0,11.175h26.61l0-11.175c0-6.538-5.967-11.858-13.3-11.858",transform:"translate(-0.009)"})))))},Ti=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"documentation-icn",d:"M19.922 256.001H8.633a8.842 8.842 0 0 1-8.631-8.962V77.449a8.845 8.845 0 0 1 8.631-8.962h7.291a8.841 8.841 0 0 1 8.645 8.962v152.944h119.164a8.848 8.848 0 0 1 8.65 8.962v7.685a8.845 8.845 0 0 1-8.65 8.962Zm41.08-46a14.994 14.994 0 0 1-15-15v-180a15 15 0 0 1 15-15h180a15 15 0 0 1 15 15v180a15 15 0 0 1-15 15Zm5-20h170v-170h-170Zm28.742-18.884a.906.906 0 0 1-.9-.906v-23.3a.906.906 0 0 1 .9-.906H210a.907.907 0 0 1 .906.906v23.3a.907.907 0 0 1-.906.906Zm0-52a.91.91 0 0 1-.9-.91v-23.3a.909.909 0 0 1 .9-.905H210a.909.909 0 0 1 .906.905v23.3a.91.91 0 0 1-.906.91Zm0-53a.91.91 0 0 1-.9-.91v-23.3a.907.907 0 0 1 .9-.91H210a.908.908 0 0 1 .906.91v23.3a.911.911 0 0 1-.906.91Z",stroke:"rgba(0,0,0,0)",strokeMiterlimit:10}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 876",fill:"none",d:"M0 0h256v256H0z"})))},Ci=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 26 25"},e),r.createElement("g",{id:"Grupo_2542","data-name":"Grupo 2542",transform:"translate(0 0.249)"},r.createElement("g",{id:"health-icon",transform:"translate(0 7.842)"},r.createElement("path",{id:"Uni\xf3n_51","data-name":"Uni\xf3n 51",d:"M1.977,17A1.976,1.976,0,0,1,0,15.015V4.938H2.144v9.918h9.892V17Zm12.591-.443V14.584h1.974v1.973Zm.288-4.538V2.144H4.965V0H15.023A1.98,1.98,0,0,1,17,1.973V12.019Zm-4.8,0V10.045h1.979v1.973Zm-5.094,0V10.045H6.944v1.973Zm5.094-5.106V4.938h1.979V6.912Zm-5.09,0V4.938H6.942V6.912ZM.458,2.448V.475H2.432V2.448Z",transform:"translate(0 -0.091)",fill:"#07193e"})),r.createElement("g",{id:"Grupo_2537","data-name":"Grupo 2537",transform:"translate(12.323 0)"},r.createElement("g",{id:"Elipse_623","data-name":"Elipse 623",transform:"translate(-0.323 -0.249)",fill:"#4ccb92",stroke:"#fff",strokeWidth:"1"},r.createElement("circle",{cx:"7",cy:"7",r:"7",stroke:"none"}),r.createElement("circle",{cx:"7",cy:"7",r:"6.5",fill:"none"})),r.createElement("g",{id:"check",transform:"translate(2.934 4.069)"},r.createElement("path",{id:"Trazado_7261","data-name":"Trazado 7261",d:"M14.9,10.862a.622.622,0,1,1,.889.871l-3.311,4.139a.622.622,0,0,1-.9.017L9.384,13.694a.622.622,0,1,1,.879-.879L12,14.551l2.881-3.67.017-.018Z",transform:"translate(-9.182 -10.676)"})))))},xi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 14 14"},e),r.createElement("path",{d:"M141.421,148.182a4.5,4.5,0,0,0-4.3,5.805l-5.188,5.195v3h3l5.187-5.2a4.5,4.5,0,0,0,5.8-3.936,4.39,4.39,0,0,0-.823-3A4.492,4.492,0,0,0,141.421,148.182Zm.5,5a1,1,0,1,1,1-1A1,1,0,0,1,141.92,153.182Z",transform:"translate(-131.934 -148.182)"}))},Ii=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"Grupo 1557"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 826",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 10",d:"M71.113 256a37.94 37.94 0 01-37.889-37.9V60.906a15.426 15.426 0 01-14.227-15.353V29.621a15.423 15.423 0 0115.4-15.4h41.541A15.378 15.378 0 0191.258.003h72.871a15.393 15.393 0 0115.334 14.218h41.531a15.423 15.423 0 0115.4 15.4v15.932a15.426 15.426 0 01-14.227 15.353V218.1a37.942 37.942 0 01-37.9 37.9zm-19.605-37.9a19.634 19.634 0 0019.605 19.614h113.164A19.637 19.637 0 00203.89 218.1V60.951H51.507zM218.117 38.6v-6.1h-56.893V18.278H94.177V32.5H37.286v6.1z"}))))},Oi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-Subscribe_to_event"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Subscribe_to_event","data-name":"Subscribe to event",clipPath:"url(#clip-Subscribe_to_event)"},r.createElement("g",{id:"subscribe_to_event_icon","data-name":"subscribe to event icon",transform:"translate(-675.16 -286.16)"},r.createElement("g",{id:"Grupo_2272","data-name":"Grupo 2272",transform:"translate(676.2 287.84)"},r.createElement("g",{id:"Grupo_2271","data-name":"Grupo 2271"},r.createElement("path",{id:"Trazado_7031","data-name":"Trazado 7031",d:"M218.265,151a12.276,12.276,0,0,0-12.37,12.1v3.147H184.5c-17.317,0-31.3,13.678-31.3,30.383v178.3c0,16.7,14.1,30.383,31.3,30.383h191.73c17.318,0,31.3-13.678,31.3-30.383v-178.3c0-16.7-14.1-30.383-31.3-30.383h-24.74V163.1a12.372,12.372,0,0,0-24.739,0v3.147H230.634V163.1A12.275,12.275,0,0,0,218.265,151Zm157.96,229.99H184.5a6.408,6.408,0,0,1-6.556-6.173v-127.7H382.9v127.7A6.6,6.6,0,0,1,376.225,380.99ZM326.746,190.461v3.39a12.372,12.372,0,0,0,24.739,0v-3.39h24.74a6.408,6.408,0,0,1,6.556,6.174v26.388H177.939V196.635a6.408,6.408,0,0,1,6.556-6.174h21.4v3.39a12.373,12.373,0,0,0,24.74,0v-3.39Z",transform:"translate(-153.2 -151)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7032","data-name":"Trazado 7032",d:"M320.582,251.052l-58.245,57.325-20.692-20.386a15.283,15.283,0,0,0-21.459,21.766L262.337,351.3l79.857-78.478a15.336,15.336,0,1,0-21.612-21.765Z",transform:"translate(-151.567 -145.725)",fill:"#4ccb92"}))))))},ki=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 870",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"download-icn"},r.createElement("path",{"data-name":"Trazado 362",d:"M0 104.08c0-21.751 32.822-21.751 32.822 0v118.833h190.356V104.08c0-21.751 32.822-21.751 32.822 0v135.381a16.48 16.48 0 0 1-16.4 16.54H16.415a16.485 16.485 0 0 1-16.413-16.54V104.08Zm144.415-87.773c0-21.741-32.826-21.741-32.826 0v138.227l-18.591-18.743c-15.263-15.385-38.474 8.006-23.211 23.391l46.51 46.879a16.339 16.339 0 0 0 23.406 0l46.507-46.879c15.266-15.385-7.945-38.776-23.208-23.391l-18.587 18.743V16.306Z"}))))},Ni=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"ComputerLineIcon"},r.createElement("path",{"data-name":"ComputerLineIcon",d:"M19.678 227.007A19.678 19.678 0 0 1 0 207.328v-25.736h256.887v25.736a19.683 19.683 0 0 1-19.682 19.682Zm-4.844-19.682a4.541 4.541 0 0 0 4.541 4.541h218.289a4.541 4.541 0 0 0 4.541-4.541v-14.152h-75.387a12.4 12.4 0 0 1-11.354 7.567H101.5a12.416 12.416 0 0 1-11.355-7.567H14.836Zm204.662-40.871v-121.1H37.846v121.1H22.709V41.568a11.353 11.353 0 0 1 11.35-11.354h189.225a11.354 11.354 0 0 1 11.355 11.354v124.886Zm-166.516-.91V60.49h136.09l-11.957 12.108H65.093v92.945Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 892",fill:"none",d:"M0 0h256v256H0z"}))))},Ri=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"All Buckets",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 45",d:"M78.373 256c-7.594 0-14.115-5.922-15.51-14.087-1.619-9.346-4.373-25.445-7.537-43.926l-.01-.074C49.08 161.58 41.277 116.057 37.57 94.461a18.4 18.4 0 0 1 3.377-14.209 15.24 15.24 0 0 1 12.148-6.235h150.137a15.259 15.259 0 0 1 12.154 6.235 18.358 18.358 0 0 1 3.369 14.209l-7.5 43.7-.035.171-10.184 59.448-.049.265-7.523 43.872c-1.408 8.165-7.914 14.087-15.516 14.087Zm-3.418-16.57a3.582 3.582 0 0 0 3.418 3.1h99.58a3.582 3.582 0 0 0 3.424-3.105l6.178-36.084H68.768c2.591 15.142 4.818 28.093 6.187 36.086Zm-8.5-49.559h123.42l7.928-46.218H58.539c2.609 15.186 5.363 31.301 7.916 46.216ZM50.416 88.858a4.087 4.087 0 0 0-.738 3.12c1.572 9.228 3.922 22.825 6.549 38.2h143.895l6.531-38.2a4.055 4.055 0 0 0-.74-3.115 3.354 3.354 0 0 0-2.68-1.381H53.086a3.359 3.359 0 0 0-2.67 1.374Zm170.543 29.158v-1.083l.014-.088 1.615-9.414h6.221a1.281 1.281 0 0 0 1.188-1.151c.074-.412.148-.847.227-1.3l.029-.162c.043-.25.088-.5.131-.764.02-.127.045-.255.064-.382s.049-.279.074-.421c.063-.377.131-.759.2-1.156l.031-.171c.043-.25.088-.509.131-.769l.045-.245c.029-.191.063-.382.1-.578l.67-3.884c.855-4.981 1.486-8.66 2.055-12h-10.43l-.244-.656a25.505 25.505 0 0 0-3.664-6.74c-.4-.529-.822-1.043-1.252-1.523l-1.49-1.666h18.9l.158-.936c.172-1.009.35-2.038.525-3.061.367-2.15.734-4.3 1.076-6.289.1-.568.2-1.137.293-1.709.117-.676.23-1.362.348-2.042l.5-2.915c.59-3.443 1.2-6.989 1.8-10.5h-86.41l3.648 21.243h-10.016l-4.379-25.588-4.787-27.855a12.711 12.711 0 0 1 2.342-9.826 10.739 10.739 0 0 1 8.545-4.379h95.705a10.723 10.723 0 0 1 8.541 4.379 12.715 12.715 0 0 1 2.342 9.826c-.414 2.419-.9 5.241-1.463 8.5l-.943 5.535c-.143.8-.279 1.622-.426 2.454l-.189 1.117q-.381 2.249-.793 4.619l-.982 5.73c-1.7 9.958-3.67 21.39-5.25 30.579l-.68 3.962-.578 3.375v.039l-.713 4.183c-.1.563-.2 1.131-.3 1.758-.1.593-.211 1.229-.334 1.944l-.4 2.312-1 5.843c-.787 4.585-1.531 8.915-2.072 12.049-.975 5.682-5.547 9.806-10.875 9.806ZM148.313 11.072a1.612 1.612 0 0 0-.289 1.225l4.025 23.516h90.041a16029.61 16029.61 0 0 1 3.365-19.617l.088-.485.582-3.414a1.611 1.611 0 0 0-.289-1.225 1.174 1.174 0 0 0-.9-.475h-95.715a1.154 1.154 0 0 0-.909.473ZM34.038 118.016h-6.852c-5.326 0-9.9-4.125-10.877-9.811-.539-3.13-1.281-7.459-2.07-12.049l-.287-1.7-.711-4.144-.4-2.307c-.127-.72-.234-1.361-.336-1.954l-.3-1.749-.717-4.183v-.039l-1.252-7.293c-1.58-9.2-3.545-20.65-5.252-30.623L4 36.434q-.407-2.381-.8-4.639l-.186-1.1c-.143-.833-.283-1.651-.426-2.449l-.953-5.588C1.078 19.41.598 16.609.182 14.204a12.722 12.722 0 0 1 2.342-9.826 10.729 10.729 0 0 1 8.543-4.379h95.705a10.744 10.744 0 0 1 8.545 4.379 12.719 12.719 0 0 1 2.342 9.826l-4.809 27.968-4.359 25.475H98.479l.2-1.171 3.449-20.072H15.716c.607 3.512 1.213 7.058 1.8 10.5l.5 2.915c.117.681.23 1.366.346 2.047l.293 1.7c.344 1.993.711 4.153 1.082 6.313.17 1.019.348 2.038.52 3.037l.16.936h18.9l-1.49 1.666c-.432.48-.854.994-1.252 1.523a25.567 25.567 0 0 0-3.666 6.74l-.244.656H22.237c.566 3.34 1.2 7.019 2.053 12l.672 3.884c.035.2.068.387.1.583l.045.24c.043.26.088.52.131.769l.006.01.023.162c.07.4.137.779.2 1.151l.074.426c.025.142.045.255.064.382.043.254.088.509.131.754l.029.171c.078.451.152.886.227 1.3a1.284 1.284 0 0 0 1.188 1.151h6.223l1.629 9.5v1.083ZM10.155 11.077a1.609 1.609 0 0 0-.285 1.22l.672 3.9c1.027 5.966 2.318 13.509 3.365 19.617h90.041l4.025-23.516a1.612 1.612 0 0 0-.289-1.225 1.159 1.159 0 0 0-.908-.475H11.061a1.185 1.185 0 0 0-.907.477Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 927",fill:"none",d:"M0 0h256v256H0z"})))},Mi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"LambdaIcon"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 847",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 442",d:"M40.266 0c-9.543 0-17.279 6.878-17.279 15.363S30.723 30.73 40.266 30.73c26.265 0 36.01 14.872 46.032 34.353l1.659 3.134c1.382 2.643 4.354 8.542 8.363 16.408L1.975 233.094c-4.327 7.346-1.317 16.42 6.8 20.5s18.415 1.7 23.265-5.384l81.9-128.623c21.91 44 49.488 99.494 49.972 100.415 12.921 27.82 47.568 42.291 79.9 33.369 9.123-2.512 14.229-11.123 11.4-19.235s-12.511-12.651-21.634-10.14c-15.631 4.28-32.31-2.987-38.084-16.593-2.765-5.531-67.32-135.751-76.029-152.282l-1.521-2.95C109.038 35.336 90.86 0 40.266 0Z"}))))},Li=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"groups-icn"},r.createElement("path",{"data-name":"Trazado 464",d:"M80.48 229.312a27.075 27.075 0 0 1-24.56-14.615 29.94 29.94 0 0 1 2.269-30.668v-.007c.519-.729.982-1.367 1.418-1.952l.008-.006a84.019 84.019 0 0 1 28.115-23.5 87.373 87.373 0 0 1 35.739-9.917 83.994 83.994 0 0 1 4.172-.107 85.882 85.882 0 0 1 18.631 2.076 89.934 89.934 0 0 1 18.062 6.117 86.479 86.479 0 0 1 32.679 25.974 30.568 30.568 0 0 1 3.2 31.789 26.323 26.323 0 0 1-9.982 10.9 28.124 28.124 0 0 1-14.539 3.924Zm43.97-61.409a67.92 67.92 0 0 0-27.724 7.673 64.647 64.647 0 0 0-21.71 18.1c-.32.426-.626.852-.945 1.3l-.116.162a10.394 10.394 0 0 0-.91 10.676 7.736 7.736 0 0 0 2.277 2.691 8.546 8.546 0 0 0 5.158 1.516h95.217c3.461 0 5.9-1.382 7.255-4.114v-.007a10.376 10.376 0 0 0 .951-5.807 11.664 11.664 0 0 0-2.273-5.746 66.98 66.98 0 0 0-23.879-19.38 68.976 68.976 0 0 0-30.14-7.144 70.658 70.658 0 0 0-3.161.076Zm87.819 40.475.254-2.2a40.828 40.828 0 0 0-.3-11.552l-.392-2.3h21.988c2.574 0 4.378-1.014 5.361-3.014v-.014a7.766 7.766 0 0 0 .718-4.344 8.714 8.714 0 0 0-1.715-4.319 52.307 52.307 0 0 0-18.683-15.17 53.964 53.964 0 0 0-23.583-5.594c-.883 0-1.722.021-2.488.062h-.01c-1.158.055-2.323.21-3.557.372-.15.021-.306.041-.457.058l-.817.106-.649-.505a98.534 98.534 0 0 0-13.759-8.872l-3.959-2.151 4.269-1.443a67.359 67.359 0 0 1 18.122-3.6c1.1-.055 2.213-.083 3.315-.083a67.958 67.958 0 0 1 14.8 1.649 71.23 71.23 0 0 1 14.336 4.849 68.418 68.418 0 0 1 25.905 20.624 24.5 24.5 0 0 1 2.584 25.507 21.121 21.121 0 0 1-8.038 8.776 22.614 22.614 0 0 1-11.7 3.154Zm-189.943 0a22.751 22.751 0 0 1-11.626-3.113 21.723 21.723 0 0 1-8.137-8.636v-.006a24.022 24.022 0 0 1 1.831-24.617 42.21 42.21 0 0 1 1.138-1.567 66.738 66.738 0 0 1 22.314-18.666 69.372 69.372 0 0 1 28.369-7.873 68.088 68.088 0 0 1 3.265-.079 68.894 68.894 0 0 1 21.835 3.618l4.27 1.423-3.944 2.168a99.584 99.584 0 0 0-13.552 8.982l-.657.519-.827-.113a50.98 50.98 0 0 0-7.089-.55c-.908 0-1.719.021-2.488.062h-.007a53.11 53.11 0 0 0-21.686 6 50.7 50.7 0 0 0-16.979 14.13c-.214.309-.44.615-.657.91l-.2.275a7.817 7.817 0 0 0-.675 7.986l.008.01a5.536 5.536 0 0 0 1.663 1.966 6.355 6.355 0 0 0 3.832 1.12h21.83l-.389 2.295a40.514 40.514 0 0 0-.269 11.55l.262 2.2ZM70.893 84.196a57.261 57.261 0 0 1 57.2-57.2 57.257 57.257 0 0 1 57.188 57.2 57.26 57.26 0 0 1-57.188 57.2 57.264 57.264 0 0 1-57.2-57.197Zm19.29 0a37.952 37.952 0 0 0 37.909 37.909 37.952 37.952 0 0 0 37.911-37.909 37.952 37.952 0 0 0-37.911-37.908 37.952 37.952 0 0 0-37.909 37.911Zm95.572 53.568a45.7 45.7 0 0 1-9.626-3.508l-2.433-1.213 1.908-1.935a66.163 66.163 0 0 0 7.772-9.446l.876-1.3 1.464.563a29.378 29.378 0 0 0 10.546 2.041 29.531 29.531 0 0 0 29.507-29.49 29.532 29.532 0 0 0-29.507-29.493 12.65 12.65 0 0 0-1.656.154c-.381.052-.773.107-1.189.145l-1.553.141-.5-1.478a66.318 66.318 0 0 0-4.962-11.288l-1.325-2.381 2.676-.512a45.609 45.609 0 0 1 8.5-.828 45.6 45.6 0 0 1 45.548 45.54 45.594 45.594 0 0 1-45.548 45.537 44.9 44.9 0 0 1-10.496-1.249Zm-171.42-44.29a45.586 45.586 0 0 1 45.526-45.54 45.391 45.391 0 0 1 8.56.835l2.69.512-1.339 2.385a66.792 66.792 0 0 0-4.993 11.292l-.5 1.48-1.557-.154c-.395-.038-.77-.089-1.134-.141a12.977 12.977 0 0 0-1.726-.162 29.517 29.517 0 0 0-29.479 29.493 29.517 29.517 0 0 0 29.479 29.49 29.18 29.18 0 0 0 10.57-2.048l1.453-.561.884 1.285a68.636 68.636 0 0 0 7.794 9.46l1.913 1.941-2.439 1.206a46.366 46.366 0 0 1-9.652 3.512 44.893 44.893 0 0 1-10.522 1.25 45.583 45.583 0 0 1-45.527-45.535Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 886",fill:"none",d:"M0 0h256v256H0z"})))},Di=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M125.65,0h0C56.26,0,0,56.26,0,125.65H0c0,69.4,56.26,125.65,125.65,125.65h0c69.4,0,125.65-56.26,125.65-125.65S195.05,0,125.65,0m41.51,163.77l-31.76,31.76c-5.32,5.39-14,5.45-19.39,.13-.04-.04-.09-.09-.13-.13h0l-31.74-31.76c-3.97-3.69-5.22-9.46-3.14-14.47,2.19-5.32,7.3-8.87,13.05-9.06,3.57,.06,6.97,1.55,9.42,4.15l8.4,8.4V65.26c0-7.57,6.15-13.71,13.72-13.7,7.57,0,13.7,6.14,13.7,13.7v87.52l8.4-8.39c2.45-2.6,5.85-4.1,9.42-4.16,5.76,.18,10.87,3.73,13.05,9.06,2.09,5,.83,10.78-3.14,14.47"}))},Pi=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"-1 -37.9 256 256"}),r.createElement("defs",null,r.createElement("clipPath",{id:"a"},r.createElement("path",{d:"M53.548,94.912v44.816c.43-.22.737-.378,1.517-.759a20.07,20.07,0,0,1,27.673,15.21c.1.677.115.688.163,1.1.063.567.084.968.108,1.463.01.21.068,1.914.072,2,.2,2.214.363,4.336.452,6.449.269,6.381.536,11,.957,15.5.6,6.412.964,12.128,1.066,17.7a19.838,19.838,0,0,1-.976,6.231c.683,6.455,1.592,14.938,1.752,16.438.014.128.023.253.036.38,3.927-.511,5.969-.716,8.382-.813,8.553-.344,16.809-.382,29.335-.235,1.42.017,2.559.021,5.094.054,10.044.13,14.46.163,19.906.127.93-.007,1.643,0,3.234,0,7.429.005,10.477-.237,12.174-.958-.178-1.123-.351-2.228-.614-3.558-.313-1.589-.586-2.862-1.264-5.979-2.292-10.53-3.161-15.585-3.414-22.508a68.539,68.539,0,0,1,2.764-23.067A29.713,29.713,0,0,1,164.278,159c.461-.922.889-1.737,1.372-2.547a22.021,22.021,0,0,1,1.987-2.836,19.87,19.87,0,0,1,3.776-3.5A19.984,19.984,0,0,1,192.33,125.6a20.223,20.223,0,0,1,9.195,3V94.912Z",fill:"none"})),r.createElement("clipPath",{id:"b"},r.createElement("path",{d:"M204.03,236.91c-.393.722-.717,1.447-1.156,2.168-.795,1.3-1.66,2.592-2.547,3.811h3.7Z",fill:"none"}))),r.createElement("g",{transform:"translate(-0.036 -24.789)"},r.createElement("path",{d:"M239.185,72.637A29.456,29.456,0,0,0,209.767,43.6H128.581l-1.119-1.512c-5.078-6.886-12.756-17.3-26.1-17.3H49.394A29.455,29.455,0,0,0,19.972,54.21a19.778,19.778,0,0,0,.236,3.081V70.763A29.818,29.818,0,0,0,.036,98.947c0,.6.023,1.205.076,1.806L9.8,207.577A29.8,29.8,0,0,0,39.545,236.2h175.73A29.8,29.8,0,0,0,245.021,207.6L254.947,100.8q.088-.928.09-1.852A29.792,29.792,0,0,0,239.185,72.637ZM49.394,44.808h51.963c6.586,0,13.645,18.813,20.7,18.813h87.709a9.429,9.429,0,0,1,9.4,9.4v4.7H40.213V54.206h-.229A9.431,9.431,0,0,1,49.394,44.808ZM225.031,206.43a9.781,9.781,0,0,1-9.754,9.748H39.547a9.779,9.779,0,0,1-9.75-9.748L20.051,98.947A9.782,9.782,0,0,1,29.8,89.192H225.268a9.788,9.788,0,0,1,9.758,9.755Z"}),r.createElement("g",{transform:"translate(-351.512 467)"},r.createElement("g",{transform:"translate(352 -469)",clipPath:"url(#a)"},r.createElement("path",{d:"M118.046,203.4c0,12.123,18.976,12.123,18.976,0V126.379l10.748,10.443c8.823,8.569,22.236-4.465,13.415-13.034L134.3,97.665a9.685,9.685,0,0,0-13.526,0L93.89,123.788c-8.82,8.568,4.592,21.6,13.415,13.034l10.745-10.443V203.4Z"}))),r.createElement("g",{clipPath:"url(#b)"},r.createElement("path",{d:"M56.052,158.235c0-12.121,18.978-12.121,18.978,0v66.218H185.056V158.235c0-12.121,18.973-12.121,18.973,0v75.436a9.357,9.357,0,0,1-9.486,9.217h-129a9.357,9.357,0,0,1-9.486-9.217V158.235Zm64.5,45.162c0,12.123,18.976,12.123,18.976,0V126.379l10.748,10.443c8.823,8.569,22.236-4.465,13.415-13.034L136.8,97.665a9.685,9.685,0,0,0-13.526,0L96.394,123.788c-8.82,8.568,4.593,21.6,13.415,13.034l10.745-10.443V203.4Z"}))))},Bi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"TiersIcon"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 848",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 441",d:"M128.249 0a11.373 11.373 0 0 0-5.583 1.308L5.334 63.851a9.483 9.483 0 0 0 0 17.039l36.187 19.289-36.187 19.288a9.485 9.485 0 0 0 0 17.058l36.187 19.27-36.187 19.288a9.485 9.485 0 0 0 0 17.058l117.331 62.54a11.442 11.442 0 0 0 10.666 0l117.331-62.54a9.485 9.485 0 0 0 0-17.058l-36.187-19.289 36.187-19.27a9.485 9.485 0 0 0 0-17.058l-36.187-19.289 36.187-19.289a9.483 9.483 0 0 0 0-17.039L133.332 1.311A11.349 11.349 0 0 0 128.249 0ZM62.875 111.563l59.791 31.866a11.442 11.442 0 0 0 10.666 0l59.791-31.866 30.876 16.443-96 51.154-96-51.154Zm-.021 55.617 59.812 31.866a11.442 11.442 0 0 0 10.667 0l59.812-31.866 30.854 16.442-96 51.155-96-51.155Z"}))))},Fi=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",id:"Account_Icon","data-name":"Account Icon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 16.409 13.096"}),r.createElement("path",{id:"Trazado_391","data-name":"Trazado 391",d:"M-4332.855-1143.481a3.023,3.023,0,0,0,2.958-3.078,3.023,3.023,0,0,0-2.958-3.078,3.023,3.023,0,0,0-2.958,3.078A3.023,3.023,0,0,0-4332.855-1143.481Zm0-5.194a2.078,2.078,0,0,1,2.03,2.116,2.077,2.077,0,0,1-2.03,2.116,2.075,2.075,0,0,1-2.028-2.116A2.076,2.076,0,0,1-4332.855-1148.675Z",transform:"translate(4339.12 1149.637)"}),r.createElement("path",{id:"Trazado_392","data-name":"Trazado 392",d:"M-4337.952-1130.053a1.374,1.374,0,0,0,1.252.775h4.993a1.354,1.354,0,0,0,1.25-.786,1.675,1.675,0,0,0-.164-1.686,4.521,4.521,0,0,0-1.7-1.405,4.361,4.361,0,0,0-2.125-.438,4.483,4.483,0,0,0-3.318,1.808c-.026.035-.051.071-.075.106A1.641,1.641,0,0,0-4337.952-1130.053Zm6.663-.437a.426.426,0,0,1-.417.25h-4.993a.453.453,0,0,1-.427-.254.64.64,0,0,1,.053-.632h0c.017-.027.037-.054.057-.08a3.539,3.539,0,0,1,2.622-1.424c.056,0,.113,0,.168,0a3.606,3.606,0,0,1,2.864,1.466A.686.686,0,0,1-4331.29-1130.49Z",transform:"translate(4340.467 1140.236)"}),r.createElement("path",{id:"Trazado_393","data-name":"Trazado 393",d:"M-4329.387-1146.951h-3.506a.476.476,0,0,0-.477.476.477.477,0,0,0,.477.476h3.506a1.047,1.047,0,0,1,1.046,1.045v7.99a1.047,1.047,0,0,1-1.046,1.045H-4341.8a1.047,1.047,0,0,1-1.046-1.045v-7.99A1.048,1.048,0,0,1-4341.8-1146a.476.476,0,0,0,.476-.476.476.476,0,0,0-.476-.476,2,2,0,0,0-2,2v7.99a2,2,0,0,0,2,2h12.412a2,2,0,0,0,2-2v-7.99A2,2,0,0,0-4329.387-1146.951Z",transform:"translate(4343.797 1148.063)"}),r.createElement("rect",{id:"Rect\xe1ngulo_809","data-name":"Rect\xe1ngulo 809",width:"3.266",height:"2.781",rx:"1.024",transform:"translate(11.002 3.376)"}),r.createElement("rect",{id:"Rect\xe1ngulo_810","data-name":"Rect\xe1ngulo 810",width:"3.266",height:"1.336",rx:"0.668",transform:"translate(11.002 7.328)"}),r.createElement("rect",{id:"Rect\xe1ngulo_811","data-name":"Rect\xe1ngulo 811",width:"3.266",height:"1.336",rx:"0.668",transform:"translate(11.002 9.621)"}))},ji=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1039","data-name":"Rect\xe1ngulo 1039",width:"256",height:"215.188",fill:"none"})),r.createElement("clipPath",{id:"clip-Create_Group"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Create_Group","data-name":"Create Group",clipPath:"url(#clip-Create_Group)"},r.createElement("g",{id:"Create_Group_Icon","data-name":"Create Group Icon"},r.createElement("g",{id:"Grupo_2428","data-name":"Grupo 2428",transform:"translate(0 20)"},r.createElement("g",{id:"Grupo_2427","data-name":"Grupo 2427"},r.createElement("path",{id:"Trazado_7184","data-name":"Trazado 7184",d:"M498.413,74.672a63.2,63.2,0,0,1-3.786,21.575c.9.049,1.8.078,2.709.078,26.871,0,48.733-21.605,48.733-48.162S524.2,0,497.337,0a48.855,48.855,0,0,0-36.642,16.469,64.109,64.109,0,0,1,37.719,58.2",transform:"translate(-305.609 0)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7185","data-name":"Trazado 7185",d:"M95.34,96.326c.921,0,1.836-.031,2.744-.081A63.2,63.2,0,0,1,94.3,74.674a64.109,64.109,0,0,1,37.693-58.2A48.867,48.867,0,0,0,95.34,0C68.473,0,46.614,21.605,46.614,48.163S68.473,96.326,95.34,96.326",transform:"translate(-30.922 0)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7186","data-name":"Trazado 7186",d:"M80.135,346.621a97.66,97.66,0,0,1,21.039-9.138,64.833,64.833,0,0,1-30.526-28.792c-2.2-.2-4.4-.306-6.612-.308-1.071,0-2.152.027-3.221.075-.121,0-.243.005-.365.011a70.315,70.315,0,0,0-7.835.841c-18.427,3-35.857,13.09-46.8,27.434-.419.55-.838,1.119-1.223,1.65l-.005.008a24.616,24.616,0,0,0-1.906,25.48,22.559,22.559,0,0,0,3.644,5.089,22.224,22.224,0,0,0,4.817,3.812,23.01,23.01,0,0,0,5.736,2.385,24.94,24.94,0,0,0,6.409.823H49.714a37.659,37.659,0,0,1,2.685-4.371l.027-.038.046-.063c.569-.785,1.067-1.457,1.525-2.058a90.337,90.337,0,0,1,26.138-22.841",transform:"translate(0 -204.572)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7187","data-name":"Trazado 7187",d:"M215.477,113.623c0,30.276,24.92,54.907,55.549,54.907s55.557-24.63,55.557-54.907-24.929-54.907-55.557-54.907-55.549,24.63-55.549,54.907",transform:"translate(-142.94 -38.95)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7188","data-name":"Trazado 7188",d:"M358.424,337.287l0,0a73.77,73.77,0,0,0-27.955-21.978A77.668,77.668,0,0,0,315,310.141a74.21,74.21,0,0,0-15.959-1.757c-1.071,0-2.152.028-3.22.075-.122.005-.244.006-.365.011-.73.036-1.46.088-2.189.147a64.831,64.831,0,0,1-14.437,18.4,47.462,47.462,0,0,0-24.218,17.921c-.357-.083-.713-.172-1.071-.252a84.586,84.586,0,0,0-18.192-2c-1.221,0-2.454.031-3.671.085-.138.005-.277.006-.416.012a80.086,80.086,0,0,0-8.933.959c-21.008,3.419-40.879,14.924-53.349,31.275-.478.628-.955,1.276-1.394,1.882l-.006.008a28.062,28.062,0,0,0-2.177,29.05,25.77,25.77,0,0,0,4.155,5.8,25.368,25.368,0,0,0,5.491,4.346,26.29,26.29,0,0,0,6.541,2.718,28.435,28.435,0,0,0,7.306.938h93.79a28.421,28.421,0,0,0,5.814-.589,47.926,47.926,0,0,0,4.917.253A47.353,47.353,0,0,0,340.6,375.992a24.947,24.947,0,0,0,6.424-.835,22.741,22.741,0,0,0,5.751-2.418,21.778,21.778,0,0,0,4.793-3.867,22.122,22.122,0,0,0,3.581-5.16,25.152,25.152,0,0,0-2.726-26.426m-64.729,72.2a37.411,37.411,0,1,1,37.411-37.411A37.411,37.411,0,0,1,293.7,409.484",transform:"translate(-107.694 -204.572)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7189","data-name":"Trazado 7189",d:"M523.713,445.287H511.978v11.735H500.243v11.735h11.735v11.735h11.735V468.757h11.735V457.022H523.713Z",transform:"translate(-331.844 -295.388)",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1040","data-name":"Rect\xe1ngulo 1040",width:"256",height:"256",fill:"none"}))))},zi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"CollapseIcon"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 841",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 842",d:"M0 46h256v28H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 843",d:"M0 116h256v28H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 844",d:"M0 186h256v28H0z"}))))},Ui=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1030","data-name":"Rect\xe1ngulo 1030",width:"256.722",height:"256.722",fill:"none"})),r.createElement("clipPath",{id:"clip-Generic_Delete"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Generic_Delete","data-name":"Generic Delete",clipPath:"url(#clip-Generic_Delete)"},r.createElement("g",{id:"Generic_Delete_Icon","data-name":"Generic Delete Icon"},r.createElement("g",{id:"Grupo_2418","data-name":"Grupo 2418"},r.createElement("path",{id:"Trazado_7169","data-name":"Trazado 7169",d:"M128.362,0a128.361,128.361,0,1,0,128.36,128.361A128.361,128.361,0,0,0,128.362,0m.764,229.776A101.415,101.415,0,1,1,230.541,128.361,101.415,101.415,0,0,1,129.126,229.776",fill:"#c83b51"}),r.createElement("path",{id:"Trazado_7170","data-name":"Trazado 7170",d:"M239.678,162.575l-18.744-19.187a4.572,4.572,0,0,0-6.36,0l-22.136,22.661-22.133-22.661a4.44,4.44,0,0,0-6.356,0L145.2,162.575a4.45,4.45,0,0,0,0,6.211L167.491,191.6,145.2,214.411a4.45,4.45,0,0,0,0,6.211l18.746,19.189a4.571,4.571,0,0,0,6.358,0l22.133-22.661,22.136,22.661a4.442,4.442,0,0,0,6.358,0l18.744-19.189a4.445,4.445,0,0,0,0-6.211L217.392,191.6l22.286-22.814a4.445,4.445,0,0,0,0-6.211",transform:"translate(-64.082 -63.239)",fill:"#c83b51"})))))},Hi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"Offline-Registration_svg__a"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 1604",fill:"none",d:"M0 0h256v199.086H0z"}))),r.createElement("path",{"data-name":"Rect\\xE1ngulo 1602",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"Grupo 2526"},r.createElement("path",{"data-name":"Rect\\xE1ngulo 1603",d:"m19.235 39.602 10.497-10.49L218.26 217.77l-10.497 10.49z"}),r.createElement("g",{"data-name":"Grupo 2525"},r.createElement("g",{"data-name":"Grupo 2524",clipPath:"url(#Offline-Registration_svg__a)",transform:"translate(0 29.146)"},r.createElement("path",{"data-name":"Trazado 7273",d:"m17.968 79.492.007.015a55.559 55.559 0 0 0-17.96 42.3 57.238 57.238 0 0 0 18.783 42.92 65.482 65.482 0 0 0 44.3 16.431h105.817L51.268 63.545a68.63 68.63 0 0 0-33.3 15.947"}),r.createElement("path",{"data-name":"Trazado 7274",d:"m222.825 99.169-.074.015h-.333l-.326-.03a22.226 22.226 0 0 1-9.028-2.8 4.017 4.017 0 0 0-.651-.3 3.823 3.823 0 0 0-.533.244 18.331 18.331 0 0 1-9.665 2.745 18.542 18.542 0 0 1-3.559-.348l-.955-.185-.866-.429a19.149 19.149 0 0 1-9.332-10 5.281 5.281 0 0 0-.3-.525 4.064 4.064 0 0 0-.474-.1 18.625 18.625 0 0 1-12.12-6.21l-.585-.666-.422-.792a19.8 19.8 0 0 1-1.843-13.35 6.256 6.256 0 0 0 .067-.9 4.811 4.811 0 0 0-.437-.511 19.647 19.647 0 0 1-6.209-12.306l-.089-.807.089-.8a19.526 19.526 0 0 1 5.21-11.211c-.644-.688-1.251-1.413-1.924-2.079a71.234 71.234 0 0 0-49.687-19.901 68.071 68.071 0 0 0-38.525 11.6l140.41 140.462c.118-.1.266-.192.392-.289v-.007a45.043 45.043 0 0 0 16.428-36.742c0-14.652-5.876-25.849-14.66-33.774"}),r.createElement("path",{"data-name":"Trazado 7275",d:"M255.963 51.509a15.953 15.953 0 0 0-5.121-10.049 8.872 8.872 0 0 1-1.48-1.991 9.8 9.8 0 0 1 .059-2.753 16.071 16.071 0 0 0-1.487-10.967l-.207-.385-.3-.333a14.943 14.943 0 0 0-9.82-5 8.149 8.149 0 0 1-2.316-.7 8.935 8.935 0 0 1-1.359-2.096 15.448 15.448 0 0 0-7.563-8.192l-.437-.215-.481-.1a14.62 14.62 0 0 0-10.633 1.965 8.262 8.262 0 0 1-2.405.888 8.3 8.3 0 0 1-2.401-.888 14.639 14.639 0 0 0-10.638-1.961l-.474.1-.444.215a15.505 15.505 0 0 0-7.563 8.192 8.821 8.821 0 0 1-1.369 2.109 8.149 8.149 0 0 1-2.316.7 14.96 14.96 0 0 0-9.82 5l-.3.333-.207.392a16.144 16.144 0 0 0-1.48 10.9 9.96 9.96 0 0 1 .059 2.775 9.2 9.2 0 0 1-1.487 2.013 15.9 15.9 0 0 0-5.103 10.048l-.044.4.044.4a15.934 15.934 0 0 0 5.106 10.057 9.031 9.031 0 0 1 1.487 1.983 9.861 9.861 0 0 1-.059 2.76 16.112 16.112 0 0 0 1.48 10.952l.207.392.3.333a14.96 14.96 0 0 0 9.82 5 8.149 8.149 0 0 1 2.316.7 9.082 9.082 0 0 1 1.376 2.109 15.446 15.446 0 0 0 7.563 8.162l.437.215.474.089a14.639 14.639 0 0 0 10.635-1.96 8.262 8.262 0 0 1 2.405-.888 8.533 8.533 0 0 1 2.472.925 18.627 18.627 0 0 0 7.526 2.331l.155.015h.185a9.794 9.794 0 0 0 3.16-.525l.229-.074.215-.111a15.421 15.421 0 0 0 7.57-8.185 9.2 9.2 0 0 1 1.376-2.1 8.03 8.03 0 0 1 2.309-.7 14.943 14.943 0 0 0 9.82-5l.3-.326.2-.392a15.981 15.981 0 0 0 1.487-10.982 10.04 10.04 0 0 1-.059-2.745 8.957 8.957 0 0 1 1.48-1.976 15.953 15.953 0 0 0 5.121-10.049l.044-.407Zm-47.751 15.655-15.387-16.081 5.454-5.683 9.933 10.353 18.342-19.108 5.458 5.706Z"})))))},Gi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 394",d:"M222.617 88.875a26.012 26.012 0 0 0-23.281 14.452l-44.307-6.454a74.856 74.856 0 0 0 2.892-20.607A74.732 74.732 0 0 0 83.285 1.439 74.732 74.732 0 0 0 8.643 76.266a74.763 74.763 0 0 0 65.415 74.236l-1.38 25.452c-.127-.006-.249-.019-.371-.019a18.44 18.44 0 0 0-18.42 18.46 18.441 18.441 0 0 0 18.42 18.466 18.443 18.443 0 0 0 18.42-18.466 18.459 18.459 0 0 0-7.851-15.108l1.535-28.223a74.164 74.164 0 0 0 32.006-7.749l39.5 51.413a36.849 36.849 0 0 0-10.488 25.784 36.884 36.884 0 0 0 36.84 36.927 36.88 36.88 0 0 0 36.834-36.927 36.881 36.881 0 0 0-36.834-36.931 36.539 36.539 0 0 0-18.137 4.811l-38.7-50.376a75.035 75.035 0 0 0 25.967-31.174l45.242 6.59c-.029.519-.078 1.032-.078 1.556a26.082 26.082 0 0 0 26.051 26.112 26.082 26.082 0 0 0 26.05-26.112 26.082 26.082 0 0 0-26.047-26.113Z"}),r.createElement("path",{"data-name":"Trazado 395",d:"M181.396 256a38.679 38.679 0 0 1-38.636-38.643 38.393 38.393 0 0 1 9.576-25.436l-36.435-47.307a74.862 74.862 0 0 1-28.494 6.932l-1.318 24.217a20.571 20.571 0 0 1 7.657 15.975 20.545 20.545 0 0 1-20.52 20.514 20.54 20.54 0 0 1-20.518-20.514 20.549 20.549 0 0 1 18.6-20.432l1.125-20.571A75.865 75.865 0 0 1 8.2 75.818 75.907 75.907 0 0 1 84.02-.005a75.908 75.908 0 0 1 75.822 75.823 75.76 75.76 0 0 1-2.229 18.236l39.257 5.7a27.844 27.844 0 0 1 24.216-13.965 28.051 28.051 0 0 1 28.018 28.022 28.051 28.051 0 0 1-28.018 28.022 28.052 28.052 0 0 1-28.02-27.48l-40.61-5.9a76.059 76.059 0 0 1-23.551 28.463l35.308 45.854a38.644 38.644 0 0 1 17.18-4.049 38.678 38.678 0 0 1 38.633 38.634A38.678 38.678 0 0 1 181.396 256Zm-64.078-117.413 41.329 53.665-1.453 1.492a33.619 33.619 0 0 0-9.635 23.618 33.876 33.876 0 0 0 33.837 33.84 33.875 33.875 0 0 0 33.835-33.84 33.874 33.874 0 0 0-33.835-33.837 33.822 33.822 0 0 0-16.657 4.409l-1.814 1.027-40.89-53.094 2.092-1.434a71.22 71.22 0 0 0 24.718-29.586l.739-1.65 48.482 7.038-.133 2.2c-.049.739-.073 1.055-.073 1.381a23.253 23.253 0 0 0 23.227 23.225 23.249 23.249 0 0 0 23.222-23.225 23.246 23.246 0 0 0-23.222-23.224 23.1 23.1 0 0 0-20.759 12.852l-.776 1.549-48.012-6.975.759-2.639a71.253 71.253 0 0 0 2.749-19.559A71.1 71.1 0 0 0 84.022 4.794 71.1 71.1 0 0 0 12.999 75.82a71.061 71.061 0 0 0 62.243 70.465l2.225.273-1.608 29.524-2.318-.043h-.037a15.779 15.779 0 0 0-16 15.7 15.739 15.739 0 0 0 15.721 15.717 15.741 15.741 0 0 0 15.722-15.717 15.763 15.763 0 0 0-6.7-12.866l-1.09-.763 1.7-31.26 2.235-.033a70.305 70.305 0 0 0 30.455-7.355Z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 868",fill:"none",d:"M0 0h256v256H0z"})))},Vi=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 13 12.996"}),r.createElement("g",{transform:"translate(-63.686 -70.783)"},r.createElement("path",{className:"a",d:"M74.736,79.879v1.95h-9.1v-1.95h-1.95v3.9h13v-3.9Z"}),r.createElement("path",{className:"a",d:"M69.211,80.533h1.95V73.861h1.525l-2.5-3.078-2.5,3.078h1.525Z"})))},qi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 858",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 20",d:"M102.405 230.399v-76.79h-76.8a25.607 25.607 0 0 1 0-51.214h76.8V25.601a25.6 25.6 0 1 1 51.2 0v76.792h76.8a25.607 25.607 0 0 1 0 51.214h-76.8v76.792a25.6 25.6 0 1 1-51.2 0Z"})))},Wi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1005","data-name":"Rect\xe1ngulo 1005",width:"228.951",height:"256",fill:"none"})),r.createElement("clipPath",{id:"clip-Expand_Tenant:_Add_Pools"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Expand_Tenant:_Add_Pools","data-name":"Expand Tenant: Add Pools",clipPath:"url(#clip-Expand_Tenant:_Add_Pools)"},r.createElement("g",{id:"Expand_Tenants_Add_Pools","data-name":"Expand Tenants Add Pools"},r.createElement("g",{id:"Grupo_2392","data-name":"Grupo 2392",transform:"translate(14)"},r.createElement("g",{id:"Grupo_2391","data-name":"Grupo 2391"},r.createElement("path",{id:"Trazado_7129","data-name":"Trazado 7129",d:"M210.46,96.042a56.244,56.244,0,1,0-90.223-64.6A71.157,71.157,0,0,0,0,83.178v0A71.315,71.315,0,0,0,62.4,154l-1.316,24.278c-.121-.006-.238-.018-.354-.018a17.611,17.611,0,0,0,0,35.223h0a17.613,17.613,0,0,0,10.082-32.025l1.464-26.922a70.737,70.737,0,0,0,30.53-7.391l37.678,49.042a35.174,35.174,0,1,0,60.272,24.6h0a35.181,35.181,0,0,0-35.132-35.228h0a34.864,34.864,0,0,0-17.3,4.589L111.4,142.085a71.574,71.574,0,0,0,24.769-29.736l43.156,6.286c-.028.495-.075.985-.075,1.484A24.849,24.849,0,1,0,210.46,96.042m-39.406,4.639A44.437,44.437,0,1,1,215.49,56.244a44.437,44.437,0,0,1-44.437,44.437",transform:"translate(0)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7130","data-name":"Trazado 7130",d:"M224.419,96.438l-6.231-6.231V108.9H236.88l-6.23-6.231L243.11,90.207l-6.231-6.23Z",transform:"translate(-72.057 -27.733)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7131","data-name":"Trazado 7131",d:"M267.86,53,255.4,65.457l6.23,6.231L274.09,59.227l6.231,6.23V46.766H261.629Z",transform:"translate(-84.346 -15.444)",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1006","data-name":"Rect\xe1ngulo 1006",width:"256",height:"256",fill:"none"}))))},Zi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 849",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"sync-icn",d:"M37.848 131.79c0-.057.006-.114.006-.166l-5.4 6.524-9.992 11.438c-11.006 12.6-30.166-4.136-19.16-16.739l33.545-38.416a12.732 12.732 0 0 1 18.1-1.222l38.41 33.549c12.6 11.006-4.133 30.171-16.74 19.165l-14.342-12.527-2.316-2.123c0 .175.023.346.023.517a73.159 73.159 0 0 0 73.078 73.078 73.28 73.28 0 0 0 59.584-30.763 11.067 11.067 0 0 1 15.432-2.6 11.062 11.062 0 0 1 2.6 15.432 95.45 95.45 0 0 1-77.611 40.059 95.316 95.316 0 0 1-95.217-95.206Zm163.207 21.989-38.4-33.549c-12.6-11.011 4.131-30.176 16.738-19.17l14.338 12.532 2.32 2.118c0-.171-.023-.336-.023-.512A73.159 73.159 0 0 0 122.95 42.12a73.289 73.289 0 0 0-59.588 30.759 11.068 11.068 0 0 1-15.432 2.6 11.071 11.071 0 0 1-2.6-15.431 95.439 95.439 0 0 1 77.615-40.06 95.317 95.317 0 0 1 95.209 95.209c0 .057-.01.109-.01.166l5.4-6.529 9.992-11.433c11.006-12.6 30.17 4.136 19.16 16.739l-33.545 38.415a12.894 12.894 0 0 1-9.689 4.43 12.7 12.7 0 0 1-8.407-3.205Z",stroke:"rgba(0,0,0,0)",strokeMiterlimit:10})))},$i=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 870",fill:"none",d:"M255.999.001v256h-256v-256z"}),r.createElement("path",{"data-name":"Trazado 454",d:"M-.001 16.413A16.487 16.487 0 0 1 16.536-.001h135.381c21.752 0 21.752 32.824 0 32.824H33.088v190.355h118.829c21.752 0 21.752 32.822 0 32.822H16.536A16.477 16.477 0 0 1-.001 239.6Zm61.308 95.176h138.227l-18.743-18.588c-15.385-15.262 8-38.471 23.393-23.205l46.878 46.5a16.345 16.345 0 0 1 0 23.408l-46.878 46.51c-15.39 15.266-38.777-7.949-23.393-23.211l18.744-18.592H61.308c-10.872 0-16.307-8.205-16.307-16.41s5.435-16.412 16.307-16.412Z"}),r.createElement("path",{"data-name":"Trazado 454 - Contorno",d:"M-.501 239.601V16.417A17 17 0 0 1 16.536-.497h135.381a16.259 16.259 0 0 1 12.61 5.3 16.393 16.393 0 0 1 3.156 5.422 18.547 18.547 0 0 1 1.048 6.193 18.547 18.547 0 0 1-1.048 6.193 16.393 16.393 0 0 1-3.156 5.422 16.259 16.259 0 0 1-12.61 5.3H33.588v189.355h118.329a16.259 16.259 0 0 1 12.61 5.3 16.374 16.374 0 0 1 3.156 5.422 18.528 18.528 0 0 1 1.048 6.191 18.531 18.531 0 0 1-1.048 6.193 16.374 16.374 0 0 1-3.156 5.422 16.259 16.259 0 0 1-12.61 5.3H16.536a17.034 17.034 0 0 1-6.625-1.328 16.992 16.992 0 0 1-5.416-3.621 16.846 16.846 0 0 1-3.655-5.373 16.663 16.663 0 0 1-1.341-6.593ZM167.731 16.415a17.535 17.535 0 0 0-.991-5.859 15.388 15.388 0 0 0-2.962-5.094A15.286 15.286 0 0 0 151.917.503H16.536A15.994 15.994 0 0 0 .499 16.417v223.184a15.989 15.989 0 0 0 16.037 15.9h135.381a15.286 15.286 0 0 0 11.861-4.959 15.368 15.368 0 0 0 2.962-5.094 17.518 17.518 0 0 0 .991-5.859 17.515 17.515 0 0 0-.991-5.857 15.368 15.368 0 0 0-2.962-5.094 15.286 15.286 0 0 0-11.861-4.959H32.588V32.324h119.329a15.286 15.286 0 0 0 11.861-4.959 15.388 15.388 0 0 0 2.962-5.094 17.526 17.526 0 0 0 .992-5.86ZM44.499 128.001a18.547 18.547 0 0 1 1.048-6.193 16.37 16.37 0 0 1 3.154-5.422 16.248 16.248 0 0 1 12.6-5.3h137.013L180.432 93.35a16.238 16.238 0 0 1-5.179-11.6 16.682 16.682 0 0 1 3.251-9.711 19.071 19.071 0 0 1 8.051-6.451 15.968 15.968 0 0 1 8.961-1.051 17 17 0 0 1 9.013 4.9l46.878 46.5a16.869 16.869 0 0 1 5.084 12.006 16.81 16.81 0 0 1-1.3 6.482 17.213 17.213 0 0 1-3.786 5.631l-46.879 46.51a16.976 16.976 0 0 1-9.01 4.9 15.975 15.975 0 0 1-8.958-1.049 19.084 19.084 0 0 1-8.054-6.453 16.694 16.694 0 0 1-3.254-9.715 16.237 16.237 0 0 1 5.179-11.6l17.882-17.736H61.298a16.249 16.249 0 0 1-12.6-5.3 16.351 16.351 0 0 1-3.154-5.422 18.527 18.527 0 0 1-1.045-6.19Zm156.248-15.912H61.306a15.275 15.275 0 0 0-11.855 4.959 15.365 15.365 0 0 0-2.961 5.094 17.538 17.538 0 0 0-.991 5.859 17.547 17.547 0 0 0 .991 5.859 15.375 15.375 0 0 0 2.961 5.092 15.276 15.276 0 0 0 11.855 4.959h139.443l-.862.855-18.744 18.592a15.257 15.257 0 0 0-4.883 10.891 15.7 15.7 0 0 0 3.067 9.133 18.064 18.064 0 0 0 7.625 6.111 14.955 14.955 0 0 0 8.4.988 16 16 0 0 0 8.482-4.625l46.878-46.51a16.222 16.222 0 0 0 3.567-5.3 15.825 15.825 0 0 0 1.222-6.1 15.868 15.868 0 0 0-4.789-11.295l-46.878-46.5a16.011 16.011 0 0 0-8.485-4.627 15 15 0 0 0-8.4.988 18.055 18.055 0 0 0-7.623 6.111 15.688 15.688 0 0 0-3.064 9.129 15.259 15.259 0 0 0 4.883 10.893Z",fill:"rgba(0,0,0,0)"})))},Yi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 22 17.043"},e),r.createElement("g",{id:"azure-logo-gray",transform:"translate(-437.603 -471.382)"},r.createElement("g",{id:"layer1-1",transform:"translate(437.603 471.382)"},r.createElement("path",{id:"path21",d:"M447.781,487.513l5.188-.917.049-.011-2.668-3.173c-1.467-1.746-2.668-3.181-2.668-3.188s2.756-7.6,2.771-7.63c.006-.009,1.881,3.229,4.545,7.847l4.572,7.923.035.062-8.479,0-8.48,0S447.781,487.513,447.781,487.513Zm-10.178-.969s1.257-2.187,2.794-4.85l2.794-4.842,3.257-2.733c1.792-1.5,3.261-2.735,3.266-2.737a.672.672,0,0,1-.052.132c-.035.074-1.627,3.487-3.535,7.583l-3.472,7.448-2.525,0C438.739,486.551,437.6,486.55,437.6,486.544Z",transform:"translate(-437.603 -471.382)"}))))},Ki=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Total Objects",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"total-objects-icn",d:"M-.004 128.002a128.148 128.148 0 0 1 128-128 128.148 128.148 0 0 1 128 128 128.144 128.144 0 0 1-128 128 128.144 128.144 0 0 1-128-128Zm19.844 0a108.275 108.275 0 0 0 108.156 108.155 108.28 108.28 0 0 0 108.16-108.155 108.283 108.283 0 0 0-108.16-108.157A108.278 108.278 0 0 0 19.842 128.002Zm27.555 31.581a37.6 37.6 0 0 1 37.564-37.565 37.608 37.608 0 0 1 37.561 37.565 37.609 37.609 0 0 1-37.561 37.565 37.606 37.606 0 0 1-37.563-37.566Zm108.127 34.939a17.425 17.425 0 0 1-17.408-17.4v-37.7a17.429 17.429 0 0 1 17.408-17.407h37.689a17.429 17.429 0 0 1 17.408 17.407v37.7a17.425 17.425 0 0 1-17.408 17.4Zm-54.881-81.311a13.3 13.3 0 0 1-11.477-6.625 13.3 13.3 0 0 1 0-13.249l26.861-46.521a13.287 13.287 0 0 1 11.477-6.629 13.281 13.281 0 0 1 11.475 6.629l26.861 46.521a13.285 13.285 0 0 1 0 13.249 13.294 13.294 0 0 1-11.479 6.625Z",stroke:"rgba(0,0,0,0)",strokeMiterlimit:10}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 853",fill:"none",d:"M0 0h256v256H0z"})))},Xi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("path",{fill:"currentcolor",d:"M145.4,20C86.3,20.1,38.3,67.6,37.5,126.6L24.8,114c-5.2-5-13.4-4.9-18.5,0.2\n\t\tc-4.9,5.1-4.9,13.2,0,18.2l37,37c5.1,5.1,13.3,5.2,18.5,0.1c0,0,0.1-0.1,0.1-0.1l37-37c4.9-5.3,4.6-13.5-0.7-18.5\n\t\tc-5-4.7-12.8-4.7-17.8,0l-13.8,13.8c0.2-43.4,35.4-78.5,78.8-78.5c43.5,0,78.8,35.3,78.8,78.8c0,43.5-35.3,78.8-78.8,78.8\n\t\tc-8.1,0-14.6,6.5-14.6,14.6s6.5,14.6,14.6,14.6c59.6-0.1,107.8-48.4,107.9-107.9C253.4,68.5,205.1,20.1,145.4,20z"}),r.createElement("path",{fill:"currentcolor",d:"M150.7,81.1c0.2-1.5-0.3-3-1.2-4.2c-1.3-0.9-2.9-1.3-4.4-1.1h-7.4c-1.2-0.1-2.3,0.2-3.3,0.8\n\t\tc-0.9,1.1-1.4,2.5-1.2,4c0,18.9,0,37.8,0,56.6v0.9l40.4,40.4c0.6,0.7,1.4,1.3,2.3,1.5c1.2,0.1,2.5-0.4,3.4-1.2c2.7-2,5-4.4,7-7.1\n\t\tc0.9-0.9,1.3-2.1,1.2-3.4c-0.3-0.9-0.8-1.8-1.6-2.4l-29.6-29.4c-1.9-1.7-3.5-3.7-4.7-6c-1-2.8-1.3-5.7-1-8.6\n\t\tC150.9,108.3,150.9,94.7,150.7,81.1z"})))},Ji=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1016","data-name":"Rect\xe1ngulo 1016",width:"234.495",height:"256",fill:"#4ccb92"})),r.createElement("clipPath",{id:"clip-Create_User"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Create_User","data-name":"Create User",clipPath:"url(#clip-Create_User)"},r.createElement("g",{id:"Create_User-2","data-name":"Create User"},r.createElement("g",{id:"Grupo_2404","data-name":"Grupo 2404",transform:"translate(12)"},r.createElement("g",{id:"Grupo_2403","data-name":"Grupo 2403"},r.createElement("path",{id:"Trazado_7140","data-name":"Trazado 7140",d:"M88.829,144.6h.048a66.829,66.829,0,0,0,27.035-5.707,69.009,69.009,0,0,0,22.1-15.529,72.055,72.055,0,0,0,14.891-22.977,73.863,73.863,0,0,0,5.463-28.1C158.372,32.435,127.183,0,88.831,0h0C50.5,0,19.316,32.43,19.316,72.292S50.5,144.6,88.829,144.6",transform:"translate(1.421)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7141","data-name":"Trazado 7141",d:"M170.085,117.467a64.39,64.39,0,0,0-57.412,35.223c-1.427-.4-2.86-.784-4.3-1.124A94.705,94.705,0,0,0,86.9,149.044v.005c-1.755,0-3.439.046-5,.135A99.747,99.747,0,0,0,8.1,189.42c-.388.519-.767,1.061-1.234,1.756l-.107.15c-.1.142-.214.3-.312.458l-.027.028a37.88,37.88,0,0,0-2.671,37.522A31.97,31.97,0,0,0,32.509,247.36H142.044a31.485,31.485,0,0,0,13.08-2.84,64.408,64.408,0,1,0,14.961-127.054m.383,115.3a50.889,50.889,0,1,1,50.888-50.888,50.888,50.888,0,0,1-50.888,50.888m-7.982-26.944V189.859H146.524V173.895h15.963V157.931H178.45v15.964h15.963v15.964H178.45v15.963Z",transform:"translate(0 8.64)",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1017","data-name":"Rect\xe1ngulo 1017",width:"256",height:"256",fill:"none"}))))},Qi=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("path",{d:"M244.1,8.4c-3.9-5.3-10.1-8.5-16.7-8.5H21.6C15,0,8.8,3.1,4.9,8.4C0.8,14-0.9,21,0.3,27.9\n\t\t\t\t\t\tc5.1,29.6,15.8,91.9,24.3,141.7v0.1C29,195,32.8,217.1,35,229.9c1.4,10.8,10.4,18.9,21.3,19.3h136.5\n\t\t\t\t\t\tc10.9-0.4,19.9-8.5,21.3-19.3l10.3-60.1l0.1-0.4L238.4,88v-0.2l10.3-59.9C249.9,21,248.3,14,244.1,8.4 M206.1,177h-163\n\t\t\t\t\t\tl-3.2-18.6h169.3L206.1,177z M220,95.3H28.9l-3.2-18.6h197.4L220,95.3z"})))},es=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M125.65,251.3h0c69.4,0,125.65-56.26,125.65-125.65h0C251.3,56.26,195.05,0,125.65,0h0C56.26,0,0,56.26,0,125.65s56.26,125.65,125.65,125.65M84.14,87.53l31.76-31.76c5.32-5.39,14-5.45,19.39-.13,.04,.04,.09,.09,.13,.13h0l31.74,31.76c3.97,3.69,5.22,9.46,3.14,14.47-2.19,5.32-7.3,8.87-13.05,9.06-3.57-.06-6.97-1.55-9.42-4.15l-8.4-8.4v87.53c0,7.57-6.15,13.71-13.72,13.7-7.57,0-13.7-6.14-13.7-13.7V98.53l-8.4,8.39c-2.45,2.6-5.85,4.1-9.42,4.16-5.76-.18-10.87-3.73-13.05-9.06-2.09-5-.83-10.78,3.14-14.47"}))},ts=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1021","data-name":"Rect\xe1ngulo 1021",width:"256",height:"191.369",fill:"#4ccb92"})),r.createElement("clipPath",{id:"clip-Set_Bucket_Replication"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Set_Bucket_Replication","data-name":"Set Bucket Replication",clipPath:"url(#clip-Set_Bucket_Replication)"},r.createElement("g",{id:"Set_Bucket_Replication_icon","data-name":"Set Bucket Replication icon"},r.createElement("g",{id:"Grupo_2409","data-name":"Grupo 2409",transform:"translate(0 32)"},r.createElement("g",{id:"Grupo_2408","data-name":"Grupo 2408"},r.createElement("path",{id:"Trazado_7146","data-name":"Trazado 7146",d:"M21.3,87.4l-1.578-9.192H46.838c-.123-.722-.249-1.449-.371-2.162-1.931-11.245-3.66-21.315-4.976-28.97l-27.171.006-1.577-9.19H40.71a20.546,20.546,0,0,1,3.951-10.1,17.7,17.7,0,0,1,14.016-7.169h62.949l1.169-6.805a12.394,12.394,0,0,0-2.281-9.6A10.335,10.335,0,0,0,112.289,0H10.7A10.33,10.33,0,0,0,2.474,4.215a12.426,12.426,0,0,0-2.284,9.6C2.7,28.413,7.977,59.178,12.2,83.733l.007.048c2.141,12.491,4,23.369,5.1,29.683.943,5.519,5.354,9.523,10.5,9.523H54.529C52.5,111.17,50.4,98.923,48.415,87.392Z",transform:"translate(0)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7147","data-name":"Trazado 7147",d:"M264.2,97.863l2.41-14.045.037-.18,6.887-40.172.024-.117,5.074-29.533a12.4,12.4,0,0,0-2.281-9.6A10.336,10.336,0,0,0,268.128,0H166.535a10.331,10.331,0,0,0-8.223,4.215,12.425,12.425,0,0,0-2.283,9.6c.341,1.985.735,4.278,1.169,6.805H220.27A17.746,17.746,0,0,1,234.334,27.8a20.491,20.491,0,0,1,3.944,10.091h27.69l-1.514,9.169-26.959.006-5.351,31.141H259.1l-1.514,9.17-7.244,0A54.53,54.53,0,0,0,228,81.1l6.547-38.106a16.846,16.846,0,0,0-3.1-13.05,14.048,14.048,0,0,0-11.179-5.728H82.193a14.042,14.042,0,0,0-11.176,5.728,16.889,16.889,0,0,0-3.1,13.05C71.324,62.83,78.5,104.644,84.236,138.017l.01.065c2.91,16.977,5.443,31.762,6.932,40.344,1.282,7.5,7.277,12.942,14.267,12.942h91.579a13.777,13.777,0,0,0,9.436-3.82A54.824,54.824,0,0,0,264.2,97.863M87.119,88.2l-2.144-12.49H217.335l-.974,5.9a54.43,54.43,0,0,0-18.853,6.571ZM96.611,143l-2.144-12.492h75.608c-.168,1.748-.261,3.518-.261,5.31a55.27,55.27,0,0,0,.481,7.163Zm128.363,36.14A43.322,43.322,0,1,1,268.3,135.817a43.322,43.322,0,0,1-43.322,43.322",transform:"translate(-23.479)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7148","data-name":"Trazado 7148",d:"M313.356,176.316c-.055.053-.11.107-.163.162h-.014l-25.036,24.646-8.883-8.767a6.569,6.569,0,1,0-9.224,9.354l18.121,17.855,34.329-33.735a6.594,6.594,0,1,0-9.13-9.516",transform:"translate(-93.036 -60.553)",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1022","data-name":"Rect\xe1ngulo 1022",width:"256",height:"256",fill:"none"}))))},ns=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256"}),r.createElement("g",null,r.createElement("g",{x:"2.7",y:"36.8"},r.createElement("path",{d:"M77.2,168.6c4,4.1,10.6,4.3,14.7,0.3c0,0,0,0,0.1-0.1l0.2-0.2l29.7-29.9\n\t\t\tc3.9-4.3,3.6-10.9-0.7-14.9c-4-3.7-10.1-3.7-14.1-0.1l-12,12V47.3h0.1c0-5.8-4.7-10.5-10.5-10.5s-10.5,4.7-10.5,10.5v88.3\n\t\t\tl-11.9-12c-4.3-4-10.9-3.7-14.9,0.5c-3.8,4.1-3.8,10.4,0.1,14.4L77.2,168.6z"}),r.createElement("path",{d:"M148.3,84.9l11.9-12v88.3h-0.1c0,5.8,4.7,10.5,10.5,10.5s10.5-4.7,10.5-10.5V72.9l11.9,12\n\t\t\tc4.3,4,10.9,3.7,14.9-0.5c3.8-4.1,3.8-10.4-0.1-14.4l-29.7-30c-4-4.1-10.6-4.2-14.7-0.2l-0.2,0.2l-29.7,29.9\n\t\t\tc-4,4.2-3.8,10.9,0.4,14.9C138.1,88.6,144.3,88.7,148.3,84.9"}),r.createElement("path",{d:"M242.1,154.9c-6.2,0-11.2,5-11.2,11.1l0,0v27.4c0,1.9-1.6,3.5-3.5,3.5H28.5\n\t\t\tc-1.9,0-3.5-1.6-3.5-3.5v-27.3c0.2-6.2-4.7-11.3-10.8-11.5s-11.3,4.7-11.5,10.8c0,0.2,0,0.4,0,0.7v27.4\n\t\t\tc0,14.2,11.6,25.7,25.8,25.8h198.8c14.2,0,25.8-11.6,25.8-25.8v-27.4C253.1,159.9,248.1,154.9,242.1,154.9L242.1,154.9"}))))},rs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{"data-name":"Object Browser",clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Uni\\xF3n 19",d:"M36.252 256a17.257 17.257 0 0 1-17.25-17.235V18.076A17.261 17.261 0 0 1 36.252.836h42.193c2.83 0 5.654 0 8.461-.015 23.494-.092 47-.514 70.48-.412 4.9.02 9.809-.1 14.711-.208 6.822-.155 13.645-.311 20.467-.107 6.662.194 13.539.315 20.1 1.793a44.27 44.27 0 0 1 5.01 1.444c11.648 4.182 16.736 14.163 17.836 25.918 1.453 15.7.877 32.2.5 47.945-.412 17.158.014 34.432.014 51.618v109.952a17.244 17.244 0 0 1-17.234 17.235Zm.7-222.336v189.523a14.876 14.876 0 0 0 14.875 14.89H200.2a14.9 14.9 0 0 0 14.885-14.89V81.992h-25.957a37.8 37.8 0 0 1-37.754-37.761V18.769H51.823a14.877 14.877 0 0 0-14.874 14.895Zm130.881 10.567a21.33 21.33 0 0 0 21.3 21.3h25.957V33.663a14.9 14.9 0 0 0-14.885-14.9h-32.371ZM65.4 218.152a6.644 6.644 0 0 1-5.756-9.967l24.891-43.139a6.658 6.658 0 0 1 11.527 0l24.906 43.139a6.652 6.652 0 0 1-5.758 9.967Zm65.869-50.693a31.523 31.523 0 0 1 24.992-36.917 31.529 31.529 0 0 1 36.918 24.993 31.53 31.53 0 0 1-24.992 36.917 31.742 31.742 0 0 1-5.994.574 31.536 31.536 0 0 1-30.927-25.567Zm-70.568-40.454a1.894 1.894 0 0 1-1.895-1.895V71.815a1.894 1.894 0 0 1 1.895-1.895h63.533a1.894 1.894 0 0 1 1.895 1.895v53.295a1.894 1.894 0 0 1-1.895 1.895Z",stroke:"rgba(0,0,0,0)",strokeMiterlimit:10}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 882",fill:"none",d:"M0 0h256v256H0z"})))},os=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 255.999"},e),r.createElement("path",{id:"recover-icn",d:"M17866.783-5487a16.655,16.655,0,0,1-4.354-.6l-57.238-15.5a14.778,14.778,0,0,1-10.492-18.271l15.535-57.135c5.1-18.748,33.652-11.014,28.557,7.734l-5.8,21.333-1.033,3.5c.176-.094.342-.2.525-.288a84.861,84.861,0,0,0,39.223-113.4,85.2,85.2,0,0,0-62.492-46.565,12.846,12.846,0,0,1-10.568-14.789,12.864,12.864,0,0,1,14.811-10.552,110.978,110.978,0,0,1,81.389,60.667,109.742,109.742,0,0,1,11.158,47.846v.683a110.648,110.648,0,0,1-62.258,99.21c-.059.032-.121.049-.18.077l9.572,2.328,17.045,4.615c17.252,4.673,12.115,29.111-3.393,29.111Zm-122.105-11.284a13.242,13.242,0,0,1-2.135-.175,110.98,110.98,0,0,1-81.387-60.667,109.694,109.694,0,0,1-11.154-48.088v-.229a110.629,110.629,0,0,1,62.252-99.421c.064-.032.123-.05.186-.081l-9.576-2.323-17.041-4.615c-17.234-4.669-12.129-29.053,3.334-29.115h.131a16.69,16.69,0,0,1,4.283.606l57.242,15.5a14.775,14.775,0,0,1,10.488,18.272l-15.531,57.134c-5.1,18.749-33.658,11.015-28.562-7.734l5.8-21.336,1.039-3.5c-.176.094-.346.2-.531.288a84.855,84.855,0,0,0-39.217,113.4,85.188,85.188,0,0,0,62.486,46.569,12.845,12.845,0,0,1,10.57,14.785,12.866,12.866,0,0,1-12.674,10.731ZM17757-5615a21,21,0,0,1,21-21,21,21,0,0,1,21,21,21,21,0,0,1-21,21A21,21,0,0,1,17757-5615Z",transform:"translate(-17650.002 5743.001)"}))},as=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"settings-icn"},r.createElement("path",{"data-name":"Trazado 341",d:"m247.385 99.227-26.7-3.841a92.362 92.362 0 0 0-4.166-9.853l16.176-21.584a9.834 9.834 0 0 0-.9-12.9l-26.889-27.1a9.825 9.825 0 0 0-12.893-.887l-21.6 16.254a89.085 89.085 0 0 0-9.857-4.134l-3.83-26.7a9.856 9.856 0 0 0-9.852-8.476H108.73a9.843 9.843 0 0 0-9.844 8.476l-3.836 26.7a89.115 89.115 0 0 0-9.859 4.134L63.53 23.06a9.881 9.881 0 0 0-12.936.887l-26.881 26.9a9.832 9.832 0 0 0-.9 12.9l16.27 21.584a87.181 87.181 0 0 0-4.166 9.851l-26.68 3.843a9.85 9.85 0 0 0-8.482 9.854v38.036a9.851 9.851 0 0 0 8.482 9.854l26.68 3.84a85.76 85.76 0 0 0 4.166 9.855l-16.27 21.777a9.848 9.848 0 0 0 .9 12.914l26.881 26.9a9.891 9.891 0 0 0 12.936.879l21.561-16.256a85.986 85.986 0 0 0 9.859 4.136l3.844 26.705a9.843 9.843 0 0 0 9.857 8.475h38.031a9.867 9.867 0 0 0 9.859-8.475l3.842-26.705a90.284 90.284 0 0 0 9.859-4.136l21.568 16.157a9.852 9.852 0 0 0 12.906-.878l26.9-26.9a9.856 9.856 0 0 0 .889-12.915l-16.061-21.485a89.562 89.562 0 0 0 4.131-9.853l26.709-3.842a9.867 9.867 0 0 0 8.475-9.853v-38.133a9.868 9.868 0 0 0-8.374-9.749Zm-11.236 39.413-24.443 3.549a9.888 9.888 0 0 0-8.088 7.1 82.022 82.022 0 0 1-6.875 17.436 9.813 9.813 0 0 0 0 10.549l14.764 19.707-14.764 15.072-19.719-15.072a9.863 9.863 0 0 0-10.461 0 75.566 75.566 0 0 1-17.711 7.291 9.814 9.814 0 0 0-7.105 8.085l-3.549 24.034h-20.895l-3.549-24.436a9.8 9.8 0 0 0-7.092-8.073 76.134 76.134 0 0 1-17.738-7.294 9.831 9.831 0 0 0-10.439.393l-19.711 14.777-15.072-14.777 15.072-19.707a9.844 9.844 0 0 0 0-10.549 82.861 82.861 0 0 1-7.3-17.634 9.841 9.841 0 0 0-8.074-7.095l-24.035-3.55v-20.889l24.443-3.55a9.85 9.85 0 0 0 8.074-7.1 82.89 82.89 0 0 1 6.891-17.635 9.84 9.84 0 0 0 0-10.546l-15.072-19.71 15.072-15.071 19.711 15.071a9.816 9.816 0 0 0 10.439 0 76.209 76.209 0 0 1 17.738-7.291 9.806 9.806 0 0 0 7.092-8.074l3.549-24.044h20.895l3.549 24.435a9.839 9.839 0 0 0 7.105 8.084 75.193 75.193 0 0 1 17.711 7.291 9.866 9.866 0 0 0 10.461-.4l19.719-14.778 15.057 14.778-15.057 19.71a9.822 9.822 0 0 0-.7 10.839 82.237 82.237 0 0 1 7.3 17.644 9.84 9.84 0 0 0 8.074 7.088l24.443 3.547Z"}),r.createElement("path",{"data-name":"Trazado 342",d:"M127.742 78.73a49.269 49.269 0 0 0-49.258 49.275 49.266 49.266 0 0 0 49.258 49.267 49.271 49.271 0 0 0 49.281-49.267 49.274 49.274 0 0 0-49.281-49.275Zm0 78.836a29.553 29.553 0 0 1-29.547-29.561 29.56 29.56 0 0 1 29.547-29.57 29.555 29.555 0 0 1 29.564 29.57 29.548 29.548 0 0 1-29.564 29.561Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 888",fill:"none",d:"M0 0h256v256H0z"})))},is=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 870",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 454",d:"M16.412 256A16.487 16.487 0 0 1-.002 239.463V104.082c0-21.752 32.824-21.752 32.824 0v118.829h190.355V104.082c0-21.752 32.822-21.752 32.822 0v135.381a16.477 16.477 0 0 1-16.4 16.537Zm95.176-61.308V56.465L93 75.208c-15.262 15.385-38.471-8-23.205-23.393l46.5-46.878a16.345 16.345 0 0 1 23.408 0l46.51 46.878c15.266 15.39-7.949 38.777-23.211 23.393L144.41 56.464v138.227c0 10.872-8.205 16.307-16.41 16.307s-16.412-5.435-16.412-16.307Z"}),r.createElement("path",{"data-name":"Trazado 454 - Contorno",d:"M239.6 256.5H16.416A17 17 0 0 1-.498 239.463V104.082a16.259 16.259 0 0 1 5.3-12.61 16.393 16.393 0 0 1 5.422-3.156 18.547 18.547 0 0 1 6.193-1.048 18.547 18.547 0 0 1 6.193 1.048 16.393 16.393 0 0 1 5.422 3.156 16.259 16.259 0 0 1 5.3 12.61v118.329h189.355V104.082a16.259 16.259 0 0 1 5.3-12.61 16.374 16.374 0 0 1 5.422-3.156 18.528 18.528 0 0 1 6.191-1.048 18.531 18.531 0 0 1 6.193 1.048 16.374 16.374 0 0 1 5.422 3.156 16.259 16.259 0 0 1 5.3 12.61v135.381a17.034 17.034 0 0 1-1.328 6.625 16.992 16.992 0 0 1-3.621 5.416 16.846 16.846 0 0 1-5.373 3.655 16.663 16.663 0 0 1-6.593 1.341ZM16.414 88.268a17.535 17.535 0 0 0-5.859.991 15.388 15.388 0 0 0-5.094 2.962 15.286 15.286 0 0 0-4.959 11.861v135.381A15.994 15.994 0 0 0 16.416 255.5H239.6a15.989 15.989 0 0 0 15.9-16.037V104.082a15.286 15.286 0 0 0-4.959-11.861 15.368 15.368 0 0 0-5.094-2.962 17.518 17.518 0 0 0-5.859-.991 17.515 17.515 0 0 0-5.857.991 15.368 15.368 0 0 0-5.094 2.962 15.286 15.286 0 0 0-4.959 11.861v119.329H32.323V104.082a15.286 15.286 0 0 0-4.959-11.861 15.388 15.388 0 0 0-5.094-2.962 17.526 17.526 0 0 0-5.86-.992ZM128 211.5a18.547 18.547 0 0 1-6.193-1.048 16.37 16.37 0 0 1-5.422-3.154 16.248 16.248 0 0 1-5.3-12.6V57.685L93.349 75.567a16.238 16.238 0 0 1-11.6 5.179 16.682 16.682 0 0 1-9.711-3.251 19.071 19.071 0 0 1-6.451-8.051 15.968 15.968 0 0 1-1.051-8.961 17 17 0 0 1 4.9-9.013l46.5-46.878a16.869 16.869 0 0 1 12.006-5.084 16.81 16.81 0 0 1 6.482 1.3 17.213 17.213 0 0 1 5.631 3.786l46.51 46.879a16.976 16.976 0 0 1 4.9 9.01 15.975 15.975 0 0 1-1.049 8.958 19.084 19.084 0 0 1-6.453 8.054 16.694 16.694 0 0 1-9.715 3.254 16.237 16.237 0 0 1-11.6-5.179l-17.736-17.882v137.013a16.249 16.249 0 0 1-5.3 12.6 16.351 16.351 0 0 1-5.422 3.154A18.527 18.527 0 0 1 128 211.5ZM112.088 55.252v139.441a15.275 15.275 0 0 0 4.959 11.855 15.365 15.365 0 0 0 5.094 2.961 17.538 17.538 0 0 0 5.859.991 17.547 17.547 0 0 0 5.859-.991 15.375 15.375 0 0 0 5.092-2.961 15.276 15.276 0 0 0 4.959-11.855V55.25l.855.862 18.592 18.744a15.257 15.257 0 0 0 10.891 4.883 15.7 15.7 0 0 0 9.133-3.067 18.064 18.064 0 0 0 6.111-7.625 14.955 14.955 0 0 0 .988-8.4 16 16 0 0 0-4.625-8.482l-46.51-46.878a16.222 16.222 0 0 0-5.3-3.567 15.825 15.825 0 0 0-6.1-1.222 15.868 15.868 0 0 0-11.295 4.789l-46.5 46.878a16.011 16.011 0 0 0-4.627 8.485 15 15 0 0 0 .988 8.4 18.055 18.055 0 0 0 6.111 7.623 15.688 15.688 0 0 0 9.129 3.064 15.259 15.259 0 0 0 10.893-4.883Z",fill:"rgba(0,0,0,0)"})))},ss=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 47.137 36.516"},e),r.createElement("g",{id:"azure-logo-color",transform:"translate(-437.603 -471.382)"},r.createElement("g",{id:"layer1-1",transform:"translate(437.603 471.382)"},r.createElement("path",{id:"path21",d:"M459.411,505.944c6.055-1.07,11.056-1.953,11.115-1.965l.1-.024-5.717-6.8c-3.143-3.74-5.717-6.815-5.717-6.831,0-.032,5.9-16.291,5.936-16.347.012-.019,4.03,6.919,9.738,16.812,5.347,9.266,9.755,16.9,9.8,16.975l.075.132-18.168,0-18.169,0S459.411,505.944,459.411,505.944ZM437.6,503.868c0-.008,2.693-4.686,5.987-10.391l5.987-10.375,6.978-5.856c3.839-3.219,6.986-5.86,7-5.864a1.448,1.448,0,0,1-.112.282c-.075.159-3.485,7.471-7.574,16.247l-7.44,15.957-5.41.008C440.037,503.884,437.6,503.88,437.6,503.868Z",transform:"translate(-437.603 -471.382)",fill:"#2a94dc"}))))},ls=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"Calendar-icn"},r.createElement("path",{"data-name":"Trazado 412",d:"M65.175 146.527h24.651c3.4 0 6.162-3.188 6.162-7.115s-2.762-7.115-6.162-7.115H65.175c-3.4 0-6.164 3.188-6.164 7.115s2.758 7.115 6.164 7.115Z"}),r.createElement("path",{"data-name":"Trazado 413",d:"M118.028 146.527h24.651c3.4 0 6.162-3.188 6.162-7.115s-2.76-7.115-6.162-7.115h-24.651c-3.4 0-6.162 3.188-6.162 7.115s2.762 7.115 6.162 7.115Z"}),r.createElement("path",{"data-name":"Trazado 414",d:"M166.344 146.527h24.651c3.4 0 6.162-3.188 6.162-7.115s-2.762-7.115-6.162-7.115h-24.651c-3.4 0-6.165 3.188-6.165 7.115s2.762 7.115 6.165 7.115Z"}),r.createElement("path",{"data-name":"Trazado 415",d:"M65.175 178.762h24.651c3.4 0 6.162-3.188 6.162-7.115s-2.762-7.115-6.162-7.115H65.175c-3.4 0-6.164 3.188-6.164 7.115s2.758 7.115 6.164 7.115Z"}),r.createElement("path",{"data-name":"Trazado 416",d:"M118.028 178.762h24.651c3.4 0 6.162-3.188 6.162-7.115s-2.76-7.115-6.162-7.115h-24.651c-3.4 0-6.162 3.188-6.162 7.115s2.762 7.115 6.162 7.115Z"}),r.createElement("path",{"data-name":"Trazado 417",d:"M166.344 178.762h24.651c3.4 0 6.162-3.188 6.162-7.115s-2.762-7.115-6.162-7.115h-24.651c-3.4 0-6.165 3.188-6.165 7.115s2.762 7.115 6.165 7.115Z"}),r.createElement("path",{"data-name":"Trazado 418",d:"M65.175 210.997h24.651c3.4 0 6.162-3.187 6.162-7.115s-2.762-7.115-6.162-7.115H65.175c-3.4 0-6.164 3.188-6.164 7.115s2.758 7.115 6.164 7.115Z"}),r.createElement("path",{"data-name":"Trazado 419",d:"M118.028 210.997h24.651c3.4 0 6.162-3.187 6.162-7.115s-2.76-7.115-6.162-7.115h-24.651c-3.4 0-6.162 3.188-6.162 7.115s2.762 7.115 6.162 7.115Z"}),r.createElement("path",{"data-name":"Trazado 420",d:"M166.344 210.997h24.651c3.4 0 6.162-3.187 6.162-7.115s-2.762-7.115-6.162-7.115h-24.651c-3.4 0-6.165 3.188-6.165 7.115s2.762 7.115 6.165 7.115Z"}),r.createElement("path",{"data-name":"Trazado 421",d:"M215.81 30.376h-15.951V10.455a10.661 10.661 0 0 0-10.6-10.661 10.66 10.66 0 0 0-10.595 10.661v19.921h-40.089V10.455a10.661 10.661 0 0 0-10.6-10.661 10.66 10.66 0 0 0-10.595 10.661v19.921H77.291V10.455a10.661 10.661 0 0 0-10.6-10.661 10.66 10.66 0 0 0-10.595 10.661v19.921h-15.08a23.369 23.369 0 0 0-23.295 23.44v178.332a23.367 23.367 0 0 0 23.295 23.44h174.782a23.367 23.367 0 0 0 23.295-23.44V53.816a23.367 23.367 0 0 0-23.283-23.44Zm-3.051 198.641a.062.062 0 0 1-.062.062H44.14a.062.062 0 0 1-.064-.062V114.344h168.683Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 862",fill:"none",d:"M0 0h256v255.794H0z"})))},cs=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 10 9.5"}),r.createElement("g",{transform:"translate(231 719.516)"},r.createElement("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)"}),r.createElement("rect",{width:"10",height:"1",transform:"translate(-231 -711.016)"}),r.createElement("path",{d:"M-119.5.484h-3v1h1v1h1v-1h1Z",transform:"translate(-105 -720)"})))},us=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("g",{"data-name":"logs-icn"},r.createElement("path",{"data-name":"Uni\\xF3n 20",d:"M17.298 255.999a17.314 17.314 0 0 1-17.3-17.291V17.302a17.322 17.322 0 0 1 17.3-17.3h221.4a17.325 17.325 0 0 1 17.3 17.3v221.406a17.316 17.316 0 0 1-17.3 17.291Zm.7-32.922a14.938 14.938 0 0 0 14.934 14.937H223.07A14.935 14.935 0 0 0 238 223.077v-133.4H18Zm45.949-69.443a6.943 6.943 0 0 1-6.814-7.061v-16.314a6.937 6.937 0 0 1 6.814-7.054h62.056a6.924 6.924 0 0 1 6.795 7.054v16.318a6.929 6.929 0 0 1-6.795 7.061Z"}),r.createElement("path",{"data-name":"Trazado 343 - Contorno",d:"M17.3-.1h221.4a17.421 17.421 0 0 1 17.4 17.4v221.409a17.416 17.416 0 0 1-17.4 17.391H17.3A17.416 17.416 0 0 1-.1 238.709V17.301A17.421 17.421 0 0 1 17.3-.1Zm221.4 256a17.216 17.216 0 0 0 17.2-17.191V17.301a17.221 17.221 0 0 0-17.2-17.2H17.3a17.221 17.221 0 0 0-17.2 17.2v221.408A17.216 17.216 0 0 0 17.3 255.9ZM17.9 89.576h220.2v133.5a14.945 14.945 0 0 1-4.4 10.634 14.93 14.93 0 0 1-10.627 4.405H32.931a14.93 14.93 0 0 1-10.627-4.405 14.942 14.942 0 0 1-4.4-10.634Zm220 .2H18.1v133.3a14.745 14.745 0 0 0 4.346 10.493 14.73 14.73 0 0 0 10.486 4.347h190.139a14.73 14.73 0 0 0 10.486-4.347 14.745 14.745 0 0 0 4.346-10.493Z"}),r.createElement("path",{"data-name":"Trazado 344 - Contorno",d:"M63.948 123.102h62.057a6.726 6.726 0 0 1 4.878 2.1 7.247 7.247 0 0 1 2.015 5.058v16.318a7.038 7.038 0 0 1-6.893 7.16H63.948a7.049 7.049 0 0 1-6.915-7.16V130.26a7.045 7.045 0 0 1 6.915-7.158Zm62.057 30.431a6.838 6.838 0 0 0 6.693-6.96v-16.318a7.047 7.047 0 0 0-1.959-4.919 6.526 6.526 0 0 0-4.733-2.034H63.949a6.845 6.845 0 0 0-6.714 6.953v16.318a6.848 6.848 0 0 0 6.714 6.96Z"})),r.createElement("path",{"data-name":"Rect\\xE1ngulo 889",fill:"none",d:"M0 0h256v256H0z"})))},ds=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 36.369 36.346"},e),r.createElement("g",{id:"hardquota-icn",transform:"translate(-98.002 -28.027)"},r.createElement("path",{id:"Trazado_7233","data-name":"Trazado 7233",d:"M344.76,203.93l2.664-2.664,8.15,8.15-2.664,2.664Z",transform:"translate(-228.962 -160.744)"}),r.createElement("path",{id:"Trazado_7234","data-name":"Trazado 7234",d:"M464.768,316.895a1.11,1.11,0,0,0-1.575,0l-2.827,2.827h0a1.111,1.111,0,0,0,0,1.575l5.182,5.182a1.114,1.114,0,0,0,.787.327,1.1,1.1,0,0,0,.808-.327l2.827-2.827a1.11,1.11,0,0,0,0-1.575Z",transform:"translate(-335.926 -267.73)"}),r.createElement("path",{id:"Trazado_7235","data-name":"Trazado 7235",d:"M235.486,84.317l-5.408-5.408a2.141,2.141,0,0,1-.157-.174L222.2,86.45c.061.052.121.105.178.161l5.4,5.4c.057.057.109.117.161.178l7.718-7.718a2.2,2.2,0,0,1-.178-.157Z",transform:"translate(-115.243 -47.051)"}),r.createElement("path",{id:"Trazado_7236","data-name":"Trazado 7236",d:"M337.566,36.693a1.912,1.912,0,0,0,2.706-2.7l-5.408-5.4a1.91,1.91,0,1,0-2.7,2.7Z",transform:"translate(-216.754)"}),r.createElement("path",{id:"Trazado_7237","data-name":"Trazado 7237",d:"M174.741,188.807a1.912,1.912,0,1,0-2.7,2.706l5.408,5.392a1.911,1.911,0,1,0,2.7-2.7Z",transform:"translate(-68.177 -148.665)"}),r.createElement("path",{id:"Trazado_7238","data-name":"Trazado 7238",d:"M143.562,432.083a3.239,3.239,0,0,1,.525.048v-.565a2.383,2.383,0,0,0-2.379-2.383h-15.63a2.383,2.383,0,0,0-2.379,2.383v.565a3.245,3.245,0,0,1,.525-.048Z",transform:"translate(-23.844 -372.224)"}),r.createElement("path",{id:"Trazado_7239","data-name":"Trazado 7239",d:"M122.1,482.968a2.379,2.379,0,0,0-2.379-2.379H100.381A2.379,2.379,0,0,0,98,482.968V484.3h24.1Z",transform:"translate(0 -419.924)"})))},ps=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m215.56,0H21.56C9.7,0,0,9.7,0,21.56v150.89c0,11.86,9.7,21.56,21.56,21.56h194c11.86,0,21.56-9.7,21.56-21.56V21.56c0-11.86-9.7-21.56-21.56-21.56Zm0,172.44H21.56v-32.33h194v32.33Z"}))},hs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rect\xe1ngulo_1033","data-name":"Rect\xe1ngulo 1033",width:"234.584",height:"256",fill:"#4ccb92"})),r.createElement("clipPath",{id:"clip-Change_User_Password"},r.createElement("rect",{width:"256",height:"256"}))),r.createElement("g",{id:"Change_User_Password","data-name":"Change User Password",clipPath:"url(#clip-Change_User_Password)"},r.createElement("g",{id:"Change_User_Password_Icon","data-name":"Change User Password Icon"},r.createElement("g",{id:"Grupo_2422","data-name":"Grupo 2422",transform:"translate(11)"},r.createElement("g",{id:"Grupo_2421","data-name":"Grupo 2421"},r.createElement("path",{id:"Trazado_7174","data-name":"Trazado 7174",d:"M89.039,144.5h.048a66.549,66.549,0,0,0,26.922-5.683,68.721,68.721,0,0,0,22.01-15.464,71.754,71.754,0,0,0,14.829-22.881,73.555,73.555,0,0,0,5.44-27.984C158.291,32.8,127.233.5,89.04.5h0C50.868.5,19.816,32.794,19.816,72.49S50.868,144.5,89.039,144.5",transform:"translate(1.369 0.035)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7175","data-name":"Trazado 7175",d:"M89.039,144.5h.048a66.549,66.549,0,0,0,26.922-5.683,68.721,68.721,0,0,0,22.01-15.464,71.754,71.754,0,0,0,14.829-22.881,73.555,73.555,0,0,0,5.44-27.984C158.291,32.8,127.233.5,89.04.5h0C50.868.5,19.816,32.794,19.816,72.49S50.868,144.5,89.039,144.5Z",transform:"translate(1.369 0.035)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7176","data-name":"Trazado 7176",d:"M169.875,117.967A64.121,64.121,0,0,0,112.7,153.043c-1.421-.4-2.848-.78-4.286-1.119a94.31,94.31,0,0,0-21.382-2.511v.005c-1.748,0-3.424.045-4.982.135A99.34,99.34,0,0,0,8.563,189.619c-.386.516-.763,1.056-1.228,1.749l-.107.15c-.1.141-.213.3-.311.456L6.89,192a37.722,37.722,0,0,0-2.66,37.365,31.837,31.837,0,0,0,28.644,17.951H141.951a31.362,31.362,0,0,0,13.027-2.828,64.139,64.139,0,1,0,14.9-126.523m.382,114.817a50.676,50.676,0,1,1,50.676-50.676,50.676,50.676,0,0,1-50.676,50.676",transform:"translate(0.035 8.148)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7177","data-name":"Trazado 7177",d:"M169.875,117.967A64.121,64.121,0,0,0,112.7,153.043c-1.421-.4-2.848-.78-4.286-1.119a94.31,94.31,0,0,0-21.382-2.511v.005c-1.748,0-3.424.045-4.982.135A99.34,99.34,0,0,0,8.563,189.619c-.386.516-.763,1.056-1.228,1.749l-.107.15c-.1.141-.213.3-.311.456L6.89,192a37.722,37.722,0,0,0-2.66,37.365,31.837,31.837,0,0,0,28.644,17.951H141.951a31.362,31.362,0,0,0,13.027-2.828,64.139,64.139,0,1,0,14.9-126.523Zm.382,114.817a50.676,50.676,0,1,1,50.676-50.676A50.676,50.676,0,0,1,170.256,232.784Z",transform:"translate(0.035 8.148)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7178","data-name":"Trazado 7178",d:"M175.869,148.182a20.812,20.812,0,0,0-20.809,20.813,20.593,20.593,0,0,0,.9,6.036l-24.028,24.024v13.874h13.875L169.833,188.9a20.816,20.816,0,0,0,26.849-18.2,20.283,20.283,0,0,0-3.813-13.874,20.814,20.814,0,0,0-17-8.642m2.311,23.125a4.625,4.625,0,1,1,4.626-4.624,4.625,4.625,0,0,1-4.626,4.624",transform:"translate(9.112 10.235)",fill:"#4ccb92"}),r.createElement("path",{id:"Trazado_7179","data-name":"Trazado 7179",d:"M175.869,148.182a20.812,20.812,0,0,0-20.809,20.813,20.593,20.593,0,0,0,.9,6.036l-24.028,24.024v13.874h13.875L169.833,188.9a20.816,20.816,0,0,0,26.849-18.2,20.283,20.283,0,0,0-3.813-13.874A20.814,20.814,0,0,0,175.869,148.182Zm2.311,23.125a4.625,4.625,0,1,1,4.626-4.624A4.625,4.625,0,0,1,178.181,171.307Z",transform:"translate(9.112 10.235)",fill:"#4ccb92"}))),r.createElement("rect",{id:"Rect\xe1ngulo_1034","data-name":"Rect\xe1ngulo 1034",width:"256",height:"256",fill:"none"}))))},ms=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"prefix__a"},r.createElement("path",{d:"M0 0h256v256H0z"}))),r.createElement("g",{clipPath:"url(#prefix__a)"},r.createElement("path",{fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Rect\\xE1ngulo 856",fill:"none",d:"M0 0h256v256H0z"}),r.createElement("path",{"data-name":"Trazado 406",d:"M210.861 74.863h-28.736V48.236C182.125 21.636 157.844 0 128 0S73.875 21.638 73.875 48.236v26.627H45.139C20.25 74.863.001 92.971.001 115.23v84.8c0 21.912 19.623 39.8 43.979 40.353l84.021 14.62 84.021-14.62c24.356-.551 43.979-18.441 43.979-40.353v-84.8c-.001-22.259-20.25-40.367-45.14-40.367ZM96.296 48.236c0-15.579 14.222-28.254 31.7-28.254s31.7 12.675 31.7 28.254v26.627H96.289Zm137.281 151.79c0 11.24-10.191 20.385-22.717 20.385h-1.084l-81.777 14.229-81.777-14.229h-1.084c-12.526 0-22.716-9.145-22.716-20.385v-84.8c0-11.24 10.19-20.385 22.716-20.385h165.723c12.526 0 22.717 9.145 22.717 20.385Z"}),r.createElement("path",{"data-name":"Trazado 407",d:"M127.707 139.723a19.085 19.085 0 0 0-19.085 19.086 19.066 19.066 0 0 0 8.4 15.818v15.377a10.1 10.1 0 0 0 10.073 10.073h1.218a10.1 10.1 0 0 0 10.073-10.073v-15.377a19.067 19.067 0 0 0 8.4-15.818 19.086 19.086 0 0 0-19.079-19.086Z"})))},fs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{id:"noun_chevron_2320228",transform:"translate(5.595 10) rotate(180)"},r.createElement("path",{id:"Path_6842",d:"M-178.01,7.8c-3.9-0.03-7.62-1.63-10.34-4.43c-5.81-5.68-5.92-15-0.25-20.81\n\t\tc0.08-0.08,0.16-0.16,0.25-0.25l100.13-100.13l-100.13-100.48c-5.81-5.68-5.92-15-0.25-20.81c0.08-0.08,0.16-0.16,0.25-0.25\n\t\tc5.68-5.81,15-5.92,20.81-0.25c0.08,0.08,0.16,0.16,0.25,0.25l110.82,110.82c2.8,2.72,4.39,6.44,4.43,10.34\n\t\tc0.11,3.93-1.51,7.71-4.43,10.34L-167.29,2.99C-170.07,5.97-173.93,7.71-178.01,7.8z"})))},gs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{id:"Path_7269",d:"M147.85,227.97c-2.7,0-4.89-2.19-4.89-4.89l0,0V32.93c0-2.7,2.19-4.89,4.89-4.89c0,0,0,0,0,0\n\th98.98c2.7,0,4.89,2.19,4.89,4.89c0,0,0,0,0,0v190.14c0,2.7-2.19,4.89-4.89,4.89l0,0H147.85z M71.37,205.43\n\tc-2.7,0-4.89-2.19-4.89-4.89l0,0V55.48c-0.01-2.7,2.17-4.9,4.87-4.91c0.01,0,0.01,0,0.02,0h56.4c2.7,0,4.89,2.19,4.89,4.89l0,0\n\tv145.05c0,2.7-2.19,4.89-4.89,4.89c0,0,0,0,0,0L71.37,205.43z M9.17,182.88c-2.7,0-4.88-2.18-4.89-4.87V78.02\n\tc0-2.7,2.19-4.89,4.89-4.89h42.15c2.7,0,4.89,2.19,4.89,4.89V178c0,2.7-2.19,4.89-4.89,4.89l0,0L9.17,182.88z"}))},bs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("path",{d:"M23.4,121.5c-11.5,0-21.4,9.8-21.4,21.2c0.2,11.8,9.7,21.2,21.4,21.4\n\t\t\t\tc11.4,0,21.2-9.9,21.2-21.4C44.3,131.1,35,121.7,23.4,121.5"}),r.createElement("path",{d:"M23.4,175.4c-11.5,0-21.4,9.8-21.4,21.2c0.2,11.8,9.7,21.2,21.4,21.4\n\t\t\t\tc11.4,0,21.2-9.9,21.2-21.4C44.3,184.9,35,175.6,23.4,175.4"}),r.createElement("path",{d:"M158.6,40.2h-12.2c-4.3,0-8.3,2.5-10.2,6.4l-76.6,157c-2.7,5.6-0.4,12.4,5.2,15.2\n\t\t\t\tc1.6,0.8,3.3,1.2,5,1.2H82c4.3,0,8.3-2.5,10.2-6.4l76.6-157c2.7-5.6,0.4-12.4-5.2-15.2C162,40.6,160.3,40.2,158.6,40.2"}),r.createElement("path",{d:"M205,121.1c-1.2,0-2.4,0.1-3.6,0.1L233,56.5c2.7-5.6,0.4-12.4-5.2-15.2\n\t\t\t\tc-1.6-0.8-3.3-1.2-5-1.2h-12.2c-4.3,0-8.3,2.5-10.2,6.4l-76.6,157c-2.7,5.6-0.4,12.4,5.2,15.2c1.6,0.8,3.3,1.2,5,1.2h12.2\n\t\t\t\tc4.3,0,8.3-2.5,10.2-6.4L165,196c14.8,22.1,44.7,28.1,66.8,13.3s28.1-44.7,13.3-66.8C236.2,129.1,221.1,121.1,205,121.1\n\t\t\t\t M205.3,207.3c-21,0-38.1-17-38.1-38.1c0-21,17-38.1,38.1-38.1c21,0,38.1,17,38.1,38.1c0,0,0,0,0,0\n\t\t\t\tC243.4,190.3,226.3,207.3,205.3,207.3"}),r.createElement("path",{d:"M211.3,151.3h-11.9v11.9h-11.9v11.9h11.9v11.9h11.9v-11.9h11.9v-11.9h-11.9V151.3z"})))},ys=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M128,3.14C58.12,3.14,1.46,59,1.46,128S58.12,252.86,128,252.86,254.54,197,254.54,128h0C254.48,59.07,197.86,3.2,128,3.14M84.46,204.56a36.93,36.93,0,0,1-37.09-36.65h0c0-20.24,16.63-36.65,37.14-36.65s37.14,16.41,37.14,36.65S105,204.56,84.51,204.56h0M100,122.67a13,13,0,0,1-13.11-12.9,12.77,12.77,0,0,1,1.76-6.48l26.52-45.38a13.18,13.18,0,0,1,17.88-4.74,13,13,0,0,1,4.8,4.74l26.55,45.38a12.83,12.83,0,0,1-4.78,17.65,13.14,13.14,0,0,1-6.57,1.73ZM208.74,185a17.12,17.12,0,0,1-17.24,17H154.22A17.12,17.12,0,0,1,137,185V148.24a17.11,17.11,0,0,1,17.21-17h37.22a17.12,17.12,0,0,1,17.25,17v0Z",transform:"translate(-1.46 -3.14)"}))},vs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M234.64,2.55H64.58a9,9,0,0,0-8.95,8.94V92h44.75a9,9,0,0,1,8.94,8.94v125.3a9,9,0,0,1-8.94,8.95H55.63v8.94a9,9,0,0,0,8.95,8.94H234.64a9,9,0,0,0,9-8.94V11.49A9,9,0,0,0,234.64,2.55ZM198.78,208.4H136.13a9,9,0,1,1,0-17.9h62.65a9,9,0,0,1,0,17.9Zm0-35.8H136.13a9,9,0,0,1,0-17.9h62.65a8.95,8.95,0,0,1,0,17.9Zm0-35.8H136.13a9,9,0,1,1,0-17.9h62.65a9,9,0,0,1,0,17.9Zm0-35.8H136.13a9,9,0,1,1,0-17.9h62.65a9,9,0,0,1,0,17.9Zm0-35.81H100.33a8.95,8.95,0,0,1,0-17.9h98.45a8.95,8.95,0,0,1,0,17.9Z",transform:"translate(-10.89 -2.55)"}),r.createElement("path",{d:"M91.43,101H19.83a9,9,0,0,0-8.94,8.94v107.4a9,9,0,0,0,8.94,8.94h71.6a9,9,0,0,0,8.95-8.94V109.94A9,9,0,0,0,91.43,101Zm-17.9,98.44H37.73a8.95,8.95,0,1,1,0-17.9h35.8a8.95,8.95,0,0,1,0,17.9Zm0-26.84H37.73a8.95,8.95,0,1,1,0-17.9h35.8a8.95,8.95,0,0,1,0,17.9Zm0-26.85H37.73a8.95,8.95,0,1,1,0-17.9h35.8a8.95,8.95,0,0,1,0,17.9Z",transform:"translate(-10.89 -2.55)"}))},Es=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M253.46,219.34a17.76,17.76,0,0,1-5.37,13L232.57,248a18.57,18.57,0,0,1-13.19,5.38,17.74,17.74,0,0,1-13-5.38l-52.61-52.77a17.23,17.23,0,0,1-5.5-13.05,19.26,19.26,0,0,1,6.27-13.93L117.34,131.2,99.08,149.45a7,7,0,0,1-9.85,0l1.82,1.74a16.14,16.14,0,0,1,1.82,1.88,16.44,16.44,0,0,0,1.44,1.67,7.38,7.38,0,0,1,1.45,2c.19.49.48,1.14.87,2a9.89,9.89,0,0,1,.8,2.41,14.26,14.26,0,0,1-3.85,12.55q-.43.44-2.4,2.61t-2.76,3q-.8.79-2.7,2.4a16.88,16.88,0,0,1-3.2,2.24,28.58,28.58,0,0,1-3.2,1.3,11.22,11.22,0,0,1-3.76.65,13.45,13.45,0,0,1-9.85-4.06L6.6,122.42a13.43,13.43,0,0,1-4.06-9.85,11.4,11.4,0,0,1,.75-3.7,27,27,0,0,1,1.21-3.18,17.84,17.84,0,0,1,2.24-3.2c1.06-1.25,1.86-2.15,2.41-2.68s1.53-1.45,3-2.76l2.61-2.38a14.26,14.26,0,0,1,12.55-3.85,9.68,9.68,0,0,1,2.4.8l2,.87a7.33,7.33,0,0,1,2,1.45,20.77,20.77,0,0,0,1.67,1.44,19.1,19.1,0,0,1,1.89,1.82L38.9,99a7,7,0,0,1,0-9.85L89.21,38.78a7,7,0,0,1,9.85,0L97.24,37a13.64,13.64,0,0,1-1.8-1.92A11,11,0,0,0,94,33.44a6,6,0,0,1-1.44-2,20.39,20.39,0,0,0-.88-2,8.81,8.81,0,0,1-.8-2.4,17.58,17.58,0,0,1-.23-2.61,14.07,14.07,0,0,1,4.06-9.85c.29-.3,1.1-1.17,2.41-2.62s2.23-2.43,2.76-2.95,1.42-1.33,2.67-2.4a16.88,16.88,0,0,1,3.2-2.24,27.73,27.73,0,0,1,3.18-1.21,11.22,11.22,0,0,1,3.76-.65,13.48,13.48,0,0,1,9.79,4L181.7,65.67a13.39,13.39,0,0,1,4.05,9.85,11.22,11.22,0,0,1-.65,3.76,26.74,26.74,0,0,1-1.29,3.2,16.88,16.88,0,0,1-2.24,3.2q-1.59,1.88-2.4,2.67t-3,2.7l-2.62,2.41A14.24,14.24,0,0,1,161,97.3a10.31,10.31,0,0,1-2.41-.79l-1.86-.84a7.3,7.3,0,0,1-2-1.44,19.31,19.31,0,0,0-1.68-1.44A18,18,0,0,1,151.25,91l-1.73-1.82a7,7,0,0,1,0,9.85l-18.28,18.27,37.12,37.12a19.24,19.24,0,0,1,13.92-6.27,18.53,18.53,0,0,1,13.2,5.37l52.61,52.57a18.59,18.59,0,0,1,5.37,13.19Z",transform:"translate(-2.54 -2.58)"}))},ws=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M222.54,17.88h-24.4V14.76a12.2,12.2,0,1,0-24.4,0V17.9H78.93V14.76a12.21,12.21,0,1,0-24.41,0V17.9H33.42a30.46,30.46,0,0,0-30.88,30V223.47a30.54,30.54,0,0,0,30.88,30H222.56a30.47,30.47,0,0,0,30.86-29.94V47.9a30.53,30.53,0,0,0-30.88-30M26.94,47.79a6.27,6.27,0,0,1,6.45-6.08H54.52v3.34a12.21,12.21,0,0,0,24.39,0V41.71h94.81v3.34a12.2,12.2,0,0,0,24.4,0V41.71h24.4A6.28,6.28,0,0,1,229,47.77h0v26h-202ZM229.14,223.4a6.5,6.5,0,0,1-6.6,6.09H33.42A6.27,6.27,0,0,1,27,223.42h0V97.55H229.14Z",transform:"translate(-2.54 -2.55)"}),r.createElement("path",{d:"M96.62,195.15,128,200.61l31.36-5.46a16,16,0,0,0,16.41-15.05V148.49a16.05,16.05,0,0,0-16.85-15.05H148.22v-9.93a20.35,20.35,0,0,0-40.42,0v9.93H97.08a16.05,16.05,0,0,0-16.85,15.05v31.63a16,16,0,0,0,16.41,15M132,166.22v5.72a3.76,3.76,0,0,1-3.76,3.77h-.46a3.76,3.76,0,0,1-3.76-3.77h0v-5.72a7.13,7.13,0,1,1,9.9-1.92,7,7,0,0,1-1.92,1.92m-15.82-42.69a11.91,11.91,0,0,1,23.66,0v9.93H116.17Z",transform:"translate(-2.54 -2.55)"}))},Ss=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M8.18,94.43V21.24A20.26,20.26,0,0,1,27.69,1.74h73.19A51,51,0,0,1,134.25,15.6L242.6,136.2a21,21,0,0,1,0,27.73l-84.8,84.81a20.17,20.17,0,0,1-27.74,0L22.05,127.8A55.46,55.46,0,0,1,8.18,94.43ZM39.94,52.24a19.31,19.31,0,0,0,18.7,18.94A19.42,19.42,0,0,0,77.58,52.24,19.29,19.29,0,0,0,58.64,33.53,19.17,19.17,0,0,0,39.94,52.24Z",transform:"translate(-8.18 -1.74)"}))},As=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path-alert-close-icon"},r.createElement("rect",{id:"Rect\xe1ngulo_1612","data-name":"Rect\xe1ngulo 1612",width:"256",height:"256",fill:"none"})),r.createElement("clipPath",{id:"clip-path-2-alert-close-icon"},r.createElement("rect",{id:"Rect\xe1ngulo_1611","data-name":"Rect\xe1ngulo 1611",width:"256",height:"256"}))),r.createElement("g",{id:"AlertCloseIcon",clipPath:"url(#clip-path-alert-close-icon)"},r.createElement("g",{id:"AlertCloseIcon-2","data-name":"AlertCloseIcon"},r.createElement("g",{id:"Grupo_2527","data-name":"Grupo 2527",clipPath:"url(#clip-path-2-alert-close-icon)"},r.createElement("path",{id:"Trazado_7276","data-name":"Trazado 7276",d:"M230.082,256.006a25.853,25.853,0,0,1-18.328-7.6l-83.761-83.735L44.259,248.41A25.92,25.92,0,0,1,7.6,211.754l83.735-83.735L7.6,44.259A25.92,25.92,0,0,1,44.259,7.6l83.735,83.735L211.754,7.6A25.92,25.92,0,0,1,248.41,44.259l-83.735,83.761,83.735,83.735a25.924,25.924,0,0,1-18.328,44.252",transform:"translate(-0.006 -0.006)"})))))},_s=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 12.425 12.024"},e),r.createElement("path",{id:"opensource",d:"M8.4,12.024,7.074,8.372a2.312,2.312,0,0,0,1.468-2.16,2.32,2.32,0,0,0-2.33-2.33,2.32,2.32,0,0,0-2.33,2.33,2.313,2.313,0,0,0,1.468,2.16L4.028,12.024A6.2,6.2,0,0,1,1.122,9.761,5.992,5.992,0,0,1,0,6.212,6.094,6.094,0,0,1,.491,3.8,6.079,6.079,0,0,1,3.8.491a6.177,6.177,0,0,1,4.829,0A6.079,6.079,0,0,1,11.933,3.8a6.094,6.094,0,0,1,.491,2.415A5.993,5.993,0,0,1,11.3,9.761,6.2,6.2,0,0,1,8.4,12.024Z",fill:"#fff"}))},Ts=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 16 15.1"},e),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path-lic-doc"},r.createElement("rect",{id:"Rect\xe1ngulo_963","data-name":"Rect\xe1ngulo 963",width:"16",height:"15.1",fill:"currentcolor"}))),r.createElement("g",{id:"Grupo_2324","data-name":"Grupo 2324",clipPath:"url(#clip-path-lic-doc)"},r.createElement("path",{id:"Trazado_7051","data-name":"Trazado 7051",d:"M12.118,0A3.867,3.867,0,0,0,9.051,1.506a3.9,3.9,0,0,0-.687,1.4L.948,2.975A.988.988,0,0,0,0,4V14.079A.988.988,0,0,0,.948,15.1H12.105a.987.987,0,0,0,.947-1.021V7.645a3.871,3.871,0,0,0,1.17-.508,3.914,3.914,0,0,0,.935-.848A3.878,3.878,0,0,0,12.118,0M1.057,5.621a.516.516,0,0,1,.515-.515h3.8a.516.516,0,0,1,.515.515v.686a.516.516,0,0,1-.515.515h-3.8a.516.516,0,0,1-.515-.515Zm10.7,7.573a.516.516,0,0,1-.515.515H1.571a.516.516,0,0,1-.515-.515v-.686a.516.516,0,0,1,.515-.515h9.666a.516.516,0,0,1,.515.515Zm0-3.443a.516.516,0,0,1-.515.515H1.571a.516.516,0,0,1-.515-.515V9.064a.516.516,0,0,1,.515-.515h9.666a.516.516,0,0,1,.515.515Zm2.025-6.511,0,0L12.026,4.988a.388.388,0,0,1-.28.118h0a.389.389,0,0,1-.28-.118l-.873-.873a.4.4,0,0,1,.564-.565l.59.591L13.21,2.678a.4.4,0,0,1,.561,0l0,0a.4.4,0,0,1,0,.561",fill:"currentcolor"})))},Cs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M99.18,223A7.66,7.66,0,0,1,92.42,219L77.91,191.41c-6.34-12-13-24.57-15.72-29.84h0l-1-2,0,0-.31-.58h0c-3.09-6.75,3.06-10.09,3.12-10.12A7.48,7.48,0,0,1,74.09,152l0,0,.37.7,0,0L100.43,202c22-31.37,93.39-144.89,121-189.3h0a.61.61,0,0,0,.07-.1l.24-.4h0A7.61,7.61,0,0,1,230.32,9a19.44,19.44,0,0,1,3,1.21s.69.74,1.37,1.5a6.63,6.63,0,0,1,.93,2.73s.61,3.62-1.21,5.67l.07,0-.31.49,0,0c-.93,1.6-2.46,4-5,8.05-3.39,5.43-8.24,13.18-14.07,22.48-10.65,17-26.76,42.59-43.08,68.29-18.35,28.88-33.19,52-44.13,68.58-22.22,33.77-23.42,34-27,34.86A7.64,7.64,0,0,1,99.18,223Zm-30.35-64L71,163.15Z",transform:"translate(-18.77 -7.2)"}),r.createElement("path",{d:"M99.18,224.54a9.09,9.09,0,0,1-8.08-4.86L58.81,158.4l.17-.09c-2.34-7.14,4.23-10.72,4.3-10.76a8.91,8.91,0,0,1,11.29,2.54l.15-.08,1.09,2,24.8,47.08C123.8,165.54,192,57.25,220.17,11.9l1.08-1.73.14.08a9.06,9.06,0,0,1,9.29-2.73A21.56,21.56,0,0,1,234,8.85l.24.12.18.2s.7.75,1.4,1.52a7.38,7.38,0,0,1,1.3,3.55c.06.35.57,3.76-1.12,6.26l-.54.91-.79,1.28,0,0c-.94,1.57-2.28,3.71-4.19,6.77-3.39,5.42-8.24,13.17-14.08,22.48-10.68,17-26.82,42.68-43.08,68.29-18.37,28.93-33.23,52-44.15,68.61-22.55,34.27-23.79,34.55-27.92,35.49A8.66,8.66,0,0,1,99.18,224.54ZM62.35,158.65l.12.24,31.28,59.39a6.17,6.17,0,0,0,6.79,3.11c3-.68,4.2-1,26.09-34.22,10.91-16.59,25.75-39.66,44.11-68.57C187,93,203.14,67.34,213.82,50.32c5.83-9.3,10.68-17,14.07-22.47,2.14-3.42,3.55-5.68,4.5-7.26l-.21-.13,1-1.24.41-.72.07,0a7.12,7.12,0,0,0,.47-3.87,5.71,5.71,0,0,0-.57-2l-1.16-1.27a17.3,17.3,0,0,0-2.46-1A6.11,6.11,0,0,0,223,13.06l-.3.44c-28.8,46.29-99.28,158.28-121,189.35l-1.41,2L72.81,152.82c-3.09-5.07-7.63-2.88-8.13-2.62a6,6,0,0,0-2.46,8.18Zm7.29,5.2-2.14-4.07,2.66-1.4,2.14,4.07Z",transform:"translate(-18.77 -7.2)"}),r.createElement("path",{d:"M226.15,50.25,223.65,54a12,12,0,0,1,5.09,9.78v165a12,12,0,0,1-12,12h-178a12,12,0,0,1-12-12v-165a12,12,0,0,1,12-12H187l3-4.5H38.77a16.52,16.52,0,0,0-16.5,16.5v165a16.52,16.52,0,0,0,16.5,16.5h178a16.52,16.52,0,0,0,16.5-16.5v-165A16.5,16.5,0,0,0,226.15,50.25Z",transform:"translate(-18.77 -7.2)"}),r.createElement("path",{d:"M216.74,248.8h-178a20,20,0,0,1-20-20v-165a20,20,0,0,1,20-20H196.53l-7.64,11.5H38.77a8.51,8.51,0,0,0-8.5,8.5v165a8.51,8.51,0,0,0,8.5,8.5h178a8.51,8.51,0,0,0,8.5-8.5v-165a8.54,8.54,0,0,0-3.61-6.93l-2.77-2,6.36-9.56,2.93,2a20,20,0,0,1,8.59,16.41v165A20,20,0,0,1,216.74,248.8Z",transform:"translate(-18.77 -7.2)"}),r.createElement("path",{d:"M224.24,63.79v165a7.5,7.5,0,0,1-7.5,7.5h-178a7.51,7.51,0,0,1-7.5-7.5v-165a7.51,7.51,0,0,1,7.5-7.5H184l3-4.5H38.77a12,12,0,0,0-12,12v165a12,12,0,0,0,12,12h178a12,12,0,0,0,12-12v-165A12,12,0,0,0,223.65,54l-2.48,3.74A7.48,7.48,0,0,1,224.24,63.79Z",transform:"translate(-18.77 -7.2)"}),r.createElement("path",{d:"M216.74,244.3h-178a15.52,15.52,0,0,1-15.5-15.5v-165a15.52,15.52,0,0,1,15.5-15.5H193.54l-7.65,11.5H38.77a4,4,0,0,0-4,4v165a4,4,0,0,0,4,4h178a4,4,0,0,0,4-4v-165a4,4,0,0,0-1.65-3.22l-2.69-2,6.34-9.52,2.94,2.09a15.52,15.52,0,0,1,6.56,12.63v165A15.51,15.51,0,0,1,216.74,244.3Z",transform:"translate(-18.77 -7.2)"}))},xs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor"},e,{viewBox:"0 0 18 12"}),r.createElement("defs",null),r.createElement("g",{id:"Page-1",stroke:"none",strokeWidth:"1",fill:"none",fillRule:"evenodd"},r.createElement("g",{fill:"currentcolor",id:"Fill-2"},r.createElement("polygon",{points:"17.9999987 4.99999934 3.82999951 4.99999934 7.40999918 1.4099994 5.99999946 -3.60000001e-07 -1.80000029e-07 5.99999928 5.99999946 11.9999989 7.40999918 10.5899991 3.82999951 6.99999922 17.9999987 6.99999922"}))))},Is=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256",fill:"currentcolor"},e),r.createElement("path",{d:"M222.83,0H114.08a5.38,5.38,0,0,0-5.38,5.37V118.1c.62.39,1.24.79,1.85,1.2a74.53,74.53,0,0,1,22.09,100.36h90.19a5.36,5.36,0,0,0,5.37-5.37V5.37A5.37,5.37,0,0,0,222.83,0Z"}),r.createElement("path",{d:"M106,125.38a68,68,0,1,0,30,56.35A67.59,67.59,0,0,0,106,125.38Zm8.16,94.78-7.77,7.76L68,189.5,29.56,227.92l-7.77-7.76,38.42-38.43L21.79,143.31l7.77-7.77L68,174l38.42-38.42,7.77,7.77L75.75,181.73Z"}))},Os=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{transform:"translate(0 -0.853)"},r.createElement("path",{d:"M89.25,173.48c-2.67-.25-5.25-1.12-7.54-2.52-2.52-2.16-3.51-5.62-2.52-8.78l7.55-35.2L204.84,8.87C210.17,4.17,216.73,1.09,223.76,0c7.06-.19,13.88,2.53,18.86,7.54,10.33,11.14,9.77,28.52-1.26,38.97l-116.9,118.1-33.94,7.55-1.26,1.25v.07Zm12.58-37.71l-5.04,20.12,20.13-5.03L231.28,36.46c4.78-4.21,5.34-11.46,1.26-16.35-2.52-2.52-5.03-3.77-7.54-2.52-3.34-.09-6.56,1.3-8.8,3.78l-114.39,114.39h.01Z"}),r.createElement("path",{d:"M179.76,227.54H23.88C10.69,227.54,0,216.84,0,203.65V47.78c0-13.19,10.69-23.88,23.88-23.88H108.1v15.07H23.88c-4.46,.46-7.77,4.34-7.54,8.81V203.65c-.24,4.47,3.08,8.34,7.54,8.8H179.76c4.75,.12,8.69-3.63,8.81-8.38,0-.14,0-.28,0-.42v-49.03h16.33v49.03c-1.03,13.25-11.92,23.57-25.21,23.88h.07Z"})))},ks=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 10.155 8.367"},e),r.createElement("path",{id:"Intersecci\xf3n_8","data-name":"Intersecci\xf3n 8",d:"M14368.751,22047.6a1.045,1.045,0,1,1,1.467-1.488l1.411,1.395,3.98-3.918h0c.008-.01.017-.018.025-.027a1.048,1.048,0,0,1,1.451,1.514l-5.456,5.361Z",transform:"translate(-14367.849 -22042.768)",fill:"currentcolor",stroke:"rgba(0,0,0,0)",strokeWidth:"1"}))},Ns=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 15 15"},e),r.createElement("path",{d:"M7.5,0h0A7.5,7.5,0,0,0,0,7.5H0A7.5,7.5,0,0,0,7.5,15h0a7.5,7.5,0,0,0,0-15M9.978,9.776l-1.9,1.9a.819.819,0,0,1-1.166,0h0L5.022,9.776a.773.773,0,0,1-.186-.864.875.875,0,0,1,.779-.541.793.793,0,0,1,.565.247l.5.5V3.9a.818.818,0,0,1,1.636,0V9.119l.5-.5a.79.79,0,0,1,.564-.248.872.872,0,0,1,.779.541.772.772,0,0,1-.185.864",transform:"translate(15 15) rotate(180)"}))},Rs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 15 15"},e),r.createElement("path",{d:"M7.5,0h0A7.5,7.5,0,0,0,0,7.5H0A7.5,7.5,0,0,0,7.5,15h0a7.5,7.5,0,0,0,0-15M9.978,9.776l-1.9,1.9a.819.819,0,0,1-1.166,0h0L5.023,9.776a.773.773,0,0,1-.186-.864.875.875,0,0,1,.779-.541.793.793,0,0,1,.565.247l.5.5V3.9a.818.818,0,0,1,1.636,0V9.119l.5-.5a.79.79,0,0,1,.564-.248.872.872,0,0,1,.779.541.772.772,0,0,1-.185.864"}))},Ms=function(e){return r.createElement("svg",Ve({},e,{className:"min-icon",fill:"currentcolor",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 256 256"}),r.createElement("g",null,r.createElement("path",{d:"M216,169H83.14a34,34,0,0,1-24.09-10.15L9.56,108A33.56,33.56,0,0,1,9.56,61L59,10.1A33.91,33.91,0,0,1,83.13,0H216a33.68,33.68,0,0,1,33.65,33.65V135.37A33.68,33.68,0,0,1,216,169M83.14,9A24.93,24.93,0,0,0,65.5,16.42L16,67.36a24.54,24.54,0,0,0,0,34.29l49.5,50.92A24.91,24.91,0,0,0,83.12,160H216a24.64,24.64,0,0,0,24.66-24.62V33.65A24.64,24.64,0,0,0,216,9H83.14Z"}),r.createElement("path",{d:"M162.57,96h0a7.23,7.23,0,1,1-10,10.46l-.2-.24L138.78,92.68l-13.54,13.57a7.21,7.21,0,1,1-10.79-9.58c.12-.14.25-.27.38-.4l.24-.24,13.56-13.55L115.09,68.94a7.22,7.22,0,0,1,10.17-10.21l13.59,13.58,13.54-13.58a7.22,7.22,0,0,1,10.18,10.21L149,82.48Z"})))},Ls=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M126.09,0C56.45,0,0,56.45,0,126.09s56.45,126.09,126.09,126.09,126.09-56.45,126.09-126.09S195.72,0,126.09,0Zm79.61,146.23H46.48c-11.08,0-20.14-9.07-20.14-20.14h0c0-11.08,9.07-20.14,20.14-20.14H205.7c11.08,0,20.14,9.07,20.14,20.14h0c0,11.08-9.07,20.14-20.14,20.14Z"}))},Ds=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("g",{transform:"translate(0 0)"},r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M224.54,131.96c26.08-14.98,35.99-47.67,22.62-74.61-11.77-25.71-42.15-37.02-67.87-25.25-.96,.44-1.9,.91-2.83,1.4-9.84,5.4-17.74,13.74-22.62,23.85L108.09,9.09C102.84,3.49,95.57,.22,87.9,0H29.63C12.83,.49-.41,14.46,0,31.25v61.73c.19,7.83,3.25,15.33,8.6,21.05l123.12,129.87c10.78,11.6,28.92,12.27,40.52,1.49,.52-.48,1.01-.98,1.49-1.49l57.48-60.63c11.52-12.53,11.52-31.8,0-44.32l-6.68-6.98ZM60.25,79.27c-8.45-.23-15.12-7.27-14.89-15.72-.23-8.45,6.44-15.49,14.89-15.72,8.45,.24,15.11,7.27,14.89,15.72,.22,8.45-6.44,15.48-14.89,15.72m99.09,3.47h0c-.61-23.53,17.95-43.11,41.47-43.75,23.53,.64,42.09,20.22,41.47,43.75,.61,23.53-17.95,43.11-41.47,43.75-23.53-.64-42.09-20.22-41.47-43.75",fill:"#4ccb92"}),r.createElement("path",{d:"M217.93,64.76c-1.49-1.66-3.62-2.61-5.85-2.61-2.24,.02-4.37,.94-5.92,2.55l-21.93,23.19c-.31,.32-.52,.72-.59,1.16l-2.28,11.67c-.15,.73,.07,1.48,.59,2.01,.41,.4,.96,.62,1.53,.61,.14,.04,.29,.04,.44,0l10.98-2.24c.42-.08,.81-.3,1.1-.62l21.93-23.19c3.22-3.52,3.22-8.92,0-12.45v-.07Z",fill:"#4ccb92"}))))},Ps=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M230.01,21.29c-27.36-27.35-71.33-28.49-100.07-2.6h0l-36.83,36.7c-6.45,6.46-11.62,14.09-15.24,22.48-7.22,3.1-13.89,7.37-19.73,12.62h0L21.29,127.17c-28.39,28.39-28.39,74.42,0,102.81,28.39,28.39,74.42,28.39,102.81,0l36.77-36.77h0c5.25-5.85,9.52-12.51,12.62-19.73,8.39-3.62,16.01-8.79,22.48-15.24l36.77-36.77h0c25.9-28.73,24.76-72.72-2.6-100.07l-.12-.12ZM99.3,203.86h0c-14.33,14.33-37.55,14.33-51.88,0-14.33-14.33-14.33-37.55,0-51.88h0l26.81-26.81c6.56,25.45,26.43,45.32,51.88,51.88l-26.81,26.81Zm19.92-71.8c-6.28-6.28-10.05-14.63-10.62-23.49,18.38,1.16,33.02,15.81,34.17,34.19-8.86-.57-17.21-4.34-23.49-10.62l-.06-.08Zm86.94-35.05l-2.25,2.25h0l-26.81,26.81c-6.56-25.45-26.43-45.32-51.88-51.88l26.81-26.81h0l2.25-2.25h0c15.54-13,38.67-10.94,51.68,4.59,11.4,13.62,11.4,33.46,0,47.08v.1l.21,.1Z"}))},Bs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M125.28,0C56.09,0,0,56.09,0,125.28s56.09,125.28,125.28,125.28,125.28-56.09,125.28-125.28S194.47,0,125.28,0Zm-17.54,35.55h31.6V105.62c0,7.43-.39,14.78-1.16,22.05-.78,7.27-1.86,14.82-3.25,22.66h-22.78c-1.39-7.84-2.47-15.39-3.25-22.66-.78-7.27-1.16-14.62-1.16-22.05V35.55Zm33.81,167.7c-1.06,2.37-2.49,4.43-4.29,6.19-1.8,1.76-3.9,3.12-6.31,4.1-2.41,.98-5,1.47-7.78,1.47s-5.49-.49-7.9-1.47c-2.41-.98-4.51-2.35-6.31-4.1-1.8-1.76-3.21-3.82-4.23-6.19-1.02-2.37-1.53-4.94-1.53-7.72s.51-5.25,1.53-7.66c1.02-2.41,2.43-4.49,4.23-6.25,1.8-1.76,3.9-3.14,6.31-4.17,2.41-1.02,5.04-1.53,7.9-1.53s5.37,.51,7.78,1.53c2.41,1.02,4.51,2.41,6.31,4.17,1.79,1.76,3.22,3.84,4.29,6.25,1.06,2.41,1.59,4.96,1.59,7.66s-.53,5.35-1.59,7.72Z"}))},Fs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M126.32,0C56.55,0,0,56.55,0,126.32s56.55,126.32,126.32,126.32,126.32-56.55,126.32-126.32S196.08,0,126.32,0Zm13.11,197.19h-26.22V99.24h26.22v97.94Zm1.81-119.6c-.89,1.9-2.08,3.58-3.56,5.04-1.49,1.46-3.23,2.6-5.23,3.42-2,.82-4.13,1.23-6.41,1.23-2.15,0-4.2-.41-6.13-1.23-1.93-.82-3.63-1.96-5.08-3.42-1.46-1.46-2.61-3.14-3.47-5.04s-1.28-3.96-1.28-6.17,.43-4.29,1.28-6.22c.85-1.93,2.01-3.62,3.47-5.08s3.15-2.6,5.08-3.42c1.93-.82,3.97-1.24,6.13-1.24,2.28,0,4.42,.41,6.41,1.24,2,.82,3.74,1.96,5.23,3.42,1.49,1.46,2.67,3.15,3.56,5.08,.89,1.93,1.33,4.01,1.33,6.22s-.44,4.27-1.33,6.17Z"}))},js=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor"},e,{viewBox:"0 0 77.654 32.135"}),r.createElement("g",{id:"g2",transform:"translate(1.364)"},r.createElement("path",{id:"path1",d:"M109.019,1769.589l-5.334,23.273h51.548a4.585,4.585,0,0,1-3.456-1.649,3.482,3.482,0,0,1-.34-.58c-.061-.15-.119-.3-.177-.456a4.613,4.613,0,0,1-.187-1.605,11.7,11.7,0,0,1,2.138-5.521,29.773,29.773,0,0,1,5.89-6.427c.558-.464,1.135-.921,1.74-1.366.747-.55,1.5-1.056,2.253-1.529a28.644,28.644,0,0,1,7.994-3.59,30.9,30.9,0,0,0-7.577,3.829c-.094.063-.186.128-.278.192a33.879,33.879,0,0,0-3.892,3.134c-3.672,3.452-5.612,7.03-4.73,9.125a2.636,2.636,0,0,0,.225.412c.948,1.394,3.3,1.635,6.274.886.2-.051.4-.108.613-.168a24.153,24.153,0,0,0,3-1.1c.25-.11.5-.224.757-.345l.077-.038c3.282-1.631,5.8-3.507,6.35-4.635a.7.7,0,0,0,.067-.618c-.39-.79-3.115-.256-6.417,1.174-.265.115-.534.233-.805.36.221-.205.451-.411.685-.614.374-.323.762-.638,1.174-.949a23.412,23.412,0,0,1,1.941-1.323c3.009-2.27,4.53-4.418,4.213-5.215a.56.56,0,0,0-.383-.316,5.536,5.536,0,0,0-3.163.609,23.646,23.646,0,0,0-3.8,2.037l-.182.12-.034.019-.642.427.369-.676a11.606,11.606,0,0,1,2.55-3.02,18.123,18.123,0,0,1,2.746-1.965c.379-.222.757-.428,1.136-.613s.776-.358,1.155-.508a13.345,13.345,0,0,1,3.226-1.057c-.083,0-2.732.285-2.732.285h-63.99Zm41.55.034a31.158,31.158,0,0,0,1.3,9.384q.269,1,.589,2.022.2.633.412,1.246c-.083.122-.166.243-.244.364a12.887,12.887,0,0,0-2.181,5.339,32.871,32.871,0,0,1-1.16-5.8q-.1-.89-.149-1.759a25.555,25.555,0,0,1,1.428-10.793Zm-25.128,2.986H131.2a1.979,1.979,0,0,1,1.126.273.641.641,0,0,1,.3.709l-.676,3.053h-2l.657-2.971h-5l-1.807,8.167-.652,2.957h5l0-.019,1-4.524H126.8l.225-1.021h4.347l-1.246,5.646a.8.8,0,0,1-.086.225,1.246,1.246,0,0,1-.532.479,2.643,2.643,0,0,1-1.246.273H122.6a1.979,1.979,0,0,1-1.126-.273.632.632,0,0,1-.3-.7l2.5-11.287a1.081,1.081,0,0,1,.613-.709c.012-.007.026-.008.038-.014a2.612,2.612,0,0,1,1.122-.259Zm8.886,0h7.136a1.976,1.976,0,0,1,1.121.273.638.638,0,0,1,.307.709l-1.332,6.02a1.078,1.078,0,0,1-.618.7,2.621,2.621,0,0,1-1.241.278h-5.186l-1,4.52-.163.743h-1.955l.149-.671,2.785-12.576Zm9.859,0h1.955l-2.214,10-.484,2.185h4.678c.049.359.106.711.168,1.059h-7.036l.556-2.511Zm-8.138,1.064-1.3,5.857h4.874l1.294-5.857ZM125.653,1787.5h.058a1.374,1.374,0,0,1,.585.115.694.694,0,0,1,.359.355.866.866,0,0,1,.048.513l-.014.072h-.561l0-.067a.441.441,0,0,0-.053-.307.255.255,0,0,0-.072-.067.694.694,0,0,0-.359-.077.837.837,0,0,0-.474.11.422.422,0,0,0-.192.249.185.185,0,0,0,.038.177l0,0a1.31,1.31,0,0,0,.474.168,3.21,3.21,0,0,1,.618.2.731.731,0,0,1,.355.34.746.746,0,0,1,.038.475,1.081,1.081,0,0,1-.254.474,1.286,1.286,0,0,1-.484.345,1.635,1.635,0,0,1-.623.125,1.556,1.556,0,0,1-.671-.125.773.773,0,0,1-.388-.4.976.976,0,0,1-.048-.58l.014-.067h.551l0,.067a.6.6,0,0,0,.034.307.371.371,0,0,0,.192.182.878.878,0,0,0,.383.077,1.051,1.051,0,0,0,.364-.062.642.642,0,0,0,.254-.153.426.426,0,0,0,.11-.206.227.227,0,0,0-.014-.168.351.351,0,0,0-.177-.129l-.47-.139a2.106,2.106,0,0,1-.542-.192.672.672,0,0,1-.292-.316.682.682,0,0,1-.024-.417,1.014,1.014,0,0,1,.235-.455,1.179,1.179,0,0,1,.47-.321A1.648,1.648,0,0,1,125.653,1787.5Zm5.032.01c.03,0,.059,0,.091,0l.345.038.115.01-.168.427-.034.067-.264-.024a.3.3,0,0,0-.173.038l-.01.01a.172.172,0,0,0-.019.019.452.452,0,0,0-.072.182s-.01.042-.019.077h.412l-.105.474h-.4l-.407,1.826h-.556s.361-1.622.407-1.826h-.321l.105-.474h.316c.015-.066.038-.149.038-.149a1.17,1.17,0,0,1,.115-.34.725.725,0,0,1,.264-.259.805.805,0,0,1,.34-.1Zm1.328.024-.182.82h.359l-.105.474h-.359c-.029.132-.259,1.155-.259,1.155s-.019.123-.019.158c0,0,0,0,0,0s0,0,0,0h0l.058,0,.264-.019-.029.427,0,.077-.379.043a.614.614,0,0,1-.34-.077.339.339,0,0,1-.153-.22.363.363,0,0,1-.01-.077,1.959,1.959,0,0,1,.058-.388s.2-.9.244-1.093h-.264l.105-.474h.264c.025-.11.11-.489.11-.489l.446-.235.182-.1Zm-17.661.019h2.157l-.12.537h-1.577c-.025.109-.123.55-.158.709h1.366l-.12.537h-1.366c-.029.134-.292,1.318-.292,1.318h-.58Zm2.89.757a.512.512,0,0,1,.067,0,.652.652,0,0,1,.388.129l.077.053-.3.489-.081-.058a.35.35,0,0,0-.192-.058.3.3,0,0,0-.168.058.423.423,0,0,0-.144.158,1.513,1.513,0,0,0-.144.393l-.259,1.179h-.556l.513-2.3h.518s-.018.07-.024.1c.025-.019.05-.044.072-.058A.591.591,0,0,1,117.242,1788.305Zm1.649,0c.033,0,.066,0,.1,0a.812.812,0,0,1,.7.326.89.89,0,0,1,.149.518,1.73,1.73,0,0,1-.043.369l-.043.168H118.2c0,.032,0,.067,0,.1a.459.459,0,0,0,.077.283.358.358,0,0,0,.086.086.426.426,0,0,0,.235.062.555.555,0,0,0,.307-.091.81.81,0,0,0,.249-.273h.594l-.053.115a1.316,1.316,0,0,1-.47.537,1.269,1.269,0,0,1-.695.2.864.864,0,0,1-.748-.326,1.047,1.047,0,0,1-.105-.872,1.59,1.59,0,0,1,.489-.882,1.238,1.238,0,0,1,.733-.311Zm2.5,0c.033,0,.066,0,.1,0a.812.812,0,0,1,.7.326.889.889,0,0,1,.149.518,1.687,1.687,0,0,1-.043.364l-.043.173h-1.562c0,.021,0,.041,0,.062s0,.02,0,.029,0,0,0,0c0,.023,0,.046,0,.067a.414.414,0,0,0,.072.216c.008.011.015.024.024.033a.389.389,0,0,0,.3.115.55.55,0,0,0,.307-.091.807.807,0,0,0,.249-.273h.6l-.057.115a1.316,1.316,0,0,1-.47.537,1.269,1.269,0,0,1-.695.2.8.8,0,0,1-.9-.848c0-.032,0-.067,0-.1a1.74,1.74,0,0,1,.038-.249,1.589,1.589,0,0,1,.484-.882,1.254,1.254,0,0,1,.738-.312Zm6.8,0c.034,0,.066,0,.1,0a.851.851,0,0,1,.724.321,1.022,1.022,0,0,1,.115.863,1.766,1.766,0,0,1-.278.676,1.321,1.321,0,0,1-1.05.532.839.839,0,0,1-.724-.326.858.858,0,0,1-.153-.522,1.647,1.647,0,0,1,.043-.369,1.5,1.5,0,0,1,.556-.925,1.294,1.294,0,0,1,.666-.249Zm8.421,0c.04,0,.078,0,.12,0a1.23,1.23,0,0,1,.46.067.508.508,0,0,1,.259.2.55.55,0,0,1,.072.292l-.057.35-.105.475a5.233,5.233,0,0,0-.115.613.617.617,0,0,0,.024.22l.038.125h-.566l-.024-.072a.682.682,0,0,1-.01-.115,1.7,1.7,0,0,1-.312.158,1.354,1.354,0,0,1-.441.077.726.726,0,0,1-.57-.2.51.51,0,0,1-.129-.355.772.772,0,0,1,.019-.163.8.8,0,0,1,.149-.321.9.9,0,0,1,.259-.23,1.163,1.163,0,0,1,.312-.125l.34-.057a3.732,3.732,0,0,0,.6-.11.293.293,0,0,1,.01-.033.306.306,0,0,0,0-.211l-.01-.01a.213.213,0,0,0-.019-.019.475.475,0,0,0-.288-.067.637.637,0,0,0-.335.072.626.626,0,0,0-.206.259h-.58l.053-.115a1.224,1.224,0,0,1,.254-.393,1.061,1.061,0,0,1,.4-.235,1.6,1.6,0,0,1,.4-.076Zm2.43,0a.513.513,0,0,1,.067,0,.662.662,0,0,1,.393.129l.072.053-.3.489-.081-.058a.339.339,0,0,0-.187-.058.317.317,0,0,0-.173.058.425.425,0,0,0-.139.158,1.57,1.57,0,0,0-.144.393l-.264,1.179h-.556l.513-2.3h.518s-.013.07-.019.1c.025-.019.049-.044.072-.058A.564.564,0,0,1,139.039,1788.305Zm1.644,0c.033,0,.066,0,.1,0a.81.81,0,0,1,.7.326.879.879,0,0,1,.149.518,1.755,1.755,0,0,1-.048.369l-.038.168h-1.562c0,.032-.01.067-.01.1a.469.469,0,0,0,.077.283c.008.011.02.024.029.033l.019.019a.4.4,0,0,0,.278.1.555.555,0,0,0,.307-.091.826.826,0,0,0,.249-.273h.6l-.058.115a1.328,1.328,0,0,1-.47.537,1.27,1.27,0,0,1-.695.2.855.855,0,0,1-.743-.326,1.052,1.052,0,0,1-.11-.872,1.584,1.584,0,0,1,.484-.882A1.256,1.256,0,0,1,140.683,1788.305Zm-8.392.043h.57s.07,1.365.072,1.385c.023-.049.041-.09.043-.1l.628-1.289h.522s.048,1.349.048,1.356c.015-.028.714-1.356.714-1.356h.566l-1.246,2.3H133.7s-.05-1.248-.053-1.318l-.642,1.318h-.527Zm-13.391.436a.606.606,0,0,0-.364.144.707.707,0,0,0-.2.273h.944c0-.017,0-.037,0-.053a.4.4,0,0,0-.043-.2.336.336,0,0,0-.316-.163H118.9Zm2.5,0a.606.606,0,0,0-.364.144.723.723,0,0,0-.2.273h.944c0-.017,0-.037,0-.053a.381.381,0,0,0-.043-.2.386.386,0,0,0-.048-.062.355.355,0,0,0-.268-.1H121.4Zm19.315,0a.618.618,0,0,0-.379.144.74.74,0,0,0-.2.273h.939c0-.017,0-.037,0-.053a.381.381,0,0,0-.043-.2.341.341,0,0,0-.316-.163h-.01Zm-12.557.01a.635.635,0,0,0-.355.172,1.038,1.038,0,0,0-.283.556,1.269,1.269,0,0,0-.034.273.472.472,0,0,0,.062.259.438.438,0,0,0,.038.048.372.372,0,0,0,.283.11.6.6,0,0,0,.422-.177,1.064,1.064,0,0,0,.283-.566.683.683,0,0,0-.029-.517.349.349,0,0,0-.316-.158A.589.589,0,0,0,128.155,1788.794Zm8.66.839a3.592,3.592,0,0,1-.47.091,1.627,1.627,0,0,0-.307.067.34.34,0,0,0-.129.091.285.285,0,0,0-.067.125.339.339,0,0,0,0,.053s0,0,0,0,0,.011,0,.014a.2.2,0,0,0,0,.024l0,.01a.15.15,0,0,0,0,.014l.01.014a.188.188,0,0,0,.014.019.3.3,0,0,0,.225.063.765.765,0,0,0,.345-.077.672.672,0,0,0,.254-.221A.891.891,0,0,0,136.816,1789.633Zm-29.275-3.843L120.4,1772.51h2.1L119.4,1785.79h-1.728l.882-3.823H113.16l-3.664,3.823h-1.955m6.93-5.191h4.41l.814-3.334q.493-1.984.948-3.307-.911,1.141-2.41,2.709l-3.762,3.932",transform:"translate(-103.684 -1768.606)",fill:"#07193e"}),r.createElement("path",{id:"path2",d:"M629.567,1786.568a5.185,5.185,0,0,1-3.908-1.872,4,4,0,0,1-.392-.669c-.073-.175-.136-.338-.2-.5l.715-.278c.061.157.122.314.186.468a3.234,3.234,0,0,0,.309.526,4.373,4.373,0,0,0,3.323,1.56h1.681a14.791,14.791,0,0,0,1.625-.229,21.089,21.089,0,0,0,3.153-.9c.853-.311,1.716-.676,2.566-1.084a36.317,36.317,0,0,0,5.8-3.51c.615-.452,1.231-.935,1.831-1.435q.805-.67,1.543-1.358a14.769,14.769,0,0,0,2.944-3.775c.567-1.139.663-2.051.272-2.568a1.61,1.61,0,0,0-1.221-.531l-1.014-.079.814-.61c2.91-2.184,4.556-4.768,4-6.286a1.628,1.628,0,0,0-1.04-.96,3.321,3.321,0,0,0-.841-.172h-.894a13.692,13.692,0,0,0-4.6,1.3l-.337-.689a14.546,14.546,0,0,1,4.91-1.376h.954a4.115,4.115,0,0,1,1.069.216,2.37,2.37,0,0,1,1.5,1.42c.63,1.731-.808,4.341-3.61,6.647a1.964,1.964,0,0,1,.918.658c.584.772.516,1.938-.2,3.372a15.329,15.329,0,0,1-3.1,3.99q-.76.708-1.58,1.391c-.612.51-1.241,1-1.868,1.464a37.085,37.085,0,0,1-5.922,3.583c-.872.419-1.758.794-2.635,1.113a21.86,21.86,0,0,1-3.268.927,15.365,15.365,0,0,1-1.743.242Z",transform:"translate(-578.174 -1761.542)",fill:"#07193e"})))},zs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("polygon",{points:"118.6 2.54 154.49 75.25 234.74 86.91 176.67 143.52 190.38 223.44 118.6 185.71 46.82 223.44 60.53 143.52 2.46 86.91 82.71 75.25 118.6 2.54"}),r.createElement("path",{d:"M116.44,3.8l12.23,24.78L148,67.83c1.4,2.84,2.64,5.86,4.24,8.59.69,1.18,1.59,1.25,2.73,1.42l4.87.7,41.32,6,32.35,4.7.52.07L233,85.15l-19.79,19.29L181.83,135c-2.28,2.22-4.71,4.36-6.87,6.7-1,1.12-.73,2.31-.51,3.6l.84,4.93,7.06,41.15,5.53,32.22.08.51,3.68-2.82-24.46-12.86-38.75-20.37c-2.83-1.48-5.62-3.07-8.5-4.47-1.43-.69-2.4-.13-3.59.49l-4.42,2.33L75,205.83,46,221l-.47.24,3.67,2.82,4.67-27.23,7.4-43.15c.54-3.15,1.13-6.3,1.63-9.46.26-1.64-.46-2.34-1.44-3.3l-3.58-3.49L28,108.33,4.61,85.51l-.38-.36-1.1,4.17,27.35-4,43.31-6.29,6.44-.94c1-.15,2.06-.21,3-.44,1.26-.3,1.64-1.24,2.13-2.24L87.58,71l18.48-37.44L120.52,4.27l.24-.47a2.57,2.57,0,0,0-.9-3.42,2.52,2.52,0,0,0-3.42.89L104.31,25.84,85,65l-4.44,9,1.5-1.15L54.93,76.78,11.72,83.06,1.8,84.5c-1.92.28-2.33,3-1.11,4.18l19.62,19.13,31.27,30.48,7.18,7-.64-2.43-4.63,27-7.38,43-1.7,9.88a2.54,2.54,0,0,0,3.67,2.82l24.25-12.75L111,192.53l8.87-4.67h-2.52l24.25,12.75,38.65,20.32,8.87,4.67a2.54,2.54,0,0,0,3.68-2.82l-4.64-27-7.38-43-1.69-9.88-.65,2.43,19.62-19.12,31.28-30.48,7.17-7c1.23-1.19.81-3.9-1.1-4.18l-27.11-3.94-43.22-6.28-9.92-1.44,1.5,1.15L144.52,49.42,125.19,10.26l-4.43-9C119.33-1.61,115,.92,116.44,3.8Z"}))},Us=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M172.07,136.15c-5.91-7.02-8.83-14.66-6.34-24.08,1.2-4.53-1.18-8.5-5.24-10.85-6.26-3.64-9.79-8.84-10.93-16.01-.83-5.19-4.34-8.35-9.52-9.18-6.83-1.09-11.85-4.46-15.38-10.44-2.96-5.02-7.01-6.65-12.76-5.32-8.79,2.04-15.91-1.18-22.42-6.64h-6.88c-7.01,5.93-14.68,8.79-24.06,6.31-4.59-1.21-8.51,1.19-10.87,5.22-3.65,6.26-8.84,9.82-16.02,10.94-5.04,.79-8.27,4.15-9.1,9.1-1.22,7.31-4.86,12.57-11.29,16.27-3.89,2.24-6.09,6.23-4.94,10.58,2.49,9.4-.4,17.07-6.32,24.1v6.88c5.96,7.02,8.77,14.7,6.32,24.1-1.2,4.57,1.26,8.51,5.28,10.85,6.28,3.65,9.75,8.87,10.91,16.02,.84,5.19,4.39,8.31,9.56,9.15,6.81,1.11,11.9,4.44,15.35,10.48,2.41,4.23,6.39,6.8,11.11,5.57,9.42-2.45,17.06,.37,24.06,6.35h6.88c7.01-5.92,14.65-8.83,24.06-6.34,4.57,1.21,8.49-1.22,10.86-5.24,3.67-6.23,8.87-9.81,16.05-10.91,4.85-.74,8.2-3.91,8.99-8.69,1.25-7.64,4.99-13.07,11.71-16.96,3.68-2.12,5.75-6.14,4.61-10.33-2.56-9.4,.36-17.05,6.32-24.06v-6.88Zm-40.57,9.57h-39.33v39.48h-12.27v-39.48H40.57v-12.26h39.33v-39.48h12.27v39.48h39.33v12.26Z",style:{fill:"#07193e"}}),r.createElement("g",{id:"Grupo_2537",transform:"translate(12.323 0)"},r.createElement("g",{id:"Elipse_623",transform:"translate(-0.323 -0.249)"},r.createElement("circle",{cx:"179.04",cy:"66.03",r:"66.03",style:{fill:"#4ccb92"}}),r.createElement("path",{d:"M179.05,132.07c-36.42,0-66.04-29.62-66.04-66.03S142.63,0,179.05,0s66.03,29.62,66.03,66.03-29.63,66.03-66.03,66.03Zm0-122.63c-31.21,0-56.61,25.39-56.61,56.6s25.39,56.6,56.61,56.6,56.6-25.39,56.6-56.6-25.39-56.6-56.6-56.6Z",style:{fill:"#fff"}})),r.createElement("g",{id:"check",transform:"translate(2.934 4.069)"},r.createElement("g",{id:"Trazado_7261"},r.createElement("path",{d:"M197.68,42.49c2.27-2.32,5.99-2.35,8.3-.08s2.35,5.99,.08,8.3l-31.23,39.05c-2.19,2.39-5.9,2.54-8.29,.35-.07-.06-.13-.13-.2-.19l-20.7-20.71c-2.38-2.2-2.52-5.91-.32-8.29,2.2-2.38,5.91-2.52,8.29-.32,.11,.1,.22,.21,.32,.32l16.39,16.38,27.18-34.62,.16-.17h.02Z"})))))},Hs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 15 15"},e),r.createElement("g",{id:"OpenListIcon-full",transform:"translate(4 4.984)"},r.createElement("g",{id:"noun_chevron_2320228",transform:"translate(0.167 4.016) rotate(-90)"},r.createElement("path",{id:"Trazado_6842","data-name":"Trazado 6842",d:"M.422,0a.433.433,0,0,0-.3.117.37.37,0,0,0,0,.557L2.983,3.325.126,5.986a.37.37,0,0,0,0,.557.443.443,0,0,0,.6,0L3.889,3.609a.373.373,0,0,0,.126-.274.344.344,0,0,0-.126-.274L.727.127A.443.443,0,0,0,.422,0Z",transform:"translate(0 0)"})),r.createElement("rect",{id:"Rect\xe1ngulo_896","data-name":"Rect\xe1ngulo 896",width:"0.462",height:"0.462",transform:"translate(0 1.75)",fill:"none"})))},Gs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 15 15"},e),r.createElement("g",{id:"Grupo_2449","data-name":"Grupo 2449",transform:"translate(-140 -181)"},r.createElement("g",{id:"OpenListIcon-full",transform:"translate(144 250.612)"},r.createElement("g",{id:"noun_chevron_2320228",transform:"translate(6.827 -63.612) rotate(90)"},r.createElement("path",{id:"Trazado_6842","data-name":"Trazado 6842",d:"M.422,6.661a.433.433,0,0,1-.3-.117.37.37,0,0,1,0-.557L2.983,3.335.126.675a.37.37,0,0,1,0-.557.443.443,0,0,1,.6,0L3.889,3.052a.373.373,0,0,1,.126.274.344.344,0,0,1-.126.274L.727,6.533a.443.443,0,0,1-.306.127Z",transform:"translate(0 0)"})),r.createElement("rect",{id:"Rect\xe1ngulo_896","data-name":"Rect\xe1ngulo 896",width:"0.462",height:"0.462",transform:"translate(0 -61.808)",fill:"none"}))))},Vs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 14 14"},e),r.createElement("path",{id:"online-icon",d:"M7,14a7.052,7.052,0,0,1-1.411-.142,6.962,6.962,0,0,1-2.5-1.053A7.02,7.02,0,0,1,.55,9.725,6.965,6.965,0,0,1,.142,8.411a7.068,7.068,0,0,1,0-2.821A6.962,6.962,0,0,1,1.2,3.086,7.02,7.02,0,0,1,4.275.55,6.965,6.965,0,0,1,5.589.142a7.068,7.068,0,0,1,2.821,0,6.962,6.962,0,0,1,2.5,1.053,7.02,7.02,0,0,1,2.536,3.08,6.965,6.965,0,0,1,.408,1.314,7.068,7.068,0,0,1,0,2.821,6.962,6.962,0,0,1-1.053,2.5,7.02,7.02,0,0,1-3.08,2.536,6.965,6.965,0,0,1-1.314.408A7.052,7.052,0,0,1,7,14ZM3.958,6h0L2.953,7.008l3.016,3.016L10.995,5,9.99,3.992,5.969,8.013,3.958,6Z",fill:"#4ccb92"}))},qs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 14 14"},e),r.createElement("path",{id:"offline-icon",d:"M91.4,4.551l-.825-.825-2.44,2.439L85.7,3.726l-.825.825L87.312,6.99,84.873,9.429l.825.825,2.439-2.439,2.44,2.439.825-.825L88.961,6.99Zm-.155,9.44H85.027l-3.89-4.279V4.269L85.027-.01h6.219l3.89,4.279V9.711Z",transform:"translate(-81.136 0.01)",fill:"#c83b51",fillRule:"evenodd"}))},Ws=function(e){return r.createElement("svg",Ve({id:"WarnFilledIcon",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 12 12"},e,{className:"min-icon",fill:"currentcolor"}),r.createElement("defs",null,r.createElement("clipPath",{id:"clip-path"},r.createElement("rect",{id:"Rectangle_987","data-name":"Rectangle 987",width:"12",height:"12"}))),r.createElement("g",{id:"warning-icon-full",transform:"translate(-0.002 -0.003)"},r.createElement("g",{id:"Group_2356","data-name":"Group 2356",transform:"translate(0.002 0.003)",clipPath:"url(#clip-path)"},r.createElement("path",{id:"Path_7081","data-name":"Path 7081",d:"M6,0H6a6,6,0,1,0,6,6A6,6,0,0,0,6,0m.964,1.947L6.751,7.434H5.318L5.1,1.947ZM6.04,10.454a1.134,1.134,0,1,1,0-2.269,1.134,1.134,0,0,1,0,2.269",transform:"translate(-0.002 -0.003)"}))))},Zs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 26 26"},e),r.createElement("g",{id:"Group_2001","data-name":"Group 2001",transform:"translate(1924 369) rotate(180)"},r.createElement("rect",{id:"Rectangle_1114","data-name":"Rectangle 1114",width:"26",height:"26",transform:"translate(1898 343)",fill:"#e5e5e5"}),r.createElement("g",{id:"noun_chevron_2320228",transform:"translate(1915.2 353.499) rotate(90)"},r.createElement("path",{id:"Path_6842","data-name":"Path 6842",d:"M.47,8a.464.464,0,0,1-.329-.141.468.468,0,0,1,0-.67L3.325,4.006.141.811a.468.468,0,0,1,0-.67.468.468,0,0,1,.67,0L4.335,3.665a.464.464,0,0,1,.141.329.427.427,0,0,1-.141.329L.811,7.847A.476.476,0,0,1,.47,8Z",transform:"translate(0 0)",fill:"#5e5e5e"}))))},$s=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 26 26"},e),r.createElement("g",{id:"Group_2476","data-name":"Group 2476",transform:"translate(-1898 -343)"},r.createElement("rect",{id:"Rectangle_1114","data-name":"Rectangle 1114",width:"26",height:"26",transform:"translate(1898 343)",fill:"#fbfafa"}),r.createElement("g",{id:"noun_chevron_2320228",transform:"translate(1915.2 353.499) rotate(90)"},r.createElement("path",{id:"Path_6842","data-name":"Path 6842",d:"M.47,8a.464.464,0,0,1-.329-.141.468.468,0,0,1,0-.67L3.325,4.006.141.811a.468.468,0,0,1,0-.67.468.468,0,0,1,.67,0L4.335,3.665a.464.464,0,0,1,.141.329.427.427,0,0,1-.141.329L.811,7.847A.476.476,0,0,1,.47,8Z",transform:"translate(0 0)",fill:"#2781b0"}))))},Ys=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("path",{d:"M128.1,144c39.2,0.1,71.1-31.4,71.4-70.6c0-39.4-32-71.4-71.4-71.4s-71.4,32-71.4,71.4\n\t\tC57,112.6,89,144.1,128.1,144"}),r.createElement("path",{d:"M214.6,197.3c-10.8-13.9-24.9-25-41-32.2c-7.3-3.3-14.9-5.9-22.7-7.6\n\t\tc-7.7-1.7-15.5-2.6-23.4-2.6c-1.6,0-3.2,0-4.7,0.1h-0.5c-3.9,0.2-7.7,0.6-11.5,1.2c-27.1,4.3-51.6,18.7-68.6,40.2\n\t\tc-0.6,0.8-1.2,1.6-1.8,2.4l0,0c-7.8,11-8.9,25.4-2.8,37.3c1.4,2.7,3.2,5.2,5.3,7.5c2.1,2.2,4.5,4.1,7.1,5.6\n\t\tc2.6,1.5,5.4,2.7,8.4,3.5c3.1,0.8,6.2,1.2,9.4,1.2h120.6c3.2,0,6.4-0.4,9.5-1.2c2.9-0.8,5.8-2,8.4-3.5c2.6-1.5,5-3.5,7-5.7\n\t\tc2.1-2.3,3.9-4.8,5.3-7.6C224.7,223.4,223.2,208.4,214.6,197.3"})))},Ks=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m209.35,76.15h-28.21v-26.24c-1.65-27.75-25.38-48.97-53.14-47.55-27.76-1.43-51.48,19.8-53.14,47.55v26.24h-28.21c-23.19-1.15-42.98,16.61-44.32,39.8v83.57c1.26,22.76,20.4,40.4,43.19,39.8l82.48,14.39,82.48-14.41c22.78.6,41.92-17.02,43.19-39.77v-83.57c-1.34-23.18-21.13-40.95-44.32-39.8m-70.88,86.61v15.16c0,5.47-4.42,9.9-9.89,9.93h-1.19c-5.47-.03-9.88-4.48-9.87-9.95v-15.14c-5.16-3.51-8.25-9.34-8.25-15.58h0c.08-10.34,8.53-18.66,18.87-18.58,10.34.08,18.66,8.53,18.58,18.87-.05,6.12-3.08,11.83-8.13,15.29m20.63-86.61h-62.35v-26.24c.97-16.26,14.86-28.69,31.12-27.86,16.26-.83,30.16,11.6,31.12,27.86l.1,26.24Z"}))},Xs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 14 13.088"},e),r.createElement("g",{id:"filter-icon.a949c200",transform:"translate(-231.827 -340.123)"},r.createElement("line",{id:"L\xednea_659","data-name":"L\xednea 659",x2:"14",transform:"translate(231.827 346.667)",fill:"none",stroke:"#434343",strokeWidth:"1"}),r.createElement("g",{id:"Grupo_2472","data-name":"Grupo 2472",transform:"translate(240.693 344.614)"},r.createElement("circle",{id:"Elipse_611","data-name":"Elipse 611",cx:"2.053",cy:"2.053",r:"2.053",transform:"translate(0 0)",fill:"#fff"}),r.createElement("circle",{id:"Elipse_612","data-name":"Elipse 612",cx:"1.597",cy:"1.597",r:"1.597",transform:"translate(0.456 0.456)",fill:"none",stroke:"#414141",strokeWidth:"1"})),r.createElement("line",{id:"L\xednea_660","data-name":"L\xednea 660",x2:"14",transform:"translate(231.827 342.22)",fill:"none",stroke:"#434343",strokeWidth:"1"}),r.createElement("g",{id:"Grupo_2473","data-name":"Grupo 2473",transform:"translate(232.394 340.167)"},r.createElement("circle",{id:"Elipse_613","data-name":"Elipse 613",cx:"2.053",cy:"2.053",r:"2.053",transform:"translate(0 0)",fill:"#fff"}),r.createElement("circle",{id:"Elipse_614","data-name":"Elipse 614",cx:"1.597",cy:"1.597",r:"1.597",transform:"translate(0.456 0.456)",fill:"none",stroke:"#414141",strokeWidth:"1"})),r.createElement("line",{id:"L\xednea_661","data-name":"L\xednea 661",x2:"14",transform:"translate(231.827 351.114)",fill:"none",stroke:"#434343",strokeWidth:"1"}),r.createElement("g",{id:"Grupo_2474","data-name":"Grupo 2474",transform:"translate(235.161 349.061)"},r.createElement("circle",{id:"Elipse_615","data-name":"Elipse 615",cx:"2.053",cy:"2.053",r:"2.053",transform:"translate(0 0)",fill:"#fff"}),r.createElement("circle",{id:"Elipse_616","data-name":"Elipse 616",cx:"1.597",cy:"1.597",r:"1.597",transform:"translate(0.456 0.456)",fill:"none",stroke:"#414141",strokeWidth:"1"}))))},Js=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("path",{d:"M235.3,72.5c-0.2-15.5-12.8-27.9-28.3-27.9h-78l-1.1-1.5c-5.1-9.3-14.5-15.5-25.1-16.6h-50c-15.6,0-28.3,12.6-28.3,28.3\n\t\t\tc0,1,0.1,2,0.2,3v12.9c-11.6,3.9-19.4,14.8-19.4,27c0,0.6,0,1.2,0.1,1.7L14.8,202c0.6,15.4,13.2,27.5,28.6,27.5h168.9\n\t\t\tc15.4,0,28-12.1,28.6-27.5l9.5-102.5c0-0.6,0.1-1.2,0.1-1.8C250.6,87.1,244.7,77.4,235.3,72.5z M32.5,88.4c11.7-3.3,12-11,12-11\n\t\t\th172c0.2,4.6,2.9,8.8,6.9,11H32.5z"})))},Qs=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("rect",{width:"73.79",height:"237.57",rx:"12",ry:"12"}),r.createElement("rect",{x:"86.31",width:"73.79",height:"237.57",rx:"12",ry:"12"}),r.createElement("rect",{x:"172.62",width:"73.79",height:"237.57",rx:"12",ry:"12"}))},el=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m117.59.78l112.57,101.97c2.03,1.84.73,5.22-2.01,5.22H3.01c-2.74,0-4.05-3.38-2.01-5.22L113.56.78c1.14-1.04,2.89-1.04,4.03,0Z"}))},tl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m113.56,107.2L.99,5.22C-1.04,3.38.26,0,3.01,0h225.15c2.74,0,4.05,3.38,2.01,5.22l-112.57,101.97c-1.14,1.04-2.89,1.04-4.03,0Z"}))},nl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m199.51,62.28C192.5,26.7,161.26,0,123.73,0c-29.8,0-55.68,16.91-68.57,41.66C24.13,44.95,0,71.25,0,103.11c0,34.13,27.74,61.86,61.86,61.86h134.04c28.46,0,51.55-23.1,51.55-51.55s-21.14-49.28-47.94-51.14Z"}))},rl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m119,0C53.31,0,0,53.31,0,119s53.31,119,119,119,119-53.31,119-119S184.69,0,119,0Zm59.5,130.9H59.5v-23.8h119v23.8Z"}))},ol=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m217.35,144.9h24.15v-24.15h-24.15v24.15Zm0-108.67v60.38h24.15v-60.38h-24.15ZM96.6,0C43.23,0,0,43.23,0,96.6s43.23,96.6,96.6,96.6,96.6-43.23,96.6-96.6S149.97,0,96.6,0Zm0,120.75c-13.28,0-24.15-10.87-24.15-24.15s10.87-24.15,24.15-24.15,24.15,10.87,24.15,24.15-10.87,24.15-24.15,24.15Z"}))},al=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m127.98,44.38c-55.8,0-103.5,34.8-122.9,83.8,19.3,49,67,83.8,122.9,83.8s103.5-34.8,122.9-83.8c-19.4-49-67.1-83.8-122.9-83.8Zm0,139.6c-30.8,0-55.8-25-55.8-55.8s25-55.8,55.8-55.8,55.8,25,55.8,55.8-25,55.8-55.8,55.8Zm0-89.3c-18.5,0-33.5,15-33.5,33.5s15,33.5,33.5,33.5,33.5-15,33.5-33.5-15-33.5-33.5-33.5Z"}))},il=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m128,66.5c30.9,0,56,25.1,56,56,0,7.3-1.5,14.1-4,20.5l32.7,32.7c16.9-14.1,30.2-32.3,38.4-53.2-19.4-49.1-67.1-83.9-123.1-83.9-15.7,0-30.7,2.8-44.5,7.8l24.2,24.2c6.2-2.7,13-4.1,20.3-4.1ZM16.1,35.9l25.5,25.5,5.1,5.1c-18.6,14.5-33.1,33.7-41.8,55.9,19.4,49.1,67.1,83.9,123.1,83.9,17.3,0,33.9-3.4,49-9.4l4.7,4.7,32.8,32.7,14.2-14.2L30.3,21.7l-14.2,14.2Zm61.8,61.9l17.3,17.3c-.6,2.3-.9,4.8-.9,7.3,0,18.6,15,33.6,33.6,33.6,2.5,0,4.9-.3,7.3-.9l17.3,17.3c-7.5,3.7-15.8,5.9-24.6,5.9-30.9,0-56-25.1-56-56,.1-8.7,2.3-17,6-24.5Zm48.3-8.7l35.2,35.2.2-1.8c0-18.6-15-33.6-33.6-33.6l-1.8.2Z"}))},sl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{transform:"translate(18)"},r.createElement("path",{d:"M104.258,94.5a8.671,8.671,0,1,0,12.263,0,8.672,8.672,0,0,0-12.263,0"}),r.createElement("path",{d:"M220.846,46.255a15.346,15.346,0,0,0-15.422-14.381h-.01l-2.217.017c-18.3,0-53.371-3.671-82.6-28.236A15.2,15.2,0,0,0,110.742,0a15.03,15.03,0,0,0-9.748,3.6C71.681,28.225,36.7,31.9,18.452,31.9l-2.764-.028A15.124,15.124,0,0,0,.665,46.358C-1.156,93.424-.821,159.771,23,192.41c22.161,30.467,65.486,55.314,78.912,61.614a20.721,20.721,0,0,0,17.7-.015c14.415-6.8,56.684-31.109,78.885-61.582,23.832-32.654,24.168-99,22.347-146.172m-92.069,94.893,0,25.363H118.635v12.845h10.146v11H118.635V203.2h10.148v1.651l-18.394,18.394L92,204.849l.007-63.7a38.469,38.469,0,0,1-9.2-6.8A39.158,39.158,0,0,1,116.79,68.09a38.019,38.019,0,0,1,23.45,13.338,39.022,39.022,0,0,1-11.463,59.72"})))},ll=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"m128,253.47c-69.18,0-125.47-56.28-125.47-125.47S58.82,2.53,128,2.53s125.47,56.28,125.47,125.47-56.28,125.47-125.47,125.47Zm0-232.94c-59.26,0-107.47,48.21-107.47,107.47s48.21,107.47,107.47,107.47,107.47-48.21,107.47-107.47S187.26,20.53,128,20.53Z"}),r.createElement("path",{d:"m196.9,173.81c-1.37,0-2.76-.31-4.06-.97l-73.84-37.42V45c0-4.97,4.03-9,9-9s9,4.03,9,9v79.36l63.97,32.42c4.43,2.25,6.21,7.66,3.96,12.1-1.59,3.13-4.75,4.93-8.04,4.93Z"}))},cl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{transform:"translate(0 0.004)"},r.createElement("path",{d:"M79.8,115.3h158c2.7-0.4,5.5,0.4,7.6,2.3c2.2,1.9,3.1,5,2.3,7.8c-0.7,3-3.1,5.3-6.1,5.9\n\t\tc-1.4,0.2-2.7,0.2-4.1,0.2H79.2c1,1,1.6,1.8,2.3,2.5l56.7,56.7c2.4,2,3.4,5.2,2.5,8.2c-0.7,3-3.1,5.3-6.1,5.9\n\t\tc-2.8,0.5-5.7-0.5-7.6-2.7L114,189.2c-19.4-19.4-39.1-38.9-58.3-58.5c-1.7-1.8-3-4-3.7-6.3c-0.4-3,0.7-5.9,3.1-7.8\n\t\tC75.5,96.1,96,75.8,116.3,55.4c3.7-3.7,7.4-7.6,11.3-11.1c2.7-2.5,6.7-3,9.8-1c3.1,1.5,4.6,5.1,3.5,8.4c-0.6,1.9-1.8,3.6-3.3,4.9\n\t\tc-18.6,18.8-37.5,37.5-56.3,56.3l-2.3,2.3L79.8,115.3z"}),r.createElement("path",{d:"M25.6,128.2V16.9c0.1-1.4-0.1-2.9-0.4-4.3C24.5,9.5,22.1,7,19,6.2c-2.9-0.8-6,0.2-8,2.5\n\t\tc-2,2.2-2.9,5.1-2.5,8v111.6l0,0v111.4c-0.1,1.4,0.1,2.9,0.4,4.3c0.6,3.1,3,5.6,6.1,6.3c2.9,0.9,6.1-0.1,8-2.5\n\t\tc1.9-2.2,2.8-5.1,2.5-8L25.6,128.2C25.6,128.2,25.6,128.2,25.6,128.2z"})))},ul=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M88.6,199.9c-0.3-42.5-1.4-85.2,1.1-127.6c1.3-22,5.5-50.9,31.5-55.5c12.3-2.2,26.5,0.3,34.7,10.4\n\t\t\tc7,8.5,9.4,20.5,10.5,31.2c1.2,11.9,0.9,24,0.9,35.9c0.1,17.8,0.1,35.6,0.2,53.3c0,17.2,0.7,34.6-0.1,51.9\n\t\t\tc-0.5,12.3-2.3,29.4-13.7,36.8c-10.7,6.9-25.5,4.2-31.6-7.1c-6.9-12.7-6.2-29-6.4-43c-0.3-17.5-0.6-35.1-0.7-52.6\n\t\t\tc-0.1-12.9-1.3-27,2.1-39.5c1.5-5.5,4.4-11.2,10.6-12c6-0.7,9.9,3.8,12,8.9c4.2,10,3,21.3,2.9,31.8c-0.2,23.9-0.5,47.9-0.7,71.8\n\t\t\tc0,1.7,0,3.4-0.1,5.2c-0.1,9.7,14.9,9.7,15,0c0.2-22.2,0.4-44.4,0.7-66.6c0.1-11.7,1.1-23.8-0.7-35.4\n\t\t\tc-2.6-17.4-14.6-34.6-34.3-29.9c-17.5,4.1-21.7,24.4-22.4,39.8c-0.7,16.2-0.2,32.6,0,48.8c0.2,18-0.5,36.5,1.7,54.4\n\t\t\tc1.9,15.7,6.9,33.6,22.5,40.7c15.4,7,35.2,2.8,45.7-10.5c11-13.8,12.3-33.1,12.3-50.1c0-36.8-0.1-73.6-0.3-110.4\n\t\t\tC182.2,55,180.7,21.2,155,7.2c-14.6-8-34-8-49-1.1c-13.4,6.1-21.7,19-26,32.6c-4,12.7-4.9,26.3-5.6,39.5\n\t\t\tc-0.6,11.8-0.8,23.6-0.9,35.5c-0.2,27-0.2,54,0,81c0,1.8,0,3.6,0,5.4C73.7,209.6,88.7,209.6,88.6,199.9L88.6,199.9z"}))},dl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M0,128C0,57.3,57.3,0,128,0c70.7,0,128,57.3,128,128l0,0c0,70.7-57.3,128-128,128h0C57.3,256,0,198.7,0,128\n\t\t\tC0,128,0,128,0,128L0,128z M25,128c0.1,56.9,46.1,102.9,103,103c56.9-0.1,102.9-46.1,103-103c-0.1-56.9-46.1-102.9-103-103\n\t\t\tC71.1,25.1,25.1,71.1,25,128L25,128z"}),r.createElement("path",{d:"M199.1,91.8L199.1,91.8L126,183.2c-2.5,2.7-6.1,4.3-9.8,4.4h-0.3c-3.6,0-7.1-1.4-9.7-4l0,0l-48.4-48.4\n\tc-5.8-4.9-6.5-13.5-1.6-19.3s13.5-6.5,19.3-1.6c0.3,0.2,0.6,0.5,0.8,0.8c0.3,0.3,0.6,0.5,0.8,0.8l38.4,38.3l63.6-81l0.4-0.4l0,0\n\tc5.3-5.4,14-5.6,19.4-0.3C204.3,77.6,204.4,86.3,199.1,91.8L199.1,91.8"}))},pl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M94.8,186.7L36.1,128l58.7-58.7L76.9,51.4L0.3,128l76.6,76.6L94.8,186.7z M161.2,186.7l58.7-58.7l-58.7-58.7l17.9-17.9\n\tl76.6,76.6l-76.6,76.6C179.1,204.6,161.2,186.7,161.2,186.7z"}))},hl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M79.2,219.4h36.6V256h24.4v-36.6h36.6L128,170.7L79.2,219.4z M176.8,36.6h-36.6V0h-24.4v36.6H79.2L128,85.3L176.8,36.6z"}),r.createElement("line",{className:"st0",x1:"7.6",y1:"87.9",x2:"248.4",y2:"87.9"}),r.createElement("path",{d:"M237.6,123.4H18.4c-5.9,0-10.7-4.8-10.7-10.7v-3.9c0-5.9,4.8-10.7,10.7-10.7h219.3c5.9,0,10.7,4.8,10.7,10.7v3.9\n\tC248.4,118.6,243.5,123.4,237.6,123.4z"}),r.createElement("path",{d:"M237.6,160.5H18.4c-5.9,0-10.7-4.8-10.7-10.7v-3.9c0-5.9,4.8-10.7,10.7-10.7h219.3c5.9,0,10.7,4.8,10.7,10.7v3.9\n\tC248.4,155.7,243.5,160.5,237.6,160.5z"}))},ml=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M102.9,30.9c19.9,0,37.9,8.1,51,21l-36.6,36.6h86.4V2.1l-29.5,29.5c-18.3-18.3-43.5-29.5-71.3-29.5\n\tc-50.8,0-92.6,37.6-99.6,86.4h29.1C39,55.7,68,30.9,102.9,30.9z M184.1,162.5c9.5-13,16.1-28.4,18.4-45.2h-29.1\n\tc-6.6,32.8-35.7,57.6-70.5,57.6c-19.9,0-37.9-8.1-51-21l36.6-36.6H2.1v86.4l29.5-29.5c18.3,18.3,43.5,29.5,71.3,29.5\n\tc22.3,0,42.9-7.3,59.6-19.6l70,69.8l21.4-21.4C253.9,232.4,184.1,162.5,184.1,162.5z"}))},fl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M226.3,1.7H29.7C14.3,1.7,1.8,14.3,1.8,29.7L1.7,226.3c0,15.4,12.6,28.1,28.1,28.1h196.5c15.4,0,28.1-12.6,28.1-28.1V29.7\n\tC254.3,14.3,241.7,1.7,226.3,1.7z M212.2,156.1h-56.1v56.1H99.9v-56.1H43.8V99.9h56.1V43.8h56.1v56.1h56.1V156.1z"}))},gl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("path",{d:"M96.3,47.3C96.9,43.2,110.9,20,128,20c17.5,0,31.7,12.7,31.7,28.3v26.6H96.3H73.9H45.1C20.2,74.9,0,93,0,115.2V200\n\t\t\tc0,21.9,19.6,39.8,44,40.4l84,14.6l84-14.6c24.4-0.6,44-18.4,44-40.4v-84.8c0-22.3-20.2-40.4-45.1-40.4h-28.7V48.2\n\t\t\tC182.1,21.6,157.8,0,128,0c-28,0-51.2,19.1-53.9,43.5 M233.6,200c0,11.2-10.2,20.4-22.7,20.4h-1.1L128,234.6l-81.8-14.2h-1.1\n\t\t\tc-12.5,0-22.7-9.1-22.7-20.4v-84.8c0-11.2,10.2-20.4,22.7-20.4h165.7c12.5,0,22.7,9.1,22.7,20.4L233.6,200z"}),r.createElement("path",{d:"M127.7,139.7c-10.5,0-19.1,8.5-19.1,19.1c0,0,0,0,0,0c0,6.3,3.1,12.3,8.4,15.8V190c0,5.6,4.5,10.1,10.1,10.1h1.2\n\t\t\tc5.6,0,10.1-4.5,10.1-10.1v-15.4c5.3-3.5,8.4-9.5,8.4-15.8C146.8,148.3,138.2,139.7,127.7,139.7z"})))},bl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("path",{d:"M256,239.6c0,9.1-7.4,16.4-16.5,16.4H104.1c-21.8,0-21.8-32.8,0-32.8h118.8V32.8H104.1c-21.8,0-21.8-32.8,0-32.8h135.4\n\t\t\tc9.1,0,16.5,7.3,16.5,16.4V239.6z M16.3,111.6h138.2L135.8,93c-15.4-15.3,8-38.5,23.4-23.2l46.9,46.5c6.5,6.3,6.6,16.6,0.3,23.1\n\t\t\tc-0.1,0.1-0.2,0.2-0.3,0.3l-46.9,46.5c-15.4,15.3-38.8-7.9-23.4-23.2l18.7-18.6H16.3C5.4,144.4,0,136.2,0,128\n\t\t\tS5.4,111.6,16.3,111.6L16.3,111.6z"}),r.createElement("path",{d:"M256.5,16.4v223.2c0,9.4-7.7,16.9-17,16.9H104.1c-4.8,0.2-9.4-1.8-12.6-5.3c-1.4-1.6-2.5-3.4-3.2-5.4\n\t\t\tc-0.7-2-1.1-4.1-1-6.2c0-2.1,0.3-4.2,1-6.2c0.7-2,1.8-3.8,3.2-5.4c3.2-3.5,7.8-5.5,12.6-5.3h118.3V33.3H104.1\n\t\t\tc-4.8,0.2-9.4-1.8-12.6-5.3c-1.4-1.6-2.5-3.4-3.2-5.4c-0.7-2-1.1-4.1-1-6.2c0-2.1,0.3-4.2,1-6.2c0.7-2,1.8-3.8,3.2-5.4\n\t\t\tc3.2-3.5,7.8-5.5,12.6-5.3h135.4c2.3,0,4.5,0.4,6.6,1.3c2,0.8,3.9,2.1,5.4,3.6c1.6,1.5,2.8,3.4,3.7,5.4\n\t\t\tC256.1,11.9,256.5,14.1,256.5,16.4L256.5,16.4z M88.3,239.6c0,2,0.3,4,1,5.9c0.6,1.9,1.7,3.6,3,5.1c3,3.3,7.4,5.1,11.9,5h135.4\n\t\t\tc8.8,0,16-7.1,16-15.9V16.4c0-8.8-7.2-15.9-16-15.9H104.1c-4.5-0.2-8.8,1.6-11.9,5c-1.3,1.5-2.3,3.2-3,5.1c-0.7,1.9-1,3.9-1,5.9\n\t\t\tc0,2,0.3,4,1,5.9c0.6,1.9,1.7,3.6,3,5.1c3,3.3,7.4,5.1,11.9,5h119.3v191.4H104.1c-4.5-0.2-8.8,1.6-11.9,5c-1.3,1.5-2.3,3.2-3,5.1\n\t\t\tC88.6,235.6,88.3,237.6,88.3,239.6L88.3,239.6z M-0.5,128c0-2.1,0.3-4.2,1-6.2c0.7-2,1.8-3.8,3.2-5.4c3.2-3.5,7.8-5.5,12.6-5.3\n\t\t\th137l-17.9-17.7c-3.2-3-5.1-7.2-5.2-11.6c0-3.5,1.2-6.9,3.3-9.7c2-2.8,4.8-5.1,8.1-6.5c2.8-1.2,5.9-1.6,9-1.1\n\t\t\tc3.4,0.7,6.6,2.4,9,4.9l46.9,46.5c3.2,3.2,5.1,7.5,5.1,12c0,2.2-0.4,4.4-1.3,6.5c-0.9,2.1-2.2,4-3.8,5.6l-46.9,46.5\n\t\t\tc-2.4,2.5-5.6,4.2-9,4.9c-3,0.5-6.1,0.2-9-1c-3.2-1.4-6-3.6-8.1-6.5c-2.1-2.8-3.2-6.2-3.3-9.7c0.1-4.4,1.9-8.6,5.2-11.6l17.9-17.7\n\t\t\th-137c-4.8,0.2-9.4-1.8-12.6-5.3c-1.4-1.6-2.5-3.4-3.2-5.4C-0.1,132.2-0.5,130.1-0.5,128L-0.5,128z M155.7,112.1H16.3\n\t\t\tc-4.5-0.2-8.8,1.6-11.9,5c-1.3,1.5-2.3,3.2-3,5.1c-0.7,1.9-1,3.9-1,5.9c0,2,0.3,4,1,5.9c0.6,1.9,1.7,3.6,3,5.1\n\t\t\tc3,3.3,7.4,5.1,11.9,5h139.4l-0.9,0.9l-18.7,18.6c-3,2.8-4.8,6.7-4.9,10.9c0,3.3,1.1,6.5,3.1,9.1c1.9,2.7,4.6,4.8,7.6,6.1\n\t\t\tc2.6,1.1,5.6,1.5,8.4,1c3.2-0.6,6.2-2.2,8.5-4.6l46.9-46.5c1.5-1.5,2.7-3.3,3.6-5.3c0.8-1.9,1.2-4,1.2-6.1c0-4.3-1.7-8.3-4.8-11.3\n\t\t\tl-46.9-46.5c-2.3-2.4-5.2-4-8.5-4.6c-2.8-0.5-5.8-0.1-8.4,1c-3.1,1.3-5.7,3.4-7.6,6.1c-2,2.6-3,5.8-3.1,9.1\n\t\t\tc0.1,4.1,1.8,8.1,4.9,10.9L155.7,112.1z"})))},yl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M176.2,134c-33.3,0-60.3,27-60.3,60.3s27,60.3,60.3,60.3s60.3-27,60.3-60.3S209.5,134,176.2,134z M196.1,222.7l-25.9-25.9\n\tv-38.6h12.1v33.6l22.3,22.3L196.1,222.7z M188.3,25.5H150c-5.1-14-18.3-24.1-34-24.1S87,11.5,81.9,25.5H43.6\n\tc-13.3,0-24.1,10.9-24.1,24.1v180.9c0,13.3,10.9,24.1,24.1,24.1h73.7c-7.1-6.9-12.9-15.1-17.1-24.1H43.6V49.6h24.1v36.2h96.5V49.6\n\th24.1v61.3c8.6,1.2,16.6,3.7,24.1,7.2V49.6C212.4,36.3,201.6,25.5,188.3,25.5z M115.9,49.6c-6.6,0-12.1-5.4-12.1-12.1\n\ts5.4-12.1,12.1-12.1c6.6,0,12.1,5.4,12.1,12.1S122.6,49.6,115.9,49.6z"}))},vl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M97.9,5.3C30.4,22.2-10.7,90.7,6.2,158.1S91.6,266.7,159,249.8S267.5,164.4,250.7,97S165.3-11.5,97.9,5.3z M140.5,227.5\n\tc-49.8,6.1-97.3-25.6-109.8-75.5c-1.9-7.6-2.7-15-2.9-22.5l73.2,43.9l3.1,12.2c3.4,13.4,17.1,21.7,30.6,18.3L140.5,227.5z\n\t M217,175.4c-5.7-9.1-16.5-13.9-27.5-11.2l-12.2,3.1l-9.2-36.7c-1.7-6.7-8.6-10.8-15.3-9.2l-73.3,18.3l-6.1-24.4l24.4-6.1\n\tc6.7-1.7,10.8-8.6,9.2-15.3l-6.1-24.4l24.4-6.1c13.4-3.4,21.7-17.1,18.3-30.6l-1.3-5c39.4,5.6,73.5,34.3,83.8,75.3\n\tC232.6,128.5,228.6,154.1,217,175.4z"}))},El=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M135.5,105c-9.4-26.8-34.9-45.9-64.9-45.9C32.5,59.1,1.6,90,1.6,128s30.9,68.9,68.9,68.9c30,0,55.5-19.2,64.9-45.9h50v45.9\n\th45.9V151h23V105H135.5z M70.6,151c-12.6,0-23-10.3-23-23s10.3-23,23-23s23,10.3,23,23S83.2,151,70.6,151z"}))},wl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M102.7,171.8h74.4c3.4-3.9,8.5-6.3,14.2-6.3c10.5,0,19,8.5,19,19c0,10.5-8.5,19-19,19c-5.6,0-10.6-2.4-14.2-6.3h-50.4\n\tc-5.8,28.9-31.4,50.6-62,50.6c-34.9,0-63.3-28.3-63.3-63.3c0-30.6,21.8-56.2,50.6-62v26.2c-14.7,5.2-25.3,19.4-25.3,35.8\n\tc0,20.9,17.1,38,38,38s38-17.1,38-38V171.8z M134.3,32.6c20.9,0,38,17.1,38,38h25.3c0-34.9-28.3-63.3-63.3-63.3S71.1,35.6,71.1,70.6\n\tc0,18.1,7.6,34.3,19.6,45.8l-29.7,49.4c-8.6,1.8-15.2,9.5-15.2,18.7c0,10.5,8.5,19,19,19s19-8.5,19-19c0-2-0.3-3.9-0.9-5.7\n\tl42.8-71.2c-16.7-3.9-29.2-19-29.2-37C96.4,49.7,113.5,32.6,134.3,32.6z M191.3,146.5c-8.1,0-15.6,2.5-21.8,6.8l-38.6-64.2\n\tc-8.9-1.5-15.6-9.2-15.6-18.6c0-10.5,8.5-19,19-19c10.5,0,19,8.5,19,19c0,1.9-0.3,3.7-0.8,5.4l27.7,46.2c3.5-0.6,7.2-1,11-1\n\tc34.9,0,63.3,28.3,63.3,63.3s-28.3,63.3-63.3,63.3c-23.4,0-43.9-12.8-54.8-31.6h33.8c6.1,4,13.3,6.3,21,6.3c20.9,0,38-17.1,38-38\n\tS212.2,146.5,191.3,146.5z"}))},Sl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M170.6,2.2l32.3,32.3l-40.6,40.3l19.9,19.9l40.3-40.6l32.3,32.3V2.2H170.6z M2.2,86.4l32.3-32.3l40.3,40.6l19.9-19.9\n\tL54.1,34.4L86.4,2.2H2.2V86.4z M86.4,254.8l-32.3-32.3l40.6-40.3l-19.9-19.9l-40.3,40.6L2.2,170.6v84.2H86.4z M254.8,170.6\n\tl-32.3,32.3l-40.3-40.6l-19.9,19.9l40.6,40.3l-32.3,32.3h84.2V170.6z"}))},Al=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{transform:"translate(4 4.984)"},r.createElement("g",{transform:"translate(0.167 4.016) rotate(-90)"},r.createElement("path",{d:"M7.7,63.6c0-4.2-1.6-8.3-4.5-11.4c-5.1-5.9-14-6.4-19.9-1.3c-0.5,0.4-0.9,0.9-1.3,1.3L-118.8,161\n\t\t\tL-220.1,52.3c-5.1-5.9-14-6.4-19.9-1.3c-0.5,0.4-0.9,0.9-1.3,1.3c-5.9,6.5-5.9,16.4,0,22.8l111.7,120.4c2.6,3,6.4,4.7,10.4,4.8\n\t\t\ts7.9-1.7,10.4-4.8L2.9,75.2C5.9,72.1,7.7,67.9,7.7,63.6z"}))))},_l=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",fill:"currentcolor",viewBox:"0 0 256 256"},e),r.createElement("g",{transform:"translate(4 4.984)"},r.createElement("g",{transform:"translate(0.167 4.016) rotate(-90)"},r.createElement("path",{d:"M-245.7,184.1c0,4.2,1.6,8.3,4.5,11.4c5.1,5.9,14,6.4,19.9,1.3c0.5-0.4,0.9-0.9,1.3-1.3l100.9-108.9\n\t\t\tl101.3,108.7c5.1,5.9,14,6.4,19.9,1.3c0.5-0.4,0.9-0.9,1.3-1.3c5.9-6.5,5.9-16.4,0-22.8L-108.4,52.1c-2.6-3-6.4-4.7-10.4-4.8\n\t\t\tc-4-0.1-7.9,1.7-10.4,4.8l-111.7,120.3C-243.9,175.6-245.7,179.7-245.7,184.1z"}))))},Tl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("g",null,r.createElement("g",{transform:"translate(0 0)"},r.createElement("path",{d:"M228.4,151.3c-54.3,14-109.7-18.6-123.7-73c-4.3-16.6-4.3-34.1,0-50.7L111.8,0L84.9,9.4C34,27.3,0,75.3,0,129.2\n\t\t\tC0,199.1,56.9,256,126.8,256h0.1c53.9-0.1,101.8-34.1,119.6-84.9l9.4-26.9L228.4,151.3z",fill:"currentcolor"}))))},Cl=function(e){return r.createElement("svg",Ve({xmlns:"http://www.w3.org/2000/svg",className:"min-icon",viewBox:"0 0 256 256"},e),r.createElement("path",{d:"M113.8,241.7v-27c0-7.7,6.2-13.9,13.9-13.9c7.7,0,13.9,6.2,13.9,13.9l0,0v27c0,7.7-6.2,13.9-13.9,13.9\n\tC120,255.6,113.8,249.4,113.8,241.7L113.8,241.7z M198.3,218.2l-19.1-19.1c-5.4-5.4-5.4-14.2,0-19.6c5.4-5.4,14.2-5.4,19.6,0\n\tl19.1,19.1c5.4,5.4,5.4,14.2,0,19.6C212.4,223.6,203.7,223.6,198.3,218.2L198.3,218.2L198.3,218.2z M37.4,218.2\n\tc-5.4-5.4-5.4-14.2,0-19.6l19.1-19.1c5.4-5.4,14.2-5.4,19.6,0s5.4,14.2,0,19.6l0,0L57,218.2C51.6,223.6,42.8,223.6,37.4,218.2\n\tL37.4,218.2z M72.1,128c0-29.9,24.3-54.1,54.1-54.1c6,0,11.9,1,17.5,2.9c28.2,8.9,43.9,39,35,67.3c-5.3,16.7-18.4,29.8-35.1,35\n\tc-28.3,9.7-59-5.4-68.7-33.7C73.1,139.9,72.1,134,72.1,128L72.1,128z M214.4,142.6c-8.1,0-14.6-6.6-14.6-14.6s6.6-14.6,14.6-14.6\n\tl0,0h27c8.1,0,14.6,6.6,14.6,14.6s-6.6,14.6-14.6,14.6H214.4z M13.9,141.9c-7.7,0.1-13.9-6.1-14-13.7c-0.1-7.7,6.1-13.9,13.7-14\n\tc0.1,0,0.2,0,0.2,0h27c7.7-0.1,13.9,6.1,14,13.7s-6.1,13.9-13.7,14c-0.1,0-0.2,0-0.2,0H13.9z M179.1,76.5c-5.4-5.4-5.4-14.2,0-19.6\n\tl19.1-19.1c5.4-5.4,14.2-5.4,19.6,0c5.4,5.4,5.4,14.2,0,19.6l-19.1,19.1C193.3,81.9,184.6,81.9,179.1,76.5L179.1,76.5z M56.5,76.5\n\tL37.4,57.4c-5.4-5.4-5.4-14.2,0-19.6s14.2-5.4,19.6,0l19.1,19.1c5.4,5.4,5.4,14.2,0,19.6c-2.6,2.6-6.1,4.1-9.8,4.1\n\tC62.6,80.5,59.1,79.1,56.5,76.5z M113.8,41.3v-27c0-7.7,6.2-13.9,13.9-13.9c7.7,0,13.9,6.2,13.9,13.9v27c0,7.7-6.2,13.9-13.9,13.9\n\tC120,55.2,113.8,48.9,113.8,41.3z",fill:"currentcolor"}))},xl=(0,o.i7)(yo||(yo=Ze(["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"],["\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n"]))),Il=o.Ay.span({display:"inline-flex",position:"relative"},(0,o.AH)(vo||(vo=Ze(["\n &:hover {\n & .tooltipElement {\n display: block;\n animation: "," 1s;\n }\n }\n "],["\n &:hover {\n & .tooltipElement {\n display: block;\n animation: "," 1s;\n }\n }\n "])),xl)),Ol=o.Ay.div((function(e){var t=e.theme,n=e.placement,r="6px",o=Wn(t,"tooltip.background","#737373"),a=Wn(t,"tooltip.color","#FFFFFF"),i={},s={content:"' '",left:"50%",border:"solid transparent",height:0,width:0,position:"absolute",pointerEvents:"none",borderWidth:r,marginLeft:"calc(".concat(r," * -1);")};switch(n){case"top":i={transform:"translateX(-50%) translateY(-50%)","&::before":Ve(Ve({},s),{top:"100%",borderTopColor:o})};break;case"right":i={transform:"translateX(0) translateY(-50%)","&::before":Ve(Ve({},s),{left:"calc(".concat(r," * -1)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderRightColor:o})};break;case"left":i={transform:"translateX(-100%) translateY(-50%)","&::before":Ve(Ve({},s),{left:"auto",right:"calc(".concat(r," * -2)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderLeftColor:o})};break;default:i={transform:"translateX(-50%)","&::before":Ve(Ve({},s),{bottom:"100%",borderBottomColor:o})}}return Ve({position:"fixed",borderRadius:4,color:a,background:o,lineHeight:1,zIndex:10001,padding:2,fontSize:12,boxShadow:"#00000050 0px 3px 10px",maxWidth:350},i)})),kl=o.Ay.div((function(e){var t=e.theme,n=e.placement,r="6px",o=Wn(t,"tooltip.background","#737373"),a={},i={content:"' '",left:"50%",height:0,width:0,position:"absolute",pointerEvents:"none",marginLeft:"calc(".concat(r," * -1);")};switch(n){case"top":a={transform:"translateX(-50%) translateY(-50%)","&::before":Ve(Ve({},i),{top:"100%",borderTopColor:o})};break;case"right":a={transform:"translateX(0) translateY(-50%)","&::before":Ve(Ve({},i),{left:"calc(".concat(r," * -1)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderRightColor:o})};break;case"left":a={transform:"translateX(-100%) translateY(-50%)","&::before":Ve(Ve({},i),{left:"auto",right:"calc(".concat(r," * -2)"),top:"50%",transform:"translateX(0) translateY(-50%)",borderLeftColor:o})};break;default:a={transform:"translateX(-50%)","&::before":Ve(Ve({},i),{bottom:"100%",borderBottomColor:o})}}return Ve({position:"fixed",color:o,zIndex:10001},a)})),Nl=o.Ay.div((function(e){var t=e.theme;return{border:"1px solid ".concat(Wn(t,"borderColor","#E2E2E2")),borderRadius:2,backgroundColor:Wn(t,"boxBackground","#FBFAFA"),paddingLeft:10,paddingTop:5,paddingBottom:5,paddingRight:10,"& .leftItems":{fontSize:16,fontWeight:"bold",display:"flex",alignItems:"center","& .min-icon":{marginRight:5,height:28,width:38}},"& .helpText":{fontSize:10,paddingLeft:5,marginTop:5,color:"black"}}})),Rl=function(e){var t,n=e.children,o=e.content,i=e.placement,s=(0,r.useState)(null),l=s[0],c=s[1],u=(0,r.useState)(!1),d=u[0],p=u[1],h=(0,r.useState)(!1),m=h[0],f=h[1],g=function(){m||(p(!1),f(!0))},b=(0,r.useRef)(null);return(0,r.useEffect)((function(){function e(e){t.current&&!t.current.contains(e.target)&&f(!1)}return document.addEventListener("mousedown",e),function(){document.removeEventListener("mousedown",e)}}),[t=b]),i?r.createElement(r.Fragment,null,r.createElement(Il,{ref:b,onPointerEnter:function(e){m||(c(e.currentTarget),p(!0))},onMouseLeave:function(){m?setTimeout((function(){p(!1),f(!1)}),5e4):setTimeout((function(){p(!1)}),1e3)}},n,d&&!m&&(0,a.createPortal)(r.createElement((function(e){var t=e.placement,n=e.anchorEl,o={},a=t;if(n){var i=n.getBoundingClientRect(),s=document.documentElement.offsetWidth,l=document.documentElement.offsetHeight;switch(t){case"bottom":i.top+i.height+45>l&&(a="top");break;case"left":i.left;break;case"right":i.left+i.width+175>s&&(a="left");break;case"top":i.top<45&&(a="bottom")}switch(a){case"bottom":o={top:i.top+i.height+10,left:i.left+i.width/2};break;case"left":o={top:i.top+i.height/2,left:i.left-12};break;case"right":o={top:i.top+i.height/2,left:i.left+i.width+12};break;case"top":o={top:i.top-i.height/2-10,left:i.left+i.width/2}}}return r.createElement(kl,{placement:a,style:o,onClick:g},r.createElement(ta,{style:{width:12,height:12}}))}),{placement:i,content:r.createElement(ta,null),anchorEl:l}),document.body),m&&(0,a.createPortal)(r.createElement((function(e){var t=e.placement,n=e.content,o=e.anchorEl,a={},i=t;if(o){var s=o.getBoundingClientRect(),l=document.documentElement.offsetWidth,c=document.documentElement.offsetHeight;switch(t){case"bottom":s.top+s.height+25>c&&(i="top");break;case"left":s.left-175<0&&(i="right");break;case"right":s.left+s.width+175>l&&(i="left");break;case"top":s.top<25&&(i="bottom")}switch(i){case"bottom":a={top:s.top+s.height+10,left:s.left+s.width/2};break;case"left":a={top:s.top+s.height/2,left:s.left-12};break;case"right":a={top:s.top+s.height/2,left:s.left+s.width+12};break;case"top":a={top:s.top-s.height/2-10,left:s.left+s.width/2}}}return r.createElement(Ol,{placement:i,style:a,onClick:g},n)}),{placement:i,content:r.createElement(Nl,{className:"helpbox-container",ref:b},r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,xs:12,className:"helpText"},o))),anchorEl:l}),document.body))):r.createElement(r.Fragment,null,n)},Ml=o.Ay.label((function(e){var t=e.theme,n=e.sx;return Ve({fontWeight:600,marginRight:10,fontSize:14,color:Wn(t,"commonInput.labelColor","#07193E"),textAlign:"left",alignItems:"center",display:"flex",userSelect:"none",whiteSpace:"nowrap","& > span":{display:"flex",alignItems:"center",minWidth:160,"&.noMinWidthLabel":{minWidth:"initial"}}},n)})),Ll=function(e){var t=e.children,n=e.sx,o=e.noMinWidth,a=e.htmlFor,i=e.helpTip,s=e.helpTipPlacement,l=qe(e,["children","sx","noMinWidth","htmlFor","helpTip","helpTipPlacement"]);return r.createElement(Ml,Ve({sx:n,htmlFor:a},l),r.createElement("span",{className:"".concat(o?"noMinWidthLabel":"")},i?r.createElement(Rl,{placement:s,content:i},t):t))},Dl=o.Ay.div((function(e){var t,n=e.sx;return Ve(((t={position:"relative",display:"flex",flexWrap:"wrap",width:"100%",flexBasis:"100%"})["@media (max-width: ".concat(i.sm,")")]={flexFlow:"column"},t["& .tooltipContainer"]={marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},t),n)})),Pl=function(e){var t=e.children,n=e.sx,o=e.className;return r.createElement(Dl,{sx:n,className:o},t)},Bl=o.Ay.label((function(e){var t=e.sx,n=e.theme;return Ve({"& input":{display:"none"},"& .checkbox":{position:"relative",display:"block",width:16,height:16,borderRadius:2,border:"1px solid ".concat(Wn(n,"checkbox.checkBoxBorder","#c3c3c3")),boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)"},"input:checked ~ .checkbox":{"&:before":{content:"' '",position:"absolute",display:"block",width:12,height:12,backgroundColor:Wn(n,"checkbox.checkBoxColor","#4CCB92"),borderRadius:1,top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"}},"input:disabled":{"& ~ .checkbox":{border:"1px solid ".concat(Wn(n,"checkbox.disabledBorder","#B4B4B4"))},"&:checked ~ .checkbox":{"&:before":{backgroundColor:Wn(n,"checkbox.disabledColor","#D5D7D7")}}}},t)})),Fl=function(e){var t=e.tooltip,n=e.label,o=e.id,a=e.overrideLabelClasses,i=e.sx,s=e.className,l=e.helpTip,c=e.helpTipPlacement,u=qe(e,["tooltip","label","id","overrideLabelClasses","sx","className","helpTip","helpTipPlacement"]);return r.createElement(Pl,{className:"inputItem ".concat(s||""),sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"}},r.createElement(Bl,{sx:i,onClick:function(e){return e.stopPropagation()}},r.createElement("input",Ve({type:"checkbox",id:o},u)),r.createElement("span",{className:"checkbox"})),""!==n&&r.createElement(Ll,{htmlFor:o,noMinWidth:!0,className:"".concat(a||""),sx:{marginLeft:10},helpTip:l,helpTipPlacement:c},n,t&&""!==t&&r.createElement("div",{className:"tooltipContainer"},r.createElement(Wo,{tooltip:t,placement:"top"},r.createElement(Wa,null)))))},jl=o.Ay.button((function(e){var t=e.theme,n=e.size,r=30;if(n&&"string"==typeof n)switch(n){case"small":r=28;break;case"medium":r=30;break;case"large":r=48;break;default:r=n}return{width:r,height:r,display:"flex",justifyContent:"center",alignItems:"center",borderRadius:"100%",border:0,position:"relative",cursor:"pointer",transitionDuration:"0.2s",backgroundColor:Wn(t,"iconButton.buttonBG","#000"),"& svg":{fill:Wn(t,"iconButton.color","#000"),margin:"calc(25% - 2px)"},"&:hover:not(:disabled)":{backgroundColor:Wn(t,"iconButton.hoverBG","#000")},"&:active:not(:disabled)":{backgroundColor:Wn(t,"iconButton.activeBG","#000")},"&:disabled":{cursor:"not-allowed",backgroundColor:Wn(t,"iconButton.disabledBG","#000")}}})),zl=function(e){var t=e.children,n=qe(e,["children"]);return r.createElement(jl,Ve({},n),t)};function Ul(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Hl(e){return Hl="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},Hl(e)}function Gl(e){var t=function(e,t){if("object"!=Hl(e)||!e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,"string");if("object"!=Hl(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==Hl(t)?t:t+""}function Vl(e,t){for(var n=0;n=0&&l===s&&c())}function ic(e,t){if(null==e)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;n[r]=e[r]}return n}function sc(e,t){if(null==e)return{};var n,r,o=ic(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=this._cellCount)throw Error("Requested index ".concat(e," is outside of range 0..").concat(this._cellCount));if(e>this._lastMeasuredIndex)for(var t=this.getSizeAndPositionOfLastMeasuredCell(),n=t.offset+t.size,r=this._lastMeasuredIndex+1;r<=e;r++){var o=this._cellSizeGetter({index:r});if(void 0===o||isNaN(o))throw Error("Invalid size returned for cell ".concat(r," of value ").concat(o));null===o?(this._cellSizeAndPositionData[r]={offset:n,size:0},this._lastBatchedIndex=e):(this._cellSizeAndPositionData[r]={offset:n,size:o},n+=o,this._lastMeasuredIndex=e)}return this._cellSizeAndPositionData[e]}},{key:"getSizeAndPositionOfLastMeasuredCell",value:function(){return this._lastMeasuredIndex>=0?this._cellSizeAndPositionData[this._lastMeasuredIndex]:{offset:0,size:0}}},{key:"getTotalSize",value:function(){var e=this.getSizeAndPositionOfLastMeasuredCell();return e.offset+e.size+(this._cellCount-this._lastMeasuredIndex-1)*this._estimatedCellSize}},{key:"getUpdatedOffsetForIndex",value:function(e){var t=e.align,n=void 0===t?"auto":t,r=e.containerSize,o=e.currentOffset,a=e.targetIndex;if(r<=0)return 0;var i,s=this.getSizeAndPositionOfCell(a),l=s.offset,c=l-r+s.size;switch(n){case"start":i=l;break;case"end":i=c;break;case"center":i=l-(r-s.size)/2;break;default:i=Math.max(c,Math.min(l,o))}var u=this.getTotalSize();return Math.max(0,Math.min(u-r,i))}},{key:"getVisibleCellRange",value:function(e){var t=e.containerSize,n=e.offset;if(0===this.getTotalSize())return{};var r=n+t,o=this._findNearestCell(n),a=this.getSizeAndPositionOfCell(o);n=a.offset+a.size;for(var i=o;nn&&(e=r-1)}return t>0?t-1:0}},{key:"_exponentialSearch",value:function(e,t){for(var n=1;e=e?this._binarySearch(n,0,e):this._exponentialSearch(n,e)}}]),e}(),mc=function(){function e(t){var n=t.maxScrollSize,r=void 0===n?"undefined"!=typeof window&&window.chrome?16777100:15e5:n,o=sc(t,["maxScrollSize"]);Ul(this,e),Xl(this,"_cellSizeAndPositionManager",void 0),Xl(this,"_maxScrollSize",void 0),this._cellSizeAndPositionManager=new hc(o),this._maxScrollSize=r}return ql(e,[{key:"areOffsetsAdjusted",value:function(){return this._cellSizeAndPositionManager.getTotalSize()>this._maxScrollSize}},{key:"configure",value:function(e){this._cellSizeAndPositionManager.configure(e)}},{key:"getCellCount",value:function(){return this._cellSizeAndPositionManager.getCellCount()}},{key:"getEstimatedCellSize",value:function(){return this._cellSizeAndPositionManager.getEstimatedCellSize()}},{key:"getLastMeasuredIndex",value:function(){return this._cellSizeAndPositionManager.getLastMeasuredIndex()}},{key:"getOffsetAdjustment",value:function(e){var t=e.containerSize,n=e.offset,r=this._cellSizeAndPositionManager.getTotalSize(),o=this.getTotalSize(),a=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:o});return Math.round(a*(o-r))}},{key:"getSizeAndPositionOfCell",value:function(e){return this._cellSizeAndPositionManager.getSizeAndPositionOfCell(e)}},{key:"getSizeAndPositionOfLastMeasuredCell",value:function(){return this._cellSizeAndPositionManager.getSizeAndPositionOfLastMeasuredCell()}},{key:"getTotalSize",value:function(){return Math.min(this._maxScrollSize,this._cellSizeAndPositionManager.getTotalSize())}},{key:"getUpdatedOffsetForIndex",value:function(e){var t=e.align,n=void 0===t?"auto":t,r=e.containerSize,o=e.currentOffset,a=e.targetIndex;o=this._safeOffsetToOffset({containerSize:r,offset:o});var i=this._cellSizeAndPositionManager.getUpdatedOffsetForIndex({align:n,containerSize:r,currentOffset:o,targetIndex:a});return this._offsetToSafeOffset({containerSize:r,offset:i})}},{key:"getVisibleCellRange",value:function(e){var t=e.containerSize,n=e.offset;return n=this._safeOffsetToOffset({containerSize:t,offset:n}),this._cellSizeAndPositionManager.getVisibleCellRange({containerSize:t,offset:n})}},{key:"resetCell",value:function(e){this._cellSizeAndPositionManager.resetCell(e)}},{key:"_getOffsetPercentage",value:function(e){var t=e.containerSize,n=e.offset,r=e.totalSize;return r<=t?0:n/(r-t)}},{key:"_offsetToSafeOffset",value:function(e){var t=e.containerSize,n=e.offset,r=this._cellSizeAndPositionManager.getTotalSize(),o=this.getTotalSize();if(r===o)return n;var a=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:r});return Math.round(a*(o-t))}},{key:"_safeOffsetToOffset",value:function(e){var t=e.containerSize,n=e.offset,r=this._cellSizeAndPositionManager.getTotalSize(),o=this.getTotalSize();if(r===o)return n;var a=this._getOffsetPercentage({containerSize:t,offset:n,totalSize:o});return Math.round(a*(r-t))}}]),e}();function fc(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0],t={};return function(n){var r=n.callback,o=n.indices,a=Object.keys(o),i=!e||a.every((function(e){var t=o[e];return Array.isArray(t)?t.length>0:t>=0})),s=a.length!==Object.keys(t).length||a.some((function(e){var n=t[e],r=o[e];return Array.isArray(r)?n.join(",")!==r.join(","):n!==r}));t=o,i&&s&&r(o)}}function gc(e){var t=e.cellSize,n=e.cellSizeAndPositionManager,r=e.previousCellsCount,o=e.previousCellSize,a=e.previousScrollToAlignment,i=e.previousScrollToIndex,s=e.previousSize,l=e.scrollOffset,c=e.scrollToAlignment,u=e.scrollToIndex,d=e.size,p=e.sizeJustIncreasedFromZero,h=e.updateScrollIndexCallback,m=n.getCellCount(),f=u>=0&&u0&&(dn.getTotalSize()-d&&h(m-1)}var bc,yc,vc=!("undefined"==typeof window||!window.document||!window.document.createElement);function Ec(e){if((!bc&&0!==bc||e)&&vc){var t=document.createElement("div");t.style.position="absolute",t.style.top="-9999px",t.style.width="50px",t.style.height="50px",t.style.overflow="scroll",document.body.appendChild(t),bc=t.offsetWidth-t.clientWidth,document.body.removeChild(t)}return bc}var wc,Sc,Ac=(yc="undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).requestAnimationFrame||yc.webkitRequestAnimationFrame||yc.mozRequestAnimationFrame||yc.oRequestAnimationFrame||yc.msRequestAnimationFrame||function(e){return yc.setTimeout(e,1e3/60)},_c=yc.cancelAnimationFrame||yc.webkitCancelAnimationFrame||yc.mozCancelAnimationFrame||yc.oCancelAnimationFrame||yc.msCancelAnimationFrame||function(e){yc.clearTimeout(e)},Tc=Ac,Cc=_c,xc=function(e){return Cc(e.id)},Ic=function(e,t){var n;Promise.resolve().then((function(){n=Date.now()}));var r={id:Tc((function o(){Date.now()-n>=t?e.call():r.id=Tc(o)}))};return r};function Oc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function kc(e){for(var t=1;t0&&(n._initialScrollTop=n._getCalculatedScrollTop(t,n.state)),t.scrollToColumn>0&&(n._initialScrollLeft=n._getCalculatedScrollLeft(t,n.state)),n}return Kl(e,r.PureComponent),ql(e,[{key:"getOffsetForCell",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.alignment,n=void 0===t?this.props.scrollToAlignment:t,r=e.columnIndex,o=void 0===r?this.props.scrollToColumn:r,a=e.rowIndex,i=void 0===a?this.props.scrollToRow:a,s=kc({},this.props,{scrollToAlignment:n,scrollToColumn:o,scrollToRow:i});return{scrollLeft:this._getCalculatedScrollLeft(s),scrollTop:this._getCalculatedScrollTop(s)}}},{key:"getTotalRowsHeight",value:function(){return this.state.instanceProps.rowSizeAndPositionManager.getTotalSize()}},{key:"getTotalColumnsWidth",value:function(){return this.state.instanceProps.columnSizeAndPositionManager.getTotalSize()}},{key:"handleScrollEvent",value:function(e){var t=e.scrollLeft,n=void 0===t?0:t,r=e.scrollTop,o=void 0===r?0:r;if(!(o<0)){this._debounceScrollEnded();var a=this.props,i=a.autoHeight,s=a.autoWidth,l=a.height,c=a.width,u=this.state.instanceProps,d=u.scrollbarSize,p=u.rowSizeAndPositionManager.getTotalSize(),h=u.columnSizeAndPositionManager.getTotalSize(),m=Math.min(Math.max(0,h-c+d),n),f=Math.min(Math.max(0,p-l+d),o);if(this.state.scrollLeft!==m||this.state.scrollTop!==f){var g={isScrolling:!0,scrollDirectionHorizontal:m!==this.state.scrollLeft?m>this.state.scrollLeft?1:-1:this.state.scrollDirectionHorizontal,scrollDirectionVertical:f!==this.state.scrollTop?f>this.state.scrollTop?1:-1:this.state.scrollDirectionVertical,scrollPositionChangeReason:"observed"};i||(g.scrollTop=f),s||(g.scrollLeft=m),g.needToResetStyleCache=!1,this.setState(g)}this._invokeOnScrollMemoizer({scrollLeft:m,scrollTop:f,totalColumnsWidth:h,totalRowsHeight:p})}}},{key:"invalidateCellSizeAfterRender",value:function(e){var t=e.columnIndex,n=e.rowIndex;this._deferredInvalidateColumnIndex="number"==typeof this._deferredInvalidateColumnIndex?Math.min(this._deferredInvalidateColumnIndex,t):t,this._deferredInvalidateRowIndex="number"==typeof this._deferredInvalidateRowIndex?Math.min(this._deferredInvalidateRowIndex,n):n}},{key:"measureAllCells",value:function(){var e=this.props,t=e.columnCount,n=e.rowCount,r=this.state.instanceProps;r.columnSizeAndPositionManager.getSizeAndPositionOfCell(t-1),r.rowSizeAndPositionManager.getSizeAndPositionOfCell(n-1)}},{key:"recomputeGridSize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r,a=this.props,i=a.scrollToColumn,s=a.scrollToRow,l=this.state.instanceProps;l.columnSizeAndPositionManager.resetCell(n),l.rowSizeAndPositionManager.resetCell(o),this._recomputeScrollLeftFlag=i>=0&&(1===this.state.scrollDirectionHorizontal?n<=i:n>=i),this._recomputeScrollTopFlag=s>=0&&(1===this.state.scrollDirectionVertical?o<=s:o>=s),this._styleCache={},this._cellCache={},this.forceUpdate()}},{key:"scrollToCell",value:function(e){var t=e.columnIndex,n=e.rowIndex,r=this.props.columnCount,o=this.props;r>1&&void 0!==t&&this._updateScrollLeftForScrollToColumn(kc({},o,{scrollToColumn:t})),void 0!==n&&this._updateScrollTopForScrollToRow(kc({},o,{scrollToRow:n}))}},{key:"componentDidMount",value:function(){var t=this.props,n=t.getScrollbarSize,r=t.height,o=t.scrollLeft,a=t.scrollToColumn,i=t.scrollTop,s=t.scrollToRow,l=t.width,c=this.state.instanceProps;if(this._initialScrollTop=0,this._initialScrollLeft=0,this._handleInvalidatedGridSize(),c.scrollbarSizeMeasured||this.setState((function(e){var t=kc({},e,{needToResetStyleCache:!1});return t.instanceProps.scrollbarSize=n(),t.instanceProps.scrollbarSizeMeasured=!0,t})),"number"==typeof o&&o>=0||"number"==typeof i&&i>=0){var u=e._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:o,scrollTop:i});u&&(u.needToResetStyleCache=!1,this.setState(u))}this._scrollingContainer&&(this._scrollingContainer.scrollLeft!==this.state.scrollLeft&&(this._scrollingContainer.scrollLeft=this.state.scrollLeft),this._scrollingContainer.scrollTop!==this.state.scrollTop&&(this._scrollingContainer.scrollTop=this.state.scrollTop));var d=r>0&&l>0;a>=0&&d&&this._updateScrollLeftForScrollToColumn(),s>=0&&d&&this._updateScrollTopForScrollToRow(),this._invokeOnGridRenderedHelper(),this._invokeOnScrollMemoizer({scrollLeft:o||0,scrollTop:i||0,totalColumnsWidth:c.columnSizeAndPositionManager.getTotalSize(),totalRowsHeight:c.rowSizeAndPositionManager.getTotalSize()}),this._maybeCallOnScrollbarPresenceChange()}},{key:"componentDidUpdate",value:function(e,t){var n=this,r=this.props,o=r.autoHeight,a=r.autoWidth,i=r.columnCount,s=r.height,l=r.rowCount,c=r.scrollToAlignment,u=r.scrollToColumn,d=r.scrollToRow,p=r.width,h=this.state,m=h.scrollLeft,f=h.scrollPositionChangeReason,g=h.scrollTop,b=h.instanceProps;this._handleInvalidatedGridSize();var y=i>0&&0===e.columnCount||l>0&&0===e.rowCount;f===Mc&&(!a&&m>=0&&(m!==this._scrollingContainer.scrollLeft||y)&&(this._scrollingContainer.scrollLeft=m),!o&&g>=0&&(g!==this._scrollingContainer.scrollTop||y)&&(this._scrollingContainer.scrollTop=g));var v=(0===e.width||0===e.height)&&s>0&&p>0;if(this._recomputeScrollLeftFlag?(this._recomputeScrollLeftFlag=!1,this._updateScrollLeftForScrollToColumn(this.props)):gc({cellSizeAndPositionManager:b.columnSizeAndPositionManager,previousCellsCount:e.columnCount,previousCellSize:e.columnWidth,previousScrollToAlignment:e.scrollToAlignment,previousScrollToIndex:e.scrollToColumn,previousSize:e.width,scrollOffset:m,scrollToAlignment:c,scrollToIndex:u,size:p,sizeJustIncreasedFromZero:v,updateScrollIndexCallback:function(){return n._updateScrollLeftForScrollToColumn(n.props)}}),this._recomputeScrollTopFlag?(this._recomputeScrollTopFlag=!1,this._updateScrollTopForScrollToRow(this.props)):gc({cellSizeAndPositionManager:b.rowSizeAndPositionManager,previousCellsCount:e.rowCount,previousCellSize:e.rowHeight,previousScrollToAlignment:e.scrollToAlignment,previousScrollToIndex:e.scrollToRow,previousSize:e.height,scrollOffset:g,scrollToAlignment:c,scrollToIndex:d,size:s,sizeJustIncreasedFromZero:v,updateScrollIndexCallback:function(){return n._updateScrollTopForScrollToRow(n.props)}}),this._invokeOnGridRenderedHelper(),m!==t.scrollLeft||g!==t.scrollTop){var E=b.rowSizeAndPositionManager.getTotalSize(),w=b.columnSizeAndPositionManager.getTotalSize();this._invokeOnScrollMemoizer({scrollLeft:m,scrollTop:g,totalColumnsWidth:w,totalRowsHeight:E})}this._maybeCallOnScrollbarPresenceChange()}},{key:"componentWillUnmount",value:function(){this._disablePointerEventsTimeoutId&&xc(this._disablePointerEventsTimeoutId)}},{key:"render",value:function(){var e=this.props,t=e.autoContainerWidth,n=e.autoHeight,o=e.autoWidth,a=e.className,i=e.containerProps,s=e.containerRole,l=e.containerStyle,c=e.height,u=e.id,d=e.noContentRenderer,p=e.role,h=e.style,m=e.tabIndex,f=e.width,g=this.state,b=g.instanceProps,y=g.needToResetStyleCache,v=this._isScrolling(),E={boxSizing:"border-box",direction:"ltr",height:n?"auto":c,position:"relative",width:o?"auto":f,WebkitOverflowScrolling:"touch",willChange:"transform"};y&&(this._styleCache={}),this.state.isScrolling||this._resetStyleCache(),this._calculateChildrenToRender(this.props,this.state);var w=b.columnSizeAndPositionManager.getTotalSize(),S=b.rowSizeAndPositionManager.getTotalSize(),A=S>c?b.scrollbarSize:0,_=w>f?b.scrollbarSize:0;_===this._horizontalScrollBarSize&&A===this._verticalScrollBarSize||(this._horizontalScrollBarSize=_,this._verticalScrollBarSize=A,this._scrollbarPresenceChanged=!0),E.overflowX=w+A<=f?"hidden":"auto",E.overflowY=S+_<=c?"hidden":"auto";var T=this._childrenToDisplay,C=0===T.length&&c>0&&f>0;return r.createElement("div",nc({ref:this._setScrollingContainerRef},i,{"aria-label":this.props["aria-label"],"aria-readonly":this.props["aria-readonly"],className:oc("ReactVirtualized__Grid",a),id:u,onScroll:this._onScroll,role:p,style:kc({},E,{},h),tabIndex:m}),T.length>0&&r.createElement("div",{className:"ReactVirtualized__Grid__innerScrollContainer",role:s,style:kc({width:t?"auto":w,height:S,maxWidth:w,maxHeight:S,overflow:"hidden",pointerEvents:v?"none":"",position:"relative"},l)},T),C&&d())}},{key:"_calculateChildrenToRender",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,n=e.cellRenderer,r=e.cellRangeRenderer,o=e.columnCount,a=e.deferredMeasurementCache,i=e.height,s=e.overscanColumnCount,l=e.overscanIndicesGetter,c=e.overscanRowCount,u=e.rowCount,d=e.width,p=e.isScrollingOptOut,h=t.scrollDirectionHorizontal,m=t.scrollDirectionVertical,f=t.instanceProps,g=this._initialScrollTop>0?this._initialScrollTop:t.scrollTop,b=this._initialScrollLeft>0?this._initialScrollLeft:t.scrollLeft,y=this._isScrolling(e,t);if(this._childrenToDisplay=[],i>0&&d>0){var v=f.columnSizeAndPositionManager.getVisibleCellRange({containerSize:d,offset:b}),E=f.rowSizeAndPositionManager.getVisibleCellRange({containerSize:i,offset:g}),w=f.columnSizeAndPositionManager.getOffsetAdjustment({containerSize:d,offset:b}),S=f.rowSizeAndPositionManager.getOffsetAdjustment({containerSize:i,offset:g});this._renderedColumnStartIndex=v.start,this._renderedColumnStopIndex=v.stop,this._renderedRowStartIndex=E.start,this._renderedRowStopIndex=E.stop;var A=l({direction:"horizontal",cellCount:o,overscanCellsCount:s,scrollDirection:h,startIndex:"number"==typeof v.start?v.start:0,stopIndex:"number"==typeof v.stop?v.stop:-1}),_=l({direction:"vertical",cellCount:u,overscanCellsCount:c,scrollDirection:m,startIndex:"number"==typeof E.start?E.start:0,stopIndex:"number"==typeof E.stop?E.stop:-1}),T=A.overscanStartIndex,C=A.overscanStopIndex,x=_.overscanStartIndex,I=_.overscanStopIndex;if(a){if(!a.hasFixedHeight())for(var O=x;O<=I;O++)if(!a.has(O,0)){T=0,C=o-1;break}if(!a.hasFixedWidth())for(var k=T;k<=C;k++)if(!a.has(0,k)){x=0,I=u-1;break}}this._childrenToDisplay=r({cellCache:this._cellCache,cellRenderer:n,columnSizeAndPositionManager:f.columnSizeAndPositionManager,columnStartIndex:T,columnStopIndex:C,deferredMeasurementCache:a,horizontalOffsetAdjustment:w,isScrolling:y,isScrollingOptOut:p,parent:this,rowSizeAndPositionManager:f.rowSizeAndPositionManager,rowStartIndex:x,rowStopIndex:I,scrollLeft:b,scrollTop:g,styleCache:this._styleCache,verticalOffsetAdjustment:S,visibleColumnIndices:v,visibleRowIndices:E}),this._columnStartIndex=T,this._columnStopIndex=C,this._rowStartIndex=x,this._rowStopIndex=I}}},{key:"_debounceScrollEnded",value:function(){var e=this.props.scrollingResetTimeInterval;this._disablePointerEventsTimeoutId&&xc(this._disablePointerEventsTimeoutId),this._disablePointerEventsTimeoutId=Ic(this._debounceScrollEndedCallback,e)}},{key:"_handleInvalidatedGridSize",value:function(){if("number"==typeof this._deferredInvalidateColumnIndex&&"number"==typeof this._deferredInvalidateRowIndex){var e=this._deferredInvalidateColumnIndex,t=this._deferredInvalidateRowIndex;this._deferredInvalidateColumnIndex=null,this._deferredInvalidateRowIndex=null,this.recomputeGridSize({columnIndex:e,rowIndex:t})}}},{key:"_invokeOnScrollMemoizer",value:function(e){var t=this,n=e.scrollLeft,r=e.scrollTop,o=e.totalColumnsWidth,a=e.totalRowsHeight;this._onScrollMemoizer({callback:function(e){var n=e.scrollLeft,r=e.scrollTop,i=t.props,s=i.height;(0,i.onScroll)({clientHeight:s,clientWidth:i.width,scrollHeight:a,scrollLeft:n,scrollTop:r,scrollWidth:o})},indices:{scrollLeft:n,scrollTop:r}})}},{key:"_isScrolling",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return Object.hasOwnProperty.call(e,"isScrolling")?Boolean(e.isScrolling):Boolean(t.isScrolling)}},{key:"_maybeCallOnScrollbarPresenceChange",value:function(){if(this._scrollbarPresenceChanged){var e=this.props.onScrollbarPresenceChange;this._scrollbarPresenceChanged=!1,e({horizontal:this._horizontalScrollBarSize>0,size:this.state.instanceProps.scrollbarSize,vertical:this._verticalScrollBarSize>0})}}},{key:"scrollToPosition",value:function(t){var n=t.scrollLeft,r=t.scrollTop,o=e._getScrollToPositionStateUpdate({prevState:this.state,scrollLeft:n,scrollTop:r});o&&(o.needToResetStyleCache=!1,this.setState(o))}},{key:"_getCalculatedScrollLeft",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return e._getCalculatedScrollLeft(t,n)}},{key:"_updateScrollLeftForScrollToColumn",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=e._getScrollLeftForScrollToColumnStateUpdate(t,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}},{key:"_getCalculatedScrollTop",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state;return e._getCalculatedScrollTop(t,n)}},{key:"_resetStyleCache",value:function(){var e=this._styleCache,t=this._cellCache,n=this.props.isScrollingOptOut;this._cellCache={},this._styleCache={};for(var r=this._rowStartIndex;r<=this._rowStopIndex;r++)for(var o=this._columnStartIndex;o<=this._columnStopIndex;o++){var a="".concat(r,"-").concat(o);this._styleCache[a]=e[a],n&&(this._cellCache[a]=t[a])}}},{key:"_updateScrollTopForScrollToRow",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.props,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.state,r=e._getScrollTopForScrollToRowStateUpdate(t,n);r&&(r.needToResetStyleCache=!1,this.setState(r))}}],[{key:"getDerivedStateFromProps",value:function(t,n){var r={};0===t.columnCount&&0!==n.scrollLeft||0===t.rowCount&&0!==n.scrollTop?(r.scrollLeft=0,r.scrollTop=0):(t.scrollLeft!==n.scrollLeft&&t.scrollToColumn<0||t.scrollTop!==n.scrollTop&&t.scrollToRow<0)&&Object.assign(r,e._getScrollToPositionStateUpdate({prevState:n,scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}));var o,a,i=n.instanceProps;return r.needToResetStyleCache=!1,t.columnWidth===i.prevColumnWidth&&t.rowHeight===i.prevRowHeight||(r.needToResetStyleCache=!0),i.columnSizeAndPositionManager.configure({cellCount:t.columnCount,estimatedCellSize:e._getEstimatedColumnSize(t),cellSizeGetter:e._wrapSizeGetter(t.columnWidth)}),i.rowSizeAndPositionManager.configure({cellCount:t.rowCount,estimatedCellSize:e._getEstimatedRowSize(t),cellSizeGetter:e._wrapSizeGetter(t.rowHeight)}),0!==i.prevColumnCount&&0!==i.prevRowCount||(i.prevColumnCount=0,i.prevRowCount=0),t.autoHeight&&!1===t.isScrolling&&!0===i.prevIsScrolling&&Object.assign(r,{isScrolling:!1}),ac({cellCount:i.prevColumnCount,cellSize:"number"==typeof i.prevColumnWidth?i.prevColumnWidth:null,computeMetadataCallback:function(){return i.columnSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:t,nextCellsCount:t.columnCount,nextCellSize:"number"==typeof t.columnWidth?t.columnWidth:null,nextScrollToIndex:t.scrollToColumn,scrollToIndex:i.prevScrollToColumn,updateScrollOffsetForScrollToIndex:function(){o=e._getScrollLeftForScrollToColumnStateUpdate(t,n)}}),ac({cellCount:i.prevRowCount,cellSize:"number"==typeof i.prevRowHeight?i.prevRowHeight:null,computeMetadataCallback:function(){return i.rowSizeAndPositionManager.resetCell(0)},computeMetadataCallbackProps:t,nextCellsCount:t.rowCount,nextCellSize:"number"==typeof t.rowHeight?t.rowHeight:null,nextScrollToIndex:t.scrollToRow,scrollToIndex:i.prevScrollToRow,updateScrollOffsetForScrollToIndex:function(){a=e._getScrollTopForScrollToRowStateUpdate(t,n)}}),i.prevColumnCount=t.columnCount,i.prevColumnWidth=t.columnWidth,i.prevIsScrolling=!0===t.isScrolling,i.prevRowCount=t.rowCount,i.prevRowHeight=t.rowHeight,i.prevScrollToColumn=t.scrollToColumn,i.prevScrollToRow=t.scrollToRow,i.scrollbarSize=t.getScrollbarSize(),void 0===i.scrollbarSize?(i.scrollbarSizeMeasured=!1,i.scrollbarSize=0):i.scrollbarSizeMeasured=!0,r.instanceProps=i,kc({},r,{},o,{},a)}},{key:"_getEstimatedColumnSize",value:function(e){return"number"==typeof e.columnWidth?e.columnWidth:e.estimatedColumnSize}},{key:"_getEstimatedRowSize",value:function(e){return"number"==typeof e.rowHeight?e.rowHeight:e.estimatedRowSize}},{key:"_getScrollToPositionStateUpdate",value:function(e){var t=e.prevState,n=e.scrollLeft,r=e.scrollTop,o={scrollPositionChangeReason:Mc};return"number"==typeof n&&n>=0&&(o.scrollDirectionHorizontal=n>t.scrollLeft?1:-1,o.scrollLeft=n),"number"==typeof r&&r>=0&&(o.scrollDirectionVertical=r>t.scrollTop?1:-1,o.scrollTop=r),"number"==typeof n&&n>=0&&n!==t.scrollLeft||"number"==typeof r&&r>=0&&r!==t.scrollTop?o:{}}},{key:"_wrapSizeGetter",value:function(e){return"function"==typeof e?e:function(){return e}}},{key:"_getCalculatedScrollLeft",value:function(e,t){var n=e.columnCount,r=e.height,o=e.scrollToAlignment,a=e.scrollToColumn,i=e.width,s=t.scrollLeft,l=t.instanceProps;if(n>0){var c=n-1,u=a<0?c:Math.min(c,a),d=l.rowSizeAndPositionManager.getTotalSize(),p=l.scrollbarSizeMeasured&&d>r?l.scrollbarSize:0;return l.columnSizeAndPositionManager.getUpdatedOffsetForIndex({align:o,containerSize:i-p,currentOffset:s,targetIndex:u})}return 0}},{key:"_getScrollLeftForScrollToColumnStateUpdate",value:function(t,n){var r=n.scrollLeft,o=e._getCalculatedScrollLeft(t,n);return"number"==typeof o&&o>=0&&r!==o?e._getScrollToPositionStateUpdate({prevState:n,scrollLeft:o,scrollTop:-1}):{}}},{key:"_getCalculatedScrollTop",value:function(e,t){var n=e.height,r=e.rowCount,o=e.scrollToAlignment,a=e.scrollToRow,i=e.width,s=t.scrollTop,l=t.instanceProps;if(r>0){var c=r-1,u=a<0?c:Math.min(c,a),d=l.columnSizeAndPositionManager.getTotalSize(),p=l.scrollbarSizeMeasured&&d>i?l.scrollbarSize:0;return l.rowSizeAndPositionManager.getUpdatedOffsetForIndex({align:o,containerSize:n-p,currentOffset:s,targetIndex:u})}return 0}},{key:"_getScrollTopForScrollToRowStateUpdate",value:function(t,n){var r=n.scrollTop,o=e._getCalculatedScrollTop(t,n);return"number"==typeof o&&o>=0&&r!==o?e._getScrollToPositionStateUpdate({prevState:n,scrollLeft:-1,scrollTop:o}):{}}}]),e}(),Xl(wc,"propTypes",null),Sc);function Dc(e){var t=e.cellCount,n=e.overscanCellsCount,r=e.scrollDirection,o=e.startIndex,a=e.stopIndex;return n=Math.max(1,n),1===r?{overscanStartIndex:Math.max(0,o-1),overscanStopIndex:Math.min(t-1,a+n)}:{overscanStartIndex:Math.max(0,o-n),overscanStopIndex:Math.min(t-1,a+1)}}function Pc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}Xl(Lc,"defaultProps",{"aria-label":"grid","aria-readonly":!0,autoContainerWidth:!1,autoHeight:!1,autoWidth:!1,cellRangeRenderer:function(e){for(var t=e.cellCache,n=e.cellRenderer,r=e.columnSizeAndPositionManager,o=e.columnStartIndex,a=e.columnStopIndex,i=e.deferredMeasurementCache,s=e.horizontalOffsetAdjustment,l=e.isScrolling,c=e.isScrollingOptOut,u=e.parent,d=e.rowSizeAndPositionManager,p=e.rowStartIndex,h=e.rowStopIndex,m=e.styleCache,f=e.verticalOffsetAdjustment,g=e.visibleColumnIndices,b=e.visibleRowIndices,y=[],v=r.areOffsetsAdjusted()||d.areOffsetsAdjusted(),E=!l&&!v,w=p;w<=h;w++)for(var S=d.getSizeAndPositionOfCell(w),A=o;A<=a;A++){var _=r.getSizeAndPositionOfCell(A),T=A>=g.start&&A<=g.stop&&w>=b.start&&w<=b.stop,C="".concat(w,"-").concat(A),x=void 0;E&&m[C]?x=m[C]:i&&!i.has(w,A)?x={height:"auto",left:0,position:"absolute",top:0,width:"auto"}:(x={height:S.size,left:_.offset+s,position:"absolute",top:S.offset+f,width:_.size},m[C]=x);var I={columnIndex:A,isScrolling:l,isVisible:T,key:C,parent:u,rowIndex:w,style:x},O=void 0;!c&&!l||s||f?O=n(I):(t[C]||(t[C]=n(I)),O=t[C]),null!=O&&!1!==O&&y.push(O)}return y},containerRole:"rowgroup",containerStyle:{},estimatedColumnSize:100,estimatedRowSize:30,getScrollbarSize:Ec,noContentRenderer:function(){return null},onScroll:function(){},onScrollbarPresenceChange:function(){},onSectionRendered:function(){},overscanColumnCount:0,overscanIndicesGetter:function(e){var t=e.cellCount,n=e.overscanCellsCount,r=e.scrollDirection,o=e.startIndex,a=e.stopIndex;return 1===r?{overscanStartIndex:Math.max(0,o),overscanStopIndex:Math.min(t-1,a+n)}:{overscanStartIndex:Math.max(0,o-n),overscanStopIndex:Math.min(t-1,a)}},overscanRowCount:10,role:"grid",scrollingResetTimeInterval:150,scrollToAlignment:"auto",scrollToColumn:-1,scrollToRow:-1,style:{},tabIndex:0,isScrollingOptOut:!1}),tc(Lc);var Bc,Fc,jc=(Rc=Nc=function(){function e(){var t,n;Ul(this,e);for(var r=arguments.length,o=new Array(r),a=0;a div, .contract-trigger:before { content: " "; display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; z-index: -1; } .resize-triggers > div { background: #eee; overflow: auto; } .contract-trigger:before { width: 200%; height: 200%; }',r=t.head||t.getElementsByTagName("head")[0],o=t.createElement("style");o.id="detectElementResize",o.type="text/css",null!=e&&o.setAttribute("nonce",e),o.styleSheet?o.styleSheet.cssText=n:o.appendChild(t.createTextNode(n)),r.appendChild(o)}}(a),t.__resizeLast__={},t.__resizeListeners__=[],(t.__resizeTriggers__=a.createElement("div")).className="resize-triggers";var c='
';if(window.trustedTypes){var u=trustedTypes.createPolicy("react-virtualized-auto-sizer",{createHTML:function(){return c}});t.__resizeTriggers__.innerHTML=u.createHTML("")}else t.__resizeTriggers__.innerHTML=c;t.appendChild(t.__resizeTriggers__),s(t),t.addEventListener("scroll",l,!0),d&&(t.__resizeTriggers__.__animationListener__=function(e){e.animationName==g&&s(t)},t.__resizeTriggers__.addEventListener(d,t.__resizeTriggers__.__animationListener__))}t.__resizeListeners__.push(n)}},removeResizeListener:function(e,t){if(o)e.detachEvent("onresize",t);else if(e.__resizeListeners__.splice(e.__resizeListeners__.indexOf(t),1),!e.__resizeListeners__.length){e.removeEventListener("scroll",l,!0),e.__resizeTriggers__.__animationListener__&&(e.__resizeTriggers__.removeEventListener(d,e.__resizeTriggers__.__animationListener__),e.__resizeTriggers__.__animationListener__=null);try{e.__resizeTriggers__=!e.removeChild(e.__resizeTriggers__)}catch(e){}}}}}function Uc(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Hc(e){for(var t=1;t=0){var u=t.getScrollPositionForCell({align:o,cellIndex:a,height:r,scrollLeft:l,scrollTop:c,width:i});u.scrollLeft===l&&u.scrollTop===c||n._setScrollPosition(u)}})),Xl(Wl(n),"_onScroll",(function(e){if(e.target===n._scrollingContainer){n._enablePointerEventsAfterDelay();var t=n.props,r=t.cellLayoutManager,o=t.height,a=t.isScrollingChange,i=t.width,s=n._scrollbarSize,l=r.getTotalSize(),c=l.height,u=l.width,d=Math.max(0,Math.min(u-i+s,e.target.scrollLeft)),p=Math.max(0,Math.min(c-o+s,e.target.scrollTop));if(n.state.scrollLeft!==d||n.state.scrollTop!==p){var h=e.cancelable?"observed":Yc;n.state.isScrolling||a(!0),n.setState({isScrolling:!0,scrollLeft:d,scrollPositionChangeReason:h,scrollTop:p})}n._invokeOnScrollMemoizer({scrollLeft:d,scrollTop:p,totalWidth:u,totalHeight:c})}})),n._scrollbarSize=Ec(),void 0===n._scrollbarSize?(n._scrollbarSizeMeasured=!1,n._scrollbarSize=0):n._scrollbarSizeMeasured=!0,n}return Kl(e,r.PureComponent),ql(e,[{key:"recomputeCellSizesAndPositions",value:function(){this._calculateSizeAndPositionDataOnNextUpdate=!0,this.forceUpdate()}},{key:"componentDidMount",value:function(){var e=this.props,t=e.cellLayoutManager,n=e.scrollLeft,r=e.scrollToCell,o=e.scrollTop;this._scrollbarSizeMeasured||(this._scrollbarSize=Ec(),this._scrollbarSizeMeasured=!0,this.setState({})),r>=0?this._updateScrollPositionForScrollToCell():(n>=0||o>=0)&&this._setScrollPosition({scrollLeft:n,scrollTop:o}),this._invokeOnSectionRenderedHelper();var a=t.getTotalSize(),i=a.height,s=a.width;this._invokeOnScrollMemoizer({scrollLeft:n||0,scrollTop:o||0,totalHeight:i,totalWidth:s})}},{key:"componentDidUpdate",value:function(e,t){var n=this.props,r=n.height,o=n.scrollToAlignment,a=n.scrollToCell,i=n.width,s=this.state,l=s.scrollLeft,c=s.scrollPositionChangeReason,u=s.scrollTop;c===Yc&&(l>=0&&l!==t.scrollLeft&&l!==this._scrollingContainer.scrollLeft&&(this._scrollingContainer.scrollLeft=l),u>=0&&u!==t.scrollTop&&u!==this._scrollingContainer.scrollTop&&(this._scrollingContainer.scrollTop=u)),r===e.height&&o===e.scrollToAlignment&&a===e.scrollToCell&&i===e.width||this._updateScrollPositionForScrollToCell(),this._invokeOnSectionRenderedHelper()}},{key:"componentWillUnmount",value:function(){this._disablePointerEventsTimeoutId&&clearTimeout(this._disablePointerEventsTimeoutId)}},{key:"render",value:function(){var e=this.props,t=e.autoHeight,n=e.cellCount,o=e.cellLayoutManager,a=e.className,i=e.height,s=e.horizontalOverscanSize,l=e.id,c=e.noContentRenderer,u=e.style,d=e.verticalOverscanSize,p=e.width,h=this.state,m=h.isScrolling,f=h.scrollLeft,g=h.scrollTop;(this._lastRenderedCellCount!==n||this._lastRenderedCellLayoutManager!==o||this._calculateSizeAndPositionDataOnNextUpdate)&&(this._lastRenderedCellCount=n,this._lastRenderedCellLayoutManager=o,this._calculateSizeAndPositionDataOnNextUpdate=!1,o.calculateSizeAndPositionData());var b=o.getTotalSize(),y=b.height,v=b.width,E=Math.max(0,f-s),w=Math.max(0,g-d),S=Math.min(v,f+p+s),A=Math.min(y,g+i+d),_=i>0&&p>0?o.cellRenderers({height:A-w,isScrolling:m,width:S-E,x:E,y:w}):[],T={boxSizing:"border-box",direction:"ltr",height:t?"auto":i,position:"relative",WebkitOverflowScrolling:"touch",width:p,willChange:"transform"},C=y>i?this._scrollbarSize:0,x=v>p?this._scrollbarSize:0;return T.overflowX=v+C<=p?"hidden":"auto",T.overflowY=y+x<=i?"hidden":"auto",r.createElement("div",{ref:this._setScrollingContainerRef,"aria-label":this.props["aria-label"],className:oc("ReactVirtualized__Collection",a),id:l,onScroll:this._onScroll,role:"grid",style:$c({},T,{},u),tabIndex:0},n>0&&r.createElement("div",{className:"ReactVirtualized__Collection__innerScrollContainer",style:{height:y,maxHeight:y,maxWidth:v,overflow:"hidden",pointerEvents:m?"none":"",width:v}},_),0===n&&c())}},{key:"_enablePointerEventsAfterDelay",value:function(){var e=this;this._disablePointerEventsTimeoutId&&clearTimeout(this._disablePointerEventsTimeoutId),this._disablePointerEventsTimeoutId=setTimeout((function(){(0,e.props.isScrollingChange)(!1),e._disablePointerEventsTimeoutId=null,e.setState({isScrolling:!1})}),150)}},{key:"_invokeOnScrollMemoizer",value:function(e){var t=this,n=e.scrollLeft,r=e.scrollTop,o=e.totalHeight,a=e.totalWidth;this._onScrollMemoizer({callback:function(e){var n=e.scrollLeft,r=e.scrollTop,i=t.props,s=i.height;(0,i.onScroll)({clientHeight:s,clientWidth:i.width,scrollHeight:o,scrollLeft:n,scrollTop:r,scrollWidth:a})},indices:{scrollLeft:n,scrollTop:r}})}},{key:"_setScrollPosition",value:function(e){var t=e.scrollLeft,n=e.scrollTop,r={scrollPositionChangeReason:Yc};t>=0&&(r.scrollLeft=t),n>=0&&(r.scrollTop=n),(t>=0&&t!==this.state.scrollLeft||n>=0&&n!==this.state.scrollTop)&&this.setState(r)}}],[{key:"getDerivedStateFromProps",value:function(e,t){return 0!==e.cellCount||0===t.scrollLeft&&0===t.scrollTop?e.scrollLeft!==t.scrollLeft||e.scrollTop!==t.scrollTop?{scrollLeft:null!=e.scrollLeft?e.scrollLeft:t.scrollLeft,scrollTop:null!=e.scrollTop?e.scrollTop:t.scrollTop,scrollPositionChangeReason:Yc}:null:{scrollLeft:0,scrollTop:0,scrollPositionChangeReason:Yc}}}]),e}();Xl(Kc,"defaultProps",{"aria-label":"grid",horizontalOverscanSize:0,noContentRenderer:function(){return null},onScroll:function(){return null},onSectionRendered:function(){return null},scrollToAlignment:"auto",scrollToCell:-1,style:{},verticalOverscanSize:0}),Kc.propTypes={},tc(Kc);var Xc=function(){function e(t){var n=t.height,r=t.width,o=t.x,a=t.y;Ul(this,e),this.height=n,this.width=r,this.x=o,this.y=a,this._indexMap={},this._indices=[]}return ql(e,[{key:"addCellIndex",value:function(e){var t=e.index;this._indexMap[t]||(this._indexMap[t]=!0,this._indices.push(t))}},{key:"getCellIndices",value:function(){return this._indices}},{key:"toString",value:function(){return"".concat(this.x,",").concat(this.y," ").concat(this.width,"x").concat(this.height)}}]),e}(),Jc=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:100;Ul(this,e),this._sectionSize=t,this._cellMetadata=[],this._sections={}}return ql(e,[{key:"getCellIndices",value:function(e){var t=e.height,n=e.width,r=e.x,o=e.y,a={};return this.getSections({height:t,width:n,x:r,y:o}).forEach((function(e){return e.getCellIndices().forEach((function(e){a[e]=e}))})),Object.keys(a).map((function(e){return a[e]}))}},{key:"getCellMetadata",value:function(e){var t=e.index;return this._cellMetadata[t]}},{key:"getSections",value:function(e){for(var t=e.height,n=e.width,r=e.x,o=e.y,a=Math.floor(r/this._sectionSize),i=Math.floor((r+n-1)/this._sectionSize),s=Math.floor(o/this._sectionSize),l=Math.floor((o+t-1)/this._sectionSize),c=[],u=a;u<=i;u++)for(var d=s;d<=l;d++){var p="".concat(u,".").concat(d);this._sections[p]||(this._sections[p]=new Xc({height:this._sectionSize,width:this._sectionSize,x:u*this._sectionSize,y:d*this._sectionSize})),c.push(this._sections[p])}return c}},{key:"getTotalSectionCount",value:function(){return Object.keys(this._sections).length}},{key:"toString",value:function(){var e=this;return Object.keys(this._sections).map((function(t){return e._sections[t].toString()}))}},{key:"registerCell",value:function(e){var t=e.cellMetadatum,n=e.index;this._cellMetadata[n]=t,this.getSections(t).forEach((function(e){return e.addCellIndex({index:n})}))}}]),e}();function Qc(e){var t=e.align,n=void 0===t?"auto":t,r=e.cellOffset,o=e.cellSize,a=e.containerSize,i=e.currentOffset,s=r,l=s-a+o;switch(n){case"start":return s;case"end":return l;case"center":return s-(a-o)/2;default:return Math.max(l,Math.min(s,i))}}var eu=function(){function e(t,n){var r;return Ul(this,e),(r=Zl(this,$l(e).call(this,t,n)))._cellMetadata=[],r._lastRenderedCellIndices=[],r._cellCache=[],r._isScrollingChange=r._isScrollingChange.bind(Wl(r)),r._setCollectionViewRef=r._setCollectionViewRef.bind(Wl(r)),r}return Kl(e,r.PureComponent),ql(e,[{key:"forceUpdate",value:function(){void 0!==this._collectionView&&this._collectionView.forceUpdate()}},{key:"recomputeCellSizesAndPositions",value:function(){this._cellCache=[],this._collectionView.recomputeCellSizesAndPositions()}},{key:"render",value:function(){var e=nc({},this.props);return r.createElement(Kc,nc({cellLayoutManager:this,isScrollingChange:this._isScrollingChange,ref:this._setCollectionViewRef},e))}},{key:"calculateSizeAndPositionData",value:function(){var e=this.props,t=function(e){for(var t=e.cellCount,n=e.cellSizeAndPositionGetter,r=[],o=new Jc(e.sectionSize),a=0,i=0,s=0;s=0&&ne.length)&&(t=e.length);for(var n=0,r=Array(t);nn.lastRenderedStopIndex||n.stopIndex1&&void 0!==arguments[1]?arguments[1]:0,n="function"==typeof e.recomputeGridSize?e.recomputeGridSize:e.recomputeRowHeights;n?n.call(e,t):e.forceUpdate()}(t._registeredChild,t._lastRenderedStartIndex)}))}))}},{key:"_onRowsRendered",value:function(e){var t=e.startIndex,n=e.stopIndex;this._lastRenderedStartIndex=t,this._lastRenderedStopIndex=n,this._doStuff(t,n)}},{key:"_doStuff",value:function(e,t){var n,r=this,o=this.props,a=o.isRowLoaded,i=o.minimumBatchSize,s=o.rowCount,l=o.threshold,c=function(e){for(var t=e.isRowLoaded,n=e.minimumBatchSize,r=e.rowCount,o=e.stopIndex,a=[],i=null,s=null,l=e.startIndex;l<=o;l++)t({index:l})?null!==s&&(a.push({startIndex:i,stopIndex:s}),i=s=null):(s=l,null===i&&(i=l));if(null!==s){for(var c=Math.min(Math.max(s,i+n-1),r-1),u=s+1;u<=c&&!t({index:u});u++)s=u;a.push({startIndex:i,stopIndex:s})}if(a.length)for(var d=a[0];d.stopIndex-d.startIndex+10;){var p=d.startIndex-1;if(t({index:p}))break;d.startIndex=p}return a}({isRowLoaded:a,minimumBatchSize:i,rowCount:s,startIndex:Math.max(0,e-l),stopIndex:Math.min(s-1,t+l)}),u=(n=[]).concat.apply(n,function(e){return function(e){if(Array.isArray(e))return tu(e)}(e)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||nu(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(c.map((function(e){return[e.startIndex,e.stopIndex]}))));this._loadMoreRowsMemoizer({callback:function(){r._loadUnloadedRanges(c)},indices:{squashedUnloadedRanges:u}})}},{key:"_registerChild",value:function(e){this._registeredChild=e}}]),e}();Xl(ru,"defaultProps",{minimumBatchSize:10,rowCount:0,threshold:15}),ru.propTypes={};var ou,au,iu=(au=ou=function(){function e(){var t,n;Ul(this,e);for(var r=arguments.length,o=new Array(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:o,columnIndex:n})}},{key:"recomputeRowHeights",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.recomputeGridSize({rowIndex:e,columnIndex:0})}},{key:"scrollToPosition",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToPosition({scrollTop:e})}},{key:"scrollToRow",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToCell({columnIndex:0,rowIndex:e})}},{key:"render",value:function(){var e=this.props,t=e.className,n=e.noRowsRenderer,o=e.scrollToIndex,a=e.width,i=oc("ReactVirtualized__List",t);return r.createElement(Lc,nc({},this.props,{autoContainerWidth:!0,cellRenderer:this._cellRenderer,className:i,columnWidth:a,columnCount:1,noContentRenderer:n,onScroll:this._onScroll,onSectionRendered:this._onSectionRendered,ref:this._setRef,scrollToRow:o}))}}]),e}(),Xl(ou,"propTypes",null),au);Xl(iu,"defaultProps",{autoHeight:!1,estimatedRowSize:30,onScroll:function(){},noRowsRenderer:function(){return null},onRowsRendered:function(){},overscanIndicesGetter:Dc,overscanRowCount:10,scrollToAlignment:"auto",scrollToIndex:-1,style:{}});var su=function(e,t,n,r,o){return"function"==typeof n?function(e,t,n,r,o){for(var a=n+1;t<=n;){var i=t+n>>>1;o(e[i],r)>=0?(a=i,n=i-1):t=i+1}return a}(e,void 0===r?0:0|r,void 0===o?e.length-1:0|o,t,n):function(e,t,n,r){for(var o=n+1;t<=n;){var a=t+n>>>1;e[a]>=r?(o=a,n=a-1):t=a+1}return o}(e,void 0===n?0:0|n,void 0===r?e.length-1:0|r,t)};function lu(e,t,n,r,o){this.mid=e,this.left=t,this.right=n,this.leftPoints=r,this.rightPoints=o,this.count=(t?t.count:0)+(n?n.count:0)+r.length}var cu=lu.prototype;function uu(e,t){e.mid=t.mid,e.left=t.left,e.right=t.right,e.leftPoints=t.leftPoints,e.rightPoints=t.rightPoints,e.count=t.count}function du(e,t){var n=Eu(t);e.mid=n.mid,e.left=n.left,e.right=n.right,e.leftPoints=n.leftPoints,e.rightPoints=n.rightPoints,e.count=n.count}function pu(e,t){var n=e.intervals([]);n.push(t),du(e,n)}function hu(e,t){var n=e.intervals([]),r=n.indexOf(t);return r<0?0:(n.splice(r,1),du(e,n),1)}function mu(e,t,n){for(var r=0;r=0&&e[r][1]>=t;--r){var o=n(e[r]);if(o)return o}}function gu(e,t){for(var n=0;n>1],o=[],a=[],i=[];for(n=0;n3*(t+1)?pu(this,e):this.left.insert(e):this.left=Eu([e]);else if(e[0]>this.mid)this.right?4*(this.right.count+1)>3*(t+1)?pu(this,e):this.right.insert(e):this.right=Eu([e]);else{var n=su(this.leftPoints,e,yu),r=su(this.rightPoints,e,vu);this.leftPoints.splice(n,0,e),this.rightPoints.splice(r,0,e)}},cu.remove=function(e){var t=this.count-this.leftPoints;if(e[1]3*(t-1)?hu(this,e):2===(a=this.left.remove(e))?(this.left=null,this.count-=1,1):(1===a&&(this.count-=1),a):0;if(e[0]>this.mid)return this.right?4*(this.left?this.left.count:0)>3*(t-1)?hu(this,e):2===(a=this.right.remove(e))?(this.right=null,this.count-=1,1):(1===a&&(this.count-=1),a):0;if(1===this.count)return this.leftPoints[0]===e?2:0;if(1===this.leftPoints.length&&this.leftPoints[0]===e){if(this.left&&this.right){for(var n=this,r=this.left;r.right;)n=r,r=r.right;if(n===this)r.right=this.right;else{var o=this.left,a=this.right;n.count-=r.count,n.right=r.left,r.left=o,r.right=a}uu(this,r),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?uu(this,this.left):uu(this,this.right);return 1}for(o=su(this.leftPoints,e,yu);othis.mid?this.right&&(n=this.right.queryPoint(e,t))?n:fu(this.rightPoints,e,t):gu(this.leftPoints,t);var n},cu.queryInterval=function(e,t,n){var r;return ethis.mid&&this.right&&(r=this.right.queryInterval(e,t,n))?r:tthis.mid?fu(this.rightPoints,e,n):gu(this.leftPoints,n)};var Su=wu.prototype;Su.insert=function(e){this.root?this.root.insert(e):this.root=new lu(e[0],null,null,[e],[e])},Su.remove=function(e){if(this.root){var t=this.root.remove(e);return 2===t&&(this.root=null),0!==t}return!1},Su.queryPoint=function(e,t){if(this.root)return this.root.queryPoint(e,t)},Su.queryInterval=function(e,t,n){if(e<=t&&this.root)return this.root.queryInterval(e,t,n)},Object.defineProperty(Su,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(Su,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});var Au,_u,Tu=function(){function e(){Ul(this,e),Xl(this,"_columnSizeMap",{}),Xl(this,"_intervalTree",new wu(null)),Xl(this,"_leftMap",{})}return ql(e,[{key:"estimateTotalHeight",value:function(e,t,n){var r=e-this.count;return this.tallestColumnSize+Math.ceil(r/t)*n}},{key:"range",value:function(e,t,n){var r=this;this._intervalTree.queryInterval(e,e+t,(function(e){var t=function(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var r,o,a,i,s=[],l=!0,c=!1;try{if(a=(n=n.call(e)).next,0===t){if(Object(n)!==n)return;l=!1}else for(;!(l=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);l=!0);}catch(e){c=!0,o=e}finally{try{if(!l&&null!=n.return&&(i=n.return(),Object(i)!==i))return}finally{if(c)throw o}}return s}}(e,t)||nu(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(e,3),o=t[0];t[1];var a=t[2];return n(a,r._leftMap[a],o)}))}},{key:"setPosition",value:function(e,t,n,r){this._intervalTree.insert([n,n+r,e]),this._leftMap[e]=t;var o=this._columnSizeMap,a=o[t];o[t]=void 0===a?n+r:Math.max(a,n+r)}},{key:"count",get:function(){return this._intervalTree.count}},{key:"shortestColumnSize",get:function(){var e=this._columnSizeMap,t=0;for(var n in e){var r=e[n];t=0===t?r:Math.min(t,r)}return t}},{key:"tallestColumnSize",get:function(){var e=this._columnSizeMap,t=0;for(var n in e){var r=e[n];t=Math.max(t,r)}return t}}]),e}();function Cu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function xu(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{};Ul(this,e),Xl(this,"_cellMeasurerCache",void 0),Xl(this,"_columnIndexOffset",void 0),Xl(this,"_rowIndexOffset",void 0),Xl(this,"columnWidth",(function(e){var n=e.index;t._cellMeasurerCache.columnWidth({index:n+t._columnIndexOffset})})),Xl(this,"rowHeight",(function(e){var n=e.index;t._cellMeasurerCache.rowHeight({index:n+t._rowIndexOffset})}));var r=n.cellMeasurerCache,o=n.columnIndexOffset,a=void 0===o?0:o,i=n.rowIndexOffset,s=void 0===i?0:i;this._cellMeasurerCache=r,this._columnIndexOffset=a,this._rowIndexOffset=s}return ql(e,[{key:"clear",value:function(e,t){this._cellMeasurerCache.clear(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"clearAll",value:function(){this._cellMeasurerCache.clearAll()}},{key:"hasFixedHeight",value:function(){return this._cellMeasurerCache.hasFixedHeight()}},{key:"hasFixedWidth",value:function(){return this._cellMeasurerCache.hasFixedWidth()}},{key:"getHeight",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.getHeight(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"getWidth",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.getWidth(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"has",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return this._cellMeasurerCache.has(e+this._rowIndexOffset,t+this._columnIndexOffset)}},{key:"set",value:function(e,t,n,r){this._cellMeasurerCache.set(e+this._rowIndexOffset,t+this._columnIndexOffset,n,r)}},{key:"defaultHeight",get:function(){return this._cellMeasurerCache.defaultHeight}},{key:"defaultWidth",get:function(){return this._cellMeasurerCache.defaultWidth}}]),e}();function Nu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Ru(e){for(var t=1;t0?new ku({cellMeasurerCache:a,columnIndexOffset:0,rowIndexOffset:s}):a,o._deferredMeasurementCacheBottomRightGrid=i>0||s>0?new ku({cellMeasurerCache:a,columnIndexOffset:i,rowIndexOffset:s}):a,o._deferredMeasurementCacheTopRightGrid=i>0?new ku({cellMeasurerCache:a,columnIndexOffset:i,rowIndexOffset:0}):a),o}return Kl(e,r.PureComponent),ql(e,[{key:"forceUpdateGrids",value:function(){this._bottomLeftGrid&&this._bottomLeftGrid.forceUpdate(),this._bottomRightGrid&&this._bottomRightGrid.forceUpdate(),this._topLeftGrid&&this._topLeftGrid.forceUpdate(),this._topRightGrid&&this._topRightGrid.forceUpdate()}},{key:"invalidateCellSizeAfterRender",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r;this._deferredInvalidateColumnIndex="number"==typeof this._deferredInvalidateColumnIndex?Math.min(this._deferredInvalidateColumnIndex,n):n,this._deferredInvalidateRowIndex="number"==typeof this._deferredInvalidateRowIndex?Math.min(this._deferredInvalidateRowIndex,o):o}},{key:"measureAllCells",value:function(){this._bottomLeftGrid&&this._bottomLeftGrid.measureAllCells(),this._bottomRightGrid&&this._bottomRightGrid.measureAllCells(),this._topLeftGrid&&this._topLeftGrid.measureAllCells(),this._topRightGrid&&this._topRightGrid.measureAllCells()}},{key:"recomputeGridSize",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r,a=this.props,i=a.fixedColumnCount,s=a.fixedRowCount,l=Math.max(0,n-i),c=Math.max(0,o-s);this._bottomLeftGrid&&this._bottomLeftGrid.recomputeGridSize({columnIndex:n,rowIndex:c}),this._bottomRightGrid&&this._bottomRightGrid.recomputeGridSize({columnIndex:l,rowIndex:c}),this._topLeftGrid&&this._topLeftGrid.recomputeGridSize({columnIndex:n,rowIndex:o}),this._topRightGrid&&this._topRightGrid.recomputeGridSize({columnIndex:l,rowIndex:o}),this._leftGridWidth=null,this._topGridHeight=null,this._maybeCalculateCachedStyles(!0)}},{key:"componentDidMount",value:function(){var e=this.props,t=e.scrollLeft,n=e.scrollTop;if(t>0||n>0){var r={};t>0&&(r.scrollLeft=t),n>0&&(r.scrollTop=n),this.setState(r)}this._handleInvalidatedGridSize()}},{key:"componentDidUpdate",value:function(){this._handleInvalidatedGridSize()}},{key:"render",value:function(){var e=this.props,t=e.onScroll,n=e.onSectionRendered;e.onScrollbarPresenceChange,e.scrollLeft;var o=e.scrollToColumn;e.scrollTop;var a=e.scrollToRow,i=sc(e,["onScroll","onSectionRendered","onScrollbarPresenceChange","scrollLeft","scrollToColumn","scrollTop","scrollToRow"]);if(this._prepareForRender(),0===this.props.width||0===this.props.height)return null;var s=this.state,l=s.scrollLeft,c=s.scrollTop;return r.createElement("div",{style:this._containerOuterStyle},r.createElement("div",{style:this._containerTopStyle},this._renderTopLeftGrid(i),this._renderTopRightGrid(Ru({},i,{onScroll:t,scrollLeft:l}))),r.createElement("div",{style:this._containerBottomStyle},this._renderBottomLeftGrid(Ru({},i,{onScroll:t,scrollTop:c})),this._renderBottomRightGrid(Ru({},i,{onScroll:t,onSectionRendered:n,scrollLeft:l,scrollToColumn:o,scrollToRow:a,scrollTop:c}))))}},{key:"_getBottomGridHeight",value:function(e){return e.height-this._getTopGridHeight(e)}},{key:"_getLeftGridWidth",value:function(e){var t=e.fixedColumnCount,n=e.columnWidth;if(null==this._leftGridWidth)if("function"==typeof n){for(var r=0,o=0;o=0?e.scrollLeft:t.scrollLeft,scrollTop:null!=e.scrollTop&&e.scrollTop>=0?e.scrollTop:t.scrollTop}:null}}]),e}();Xl(Mu,"defaultProps",{classNameBottomLeftGrid:"",classNameBottomRightGrid:"",classNameTopLeftGrid:"",classNameTopRightGrid:"",enableFixedColumnScroll:!1,enableFixedRowScroll:!1,fixedColumnCount:0,fixedRowCount:0,scrollToColumn:-1,scrollToRow:-1,style:{},styleBottomLeftGrid:{},styleBottomRightGrid:{},styleTopLeftGrid:{},styleTopRightGrid:{},hideTopRightGridScrollbar:!1,hideBottomLeftGridScrollbar:!1}),Mu.propTypes={},tc(Mu);function Lu(e){var t=e.className,n=e.columns,o=e.style;return r.createElement("div",{className:t,role:"row",style:o},n)}Lu.propTypes=null;var Du={ASC:"ASC",DESC:"DESC"};function Pu(e){var t=e.sortDirection,n=oc("ReactVirtualized__Table__sortableHeaderIcon",{"ReactVirtualized__Table__sortableHeaderIcon--ASC":t===Du.ASC,"ReactVirtualized__Table__sortableHeaderIcon--DESC":t===Du.DESC});return r.createElement("svg",{className:n,width:18,height:18,viewBox:"0 0 24 24"},t===Du.ASC?r.createElement("path",{d:"M7 14l5-5 5 5z"}):r.createElement("path",{d:"M7 10l5 5 5-5z"}),r.createElement("path",{d:"M0 0h24v24H0z",fill:"none"}))}function Bu(e){var t=e.dataKey,n=e.label,o=e.sortBy,a=e.sortDirection,i=o===t,s=[r.createElement("span",{className:"ReactVirtualized__Table__headerTruncatedText",key:"label",title:"string"==typeof n?n:null},n)];return i&&s.push(r.createElement(Pu,{key:"SortIndicator",sortDirection:a})),s}function Fu(e){var t=e.className,n=e.columns,o=e.index,a=e.key,i=e.onRowClick,s=e.onRowDoubleClick,l=e.onRowMouseOut,c=e.onRowMouseOver,u=e.onRowRightClick,d=e.rowData,p=e.style,h={"aria-rowindex":o+1};return(i||s||l||c||u)&&(h["aria-label"]="row",h.tabIndex=0,i&&(h.onClick=function(e){return i({event:e,index:o,rowData:d})}),s&&(h.onDoubleClick=function(e){return s({event:e,index:o,rowData:d})}),l&&(h.onMouseOut=function(e){return l({event:e,index:o,rowData:d})}),c&&(h.onMouseOver=function(e){return c({event:e,index:o,rowData:d})}),u&&(h.onContextMenu=function(e){return u({event:e,index:o,rowData:d})})),r.createElement("div",nc({},h,{className:t,key:a,role:"row",style:p}),n)}Pu.propTypes={},Bu.propTypes=null,Fu.propTypes=null;var ju=function(){function e(){return Ul(this,e),Zl(this,$l(e).apply(this,arguments))}return Kl(e,r.Component),e}();function zu(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Uu(e){for(var t=1;t0&&void 0!==arguments[0]?arguments[0]:{},t=e.columnIndex,n=void 0===t?0:t,r=e.rowIndex,o=void 0===r?0:r;this.Grid&&this.Grid.recomputeGridSize({rowIndex:o,columnIndex:n})}},{key:"recomputeRowHeights",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.recomputeGridSize({rowIndex:e})}},{key:"scrollToPosition",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToPosition({scrollTop:e})}},{key:"scrollToRow",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;this.Grid&&this.Grid.scrollToCell({columnIndex:0,rowIndex:e})}},{key:"getScrollbarWidth",value:function(){if(this.Grid){var e=(0,a.findDOMNode)(this.Grid),t=e.clientWidth||0;return(e.offsetWidth||0)-t}return 0}},{key:"componentDidMount",value:function(){this._setScrollbarWidth()}},{key:"componentDidUpdate",value:function(){this._setScrollbarWidth()}},{key:"render",value:function(){var e=this,t=this.props,n=t.children,o=t.className,a=t.disableHeader,i=t.gridClassName,s=t.gridStyle,l=t.headerHeight,c=t.headerRowRenderer,u=t.height,d=t.id,p=t.noRowsRenderer,h=t.rowClassName,m=t.rowStyle,f=t.scrollToIndex,g=t.style,b=t.width,y=this.state.scrollbarWidth,v=a?u:u-l,E="function"==typeof h?h({index:-1}):h,w="function"==typeof m?m({index:-1}):m;return this._cachedColumnStyles=[],r.Children.toArray(n).forEach((function(t,n){var r=e._getFlexStyleForColumn(t,t.props.style);e._cachedColumnStyles[n]=Uu({overflow:"hidden"},r)})),r.createElement("div",{"aria-label":this.props["aria-label"],"aria-labelledby":this.props["aria-labelledby"],"aria-colcount":r.Children.toArray(n).length,"aria-rowcount":this.props.rowCount,className:oc("ReactVirtualized__Table",o),id:d,role:"grid",style:g},!a&&c({className:oc("ReactVirtualized__Table__headerRow",E),columns:this._getHeaderColumns(),style:Uu({height:l,overflow:"hidden",paddingRight:y,width:b},w)}),r.createElement(Lc,nc({},this.props,{"aria-readonly":null,autoContainerWidth:!0,className:oc("ReactVirtualized__Table__Grid",i),cellRenderer:this._createRow,columnWidth:b,columnCount:1,height:v,id:void 0,noContentRenderer:p,onScroll:this._onScroll,onSectionRendered:this._onSectionRendered,ref:this._setRef,role:"rowgroup",scrollbarWidth:y,scrollToRow:f,style:Uu({},s,{overflowX:"hidden"})})))}},{key:"_createColumn",value:function(e){var t=e.column,n=e.columnIndex,o=e.isScrolling,a=e.parent,i=e.rowData,s=e.rowIndex,l=this.props.onColumnClick,c=t.props,u=c.cellDataGetter,d=c.cellRenderer,p=c.className,h=c.columnData,m=c.dataKey,f=c.id,g=d({cellData:u({columnData:h,dataKey:m,rowData:i}),columnData:h,columnIndex:n,dataKey:m,isScrolling:o,parent:a,rowData:i,rowIndex:s}),b=this._cachedColumnStyles[n],y="string"==typeof g?g:null;return r.createElement("div",{"aria-colindex":n+1,"aria-describedby":f,className:oc("ReactVirtualized__Table__rowColumn",p),key:"Row"+s+"-Col"+n,onClick:function(e){l&&l({columnData:h,dataKey:m,event:e})},role:"gridcell",style:b,title:y},g)}},{key:"_createHeader",value:function(e){var t,n,o,a,i,s=e.column,l=e.index,c=this.props,u=c.headerClassName,d=c.headerStyle,p=c.onHeaderClick,h=c.sort,m=c.sortBy,f=c.sortDirection,g=s.props,b=g.columnData,y=g.dataKey,v=g.defaultSortDirection,E=g.disableSort,w=g.headerRenderer,S=g.id,A=g.label,_=!E&&h,T=oc("ReactVirtualized__Table__headerColumn",u,s.props.headerClassName,{ReactVirtualized__Table__sortableHeaderColumn:_}),C=this._getFlexStyleForColumn(s,Uu({},d,{},s.props.headerStyle)),x=w({columnData:b,dataKey:y,disableSort:E,label:A,sortBy:m,sortDirection:f});if(_||p){var I=m!==y?v:f===Du.DESC?Du.ASC:Du.DESC,O=function(e){_&&h({defaultSortDirection:v,event:e,sortBy:y,sortDirection:I}),p&&p({columnData:b,dataKey:y,event:e})};i=s.props["aria-label"]||A||y,a="none",o=0,t=O,n=function(e){"Enter"!==e.key&&" "!==e.key||O(e)}}return m===y&&(a=f===Du.ASC?"ascending":"descending"),r.createElement("div",{"aria-label":i,"aria-sort":a,className:T,id:S,key:"Header-Col"+l,onClick:t,onKeyDown:n,role:"columnheader",style:C,tabIndex:o},x)}},{key:"_createRow",value:function(e){var t=this,n=e.rowIndex,o=e.isScrolling,a=e.key,i=e.parent,s=e.style,l=this.props,c=l.children,u=l.onRowClick,d=l.onRowDoubleClick,p=l.onRowRightClick,h=l.onRowMouseOver,m=l.onRowMouseOut,f=l.rowClassName,g=l.rowGetter,b=l.rowRenderer,y=l.rowStyle,v=this.state.scrollbarWidth,E="function"==typeof f?f({index:n}):f,w="function"==typeof y?y({index:n}):y,S=g({index:n}),A=r.Children.toArray(c).map((function(e,r){return t._createColumn({column:e,columnIndex:r,isScrolling:o,parent:i,rowData:S,rowIndex:n,scrollbarWidth:v})})),_=oc("ReactVirtualized__Table__row",E),T=Uu({},s,{height:this._getRowHeight(n),overflow:"hidden",paddingRight:v},w);return b({className:_,columns:A,index:n,isScrolling:o,key:a,onRowClick:u,onRowDoubleClick:d,onRowRightClick:p,onRowMouseOver:h,onRowMouseOut:m,rowData:S,style:T})}},{key:"_getFlexStyleForColumn",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n="".concat(e.props.flexGrow," ").concat(e.props.flexShrink," ").concat(e.props.width,"px"),r=Uu({},t,{flex:n,msFlex:n,WebkitFlex:n});return e.props.maxWidth&&(r.maxWidth=e.props.maxWidth),e.props.minWidth&&(r.minWidth=e.props.minWidth),r}},{key:"_getHeaderColumns",value:function(){var e=this,t=this.props,n=t.children;return(t.disableHeader?[]:r.Children.toArray(n)).map((function(t,n){return e._createHeader({column:t,index:n})}))}},{key:"_getRowHeight",value:function(e){var t=this.props.rowHeight;return"function"==typeof t?t({index:e}):t}},{key:"_onScroll",value:function(e){var t=e.clientHeight,n=e.scrollHeight,r=e.scrollTop;(0,this.props.onScroll)({clientHeight:t,scrollHeight:n,scrollTop:r})}},{key:"_onSectionRendered",value:function(e){var t=e.rowOverscanStartIndex,n=e.rowOverscanStopIndex,r=e.rowStartIndex,o=e.rowStopIndex;(0,this.props.onRowsRendered)({overscanStartIndex:t,overscanStopIndex:n,startIndex:r,stopIndex:o})}},{key:"_setRef",value:function(e){this.Grid=e}},{key:"_setScrollbarWidth",value:function(){var e=this.getScrollbarWidth();this.setState({scrollbarWidth:e})}}]),e}();Xl(Hu,"defaultProps",{disableHeader:!1,estimatedRowSize:30,headerHeight:0,headerStyle:{},noRowsRenderer:function(){return null},onRowsRendered:function(){return null},onScroll:function(){return null},overscanIndicesGetter:Dc,overscanRowCount:10,rowRenderer:Fu,headerRowRenderer:Lu,rowStyle:{},scrollToAlignment:"auto",scrollToIndex:-1,style:{}}),Hu.propTypes={};var Gu=[],Vu=null,qu=null;function Wu(){qu&&(qu=null,document.body&&null!=Vu&&(document.body.style.pointerEvents=Vu),Vu=null)}function Zu(){Wu(),Gu.forEach((function(e){return e.__resetIsScrolling()}))}function $u(e){e.currentTarget===window&&null==Vu&&document.body&&(Vu=document.body.style.pointerEvents,document.body.style.pointerEvents="none"),function(){qu&&xc(qu);var e=0;Gu.forEach((function(t){e=Math.max(e,t.props.scrollingResetTimeInterval)})),qu=Ic(Zu,e)}(),Gu.forEach((function(t){t.props.scrollElement===e.currentTarget&&t.__handleWindowScrollEvent()}))}function Yu(e,t){Gu.some((function(e){return e.props.scrollElement===t}))||t.addEventListener("scroll",$u),Gu.push(e)}function Ku(e,t){(Gu=Gu.filter((function(t){return t!==e}))).length||(t.removeEventListener("scroll",$u),qu&&(xc(qu),Wu()))}var Xu,Ju,Qu=function(e){return e===window},ed=function(e){return e.getBoundingClientRect()};function td(e,t){if(e){if(Qu(e)){var n=window,r=n.innerHeight,o=n.innerWidth;return{height:"number"==typeof r?r:0,width:"number"==typeof o?o:0}}return ed(e)}return{height:t.serverHeight,width:t.serverWidth}}function nd(e){return Qu(e)&&document.documentElement?{top:"scrollY"in window?window.scrollY:document.documentElement.scrollTop,left:"scrollX"in window?window.scrollX:document.documentElement.scrollLeft}:{top:e.scrollTop,left:e.scrollLeft}}function rd(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}var od=function(){return"undefined"!=typeof window?window:void 0},ad=(Ju=Xu=function(){function e(){var t,n;Ul(this,e);for(var r=arguments.length,o=new Array(r),a=0;a0&&void 0!==arguments[0]?arguments[0]:this.props.scrollElement,t=this.props.onResize,n=this.state,r=n.height,o=n.width,i=this._child||a.findDOMNode(this);if(i instanceof Element&&e){var s=function(e,t){if(Qu(t)&&document.documentElement){var n=document.documentElement,r=ed(e),o=ed(n);return{top:r.top-o.top,left:r.left-o.left}}var a=nd(t),i=ed(e),s=ed(t);return{top:i.top+a.top-s.top,left:i.left+a.left-s.left}}(i,e);this._positionFromTop=s.top,this._positionFromLeft=s.left}var l=td(e,this.props);r===l.height&&o===l.width||(this.setState({height:l.height,width:l.width}),t({height:l.height,width:l.width}))}},{key:"componentDidMount",value:function(){var e=this.props.scrollElement;this._detectElementResize=zc(),this.updatePosition(e),e&&(Yu(this,e),this._registerResizeListener(e)),this._isMounted=!0}},{key:"componentDidUpdate",value:function(e,t){var n=this.props.scrollElement,r=e.scrollElement;r!==n&&null!=r&&null!=n&&(this.updatePosition(n),Ku(this,r),Yu(this,n),this._unregisterResizeListener(r),this._registerResizeListener(n))}},{key:"componentWillUnmount",value:function(){var e=this.props.scrollElement;e&&(Ku(this,e),this._unregisterResizeListener(e)),this._isMounted=!1}},{key:"render",value:function(){var e=this.props.children,t=this.state,n=t.isScrolling,r=t.scrollTop,o=t.scrollLeft,a=t.height,i=t.width;return e({onChildScroll:this._onChildScroll,registerChild:this._registerChild,height:a,isScrolling:n,scrollLeft:o,scrollTop:r,width:i})}}]),e}(),Xl(Xu,"propTypes",null),Ju);Xl(ad,"defaultProps",{onResize:function(){},onScroll:function(){},scrollingResetTimeInterval:150,scrollElement:od(),serverHeight:0,serverWidth:0});var id=ut,sd=Xe,ld=dt,cd=Ye((function(e){return"string"==typeof e||!sd(e)&&ld(e)&&"[object String]"==id(e)})),ud=function(e,t){return function(n){return e(t(n))}}(Object.getPrototypeOf,Object),dd=ut,pd=ud,hd=dt,md=Function.prototype,fd=Object.prototype,gd=md.toString,bd=fd.hasOwnProperty,yd=gd.call(Object),vd=Ye((function(e){if(!hd(e)||"[object Object]"!=dd(e))return!1;var t=pd(e);if(null===t)return!0;var n=bd.call(t,"constructor")&&t.constructor;return"function"==typeof n&&n instanceof n&&gd.call(n)==yd})),Ed=["view","edit","delete","description","share","cloud","console","download","disable","format","preview"],wd=function(e){var t,n=e.type,o=e.onClick,a=e.valueToSend,i=e.idField,s=e.sendOnlyId,l=void 0!==s&&s,c=e.disabled,u=void 0!==c&&c,d=e.tooltip,p=l?a[i]:a,h=(t=n,Ed.includes(t)?function(e){switch(e){case"view":case"preview":return r.createElement(xa,null);case"edit":return r.createElement(ra,null);case"delete":return r.createElement(Ii,null);case"description":return r.createElement(wi,null);case"share":return r.createElement(na,null);case"cloud":return r.createElement(nl,null);case"console":return r.createElement(ps,null);case"download":return r.createElement(ki,null);case"disable":return r.createElement(rl,null);case"format":return r.createElement(ol,null)}return null}(n):n),m=r.createElement(zl,{type:"button","aria-label":"string"==typeof n?n:"",size:"30px",sx:{margin:"0 8px"},disabled:u,onClick:o?function(e){e.stopPropagation(),u?e.preventDefault():o(p)}:function(){return null}},h);return d&&""!==d&&(m=r.createElement(Wo,{tooltip:d},m)),o?m:null},Sd=o.Ay.div((function(e){var t=e.theme,n=e.sx,r=e.withBorders,o=e.customBorderPadding,a=e.useBackground,i={};return r&&(i={border:"".concat(Wn(t,"borderColor","#eaeaea")," 1px solid"),borderRadius:2,padding:o||15}),Ve(Ve({backgroundColor:a?Wn(t,"boxBackground","#FBFAFA"):"transparent"},i),n)})),Ad=function(e){var t=e.sx,n=e.children,o=e.customBorderPadding,a=qe(e,["sx","children","customBorderPadding"]);return r.createElement(Sd,Ve({},a,{sx:t,customBorderPadding:o}),n)},_d=et,Td=/\s/,Cd=function(e){for(var t=e.length;t--&&Td.test(e.charAt(t)););return t},xd=/^\s+/,Id=vt,Od=mt,kd=/^[-+]0x[0-9a-f]+$/i,Nd=/^0b[01]+$/i,Rd=/^0o[0-7]+$/i,Md=parseInt,Ld=vt,Dd=function(){return _d.Date.now()},Pd=function(e){if("number"==typeof e)return e;if(Od(e))return NaN;if(Id(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Id(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=function(e){return e?e.slice(0,Cd(e)+1).replace(xd,""):e}(e);var n=Nd.test(e);return n||Rd.test(e)?Md(e.slice(2),n?2:8):kd.test(e)?NaN:+e},Bd=Math.max,Fd=Math.min,jd=Ye((function(e,t,n){var r,o,a,i,s,l,c=0,u=!1,d=!1,p=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function h(t){var n=r,a=o;return r=o=void 0,c=t,i=e.apply(a,n)}function m(e){var n=e-l;return void 0===l||n>=t||n<0||d&&e-c>=a}function f(){var e=Dd();if(m(e))return g(e);s=setTimeout(f,function(e){var n=t-(e-l);return d?Fd(n,a-(e-c)):n}(e))}function g(e){return s=void 0,p&&r?h(e):(r=o=void 0,i)}function b(){var e=Dd(),n=m(e);if(r=arguments,o=this,l=e,n){if(void 0===s)return function(e){return c=e,s=setTimeout(f,t),u?h(e):i}(l);if(d)return clearTimeout(s),s=setTimeout(f,t),h(l)}return void 0===s&&(s=setTimeout(f,t)),i}return t=Pd(t)||0,Ld(n)&&(u=!!n.leading,a=(d="maxWait"in n)?Bd(Pd(n.maxWait)||0,t):a,p="trailing"in n?!!n.trailing:p),b.cancel=function(){void 0!==s&&clearTimeout(s),c=0,r=l=o=s=void 0},b.flush=function(){return void 0===s?i:g(Dd())},b})),zd=o.Ay.div((function(e){return{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",backgroundColor:"transparent",zIndex:5e3,overscrollBehavior:"contain"}})),Ud=function(e){var t=e.children,n=qe(e,["children"]);return r.createElement(zd,Ve({},n),t)},Hd=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({position:"absolute",display:"flex",flexDirection:"column",backgroundColor:Wn(t,"dropdownSelector.backgroundColor",c),border:"1px solid ".concat(Wn(t,"borderColor",p)),padding:"10px 10px",minWidth:150,borderRadius:4,boxShadow:"rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px","& .columnsSelectorTitle":{fontWeight:"bold",padding:"0 0 5px",borderBottom:"1px solid ".concat(Wn(t,"borderColor",p)),marginBottom:5,color:Wn(t,"fontColor",u)},"& .columnsSelectorContainer":{display:"flex",flexDirection:"column",gap:5,maxHeight:250,overflowY:"auto"}},n)})),Gd=function(e){if(!e)return{top:0,right:0};var t=e.getBoundingClientRect(),n=document.documentElement.offsetWidth;return{top:t.top+t.height,right:n-t.right}},Vd=function(e){var t=e.columns,n=e.selectedOptionIDs,o=e.onSelect,i=e.closeTriggerAction,s=e.open,l=e.anchorEl,c=void 0===l?null:l,u=(0,r.useState)(null),d=u[0],p=u[1];return(0,r.useEffect)((function(){p(s?Gd(c):null)}),[s]),(0,r.useEffect)((function(){var e=jd((function(e){e&&e.getBoundingClientRect()&&p(Gd(e))}),300);window.addEventListener("resize",(function(){i()})),window.addEventListener("scroll",(function(){e(c)}))})),s&&d?(c||console.warn("AnchorEl not set. Element will be rendered on the top of the page"),(0,a.createPortal)(r.createElement(Ud,{onClick:i},r.createElement(Hd,{sx:d,onClick:function(e){e.preventDefault(),e.stopPropagation()}},r.createElement(Ad,{className:"columnsSelectorTitle"},"Shown Columns"),r.createElement(Ad,{className:"columnsSelectorContainer"},t.map((function(e){return r.createElement(Fl,{key:"tableColumns-".concat(e.label),label:e.label,checked:n.findIndex((function(t){return t===e.elementKey}))>=0,onChange:function(){o(e.elementKey||"")},id:"chbox-".concat(e.label),name:"chbox-".concat(e.label),value:e.label})}))))),document.body)):null},qd=o.Ay.div((function(e){var t=e.theme,n=e.customPaperHeight,r=e.disabled;e.noBackground;var o=e.sx,a=e.rowHeight;return Ve({display:"flex",overflow:"auto",flexDirection:"column",padding:"0 16px 8px",boxShadow:"none",border:"".concat(Wn(t,r?"dataTable.disabledBorder":"dataTable.border","#E2E2E2")," 1px solid"),borderRadius:3,minHeight:200,overflowY:"scroll",position:"relative",height:n||"calc(100vh - 205px)",backgroundColor:r?Wn(t,"dataTable.disabledBG","transparent"):"transparent","&.noBackground":{backgroundColor:"transparent",border:0},"& .loadingBox":{padding:"100px 0"},"& .overlayColumnSelection":{position:"absolute",right:0,top:0,"& .popoverContent":{maxHeight:250,overflowY:"auto",padding:"0 10px 10px","& .shownColumnsLabel":{color:Wn(t,"mainGrey","#000"),fontSize:12,padding:10,borderBottom:"".concat(Wn(t,"dataTable.border","#E2E2E2")," 1px solid"),width:"100%"}}},"&::-webkit-scrollbar":{width:0,height:3},"& .rowLine":{borderBottom:"".concat(Wn(t,"dataTable.border","#E2E2E2")," 1px solid"),height:a,fontSize:14,transitionDuration:"0.3s","&:focus":{outline:"initial"},"&:hover:not(.ReactVirtualized__Table__headerRow)":{userSelect:"none",backgroundColor:Wn(t,"dataTable.hoverColor","#ececec"),fontWeight:600,"&.canClick":{cursor:"pointer"},"&.canSelectText":{userSelect:"text"}},"& .selected":{fontWeight:600},"&:not(.deleted) .selected":{color:Wn(t,"dataTable.selected","#081C42")},"&.deleted .selected":{color:Wn(t,"dataTable.selectedDisabled","#C51B3F")}},"& .headerItem":{userSelect:"none",fontWeight:700,fontSize:14,fontStyle:"initial",display:"flex",alignItems:"center",outline:"none"},"& .ReactVirtualized__Table__row":{width:"100% !important",display:"flex",flexDirection:"row",alignItems:"center"},"& .ReactVirtualized__Table__headerRow":{display:"flex",flexDirection:"row",alignItems:"center",fontWeight:700,fontSize:14,borderColor:Wn(t,"dataTable.border","#39393980"),textTransform:"initial",transitionDuration:"0s"},"& .ReactVirtualized__Table__headerTruncatedText":{display:"inline-block",maxWidth:"100%",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden"},"& .ReactVirtualized__Table__headerColumn":{marginRight:10,minWidth:0,"&:first-of-type":{marginLeft:10},"& svg":{width:12,height:12,marginRight:5,alignSelf:"flex-end"}},"& .ReactVirtualized__Table__rowColumn":{marginRight:10,minWidth:0,textOverflow:"ellipsis",whiteSpace:"nowrap","&:first-of-type":{marginLeft:10}},"& .ReactVirtualized__Table__sortableHeaderColumn":{cursor:"pointer"},"& .ReactVirtualized__Table__sortableHeaderIconContainer":{display:"flex",alignItems:"center"},"& .ReactVirtualized__Table__sortableHeaderIcon":{flex:"0 0 24px",height:"1em",width:"1em",fill:"currentColor"},"& .optionsAlignment":{display:"flex",gap:5,"& .min-icon":{width:16,height:16}},"& .text-center":{textAlign:"center"},"& .text-right":{textAlign:"right"},"& .progress-enabled":{display:"inline-flex",position:"relative",alignItems:"center",justifyContent:"center",width:30,height:30}},o)})),Wd={deleted:{color:"#00000080",backgroundColor:"#f1f0f040","&.selected":{color:"#b2b2b270"}}},Zd=function(e){var t=e.itemActions,n=e.columns,o=e.onSelect,a=e.records,i=e.isLoading,s=e.loadingMessage,l=void 0===s?r.createElement("h3",null,"Loading..."):s,c=e.entityName,u=e.selectedItems,d=e.idField,p=e.customEmptyMessage,h=void 0===p?"":p,m=e.customPaperHeight,f=void 0===m?"":m,g=e.noBackground,b=void 0!==g&&g,y=e.columnsSelector,v=void 0!==y&&y,E=e.textSelectable,w=void 0!==E&&E,S=e.columnsShown,A=void 0===S?[]:S,_=e.onColumnChange,T=void 0===_?function(e){}:_,C=e.infiniteScrollConfig,x=e.autoScrollToBottom,I=void 0!==x&&x;e.disabled;var O=e.onSelectAll,k=e.rowStyle,N=e.parentClassName,R=void 0===N?"":N,M=e.sx,L=e.rowHeight,D=void 0===L?40:L,P=e.sortEnabled,B=void 0!==P&&P,F=e.sortCallBack,j=(0,r.useState)(!1),z=j[0],U=j[1],H=(0,r.useState)(void 0),G=H[0],V=H[1],q=(0,r.useState)("ASC"),W=q[0],Z=q[1],$=(0,r.useState)(null),Y=$[0],K=$[1],X=d||"",J=t?t.find((function(e){return"view"===e.type})):null,Q=B&&"object"==typeof B&&!Array.isArray(B),ee=function(e){U(!z),K(e.currentTarget)},te=function(){U(!1),K(null)},ne=void 0,re=void 0,oe=void 0;B&&(Q?(ne=B.onSortClick,re=B.currentSort,oe=B.currentDirection):(ne=function(e){var t=Wn(e,"sortDirection","DESC");V(e.sortBy),Z(t),F&&F(e)},re=G,oe=W));var ae=a;return B&&G&&!Q&&(ae=function(e,t,n){var r=e;if(0===e.length)return e;if(vd(e[0])&&void 0!==t)switch(n){case"ASC":r.sort((function(e,n){return e[t]>n[t]?1:e[t]n[t]?-1:0}))}else switch(n){case"ASC":r.sort((function(e,t){return e>t?1:et?-1:0}))}return r}(a,G,W)),r.createElement(qr,{item:!0,xs:12,className:R},r.createElement(qd,{className:"".concat(b?"noBackground":""),customPaperHeight:f,sx:M,rowHeight:D},i&&r.createElement(qr,{container:!0,className:"loadingBox"},r.createElement(qr,{item:!0,xs:12,style:{textAlign:"center"}},l),r.createElement(qr,{item:!0,xs:12,sx:{textAlign:"center"}},r.createElement(Po,null))),v&&!i&&ae.length>0&&r.createElement(r.Fragment,null,function(e){return r.createElement(Ad,{sx:{margin:"10px 0 0",display:"flex",justifyContent:"flex-end"}},r.createElement(hr,{id:"columns-selector",variant:"regular",icon:r.createElement(Qs,null),iconLocation:"end",onClick:ee},"Columns"),z&&r.createElement(Vd,{open:z,closeTriggerAction:te,onSelect:function(e){return T(e)},columns:e,selectedOptionIDs:A,anchorEl:Y}))}(n)),ae&&!i&&ae.length>0?r.createElement(ru,{isRowLoaded:function(e){var t=e.index;return!!ae[t]},loadMoreRows:C?C.loadMoreRecords:function(){return new Promise((function(){return!0}))},rowCount:C?C.recordsCount:ae.length},(function(e){var a=e.onRowsRendered,i=e.registerChild;return r.createElement(Gc,null,(function(e){var s,l,p,m=e.width,f=e.height,g=(s=m,l=t?t.filter((function(e){return"view"!==e.type})).length:0,(p=36*l)<36?36:p>s?s:p),b=!(!o||!u),y=!!(t&&t.length>1||t&&1===t.length&&"view"!==t[0].type);return r.createElement(Hu,{ref:i,disableHeader:!1,headerClassName:"headerItem",headerHeight:40,height:f,noRowsRenderer:function(){return r.createElement(r.Fragment,null,""!==h?h:"There are no ".concat(c||"items"," yet."))},overscanRowCount:10,rowHeight:D,width:m,rowCount:ae.length,rowGetter:function(e){var t=e.index;return ae[t]},onRowClick:function(e){!function(e){if(J){var t=J.sendOnlyId&&d?e[X]:e,n=!1;J.isDisabled&&(n="boolean"==typeof J.isDisabled?J.isDisabled:J.isDisabled(e)),J.onClick&&!n&&J.onClick(t)}}(e.rowData)},rowClassName:function(e){return"rowLine ".concat(J?"canClick":""," ").concat(!J&&w?"canSelectText":""," ").concat(k?k(e):"")},onRowsRendered:a,sort:ne,sortBy:re,sortDirection:oe,scrollToIndex:I?ae.length-1:-1,rowStyle:function(e){if(k){var t=k(e);return"string"==typeof t?Wn(Wd,t,{}):t}return{}}},b&&r.createElement(ju,{headerRenderer:function(){return r.createElement(r.Fragment,null,O?r.createElement("div",{className:"checkAllWrapper"},r.createElement(Fl,{label:"",onChange:O,value:"all",id:"selectAll",name:"selectAll",checked:(null==u?void 0:u.length)===ae.length})):r.createElement(r.Fragment,null,"Select"))},dataKey:"select-".concat(X),width:45,disableSort:!0,cellRenderer:function(e){var t=e.rowData,n=!!u&&u.includes(cd(t)?t:"".concat(t[X]));return r.createElement(Fl,{value:cd(t)?t:"".concat(t[X]),color:"primary",className:"TableCheckbox",checked:n,onChange:o,onClick:function(e){e.stopPropagation()}})}}),function(e,t,n,o,a,i,s,l,c,u,d,p){var h=u&&"object"==typeof u&&!Array.isArray(u),m=function(e,t,n,r,o,a,i){if(e){var s=We([],e,!0);a&&(s=e.filter((function(e){return i.includes(e.elementKey)})));var l=t;return r&&(l-=45),o&&(l-=n),s.reduce((function(e,t){return t.width?e-t.width:e}),l)/s.filter((function(e){return!e.width})).length}return t}(e,t,n,o,a,l,c);return e.map((function(t,n){if(l&&!c.includes(t.elementKey))return null;var o=void 0===t.enableSort||t.enableSort,a=!u||h&&!o||Array.isArray(u)&&!u.includes((null==t?void 0:t.elementKey)||"");return r.createElement(ju,{key:"col-tb-".concat(n.toString()),dataKey:t.elementKey||"column-".concat(n),headerClassName:"titleHeader ".concat(t.headerTextAlign?"text-".concat(t.headerTextAlign):""),headerRenderer:function(){return r.createElement(Ad,{sx:{display:"flex",width:"100%","& svg":{width:12,height:12,minWidth:12,minHeight:12}}},u||Array.isArray(u)&&u.includes(t.elementKey)?r.createElement(r.Fragment,null,d===t.elementKey||1===e.length&&"column-0"===d?r.createElement(r.Fragment,null,"ASC"===p?r.createElement(el,null):r.createElement(tl,null)):null):null,r.createElement(Ad,{sx:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},t.label))},className:t.contentTextAlign?"text-".concat(t.contentTextAlign):"",cellRenderer:function(e){var n=e.rowData,o=!!i&&i.includes(cd(n)?n:"".concat(n[s]));return function(e,t,n){var o=cd(e)?e:Wn(e,t.elementKey||"",null),a=t.renderFullObject?e:o,i=t.renderFunction?t.renderFunction(a):a;return r.createElement(r.Fragment,null,r.createElement("span",{className:n?"selected":""},i))}(n,t,o)},width:t.width||m,disableSort:a,defaultSortDirection:"ASC"})}))}(n,m,g,b,y,u||[],X,v,A,B,re||"",oe),y&&r.createElement(ju,{dataKey:"column-options",width:g,headerClassName:"optionsAlignment",className:"optionsAlignment",cellRenderer:function(e){var n=e.rowData,o=!!u&&u.includes(cd(n)?n:"".concat(n[X]));return function(e,t,n,o){return e.map((function(e,a){if("view"===e.type)return null;var i=!1;return e.isDisabled&&(i="boolean"==typeof e.isDisabled?e.isDisabled:e.isDisabled(t)),e.showLoader&&("boolean"==typeof e.showLoader&&e.showLoader||e.showLoader(t))?r.createElement("div",{className:"progress-enabled"},r.createElement(Po,{style:{width:18,height:18},key:"actions-loader-".concat(e.type,"-").concat(a.toString())})):r.createElement(wd,{tooltip:e.tooltip,type:e.type,onClick:e.onClick,valueToSend:t,selected:n,key:"actions-".concat(e.type,"-").concat(a.toString()),idField:o,sendOnlyId:!!e.sendOnlyId,disabled:i})}))}(t||[],n,o,X)}}))}))})):r.createElement(r.Fragment,null,!i&&r.createElement("div",{id:"empty-results"},""!==h?h:"There are no ".concat(c||"items"," yet.")))))},$d=o.Ay.button((function(e){var t=e.theme,n=e.sx;return Ve({display:"flex",alignItems:"center",textDecoration:"none",justifyContent:"center",flexDirection:"row",height:"30px",paddingLeft:0,background:"transparent",border:0,cursor:"pointer","& .label":{color:Wn(t,"backLink.color","#073052"),fontSize:14,fontWeight:600,lineHeight:1,paddingTop:1,marginRight:10},"&:hover .icon":{background:Wn(t,"backLink.hover","#eaedee"),borderRadius:"2px"},"& .icon":{lineHeight:1,marginRight:"3px",display:"flex",alignItems:"center",width:"28px",height:"30px","& .min-icon":{width:"17px",height:"11px",margin:"auto",color:Wn(t,"backLink.arrow","#081C42")}}},n)})),Yd=function(e){var t=e.label,n=e.sx,o=qe(e,["label","sx"]);return r.createElement($d,Ve({sx:n},o),r.createElement("span",{className:"icon"},r.createElement(mi,null)),r.createElement("span",{className:"label"},t))},Kd=o.Ay.div((function(e){var t=e.theme;return{border:"1px solid ".concat(Wn(t,"borderColor","#E2E2E2")),borderRadius:2,backgroundColor:Wn(t,"boxBackground","#FBFAFA"),paddingLeft:25,paddingTop:20,paddingBottom:20,paddingRight:30,"& .leftItems":{fontSize:16,fontWeight:"bold",display:"flex",alignItems:"center","& .min-icon":{marginRight:15,height:28,width:38}},"& .helpText":{fontSize:16,paddingLeft:5,marginTop:15}}})),Xd=function(e){var t=e.iconComponent,n=e.title,o=e.help;return r.createElement(Kd,{className:"helpbox-container"},r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,xs:12,className:"leftItems"},t||null,n),o&&r.createElement(qr,{item:!0,xs:12,className:"helpText"},o)))},Jd=o.Ay.div((function(e){var t=e.theme,n=e.separator,r=e.sx;return Ve({display:"flex",alignItems:"center",justifyContent:"flex-start",borderBottom:n?"1px solid ".concat(Wn(t,"borderColor","#eaeaea")):"",gap:"10px"},r)})),Qd=function(e){var t=e.separator,n=e.icon,o=e.children,a=e.actions,i=e.sx;return r.createElement(Jd,{className:"sectionTitle-container",separator:t,sx:i},r.createElement(qr,{item:!0,xs:!0,sx:{display:"flex",flexGrow:1,justifyContent:"flex-start",alignItems:"center",marginLeft:"10px","& svg":{marginRight:"10px"}}},n,r.createElement("h3",null,o)),a&&r.createElement(qr,{item:!0,xs:!0,sx:{display:"flex",justifyContent:"flex-end",marginRight:"10px"}}," ",a))},ep=function(e){var t,n=e.children,o=e.title,a=void 0===o?"":o,s=e.helpBox,l=e.icon,c=e.sx,u=e.containerPadding,d=void 0===u||u,p=e.withBorders,h=void 0===p||p;return r.createElement(Ad,{withBorders:h,sx:Ve((t={display:"grid",padding:d?25:0,gap:"25px",gridTemplateColumns:"1fr","& .inputItem:not(:last-of-type)":{marginBottom:12}},t["@media (min-width: ".concat(Wn(i,"md",0),"px)")]={gridTemplateColumns:s?"2fr 1.2fr":"1fr"},t),c)},r.createElement(Ad,null,""!==a&&r.createElement(Qd,{icon:l,sx:{marginBottom:16}},a),n),s)},tp=o.Ay.div((function(e){e.theme;var t=e.sx,n=e.variant;return Ve({boxSizing:"content-box",maxWidth:"constrained"===n?1220:"initial",padding:32},t)})),np=function(e){var t=e.sx,n=e.children,o=e.variant,a=e.className,i=qe(e,["sx","children","variant","className"]);return r.createElement(tp,Ve({sx:t,variant:o},i),r.createElement(qr,{container:!0},r.createElement(qr,{item:!0,xs:12,className:a},n)))},rp=o.Ay.main((function(e){var t=e.theme;return{flexGrow:1,height:e.horizontal?"initial":"100vh",overflow:"auto",position:"relative",backgroundColor:Wn(t,"bgColor","#fff"),color:Wn(t,"fontColor","#000")}})),op=o.Ay.div((function(e){var t,n=e.horizontal,r=e.mobileModeAuto,o=e.sx,a={};return r&&((t={})["@media (max-width: ".concat(Wn(i,"md",0),"px)")]={flexDirection:"column"},a=t),Ve(Ve({display:"flex",flexDirection:n?"column":"row"},a),o)})),ap=function(e){var t=e.children,n=e.menu,o=e.horizontal,a=e.mobileModeAuto,i=void 0===a||a,s=e.sx;return r.createElement(op,{className:"parentBox",horizontal:o,mobileModeAuto:i,sx:s},n&&(0,r.cloneElement)(n,{mobileModeAuto:i}),r.createElement(rp,{horizontal:o,className:"mainPage"},t))},ip=o.Ay.input((function(e){var t=e.theme,n=e.error,r=e.startIcon,o=e.overlayIcon,a=e.overlayObject,i=e.originType,s=Wn(t,"inputBox.border","#E2E2E2"),l=Wn(t,"inputBox.hoverBorder","#000110");return n&&""!==n&&(s=Wn(t,"inputBox.error","#C51B3F"),l=Wn(t,"inputBox.error","#C51B3F")),{height:38,width:"100%",paddingTop:0,paddingRight:o||a||"password"===i?35:15,paddingLeft:r?35:15,paddingBottom:0,color:Wn(t,"inputBox.color","#07193E"),fontSize:13,fontWeight:600,border:"".concat(s," 1px solid"),borderRadius:3,outline:"none",transitionDuration:"0.1s",backgroundColor:Wn(t,"inputBox.backgroundColor","#fff"),"&:placeholder":{color:Wn(t,"inputBox.placeholderColor","#858585"),opacity:1,fontWeight:400},"&:hover":{borderColor:l},"&:focus":{borderColor:l},"&:disabled":{border:Wn(t,"inputBox.disabledBorder","#494A4D"),backgroundColor:Wn(t,"inputBox.disabledBackground","#B4B4B4"),color:Wn(t,"inputBox.disabledText","#E6EBEB"),"&:placeholder":{color:Wn(t,"inputBox.disabledPlaceholder","#E6EBEB")}}}})),sp=o.Ay.div((function(e){var t=e.theme,n=e.error,r=e.sx;return Ve({display:"flex",flexGrow:1,width:"100%","& .errorText":{fontSize:12,color:Wn(t,"inputBox.error","#C51B3F"),marginTop:3},"& .textBoxContainer":{width:"100%",flexGrow:1,position:"relative",minWidth:160},"& .tooltipContainer":{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},"& .overlayAction":{position:"absolute",right:5,top:6},"& .inputLabel":{marginBottom:n?18:0},"& .startOverlayIcon":{position:"absolute",left:10,top:10,"& svg":{width:14,height:14,fill:Wn(t,"inputBox.color","#07193E")}}},r)})),lp=function(e){var t=e.id,n=e.tooltip,o=void 0===n?"":n,a=e.index,i=e.type,s=e.overlayIcon,l=e.noLabelMinWidth,c=e.overlayId,u=e.overlayAction,d=e.overlayObject,p=e.label,h=void 0===p?"":p,m=e.required,f=e.startIcon,g=e.className,b=e.error,y=e.sx,v=e.helpTip,E=e.helpTipPlacement,w=qe(e,["id","tooltip","index","type","overlayIcon","noLabelMinWidth","overlayId","overlayAction","overlayObject","label","required","startIcon","className","error","sx","helpTip","helpTipPlacement"]),S=(0,r.useState)(!1),A=S[0],_=S[1],T=s,C=i;return"password"!==i||s||(T=A?r.createElement(il,null):r.createElement(al,null),C=A?"text":"password"),r.createElement(sp,{error:!!b&&""!==b,sx:y,className:"inputItem ".concat(g)},""!==h&&r.createElement(Ll,{htmlFor:t,noMinWidth:l,className:"inputLabel",helpTip:v,helpTipPlacement:E},h,m?"*":"",""!==o&&r.createElement(Ad,{className:"tooltipContainer"},r.createElement(Wo,{tooltip:o,placement:"top"},r.createElement(Ad,{className:o},r.createElement(Wa,null))))),r.createElement(Ad,{className:"textBoxContainer"},f&&r.createElement(Ad,{className:"startOverlayIcon"},f),r.createElement(ip,Ve({id:t,fullWidth:!0,type:C,error:b,className:"inputRebase","data-index":a,startIcon:f,overlayObject:d,overlayIcon:s,originType:i},w)),T&&r.createElement(Ad,{className:"overlayAction"},r.createElement(zl,{onClick:u?function(){u()}:function(){return _(!A)},id:c,size:"25px",type:"button"},T)),d&&r.createElement(Ad,{className:"overlayAction"},d),""!==b&&r.createElement(Ad,{className:"errorText"},b)))},cp=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({boxSizing:"border-box",flexBasis:"100%",width:"100%",fontSize:12,color:Wn(t,"breadcrumbs.textColor","#969FA8"),fontWeight:"bold",border:"".concat(Wn(t,"breadcrumbs.border","#eaeaea")," 1px solid"),height:38,display:"flex",alignItems:"center",backgroundColor:Wn(t,"breadcrumbs.backgroundColor","#FCFCFD"),marginRight:10,"& a":{textDecoration:"none",color:Wn(t,"breadcrumbs.linksColor","#969FA8"),"&:hover":{textDecoration:"underline"}},"& .min-icon":{width:16,minWidth:16},"& .backButton":{border:"".concat(Wn(t,"breadcrumbs.backButton.border","#EAEDEE")," 1px solid"),backgroundColor:Wn(t,"breadcrumbs.backButton.backgroundColor","#FFF"),borderLeft:0,borderRadius:0,width:38,height:38,marginRight:"10px","& > svg":{fill:Wn(t,"breadcrumbs.textColor","#969FA8")}},"& .breadcrumbsList":{textOverflow:"ellipsis",overflow:"hidden",whiteSpace:"nowrap",display:"inline-block",flexGrow:1,textAlign:"left",marginLeft:15,marginRight:10,width:0},"& .slashSpacingStyle":{margin:"0 5px"}},n)})),up=function(e){var t=e.sx,n=e.children,o=e.additionalOptions,a=e.goBackFunction;return r.createElement(cp,{className:"breadcrumbs-bar",sx:t},r.createElement(zl,{onClick:a,className:"backButton"},r.createElement(fs,null)),r.createElement(Ad,{className:"breadcrumbsList",dir:"rtl"},n),o)},dp=o.Ay.button((function(e){var t=e.theme;return{display:"inline-flex",alignItems:"center",justifyContent:"flex-start",color:Wn(t,"actionsList.optionsTextColor","#5E5E5E"),width:"100%",height:22,margin:0,padding:"0 15px",fontSize:14,fontWeight:"normal",whiteSpace:"nowrap",backgroundColor:"transparent",border:"none",cursor:"pointer","&:hover":{backgroundColor:"transparent",color:Wn(t,"actionsList.optionsHoverTextColor","#000")},"& svg":{width:11,marginRight:8},"&:disabled":{color:Wn(t,"actionsList.disabledOptionsTextColor","#EBEBEB"),cursor:"not-allowed"},"& .buttonIcon":{width:11}}})),pp=function(e){var t=e.icon,n=e.label,o=qe(e,["icon","label"]);return r.createElement(dp,Ve({},o),t,n)},hp=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({"& .titleLabel":{fontSize:14,fontWeight:"700",color:Wn(t,"actionsList.titleColor","#000"),padding:"12px 30px 8px 22px",whiteSpace:"nowrap",textOverflow:"ellipsis",overflow:"hidden",alignItems:"center"},"& .objectActions":{backgroundColor:Wn(t,"actionsList.backgroundColor","#F8F8F8"),border:"".concat(Wn(t,"actionsList.containerBorderColor","#F1F1F1")," 1px solid"),borderRadius:3,margin:"8px 22px",padding:0,"& span":{width:"100%"},"& li":{listStyle:"none",padding:6,margin:0,borderBottom:"".concat(Wn(t,"actionsList.optionsBorder","#E5E5E5")," 1px solid"),fontSize:14,"&:first-of-type":{padding:10,fontWeight:"bold",color:Wn(t,"actionsList.titleColor","#000")},"&:last-of-type":{borderBottom:0},"&::before":{content:"' '!important"}}}},n)})),mp=function(e){var t=e.sx,n=e.items,o=e.title;return r.createElement(hp,{sx:t},r.createElement("div",{className:"titleLabel"},o),r.createElement("ul",{className:"objectActions"},r.createElement("li",null,"Actions:"),n.map((function(e,t){return r.createElement("li",{key:"action-element-".concat(t.toString())},r.createElement(Wo,{tooltip:e.tooltip||""},r.createElement(pp,{label:e.label,icon:e.icon,onClick:e.action,disabled:e.disabled,style:{pointerEvents:e.disabled?"none":"initial"}})))}))))},fp=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({display:"flex",justifyContent:"space-between",alignItems:"center",paddingBottom:15,borderBottom:"1px solid ".concat(Wn(t,"borderColor","#E5E5E5")),fontWeight:"bold",fontSize:18,color:Wn(t,"fontColor","#000"),margin:"20px 22px"},n)})),gp=function(e){var t=e.label,n=e.icon,o=e.sx;return r.createElement(fp,{className:"simpleHeader-container",sx:o},r.createElement("span",null,t),n)},bp=o.Ay.div((function(e){var t,n=e.theme,r=e.sx,o=e.bottomBorder;return Ve(((t={boxSizing:"border-box",display:"flex",flexDirection:"row",flexWrap:"wrap",width:"100%","& .stContainer":{display:"flex",alignItems:"center",justifyContent:"space-between",padding:8,width:"100%",borderBottom:o?"1px solid ".concat(Wn(n,"screenTitle.border","#E5E5E5")):"none"},"& .headerBarIcon":{color:Wn(n,"screenTitle.iconColor","#000"),"& .min-icon":{width:44,height:44}},"& .headerBarSubheader":{color:Wn(n,"screenTitle.subtitleColor","#5B5C5C")},"& .titleColumn":{height:"auto",justifyContent:"center",display:"flex",flexFlow:"column",alignItems:"flex-start","& h1":{fontSize:20}},"& .leftItems":{display:"flex",alignItems:"center",gap:12},"& .rightItems":{display:"flex",alignItems:"center",gap:10}})["@media (max-width: ".concat(Wn(i,"md",0),"px)")]={"& .stContainer":{flexDirection:"column",gap:12,flexFlow:"column",alignItems:"flex-start"},"& .headerBarIcon":{display:"none"},"& .headerBarSubheader":{display:"flex",flexDirection:"column"},"& .rightItems":{width:"100%",justifyContent:"center"}},t),r)})),yp=function(e){var t=e.icon,n=e.subTitle,o=void 0===n?"":n,a=e.title,i=e.actions,s=e.bottomBorder,l=void 0===s||s,c=e.sx;return r.createElement(bp,{className:"screenTitle-container",sx:c,bottomBorder:l},r.createElement(Ad,{className:"stContainer"},r.createElement(Ad,{className:"leftItems"},t?r.createElement(Ad,{className:"headerBarIcon"},t):null,r.createElement(Ad,{className:"titleColumn"},r.createElement("h1",{style:{margin:0}},a),r.createElement("span",{className:"headerBarSubheader"},o))),r.createElement(Ad,{className:"rightItems"},i)))},vp=function(e){var t=(0,r.useCallback)((function(t){"Escape"!==t.key&&"Esc"!==t.key||e()}),[e]);(0,r.useEffect)((function(){return document.addEventListener("keyup",t,!1),function(){document.removeEventListener("keyup",t,!1)}}),[t])},Ep=o.Ay.div((function(e){var t=e.theme,n=e.backgroundOverlay,r=e.widthLimit,o=e.iconColor,a=e.customMaxWidth;return{"& .overlay":{position:"fixed",zIndex:1200,width:"100vw",height:"100vh",top:0,left:0,backgroundColor:n?Wn(t,"modalBox.overlayColor","#00000050"):"transparent",display:"flex",alignItems:"center",justifyContent:"center",opacity:0,"&.active":{opacity:1,transition:"opacity 0.3s"}},"& .modalContainer":{color:Wn(t,"fontColor","#000"),width:"100%",maxWidth:r?a:"100%",margin:32,backgroundColor:Wn(t,"modalBox.containerColor","#FFF"),padding:"16px 40px",borderRadius:4,boxShadow:"rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px"},"& .modalTitleBar":{position:"relative",padding:"10px 0","& .closeModalButton":{display:"flex",alignItems:"center",justifyContent:"center",position:"absolute",top:-2,right:-14,cursor:"pointer",border:"none",backgroundColor:"transparent",fontSize:24,color:Wn(t,"modalBox.closeColor","#FFF"),padding:0,borderRadius:"100%",width:28,height:28,"& > svg":{width:14,height:14},"&:hover":{color:Wn(t,"modalBox.closeHoverColor","#EAEAEA"),backgroundColor:Wn(t,"modalBox.closeHoverBG","#000")}},"& .title":{display:"flex",alignItems:"center",justifyContent:"flex-start",gap:8,fontSize:20,color:Wn(t,"modalBox.titleColor","#000"),fontWeight:"bold","& > svg":{fill:Wn(t,"modalBox.iconColor.".concat(o),"#07193E")}}},"& .dialogContent":{maxHeight:"calc(100vh - 150px)",overflowY:"auto"}}})),wp=function(e){var t=e.onClose,n=e.open,o=e.title,i=e.children,s=e.widthLimit,l=void 0===s||s,c=e.titleIcon,u=e.backgroundOverlay,d=void 0===u||u,p=e.iconColor,h=void 0===p?"default":p,m=e.customMaxWidth,f=void 0===m?750:m,g=e.sx;vp(t);var b=(0,r.useState)(!1),y=b[0],v=b[1];if((0,r.useEffect)((function(){n?setTimeout((function(){return v(!0)}),100):v(!1)}),[n]),!n)return null;var E=r.createElement(Ep,{widthLimit:l,backgroundOverlay:d,iconColor:h,customMaxWidth:f,sx:g,className:"modalBoxMain"},r.createElement(Ad,{className:"overlay ".concat(y?"active":"")},r.createElement(Ad,{className:"modalContainer"},r.createElement(Ad,{className:"modalTitleBar"},r.createElement(Ad,{className:"title"},c,o),r.createElement("button",{className:"closeModalButton",id:"close",onClick:t},r.createElement(As,null))),r.createElement(Ad,{className:"dialogContent"},i))));return(0,a.createPortal)(E,document.body)},Sp=o.Ay.span((function(e){var t=e.theme,n=e.active;return{fontSize:12,color:n?Wn(t,"switchButton.onLabelColor","#081C42"):Wn(t,"switchButton.offLabelColor","#E2E2E2"),margin:"0 8px 0 10px",fontWeight:n?"bold":"normal"}})),Ap=o.Ay.label((function(e){var t=e.theme;return{width:54,height:24,position:"relative","& .switchRail":{position:"relative",display:"block",width:54,height:24,borderRadius:24,padding:2,boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)"},"& input":{display:"none","& ~.switchRail":{backgroundColor:Wn(t,"switchButton.switchBackground","#E6EBEB"),"&:before":{content:"' '",position:"absolute",display:"block",width:22,height:22,top:1,left:1,borderRadius:"100%",border:"".concat(Wn(t,"switchButton.bulletBorderColor","#FFF")," 2px solid "),backgroundColor:Wn(t,"switchButton.bulletBGColor","#F1F4F4"),transitionDuration:"0.1s"}},"&:checked ~.switchRail":{backgroundColor:Wn(t,"switchButton.onBackgroundColor","#4CCB92"),"&:before":{left:"calc(100% - 23px)"}},"&:disabled:checked ~.switchRail":{backgroundColor:Wn(t,"switchButton.disabledOnBackground","#8bb0a0")},"&:disabled ~.switchRail":{cursor:"not-allowed",backgroundColor:Wn(t,"switchButton.disabledBackground","#E6EAEB"),"&:before":{borderColor:Wn(t,"switchButton.disabledBulletBorderColor","#F1F4F4"),backgroundColor:Wn(t,"switchButton.disabledBulletBGColor","#E6EAEB")}}}}})),_p=o.Ay.div((function(){return{display:"flex",alignItems:"center"}})),Tp=o.Ay.div((function(e){e.theme;var t=e.sx;return Ve({"& .inputBase":{display:"flex",justifyContent:"space-between",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"},"& .actionDescription":{marginTop:4,padding:"0 10px",color:"#999999"}},t)})),Cp=function(e){var t=e.tooltip,n=e.label,o=e.id,a=e.sx,i=e.className,s=e.switchOnly,l=e.indicatorLabels,c=e.description,u=e.checked,d=e.helpTip,p=e.helpTipPlacement,h=qe(e,["tooltip","label","id","sx","className","switchOnly","indicatorLabels","description","checked","helpTip","helpTipPlacement"]),m=r.createElement(_p,null,!s&&r.createElement(Sp,{active:!u},l&&l.length>1?l[1]:"OFF"),r.createElement(Ap,{id:"".concat(o,"-switch")},r.createElement("input",Ve({type:"checkbox",id:o,checked:u},h)),r.createElement("span",{className:"switchRail"})),!s&&r.createElement(Sp,{active:!!u},l?l[0]:"ON"));return s?m:r.createElement(Tp,{className:"inputItem ".concat(i||""),sx:a},r.createElement(Pl,{className:"inputBase"},""!==n&&r.createElement(Ll,{htmlFor:o,noMinWidth:!0,helpTip:d,helpTipPlacement:p},n,t&&""!==t&&r.createElement("div",{className:"tooltipContainer"},r.createElement(Wo,{tooltip:t,placement:"top"},r.createElement(Wa,null)))),m),c&&r.createElement(Ad,{className:"actionDescription"},c))},xp=o.Ay.div((function(e){var t=e.theme,n=e.sx,r=e.useAnchorWidth;return Ve({position:"absolute",display:"grid",gridTemplateColumns:"100%",backgroundColor:Wn(t,"dropdownSelector.backgroundColor","#fff"),border:"1px solid ".concat(Wn(t,"borderColor","#E2E2E2")),padding:"10px 0",maxHeight:450,minWidth:r?150:0,overflowX:"hidden",overflowY:"auto",borderRadius:4,boxShadow:"rgba(0, 0, 0, 0.2) 0px 11px 15px -7px, rgba(0, 0, 0, 0.14) 0px 24px 38px 3px, rgba(0, 0, 0, 0.12) 0px 9px 46px 8px","& ul":{padding:0,margin:0,display:"flex",flexDirection:"column",width:"100%"}},n)})),Ip=o.Ay.div((function(e){var t=e.theme,n=e.icon;e.label;var r="";return n&&(r+="16px "),r+="1fr ",e.indicator&&(r+="16px"),{cursor:"pointer",listStyle:"none",width:"100%",color:Wn(t,"dropdownSelector.optionTextColor","#000"),padding:"6px 15px",fontSize:14,userSelect:"none",alignItems:"center",justifyContent:"flex-start",gap:10,whiteSpace:"nowrap",display:"grid",gridTemplateColumns:r,"& svg":{width:16,height:16,minWidth:16,minHeight:16},"& .truncate":{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},"&.selected":{backgroundColor:Wn(t,"dropdownSelector.selectedBGColor","#D5D7D8"),color:Wn(t,"dropdownSelector.optionTextColor","#000")},"&.disabled":{cursor:"not-allowed",color:Wn(t,"dropdownSelector.disabledText","#E6EBEB"),"&:hover":{backgroundColor:Wn(t,"dropdownSelector.backgroundColor","#fff"),color:Wn(t,"dropdownSelector.disabledText","#E6EBEB")}},"&.hovered:not(.disabled)":{backgroundColor:Wn(t,"dropdownSelector.hoverBG","#E6EAEB"),color:Wn(t,"dropdownSelector.hoverText","#000")}}})),Op=function(e,t,n){if(!e)return{top:0,left:0,width:0};var r=e.getBoundingClientRect(),o={top:r.top+r.height};return"start"===t?(o.left=r.left,o.transform="translateX(0%)"):"end"===t&&(o.left=r.left+r.width,o.transform="translateX(-100%)"),n&&(o.width=r.width),o},kp=function(e){var t,n,o=e.id,i=e.options,s=e.selectedOption,l=void 0===s?"":s,c=e.onSelect,u=e.hideTriggerAction,d=e.open,p=e.anchorEl,h=void 0===p?null:p,m=e.useAnchorWidth,f=void 0!==m&&m,g=e.anchorOrigin,b=void 0===g?"start":g,y=(0,r.useState)(null),v=y[0],E=y[1],w=(0,r.useState)(0),S=w[0],A=w[1],_=function(){var e=i[S];e.disabled||c(e.value,e.extraValue||null,e.label,S),u()};return n=(0,r.useCallback)((function(e){"Enter"===e.key&&t()}),[t=_]),(0,r.useEffect)((function(){return document.addEventListener("keyup",n,!1),function(){document.removeEventListener("keyup",n,!1)}}),[n]),vp(u),function(e){var t=(0,r.useCallback)((function(t){var n;(null===(n=t.key)||void 0===n?void 0:n.startsWith("Arrow"))&&(t.preventDefault(),t.stopPropagation(),e(t.key))}),[e]);(0,r.useEffect)((function(){return document.addEventListener("keyup",t,!1),function(){document.removeEventListener("keyup",t,!1)}}),[t])}((function(e){if(d)if("ArrowUp"===e){var t=S-1;A(r=t>=0?t:0)}else if("ArrowDown"===e){var n=S+1,r=n<=i.length-1?n:i.length-1;A(r)}})),(0,r.useEffect)((function(){A(0)}),[i]),(0,r.useEffect)((function(){E(d?Op(h,b,f):null)}),[d]),(0,r.useEffect)((function(){var e=jd((function(e){e&&e.getBoundingClientRect()&&E(Op(e,b,f))}),300);window.addEventListener("resize",(function(){u()})),window.addEventListener("scroll",(function(){e(h)}))})),d&&v?(h||console.warn("AnchorEl not set. Element will be rendered on the top of the page"),(0,a.createPortal)(r.createElement(Ud,{onClick:u},r.createElement(xp,{id:o,sx:v,useAnchorWidth:f},i.map((function(e,t){return r.createElement(Ip,{className:"".concat(l===e.value?"selected":""," ").concat(e.disabled?"disabled":""," ").concat(t===S?"hovered":""),onClick:_,onMouseOver:function(){A(t)},key:"option-".concat(t),label:e.label,icon:e.icon,indicator:e.indicator},e.icon,r.createElement(Ad,{className:"truncate"},e.label),e.indicator)})))),document.body)):null},Np=o.Ay.div((function(e){var t=e.theme,n=Wn(t,"inputBox.border","#E2E2E2"),r=Wn(t,"inputBox.hoverBorder","#000110");return{display:"flex",flexGrow:1,height:38,padding:"0 5px 0 15px",color:Wn(t,"inputBox.color","#07193E"),fontSize:13,fontWeight:600,border:"".concat(n," 1px solid"),borderRadius:3,outline:"none",transitionDuration:"0.1s",backgroundColor:Wn(t,"inputBox.backgroundColor","#fff"),userSelect:"none",width:"100%",minWidth:0,alignItems:"center",justifyContent:"space-between","& .truncate":{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},"&:placeholder":{color:"#858585",opacity:1,fontWeight:400},"&:hover":{borderColor:r},"&:focus":{borderColor:r},"&.disabled":{border:Wn(t,"inputBox.disabledBorder","#494A4D"),backgroundColor:Wn(t,"inputBox.disabledBackground","#B4B4B4"),color:Wn(t,"inputBox.disabledText","#E6EBEB"),"&:placeholder":{color:Wn(t,"inputBox.disabledPlaceholder","#E6EBEB")},"&:hover":{borderColor:Wn(t,"inputBox.disabledBorder","#494A4D")},"&:focus":{borderColor:Wn(t,"inputBox.disabledBorder","#494A4D")}},"& svg":{width:16,height:16,minWidth:16,minHeight:16},"& .indicatorContainer":{display:"flex",alignItems:"center",width:16}}})),Rp=o.Ay.div((function(e){var t=e.theme,n=e.error,r=e.sx;return Ve({display:"flex",flexGrow:1,width:"100%",position:"relative","& .selectContainer":{display:"flex",width:"100%",gap:8,alignItems:"center",flexGrow:1,position:"relative",minWidth:80},"& .tooltipContainer":{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},"& .overlayArrow":{position:"absolute",top:"50%",transform:"translateY(-50%)",marginTop:"2px",right:"5px","& svg":{width:26,height:26,fill:Wn(t,"inputBox.color","#07193E")}},"& .inputLabel":{marginBottom:n?18:0}},r)})),Mp=function(e){var t=e.id,n=e.label,o=void 0===n?"":n,a=e.required,i=e.className,s=e.tooltip,l=void 0===s?"":s,c=e.noLabelMinWidth,u=void 0!==c&&c,d=e.value,p=void 0===d?"":d,h=e.sx,m=e.options,f=e.onChange,g=e.disabled,b=void 0!==g&&g,y=e.fixedLabel,v=void 0===y?"":y,E=e.name,w=e.placeholder,S=void 0===w?"":w,A=e.helpTip,_=e.helpTipPlacement,T=(0,r.useState)(!1),C=T[0],x=T[1],I=r.useState(null),O=I[0],k=I[1],N=m.find((function(e){return e.value===p}));return N||""!==v||""!==S||console.warn("The selected value is not included in Options List"),r.createElement(Rp,{sx:h,className:"inputItem ".concat(i||"")},""!==o&&r.createElement(Ll,{htmlFor:t,noMinWidth:u,className:"inputLabel",helpTip:A,helpTipPlacement:_},o,a?"*":"",""!==l&&r.createElement(Ad,{className:"tooltipContainer"},r.createElement(Wo,{tooltip:l,placement:"top"},r.createElement(Ad,{className:l},r.createElement(Wa,null))))),r.createElement(Ad,{id:"".concat(t,"-select"),className:"selectContainer",onClick:function(e){b||(x(!C),k(e.currentTarget))}},r.createElement(Np,{className:b?"disabled":""},r.createElement(Ad,{sx:{display:"flex",columnGap:8,width:"calc(100% - 16px)"}},(null==N?void 0:N.icon)&&r.createElement(Ad,{className:"indicatorContainer"},null==N?void 0:N.icon),r.createElement(Ad,{sx:{whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",minWidth:0}},v&&""!==v?v:r.createElement(r.Fragment,null,(null==N?void 0:N.label)||r.createElement("i",{style:{opacity:.6}},""!==S?S:""))),(null==N?void 0:N.indicator)&&r.createElement(Ad,{className:"indicatorContainer"},null==N?void 0:N.indicator)),r.createElement(Ad,{sx:{display:"flex",width:16}},C?r.createElement(Hs,null):r.createElement(Gs,null))),r.createElement("input",{type:"hidden",id:t,name:E,value:p})),C&&r.createElement(kp,{id:"".concat(t,"-options-selector"),options:m,selectedOption:p,onSelect:function(e,t){return f(e,t)},hideTriggerAction:function(){x(!1)},open:C,anchorEl:O,useAnchorWidth:!0}))},Lp=o.Ay.label((function(e){var t=e.sx,n=e.theme;return Ve({"& input":{appearance:"none",backgroundColor:"transparent",margin:0,display:"none","& ~ .radio":{position:"relative",display:"block",width:16,height:16,borderRadius:"100%",border:"1px solid ".concat(Wn(n,"checkbox.checkBoxBorder","#c3c3c3")),boxShadow:"inset 0px 1px 3px rgba(0,0,0,0.1)","&.checked":{"&::before":{content:"' '",position:"absolute",display:"block",width:12,height:12,backgroundColor:Wn(n,"checkbox.checkBoxColor","#4CCB92"),borderRadius:"100%",top:"50%",left:"50%",transform:"translateX(-50%) translateY(-50%)"}}},"&:disabled":{"& ~ .radio":{border:"1px solid ".concat(Wn(n,"checkbox.disabledBorder","#D5D7D7")),cursor:"not-allowed",boxShadow:"inset 0px 1px 3px rgba(240,240,240,0.1)"},"&:checked ~ .radio":{"&:before":{backgroundColor:Wn(n,"checkbox.disabledColor","#D5D7D7")}}}}},t)})),Dp=o.Ay.div((function(e){var t=e.inColumn,n=e.theme;return{flexGrow:1,width:"100%",display:"flex",flexDirection:t?"column":"row",justifyContent:"flex-end",gap:15,"& .optionLabel":{userSelect:"none","&.checked":{fontWeight:"bold"},"&.disabled":{color:Wn(n,"checkbox.disabledColor","#D5D7D7"),cursor:"not-allowed"}}}})),Pp=o.Ay.div((function(e){return{display:"flex",alignItems:"center",gap:5}})),Bp=function(e){var t=e.tooltip,n=e.label,o=e.id,a=e.sx,i=e.onChange,s=e.className,l=e.name,c=e.selectorOptions,u=e.currentValue,d=e.disableOptions,p=void 0!==d&&d,h=e.displayInColumn,m=void 0!==h&&h,f=e.helpTip,g=e.helpTipPlacement;return r.createElement(Pl,{className:"inputItem ".concat(s||""),sx:{display:"flex",justifyContent:"flex-start",alignItems:"center",flexBasis:"initial",flexWrap:"nowrap"}},""!==n&&r.createElement(Ll,{htmlFor:o,noMinWidth:!0,helpTip:f,helpTipPlacement:g},n,t&&""!==t&&r.createElement("div",{className:"tooltipContainer"},r.createElement(Wo,{tooltip:t,placement:"top"},r.createElement(Wa,null)))),r.createElement(Dp,{inColumn:m},c&&r.createElement(r.Fragment,null,c.map((function(e){return r.createElement(Pp,{key:"option-".concat(o,"-").concat(e.value)},r.createElement(Lp,{htmlFor:"option-".concat(o,"-").concat(e.value),sx:a},r.createElement("input",{type:"radio",name:l,id:"option-".concat(o,"-").concat(e.value),value:e.value,defaultChecked:u===e.value,onChange:function(t){return i(t,e.extraValue)},disabled:p||!!e.disabled}),r.createElement("span",{className:"radio ".concat(u===e.value?"checked":"")})),r.createElement("label",{htmlFor:"option-".concat(o,"-").concat(e.value),className:"optionLabel ".concat(u===e.value?"checked":""," ").concat(p||e.disabled?"disabled":"")},e.label))})))))},Fp=o.Ay.div((function(e){var t=e.theme,n=e.sx,r=e.label,o=e.multiLine;return Ve({display:"flex",width:""===r||o?"100%":"calc(100% - 170px)",alignItems:"center","& .predefinedList":{backgroundColor:Wn(t,"readBox.backgroundColor","#fbfafa"),border:"".concat(Wn(t,"readBox.borderColor","#e5e5e5")," 1px solid"),padding:"12px 10px",color:Wn(t,"readBox.textColor","#696969"),fontSize:12,fontWeight:600,minHeight:41,borderRadius:4,width:"100%"},"& .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"}},"& .includesActionButton":{paddingRight:45,position:"relative"},"& .overlayShareOption":{position:"absolute",width:45,right:0,top:"50%",transform:"translate(0, -50%)"}},n)})),jp=function(e){var t=e.label,n=void 0===t?"":t,o=e.children,a=e.multiLine,i=e.actionButton,s=e.sx,l=e.helpTip,c=e.helpTipPlacement;return r.createElement(Fp,{className:"inputItem",label:n,multiLine:a,sx:s},""!==n&&r.createElement(Ll,{className:"inputLabel",helpTip:l,helpTipPlacement:c},n),r.createElement(Ad,{className:"predefinedList ".concat(i?"includesActionButton":"")},r.createElement(Ad,{className:a?"innerContentMultiline":"innerContent"},o),i&&r.createElement(Ad,{className:"overlayShareOption"},i)))},zp=o.Ay.textarea((function(e){var t=e.theme,n=e.error;e.originType;var r=Wn(t,"inputBox.border","#E2E2E2"),o=Wn(t,"inputBox.hoverBorder","#000110");return n&&""!==n&&(r=Wn(t,"inputBox.error","#C51B3F"),o=Wn(t,"inputBox.error","#C51B3F")),{fontFamily:"'Inter',sans-serif",width:"100%",resize:"none",padding:"16px 14px",color:Wn(t,"inputBox.color","#07193E"),fontSize:13,fontWeight:600,border:"".concat(r," 1px solid"),borderRadius:3,outline:"none",transitionDuration:"0.1s",backgroundColor:Wn(t,"inputBox.backgroundColor","#fff"),"&:placeholder":{color:Wn(t,"inputBox.placeholderColor","#858585"),opacity:1,fontWeight:400},"&:hover":{borderColor:o},"&:focus":{borderColor:o},"&:disabled":{border:Wn(t,"inputBox.disabledBorder","#494A4D"),backgroundColor:Wn(t,"inputBox.disabledBackground","#B4B4B4"),color:Wn(t,"inputBox.disabledText","#E6EBEB"),"&:placeholder":{color:Wn(t,"inputBox.disabledPlaceholder","#E6EBEB")}}}})),Up=o.Ay.div((function(e){var t=e.theme,n=e.error,r=e.sx;return Ve({display:"flex",alignItems:"flex-start",flexGrow:1,width:"100%","& .errorText":{fontSize:12,color:Wn(t,"inputBox.error","#C51B3F"),marginTop:3},"& .textBoxContainer":{width:"100%",flexGrow:1,position:"relative",minWidth:160},"& .tooltipContainer":{marginLeft:5,display:"flex",alignItems:"center","& .min-icon":{width:13}},"& .inputLabel":{marginBottom:n?18:0}},r)})),Hp=function(e){var t=e.id,n=e.tooltip,o=void 0===n?"":n,a=e.index,i=e.noLabelMinWidth,s=e.label,l=void 0===s?"":s,c=e.required,u=e.className,d=e.error,p=e.sx,h=e.helpTip,m=e.helpTipPlacement,f=qe(e,["id","tooltip","index","noLabelMinWidth","label","required","className","error","sx","helpTip","helpTipPlacement"]);return r.createElement(Up,{error:!!d&&""!==d,sx:p,className:"inputItem ".concat(u)},""!==l&&r.createElement(Ll,{htmlFor:t,noMinWidth:i,className:"inputLabel",helpTip:h,helpTipPlacement:m},l,c?"*":"",""!==o&&r.createElement(Ad,{className:"tooltipContainer"},r.createElement(Wo,{tooltip:o,placement:"top"},r.createElement(Ad,{className:o},r.createElement(Wa,null))))),r.createElement(Ad,{className:"textBoxContainer"},r.createElement(zp,Ve({id:t,fullWidth:!0,error:d,className:"inputRebase","data-index":a,rows:5},f)),""!==d&&r.createElement(Ad,{className:"errorText"},d)))},Gp=o.Ay.div((function(e){var t=e.theme;return{position:"fixed",top:0,left:0,width:"100vw",height:"100vh",backgroundColor:"transparent",zIndex:5e3,overscrollBehavior:"contain","& > .subItemsBox":{position:"absolute",display:"inline-block",minWidth:180,backgroundColor:Wn(t,"menu.horizontal.dropBackground",h),border:"".concat(Wn(t,"borderColor",p)),"& .menuItemButton":{width:"100%","&:hover, &.selected":{backgroundColor:Wn(t,"menu.horizontal.hoverSelectedBackground",v),borderBottom:0,color:Wn(t,"menu.horizontal.dropHoverSelectedColor",c),"& .iconContainer":{border:"".concat(Wn(t,"menu.horizontal.dropHoverSelectedColor",c)," 1px solid")}}}}}})),Vp=function(e){var t=e.open,n=e.anchorEl,o=e.hideTriggerAction,a=e.children,i=(0,r.useState)(null),s=i[0],l=i[1],c=document.documentElement.offsetWidth,u=function(e){if(!e)return{top:0,left:0};var t=e.getBoundingClientRect(),n=t.left;return n+180>c?{top:t.top+t.height,right:0}:{top:t.top+t.height,left:n}};return(0,r.useEffect)((function(){l(t?u(n):null)}),[t]),(0,r.useEffect)((function(){var e=jd((function(e){e&&e.getBoundingClientRect()&&l(u(e))}),300);window.addEventListener("resize",(function(){o()})),window.addEventListener("scroll",(function(){e(n)}))})),t&&n&&s?r.createElement(Gp,{onClick:o},r.createElement(Ad,{className:"subItemsBox",sx:Ve({},s)},a)):null},qp=function(e){return{display:"flex",justifyContent:"space-between",alignItems:"center",backgroundColor:"transparent",cursor:"pointer",border:"none",height:45,padding:"0 15px",whiteSpace:"nowrap",color:Wn(e,"menu.horizontal.textColor",M),borderBottom:"transparent 2px solid","& .iconContainer":{border:"".concat(Wn(e,"menu.horizontal.iconBorderColor",$)," 1px solid"),backgroundColor:"transparent"},"&.selected, &:hover":{color:Wn(e,"menu.horizontal.hoverSelectedColor",c),borderBottom:"".concat(Wn(e,"menu.horizontal.hoverSelectedBackground",v)," 2px solid"),"& .iconContainer":{border:"".concat(Wn(e,"menu.horizontal.hoverSelectedIconBorder",c)," 1px solid")}}}},Wp=o.Ay.div((function(e){var t=e.theme;return{display:"flex",flexDirection:"column",alignItems:"flex-start",justifyContent:"center",userSelect:"none",cursor:"pointer",position:"relative","& .statusArrow":{display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:Wn(t,"menu.horizontal.dropArrowBackground",H),width:15,height:15,minWidth:15,minHeight:15,borderRadius:2,marginLeft:5}}})),Zp=o.Ay.button((function(e){var t=e.theme;return Ve(Ve({},qp(t)),{"& .subOption":{padding:0}})})),$p=o.Ay.a((function(e){var t=e.theme;return Ve(Ve({},qp(t)),{textDecoration:"none"})})),Yp=o.Ay.span((function(e){var t=e.theme;return{display:"flex",alignItems:"center",gap:22,"& .iconContainer":{position:"relative",borderRadius:"100%",width:27,height:27,minWidth:27,minHeight:27,display:"flex",alignItems:"center",justifyContent:"center","& svg:not(.badgeIcon)":{width:14,height:14},"& svg.badgeIcon":{width:8,height:8,fill:Wn(t,"menu.horizontal.notificationColor",S),position:"absolute",top:4,right:3}},"& .labelContainer":{fontFamily:"'Inter', sans-serif",fontSize:14}}})),Kp=function(e){var t=e.icon,n=e.name,o=e.badge;return r.createElement(Yp,{className:"option"},r.createElement("span",{className:"iconContainer"},t,o&&r.createElement(sa,{className:"badgeIcon"})),r.createElement("span",{className:"labelContainer"},n))},Xp=function(e){var t=e.children,n=e.icon,o=e.id,i=e.name,s=e.path,l=e.onClick,c=e.badge,u=e.currentPath,d=e.isVisible,p=void 0===d||d,h=(0,r.useState)(!1),m=h[0],f=h[1],g=r.useState(null),b=g[0],y=g[1],v=!1;return u&&s&&u.startsWith(s)&&(v=!0),t&&0===t.length||!p?null:t&&t.length>0?0===t.filter((function(e){return!1!==e.isVisible})).length?null:r.createElement(Wp,null,r.createElement(Zp,{id:o,type:"button",onClick:function(e){e.stopPropagation(),f(!0),y(e.currentTarget)},className:"menuItemButton ".concat(m?"selected":"")},r.createElement(Kp,{icon:n,name:i,badge:!!c}),r.createElement(Ad,{className:"statusArrow"},m?r.createElement(Hs,null):r.createElement(Gs,null))),m&&(0,a.createPortal)(r.createElement(Vp,{anchorEl:b,hideTriggerAction:function(){f(!1),y(null)},open:m},t.map((function(e){return r.createElement(Xp,{key:"sub-menu-opt-".concat(i,"-").concat(e.id||e.name),onClick:l,name:e.name,badge:e.badge,icon:e.icon,id:e.id,path:e.path,group:e.group,currentPath:u})}))),document.body)):(null==s?void 0:s.match(/^(https?:\/\/)?([\da-z\u0430-\u044f\.\-_]+)\.([a-z\u0430-\u044f\._]{2,6})([a-z\u0430-\u044f\d\.\-\?\/&=#%_]*)*/))?r.createElement($p,{className:"menuItemButton",id:o,href:s,target:"_blank"},r.createElement(Kp,{icon:n,name:i,badge:!!c})):r.createElement(Zp,{className:"menuItemButton ".concat(v?"selected":""),type:"button",id:o,onClick:function(){l&&l(s||"")}},r.createElement(Kp,{icon:n,name:i,badge:!!c}))},Jp=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({"& .headerBar":{padding:15,display:"flex",justifyContent:"space-between",alignItems:"center",gap:15,background:Wn(t,"menu.horizontal.menuHeaderBackground",z),borderBottom:"".concat(Wn(t,"menu.horizontal.sectionDividerColor",q)," 1px solid"),"& svg":{width:200},"& .endComponent":{display:"flex",alignItems:"center",gap:10}},"& .sections":{backgroundColor:Wn(t,"menu.horizontal.barBackground",m),width:"100%",height:45,display:"flex",overflowY:"hidden",overflowX:"auto",scrollbarWidth:"none",msOverflowStyle:"none",borderBottom:"".concat(Wn(t,"borderColor",p)," 1px solid"),"&.compact":{height:5,backgroundColor:Wn(t,"menu.horizontal.noOptionsBar",m)},"&::-webkit-scrollbar":{width:0,height:0}}},n)})),Qp=function(e){var t=e.applicationLogo,n=e.options,o=e.signOutAction,a=e.callPathAction,i=e.middleComponent,s=e.endComponent,l=e.currentPath,c=e.sx,u=!0;return void 0!==t.inverse&&(u=t.inverse),r.createElement(Jp,{className:"menuBox",sx:c},r.createElement(Ad,{className:"headerBar"},r.createElement(Gr,Ve({inverse:u},t)),i,r.createElement(Ad,{className:"endComponent"},s,o&&r.createElement(zl,{id:"sign-out",onClick:o},r.createElement($i,null)))),r.createElement(Ad,{className:"sections ".concat(n&&0!==n.length?"":"compact")},n&&n.map((function(e){return r.createElement(Xp,{key:"menu-section-".concat(e.group,"-").concat(e.id),onClick:function(t){e.onClick&&e.onClick(t),a(t)},icon:e.icon,name:e.name,group:e.group,id:e.id,path:e.path,currentPath:l,badge:e.badge,children:e.children})}))))},eh=function(e){return{display:"flex",justifyContent:"space-between",alignItems:"center",backgroundColor:"transparent",cursor:"pointer",border:"none",width:"100%",height:44,padding:"0 25px",color:Wn(e,"menu.vertical.textColor",V),"& .iconContainer":{border:"".concat(Wn(e,"menu.vertical.iconBorderColor",$)," 1px solid"),backgroundColor:Wn(e,"menu.vertical.iconBGColor",Z)},"&.selected, &:hover":{color:Wn(e,"menu.vertical.hoverSelectedColor",c),background:Wn(e,"menu.vertical.hoverSelectedBackground",G),"& .iconContainer":{border:"".concat(Wn(e,"menu.vertical.hoverSelectedIconBorder",c)," 1px solid")}}}},th=o.Ay.div((function(e){var t=e.theme;return{display:"flex",flexDirection:"column",alignItems:"flex-start",justifyContent:"center",userSelect:"none",cursor:"pointer","& > span":{width:"100%"},"& > .subItemsBox":{paddingLeft:20,width:"100%"},"& .statusArrow":{display:"flex",alignItems:"center",justifyContent:"center",backgroundColor:Wn(t,"menu.vertical.dropArrowBackground",H),width:15,height:15,minWidth:15,minHeight:15,borderRadius:2}}})),nh=o.Ay.button((function(e){var t=e.theme;return Ve(Ve({},eh(t)),{"& .subOption":{padding:0}})})),rh=o.Ay.a((function(e){var t=e.theme;return Ve(Ve({},eh(t)),{textDecoration:"none"})})),oh=o.Ay.span((function(e){var t=e.theme;return{display:"flex",alignItems:"center",gap:22,"& .iconContainer":{position:"relative",borderRadius:"100%",width:27,height:27,minWidth:27,minHeight:27,display:"flex",alignItems:"center",justifyContent:"center","& svg:not(.badgeIcon)":{width:12,height:12},"& svg.badgeIcon":{width:8,height:8,fill:Wn(t,"menu.vertical.notificationColor",S),position:"absolute",top:4,right:3}},"& .labelContainer":{fontFamily:"'Inter', sans-serif",fontSize:14}}})),ah=function(e){var t=e.icon,n=e.name,o=e.badge;return r.createElement(oh,{className:"option"},r.createElement("span",{className:"iconContainer"},t,o&&r.createElement(sa,{className:"badgeIcon"})),r.createElement("span",{className:"labelContainer"},n))},ih=function(e){var t=e.children,n=e.icon,o=e.id,a=e.name,i=e.path,s=e.onClick,l=e.badge,c=e.currentPath,u=e.visibleTooltip,d=void 0!==u&&u,p=e.isVisible,h=void 0===p||p,m=(0,r.useState)(!1),f=m[0],g=m[1];(0,r.useEffect)((function(){t&&t.length>0&&t.findIndex((function(e){return e.path&&(null==c?void 0:c.startsWith(e.path))}))>=0&&g(!0)}),[c,t]);var b=!1;return c&&i&&c.startsWith(i)&&(b=!0),t&&0===t.length||!h?null:t&&t.length>0?0===t.filter((function(e){return!1!==e.isVisible})).length?null:r.createElement(th,null,r.createElement(Wo,{tooltip:d?a:"",placement:"right"},r.createElement(nh,{id:o,type:"button",onClick:function(){g(!f)},className:"menuItemButton"},r.createElement(ah,{icon:n,name:a,badge:!!l}),r.createElement(Ad,{className:"statusArrow"},f?r.createElement(Hs,null):r.createElement(Gs,null)))),f&&r.createElement(Ad,{className:"subItemsBox"},t.map((function(e){return r.createElement(Wo,{tooltip:d?e.name:"",placement:"right"},r.createElement(ih,{onClick:s,name:e.name,badge:e.badge,icon:e.icon,id:e.id,path:e.path,group:e.group,currentPath:c}))})))):(null==i?void 0:i.match(/^(https?:\/\/)?([\da-z\u0430-\u044f\.\-_]+)\.([a-z\u0430-\u044f\._]{2,6})([a-z\u0430-\u044f\d\.\-\?\/&=#%_]*)*/))?r.createElement(Wo,{tooltip:d?a:"",placement:"right"},r.createElement(rh,{className:"menuItemButton",id:o,href:i,target:"_blank"},r.createElement(ah,{icon:n,name:a,badge:!!l}))):r.createElement(Wo,{tooltip:d?a:"",placement:"right"},r.createElement(nh,{className:"menuItemButton ".concat(b?"selected":""),type:"button",id:o,onClick:function(){s&&s(i||"")}},r.createElement(ah,{icon:n,name:a,badge:!!l})))},sh=o.Ay.div((function(e){var t=e.theme;return{borderBottom:"".concat(Wn(t,"menu.vertical.sectionDividerColor",q)," 1px solid"),margin:"30px 25px 0",paddingBottom:5,userSelect:"none","& > .labelHeader":{fontSize:14,color:Wn(t,"menu.vertical.sectionLabelColor",c),paddingBottom:6,display:"block"}}})),lh=function(e){var t=e.label,n=e.divider;return r.createElement(sh,{className:"menuHeader",divider:n},r.createElement("span",{className:"labelHeader"},t))},ch=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({width:250,maxWidth:250,minWidth:250,height:"100vh",overflow:"auto",position:"relative",scrollbarWidth:"none",msOverflowStyle:"none","&::-webkit-scrollbar":{width:5},"&::-webkit-scrollbar-thumb":{background:Wn(t,"menu.vertical.sectionDividerColor",q),borderRadius:0},"&::-webkit-scrollbar-track":{background:Wn(t,"borderColor",p),boxShadow:"inset 0px 0px 0px 0px ".concat(Wn(t,"borderColor",p)),borderRadius:0},background:Wn(t,"menu.vertical.background",z),transitionDuration:"0.3s","& .menuContainer":{height:"inherit",position:"relative",display:"flex",flexDirection:"column","& .collapseButton":{position:"absolute",right:11,top:10,"& > svg":{width:12,height:12,fill:Wn(t,"menu.vertical.menuCollapseColor",W)}}},"& .menuLogoContainer":{position:"relative",margin:"20px 30px 0",paddingBottom:20,borderBottom:"".concat(Wn(t,"menu.vertical.sectionDividerColor",q)," 1px solid")},"& .collapsedMenuHeader":{display:"none"},"& .menuItems":{display:"flex",flexDirection:"column",flexGrow:1},"& .menuHeaderContainer":{cursor:"pointer"},"&.collapsed":{width:80,minWidth:80,boxSizing:"content-box","& .collapseButton, & .menuLogoContainer":{display:"none"},"& .labelHeader":{display:"none"},"& .collapsedMenuHeader":{display:"flex",position:"relative",alignItems:"center",justifyContent:"center",width:43,height:43,minWidth:43,minHeight:43,border:"".concat(Wn(t,"menu.vertical.iconBorderColor",$)," 1px solid"),backgroundColor:Wn(t,"menu.vertical.iconBGColor",Z),borderRadius:"100%",margin:"25px 0","&:hover":{borderColor:Wn(t,"menu.vertical.hoverSelectedIconBorder",c)},"& .collapsedIcon":{display:"inline-flex",color:Wn(t,"menu.vertical.menuCollapseColor",W),"& svg":{width:30,height:30}},"& svg":{width:36,height:36}},"& .menuHeader":{marginLeft:0,marginRight:0,marginTop:0},"& .labelContainer":{display:"none"},"& .subItemsBox":{padding:0},"& span":{display:"flex",padding:0,justifyContent:"center"},"& .menuItemButton":{padding:0,display:"flex",justifyContent:"center",position:"relative"},"& .menuHeaderContainer":{display:"flex",justifyContent:"center"},"& .statusArrow":{position:"absolute",left:"50%",top:"50%",transform:"translateX(50%) translateY(20%)"}}},n)})),uh=function(e){var t=e.applicationLogo,n=e.options,o=e.displayGroupTitles,a=e.signOutAction,i=e.callPathAction,s=e.isOpen,l=e.collapseAction,c=e.currentPath,u=e.endComponent,d=e.sx,p="";return r.createElement(ch,{sx:d,className:"menuBox ".concat(s?"":"collapsed")},r.createElement(Ad,{className:"menuContainer"},r.createElement(Ad,{className:"menuHeaderContainer",onClick:l},r.createElement(Ad,{className:"collapseButton"},r.createElement(cl,null)),r.createElement(Ad,{className:"menuLogoContainer"},r.createElement(Gr,Ve({inverse:!0},t))),r.createElement(Ad,{className:"collapsedMenuHeader"},r.createElement(Wo,{tooltip:"Expand Menu",placement:"right"},r.createElement("span",{className:"collapsedIcon"},r.createElement(ha,null))))),r.createElement(Ad,{className:"menuItems"},n&&n.map((function(e){var t=null;return o&&e.group&&p!==e.group&&(p=e.group,t=r.createElement(lh,{label:e.group})),r.createElement(r.Fragment,{key:"menu-section-".concat(e.group||"common","-").concat(e.id||e.name)},t,r.createElement(ih,{onClick:function(t){e.onClick?e.onClick(t):i(t)},icon:e.icon,name:e.name,group:e.group,id:e.id,path:e.path,currentPath:c,badge:e.badge,children:e.children,visibleTooltip:!s}))})),a&&r.createElement(Ad,{sx:{marginTop:"auto"}},u,r.createElement(lh,{label:""}),r.createElement(ih,{id:"sign-out",group:"common",name:"Sign Out",icon:r.createElement($i,null),onClick:a,visibleTooltip:!s})))))},dh=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({width:"100vw",height:"100vh",overflow:"auto",position:"fixed",top:0,left:0,background:Wn(t,"menu.vertical.background",z),transitionDuration:"0.3s","& .menuContainer":{height:"inherit",position:"relative",display:"flex",flexDirection:"column","& .collapseButton":{position:"absolute",right:15,top:15,"& > svg":{width:20,height:20,fill:Wn(t,"menu.vertical.menuCollapseColor",W)}}},"& .menuLogoContainer":{display:"flex",justifyContent:"center",position:"relative",margin:"20px 30px 0","& svg":{width:150}},"& .collapsedMenuHeader":{display:"none"},"& .menuItems":{display:"flex",flexDirection:"column",flexGrow:1,height:"100%"},"& .menuHeaderContainer":{cursor:"pointer"}},n)})),ph=function(e){var t=e.applicationLogo,n=e.options,o=e.displayGroupTitles,a=e.signOutAction,i=e.callPathAction,s=e.collapseAction,l=e.currentPath,c=e.endComponent,u="";return r.createElement(dh,null,r.createElement(Ad,{className:"menuContainer"},r.createElement(Ad,{className:"menuHeaderContainer",onClick:s},r.createElement(Ad,{className:"collapseButton"},r.createElement(As,null)),r.createElement(Ad,{className:"menuLogoContainer"},r.createElement(Gr,Ve({inverse:!0},t))),r.createElement(Ad,{className:"collapsedMenuHeader"},r.createElement(Wo,{tooltip:"Expand Menu"},r.createElement("span",{className:"collapsedIcon"},r.createElement(ha,null))))),r.createElement(Ad,{className:"menuItems"},n&&n.map((function(e){var t=null;return o&&e.group&&u!==e.group&&(u=e.group,t=r.createElement(lh,{label:e.group})),r.createElement(r.Fragment,{key:"menu-section-".concat(e.group,"-").concat(e.id)},t,r.createElement(ih,{onClick:function(t){if(e.onClick)return e.onClick(t),void s();i(t),s()},icon:e.icon,name:e.name,group:e.group,id:e.id,path:e.path,currentPath:l,badge:e.badge,children:e.children}))})),a&&r.createElement(Ad,{sx:{marginTop:"auto"}},c,r.createElement(lh,{label:""}),r.createElement(ih,{group:"common",name:"Sign Out",icon:r.createElement($i,null),onClick:a})))))},hh=o.Ay.div((function(e){var t=e.theme,n=e.sx;return Ve({"& .headerBar":{padding:15,display:"flex",justifyContent:"space-between",background:Wn(t,"menu.horizontal.menuHeaderBackground",z),alignItems:"center","& svg":{width:150}},"& .sections":{backgroundColor:"#ff0",width:"100%",height:45,display:"flex",overflowY:"hidden",overflowX:"auto",scrollbarWidth:"none",msOverflowStyle:"none","&::-webkit-scrollbar":{width:0,height:0}}},n)})),mh=function(e){var t=e.applicationLogo,n=e.options,o=e.displayGroupTitles,i=e.signOutAction,s=e.callPathAction,l=e.horizontal,c=e.currentPath,u=e.endComponent,d=e.sx,p=(0,r.useState)(!1),h=p[0],m=p[1];return r.createElement(r.Fragment,null,r.createElement(hh,{className:"menuBox",sx:d},r.createElement(Ad,{className:"headerBar"},r.createElement(Gr,Ve({inverse:!0},t)),r.createElement(zl,{id:"menu-open",onClick:function(){m(!0)}},r.createElement(zi,null))),l&&r.createElement(Ad,null,"middleComponent"),r.createElement(Ad,{className:"menuOpen"})),h&&(0,a.createPortal)(r.createElement(ph,{options:n,applicationLogo:t,callPathAction:s,isOpen:h,collapseAction:function(){m(!1)},signOutAction:i,displayGroupTitles:o,currentPath:c,endComponent:u}),document.body))},fh=function(e){var t=e.horizontal,n=void 0!==t&&t,o=e.mobileModeAuto,a=void 0===o||o,s=qe(e,["horizontal","mobileModeAuto"]),l=(0,r.useState)(!1),c=l[0],u=l[1];return(0,r.useEffect)((function(){var e=jd((function(){var e=document.documentElement.offsetWidth;u(e<=i.md)}),400);window.addEventListener("resize",e)})),c&&a?r.createElement(mh,Ve({},s)):n?r.createElement(Qp,Ve({},s)):(s.middleComponent&&console.warn("Middle component is set, this cannot be rendered in Vertical Menu"),r.createElement(uh,Ve({},s)))},gh=o.Ay.button((function(e){var t=e.sx,n=e.theme;return Ve({display:"flex",cursor:"pointer",alignItems:"center",backgroundColor:"transparent",borderRadius:3,padding:5,height:10,fontSize:10,border:"none",color:Wn(n,"buttons.regular.enabled.text",m),"& svg":{width:16,height:16},"&:hover":{color:Wn(n,"buttons.regular.hover.text",m),backgroundColor:Wn(n,"buttons.regular.hover.background",g)},"&:active":{color:Wn(n,"buttons.regular.pressed.text",m),backgroundColor:Wn(n,"buttons.regular.pressed.background",b)},"&:disabled":{color:Wn(n,"buttons.regular.disabled.text",T),backgroundColor:"transparent",cursor:"not-allowed"}},t)})),bh=function(e){var t=e.open,n=e.label,o=e.sx,a=qe(e,["open","label","sx"]);return r.createElement(gh,Ve({sx:o},a),n,t?r.createElement(Hs,null):r.createElement(Gs,null))},yh=function(e){var t=e.selectedTab,n=e.useRouteTabs,o=e.id,a=e.children;return n||t===o?r.createElement(Ad,{id:o},a):null},vh=o.Ay.button((function(e){var t=e.theme,n=e.horizontal;return{cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"flex-start",gap:10,height:n?50:60,width:n?"auto":255,padding:"0 16px",border:"none",fontSize:14,fontWeight:n?"bold":"inherit",backgroundColor:n?Wn(t,"tabs.horizontal.buttons.backgroundColor","transparent"):Wn(t,"tabs.vertical.buttons.backgroundColor",k),color:Wn(t,n?"tabs.horizontal.buttons.labelColor":"tabs.vertical.buttons.labelColor",m),borderBottom:n?"transparent 2px solid":"".concat(Wn(t,"tabs.vertical.borders",Y)," 1px solid"),"&:hover":{backgroundColor:Wn(t,n?"tabs.horizontal.buttons.backgroundColor":"tabs.vertical.buttons.hoverBackground","transparent"),color:Wn(t,n?"tabs.horizontal.buttons.hoverLabelColor":"tabs.vertical.buttons.hoverLabelColor",v)},"&:disabled":{cursor:"not-allowed",backgroundColor:n?Wn(t,"tabs.horizontal.buttons.backgroundColor","transparent"):Wn(t,"tabs.vertical.buttons.disabledBackgroundColor",_),color:Wn(t,n?"tabs.horizontal.buttons.disabledColor":"tabs.vertical.buttons.disabledColor",T)},"& svg":{width:18,height:18},"&.selected":{fontWeight:"bold",backgroundColor:n?Wn(t,"tabs.horizontal.buttons.backgroundColor","transparent"):Wn(t,"tabs.vertical.buttons.selectedBackground",x),color:Wn(t,n?"tabs.horizontal.buttons.selectedLabelColor":"tabs.vertical.buttons.selectedLabelColor",v),borderBottom:n?"".concat(Wn(t,"tabs.horizontal.selectedIndicatorColor",v)," 2px solid"):"".concat(Wn(t,"tabs.vertical.borders",Y)," 1px solid")}}})),Eh=function(e){var t=e.horizontal,n=e.id,o=e.onClick,a=e.label,i=e.disabled,s=e.icon,l=e.selected;return r.createElement(vh,{horizontal:!!t,id:n,onClick:function(){return o()},disabled:i,className:"".concat(l?"selected":"")},s,a)},wh=o.Ay.div((function(e){var t=e.theme,n=e.horizontal,r=e.horizontalBarBackground,o=e.sx,a=r?Wn(t,"tabs.horizontal.backgroundColor","transparent"):"transparent";return Ve({display:"flex",flexDirection:n?"column":"row",height:"100%","& .optionsContainer":{display:"flex",border:n?"none":"".concat(Wn(t,"tabs.vertical.borders",Y)," 1px solid"),borderBottom:"".concat(n?Wn(t,"borderColor",p):Wn(t,"tabs.vertical.borders",Y)," 1px solid"),backgroundColor:n?a:Wn(t,"tabs.vertical.backgroundColor",k),width:n?"100%":"auto",alignItems:n?"center":"flex-start",gap:10,"& .optionsList":{display:"flex",flexDirection:n?"row":"column",flexGrow:1,width:n?"100%":"auto"}},"& .tabsPanels":{flexGrow:1,width:"100%",padding:15,border:n?"none":"".concat(Wn(t,"tabs.vertical.borders",Y)," 1px solid"),borderLeft:"none"}},o)})),Sh=function(e){var t=e.horizontal,n=e.options,o=e.currentTabOrPath,a=e.useRouteTabs,i=void 0!==a&&a,s=e.routes,l=e.onTabClick,c=e.optionsInitialComponent,u=e.optionsEndComponent,d=e.horizontalBarBackground,p=e.sx;return r.createElement(wh,{className:"tabs-container",horizontal:!!t,horizontalBarBackground:!!d,sx:p},r.createElement(Ad,{className:"optionsContainer"},c&&r.createElement(Ad,null,c),r.createElement(Ad,{className:"optionsList"},n.map((function(e,n){return e?r.createElement(Eh,{key:"v-tab-".concat(n),id:e.tabConfig.id,onClick:function(){l(i?e.tabConfig.to||"":e.tabConfig.id)},horizontal:!!t,label:e.tabConfig.label,disabled:!!e.tabConfig.disabled,icon:e.tabConfig.icon,selected:i?e.tabConfig.to===o:e.tabConfig.id===o}):null}))),u&&r.createElement(Ad,null,u)),r.createElement(Ad,{className:"tabsPanels"},i?r.createElement(yh,{id:"routes-tab-container",useRouteTabs:!!i},s):n.map((function(e,t){return e.tabConfig.disabled?null:r.createElement(yh,{key:"v-tab-p-".concat(t),id:e.tabConfig.id,selectedTab:o,useRouteTabs:!!i},e?e.content:null)}))))};class Ah{constructor(e,t,n){this.property=e,this.normal=t,n&&(this.space=n)}}function _h(e,t){const n={},r={};let o=-1;for(;++o"xlink:"+t.slice(5).toLowerCase(),properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null}}),Gh=Uh({space:"xml",transform:(e,t)=>"xml:"+t.slice(3).toLowerCase(),properties:{xmlLang:null,xmlBase:null,xmlSpace:null}});function Vh(e,t){return t in e?e[t]:t}function qh(e,t){return Vh(e,t.toLowerCase())}const Wh=Uh({space:"xmlns",attributes:{xmlnsxlink:"xmlns:xlink"},transform:qh,properties:{xmlns:null,xmlnsXLink:null}}),Zh=Uh({transform:(e,t)=>"role"===t?t:"aria-"+t.slice(4).toLowerCase(),properties:{ariaActiveDescendant:null,ariaAtomic:Oh,ariaAutoComplete:null,ariaBusy:Oh,ariaChecked:Oh,ariaColCount:Nh,ariaColIndex:Nh,ariaColSpan:Nh,ariaControls:Rh,ariaCurrent:null,ariaDescribedBy:Rh,ariaDetails:null,ariaDisabled:Oh,ariaDropEffect:Rh,ariaErrorMessage:null,ariaExpanded:Oh,ariaFlowTo:Rh,ariaGrabbed:Oh,ariaHasPopup:null,ariaHidden:Oh,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:Rh,ariaLevel:Nh,ariaLive:null,ariaModal:Oh,ariaMultiLine:Oh,ariaMultiSelectable:Oh,ariaOrientation:null,ariaOwns:Rh,ariaPlaceholder:null,ariaPosInSet:Nh,ariaPressed:Oh,ariaReadOnly:Oh,ariaRelevant:null,ariaRequired:Oh,ariaRoleDescription:Rh,ariaRowCount:Nh,ariaRowIndex:Nh,ariaRowSpan:Nh,ariaSelected:Oh,ariaSetSize:Nh,ariaSort:null,ariaValueMax:Nh,ariaValueMin:Nh,ariaValueNow:Nh,ariaValueText:null,role:null}}),$h=Uh({space:"html",attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},transform:qh,mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:Mh,acceptCharset:Rh,accessKey:Rh,action:null,allow:null,allowFullScreen:Ih,allowPaymentRequest:Ih,allowUserMedia:Ih,alt:null,as:null,async:Ih,autoCapitalize:null,autoComplete:Rh,autoFocus:Ih,autoPlay:Ih,blocking:Rh,capture:null,charSet:null,checked:Ih,cite:null,className:Rh,cols:Nh,colSpan:null,content:null,contentEditable:Oh,controls:Ih,controlsList:Rh,coords:Nh|Mh,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Ih,defer:Ih,dir:null,dirName:null,disabled:Ih,download:kh,draggable:Oh,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Ih,formTarget:null,headers:Rh,height:Nh,hidden:Ih,high:Nh,href:null,hrefLang:null,htmlFor:Rh,httpEquiv:Rh,id:null,imageSizes:null,imageSrcSet:null,inert:Ih,inputMode:null,integrity:null,is:null,isMap:Ih,itemId:null,itemProp:Rh,itemRef:Rh,itemScope:Ih,itemType:Rh,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Ih,low:Nh,manifest:null,max:null,maxLength:Nh,media:null,method:null,min:null,minLength:Nh,multiple:Ih,muted:Ih,name:null,nonce:null,noModule:Ih,noValidate:Ih,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Ih,optimum:Nh,pattern:null,ping:Rh,placeholder:null,playsInline:Ih,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Ih,referrerPolicy:null,rel:Rh,required:Ih,reversed:Ih,rows:Nh,rowSpan:Nh,sandbox:Rh,scope:null,scoped:Ih,seamless:Ih,selected:Ih,shadowRootClonable:Ih,shadowRootDelegatesFocus:Ih,shadowRootMode:null,shape:null,size:Nh,sizes:null,slot:null,span:Nh,spellCheck:Oh,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Nh,step:null,style:null,tabIndex:Nh,target:null,title:null,translate:null,type:null,typeMustMatch:Ih,useMap:null,value:Oh,width:Nh,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:Rh,axis:null,background:null,bgColor:null,border:Nh,borderColor:null,bottomMargin:Nh,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Ih,declare:Ih,event:null,face:null,frame:null,frameBorder:null,hSpace:Nh,leftMargin:Nh,link:null,longDesc:null,lowSrc:null,marginHeight:Nh,marginWidth:Nh,noResize:Ih,noHref:Ih,noShade:Ih,noWrap:Ih,object:null,profile:null,prompt:null,rev:null,rightMargin:Nh,rules:null,scheme:null,scrolling:Oh,standby:null,summary:null,text:null,topMargin:Nh,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Nh,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Ih,disableRemotePlayback:Ih,prefix:null,property:null,results:Nh,security:null,unselectable:null}}),Yh=Uh({space:"svg",attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},transform:Vh,properties:{about:Lh,accentHeight:Nh,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Nh,amplitude:Nh,arabicForm:null,ascent:Nh,attributeName:null,attributeType:null,azimuth:Nh,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Nh,by:null,calcMode:null,capHeight:Nh,className:Rh,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:Nh,diffuseConstant:Nh,direction:null,display:null,dur:null,divisor:Nh,dominantBaseline:null,download:Ih,dx:null,dy:null,edgeMode:null,editable:null,elevation:Nh,enableBackground:null,end:null,event:null,exponent:Nh,externalResourcesRequired:null,fill:null,fillOpacity:Nh,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:Mh,g2:Mh,glyphName:Mh,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Nh,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Nh,horizOriginX:Nh,horizOriginY:Nh,id:null,ideographic:Nh,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Nh,k:Nh,k1:Nh,k2:Nh,k3:Nh,k4:Nh,kernelMatrix:Lh,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Nh,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:Nh,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:Nh,overlineThickness:Nh,paintOrder:null,panose1:null,path:null,pathLength:Nh,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:Rh,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Nh,pointsAtY:Nh,pointsAtZ:Nh,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Lh,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Lh,rev:Lh,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Lh,requiredFeatures:Lh,requiredFonts:Lh,requiredFormats:Lh,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:Nh,specularExponent:Nh,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Nh,strikethroughThickness:Nh,string:null,stroke:null,strokeDashArray:Lh,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Nh,strokeOpacity:Nh,strokeWidth:null,style:null,surfaceScale:Nh,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Lh,tabIndex:Nh,tableValues:null,target:null,targetX:Nh,targetY:Nh,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Lh,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Nh,underlineThickness:Nh,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Nh,values:null,vAlphabetic:Nh,vMathematical:Nh,vectorEffect:null,vHanging:Nh,vIdeographic:Nh,version:null,vertAdvY:Nh,vertOriginX:Nh,vertOriginY:Nh,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Nh,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null}}),Kh=/^data[-\w.:]+$/i,Xh=/-[a-z]/g,Jh=/[A-Z]/g;function Qh(e,t){const n=Th(t);let r=t,o=Ch;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&"data"===n.slice(0,4)&&Kh.test(t)){if("-"===t.charAt(4)){const e=t.slice(5).replace(Xh,tm);r="data"+e.charAt(0).toUpperCase()+e.slice(1)}else{const e=t.slice(4);if(!Xh.test(e)){let n=e.replace(Jh,em);"-"!==n.charAt(0)&&(n="-"+n),t="data"+n}}o=Fh}return new o(r,t)}function em(e){return"-"+e.toLowerCase()}function tm(e){return e.charAt(1).toUpperCase()}const nm=_h([Gh,Hh,Wh,Zh,$h],"html"),rm=_h([Gh,Hh,Wh,Zh,Yh],"svg");function om(e){const t=[],n=String(e||"");let r=n.indexOf(","),o=0,a=!1;for(;!a;){-1===r&&(r=n.length,a=!0);const e=n.slice(o,r).trim();!e&&a||t.push(e),o=r+1,r=n.indexOf(",",o)}return t}function am(e,t){const n=t||{};return(""===e[e.length-1]?[...e,""]:e).join((n.padRight?" ":"")+","+(!1===n.padLeft?"":" ")).trim()}const im=/[#.]/g;function sm(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function lm(e){return e.join(" ").trim()}const cm=new Set(["button","menu","reset","submit"]),um={}.hasOwnProperty;function dm(e,t,n){const r=n&&function(e){const t={};let n=-1;for(;++n2?s-2:0),c=2;c1?n[e.line-2]:0)+e.column-1;if(r-1&&e<=t.length){let r=0;for(;;){let o=n[r];if(void 0===o){const e=bm(t,n[r-1]);o=-1===e?t.length+1:e+1,n[r]=o}if(o>e)return{line:r+1,column:e-(r>0?n[r-1]:0)+1,offset:e};r++}}}}}(t),o=r.toPoint(0),a=r.toPoint(t.length);n.position={start:o,end:a}}return n}case"#documentType":return n={type:"doctype"},Am(e,t,n),n;case"#text":{const r=t;return n={type:"text",value:r.value},Am(e,r,n),n}default:return n=function(e,t){const n=e.schema;e.schema=t.namespaceURI===ym.svg?rm:nm;let r=-1;const o={};for(;++r=55296&&e<=57343}function Mm(e){return 32!==e&&10!==e&&13!==e&&9!==e&&12!==e&&e>=1&&e<=31||e>=127&&e<=159}function Lm(e){return e>=64976&&e<=65007||Cm.has(e)}var Dm,Pm;!function(e){e.controlCharacterInInputStream="control-character-in-input-stream",e.noncharacterInInputStream="noncharacter-in-input-stream",e.surrogateInInputStream="surrogate-in-input-stream",e.nonVoidHtmlElementStartTagWithTrailingSolidus="non-void-html-element-start-tag-with-trailing-solidus",e.endTagWithAttributes="end-tag-with-attributes",e.endTagWithTrailingSolidus="end-tag-with-trailing-solidus",e.unexpectedSolidusInTag="unexpected-solidus-in-tag",e.unexpectedNullCharacter="unexpected-null-character",e.unexpectedQuestionMarkInsteadOfTagName="unexpected-question-mark-instead-of-tag-name",e.invalidFirstCharacterOfTagName="invalid-first-character-of-tag-name",e.unexpectedEqualsSignBeforeAttributeName="unexpected-equals-sign-before-attribute-name",e.missingEndTagName="missing-end-tag-name",e.unexpectedCharacterInAttributeName="unexpected-character-in-attribute-name",e.unknownNamedCharacterReference="unknown-named-character-reference",e.missingSemicolonAfterCharacterReference="missing-semicolon-after-character-reference",e.unexpectedCharacterAfterDoctypeSystemIdentifier="unexpected-character-after-doctype-system-identifier",e.unexpectedCharacterInUnquotedAttributeValue="unexpected-character-in-unquoted-attribute-value",e.eofBeforeTagName="eof-before-tag-name",e.eofInTag="eof-in-tag",e.missingAttributeValue="missing-attribute-value",e.missingWhitespaceBetweenAttributes="missing-whitespace-between-attributes",e.missingWhitespaceAfterDoctypePublicKeyword="missing-whitespace-after-doctype-public-keyword",e.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers="missing-whitespace-between-doctype-public-and-system-identifiers",e.missingWhitespaceAfterDoctypeSystemKeyword="missing-whitespace-after-doctype-system-keyword",e.missingQuoteBeforeDoctypePublicIdentifier="missing-quote-before-doctype-public-identifier",e.missingQuoteBeforeDoctypeSystemIdentifier="missing-quote-before-doctype-system-identifier",e.missingDoctypePublicIdentifier="missing-doctype-public-identifier",e.missingDoctypeSystemIdentifier="missing-doctype-system-identifier",e.abruptDoctypePublicIdentifier="abrupt-doctype-public-identifier",e.abruptDoctypeSystemIdentifier="abrupt-doctype-system-identifier",e.cdataInHtmlContent="cdata-in-html-content",e.incorrectlyOpenedComment="incorrectly-opened-comment",e.eofInScriptHtmlCommentLikeText="eof-in-script-html-comment-like-text",e.eofInDoctype="eof-in-doctype",e.nestedComment="nested-comment",e.abruptClosingOfEmptyComment="abrupt-closing-of-empty-comment",e.eofInComment="eof-in-comment",e.incorrectlyClosedComment="incorrectly-closed-comment",e.eofInCdata="eof-in-cdata",e.absenceOfDigitsInNumericCharacterReference="absence-of-digits-in-numeric-character-reference",e.nullCharacterReference="null-character-reference",e.surrogateCharacterReference="surrogate-character-reference",e.characterReferenceOutsideUnicodeRange="character-reference-outside-unicode-range",e.controlCharacterReference="control-character-reference",e.noncharacterCharacterReference="noncharacter-character-reference",e.missingWhitespaceBeforeDoctypeName="missing-whitespace-before-doctype-name",e.missingDoctypeName="missing-doctype-name",e.invalidCharacterSequenceAfterDoctypeName="invalid-character-sequence-after-doctype-name",e.duplicateAttribute="duplicate-attribute",e.nonConformingDoctype="non-conforming-doctype",e.missingDoctype="missing-doctype",e.misplacedDoctype="misplaced-doctype",e.endTagWithoutMatchingOpenElement="end-tag-without-matching-open-element",e.closingOfElementWithOpenChildElements="closing-of-element-with-open-child-elements",e.disallowedContentInNoscriptInHead="disallowed-content-in-noscript-in-head",e.openElementsLeftAfterEof="open-elements-left-after-eof",e.abandonedHeadElementChild="abandoned-head-element-child",e.misplacedStartTagForHeadElement="misplaced-start-tag-for-head-element",e.nestedNoscriptInHead="nested-noscript-in-head",e.eofInElementThatCanContainOnlyText="eof-in-element-that-can-contain-only-text"}(Dm=Dm||(Dm={}));class Bm{constructor(e){this.handler=e,this.html="",this.pos=-1,this.lastGapPos=-2,this.gapStack=[],this.skipNextNewLine=!1,this.lastChunkWritten=!1,this.endOfChunkHit=!1,this.bufferWaterline=65536,this.isEol=!1,this.lineStartPos=0,this.droppedBufferSize=0,this.line=1,this.lastErrOffset=-1}get col(){return this.pos-this.lineStartPos+Number(this.lastGapPos!==this.pos)}get offset(){return this.droppedBufferSize+this.pos}getError(e){const{line:t,col:n,offset:r}=this;return{code:e,startLine:t,endLine:t,startCol:n,endCol:n,startOffset:r,endOffset:r}}_err(e){this.handler.onParseError&&this.lastErrOffset!==this.offset&&(this.lastErrOffset=this.offset,this.handler.onParseError(this.getError(e)))}_addGap(){this.gapStack.push(this.lastGapPos),this.lastGapPos=this.pos}_processSurrogate(e){if(this.pos!==this.html.length-1){const t=this.html.charCodeAt(this.pos+1);if(function(e){return e>=56320&&e<=57343}(t))return this.pos++,this._addGap(),1024*(e-55296)+9216+t}else if(!this.lastChunkWritten)return this.endOfChunkHit=!0,Im.EOF;return this._err(Dm.surrogateInInputStream),e}willDropParsedChunk(){return this.pos>this.bufferWaterline}dropParsedChunk(){this.willDropParsedChunk()&&(this.html=this.html.substring(this.pos),this.lineStartPos-=this.pos,this.droppedBufferSize+=this.pos,this.pos=0,this.lastGapPos=-2,this.gapStack.length=0)}write(e,t){this.html.length>0?this.html+=e:this.html=e,this.endOfChunkHit=!1,this.lastChunkWritten=t}insertHtmlAtCurrentPos(e){this.html=this.html.substring(0,this.pos+1)+e+this.html.substring(this.pos+1),this.endOfChunkHit=!1}startsWith(e,t){if(this.pos+e.length>this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,!1;if(t)return this.html.startsWith(e,this.pos);for(let n=0;n=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Im.EOF;const n=this.html.charCodeAt(t);return n===Im.CARRIAGE_RETURN?Im.LINE_FEED:n}advance(){if(this.pos++,this.isEol&&(this.isEol=!1,this.line++,this.lineStartPos=this.pos),this.pos>=this.html.length)return this.endOfChunkHit=!this.lastChunkWritten,Im.EOF;let e=this.html.charCodeAt(this.pos);return e===Im.CARRIAGE_RETURN?(this.isEol=!0,this.skipNextNewLine=!0,Im.LINE_FEED):e===Im.LINE_FEED&&(this.isEol=!0,this.skipNextNewLine)?(this.line--,this.skipNextNewLine=!1,this._addGap(),this.advance()):(this.skipNextNewLine=!1,Rm(e)&&(e=this._processSurrogate(e)),null===this.handler.onParseError||e>31&&e<127||e===Im.LINE_FEED||e===Im.CARRIAGE_RETURN||e>159&&e<64976||this._checkForProblematicCharacters(e),e)}_checkForProblematicCharacters(e){Mm(e)?this._err(Dm.controlCharacterInInputStream):Lm(e)&&this._err(Dm.noncharacterInInputStream)}retreat(e){for(this.pos-=e;this.pos=0;n--)if(e.attrs[n].name===t)return e.attrs[n].value;return null}!function(e){e[e.CHARACTER=0]="CHARACTER",e[e.NULL_CHARACTER=1]="NULL_CHARACTER",e[e.WHITESPACE_CHARACTER=2]="WHITESPACE_CHARACTER",e[e.START_TAG=3]="START_TAG",e[e.END_TAG=4]="END_TAG",e[e.COMMENT=5]="COMMENT",e[e.DOCTYPE=6]="DOCTYPE",e[e.EOF=7]="EOF",e[e.HIBERNATION=8]="HIBERNATION"}(Pm=Pm||(Pm={}));var jm,zm=new Uint16Array('\u1d41<\xd5\u0131\u028a\u049d\u057b\u05d0\u0675\u06de\u07a2\u07d6\u080f\u0a4a\u0a91\u0da1\u0e6d\u0f09\u0f26\u10ca\u1228\u12e1\u1415\u149d\u14c3\u14df\u1525\0\0\0\0\0\0\u156b\u16cd\u198d\u1c12\u1ddd\u1f7e\u2060\u21b0\u228d\u23c0\u23fb\u2442\u2824\u2912\u2d08\u2e48\u2fce\u3016\u32ba\u3639\u37ac\u38fe\u3a28\u3a71\u3ae0\u3b2e\u0800EMabcfglmnoprstu\\bfms\x7f\x84\x8b\x90\x95\x98\xa6\xb3\xb9\xc8\xcflig\u803b\xc6\u40c6P\u803b&\u4026cute\u803b\xc1\u40c1reve;\u4102\u0100iyx}rc\u803b\xc2\u40c2;\u4410r;\uc000\ud835\udd04rave\u803b\xc0\u40c0pha;\u4391acr;\u4100d;\u6a53\u0100gp\x9d\xa1on;\u4104f;\uc000\ud835\udd38plyFunction;\u6061ing\u803b\xc5\u40c5\u0100cs\xbe\xc3r;\uc000\ud835\udc9cign;\u6254ilde\u803b\xc3\u40c3ml\u803b\xc4\u40c4\u0400aceforsu\xe5\xfb\xfe\u0117\u011c\u0122\u0127\u012a\u0100cr\xea\xf2kslash;\u6216\u0176\xf6\xf8;\u6ae7ed;\u6306y;\u4411\u0180crt\u0105\u010b\u0114ause;\u6235noullis;\u612ca;\u4392r;\uc000\ud835\udd05pf;\uc000\ud835\udd39eve;\u42d8c\xf2\u0113mpeq;\u624e\u0700HOacdefhilorsu\u014d\u0151\u0156\u0180\u019e\u01a2\u01b5\u01b7\u01ba\u01dc\u0215\u0273\u0278\u027ecy;\u4427PY\u803b\xa9\u40a9\u0180cpy\u015d\u0162\u017aute;\u4106\u0100;i\u0167\u0168\u62d2talDifferentialD;\u6145leys;\u612d\u0200aeio\u0189\u018e\u0194\u0198ron;\u410cdil\u803b\xc7\u40c7rc;\u4108nint;\u6230ot;\u410a\u0100dn\u01a7\u01adilla;\u40b8terDot;\u40b7\xf2\u017fi;\u43a7rcle\u0200DMPT\u01c7\u01cb\u01d1\u01d6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01e2\u01f8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020foubleQuote;\u601duote;\u6019\u0200lnpu\u021e\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6a74\u0180git\u022f\u0236\u023aruent;\u6261nt;\u622fourIntegral;\u622e\u0100fr\u024c\u024e;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6a2fcr;\uc000\ud835\udc9ep\u0100;C\u0284\u0285\u62d3ap;\u624d\u0580DJSZacefios\u02a0\u02ac\u02b0\u02b4\u02b8\u02cb\u02d7\u02e1\u02e6\u0333\u048d\u0100;o\u0179\u02a5trahd;\u6911cy;\u4402cy;\u4405cy;\u440f\u0180grs\u02bf\u02c4\u02c7ger;\u6021r;\u61a1hv;\u6ae4\u0100ay\u02d0\u02d5ron;\u410e;\u4414l\u0100;t\u02dd\u02de\u6207a;\u4394r;\uc000\ud835\udd07\u0100af\u02eb\u0327\u0100cm\u02f0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031ccute;\u40b4o\u0174\u030b\u030d;\u42d9bleAcute;\u42ddrave;\u4060ilde;\u42dcond;\u62c4ferentialD;\u6146\u0470\u033d\0\0\0\u0342\u0354\0\u0405f;\uc000\ud835\udd3b\u0180;DE\u0348\u0349\u034d\u40a8ot;\u60dcqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03cf\u03e2\u03f8ontourIntegra\xec\u0239o\u0274\u0379\0\0\u037b\xbb\u0349nArrow;\u61d3\u0100eo\u0387\u03a4ft\u0180ART\u0390\u0396\u03a1rrow;\u61d0ightArrow;\u61d4e\xe5\u02cang\u0100LR\u03ab\u03c4eft\u0100AR\u03b3\u03b9rrow;\u67f8ightArrow;\u67faightArrow;\u67f9ight\u0100AT\u03d8\u03derrow;\u61d2ee;\u62a8p\u0241\u03e9\0\0\u03efrrow;\u61d1ownArrow;\u61d5erticalBar;\u6225n\u0300ABLRTa\u0412\u042a\u0430\u045e\u047f\u037crrow\u0180;BU\u041d\u041e\u0422\u6193ar;\u6913pArrow;\u61f5reve;\u4311eft\u02d2\u043a\0\u0446\0\u0450ightVector;\u6950eeVector;\u695eector\u0100;B\u0459\u045a\u61bdar;\u6956ight\u01d4\u0467\0\u0471eeVector;\u695fector\u0100;B\u047a\u047b\u61c1ar;\u6957ee\u0100;A\u0486\u0487\u62a4rrow;\u61a7\u0100ct\u0492\u0497r;\uc000\ud835\udc9frok;\u4110\u0800NTacdfglmopqstux\u04bd\u04c0\u04c4\u04cb\u04de\u04e2\u04e7\u04ee\u04f5\u0521\u052f\u0536\u0552\u055d\u0560\u0565G;\u414aH\u803b\xd0\u40d0cute\u803b\xc9\u40c9\u0180aiy\u04d2\u04d7\u04dcron;\u411arc\u803b\xca\u40ca;\u442dot;\u4116r;\uc000\ud835\udd08rave\u803b\xc8\u40c8ement;\u6208\u0100ap\u04fa\u04fecr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65fberySmallSquare;\u65ab\u0100gp\u0526\u052aon;\u4118f;\uc000\ud835\udd3csilon;\u4395u\u0100ai\u053c\u0549l\u0100;T\u0542\u0543\u6a75ilde;\u6242librium;\u61cc\u0100ci\u0557\u055ar;\u6130m;\u6a73a;\u4397ml\u803b\xcb\u40cb\u0100ip\u056a\u056fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058d\u05b2\u05ccy;\u4424r;\uc000\ud835\udd09lled\u0253\u0597\0\0\u05a3mallSquare;\u65fcerySmallSquare;\u65aa\u0370\u05ba\0\u05bf\0\0\u05c4f;\uc000\ud835\udd3dAll;\u6200riertrf;\u6131c\xf2\u05cb\u0600JTabcdfgorst\u05e8\u05ec\u05ef\u05fa\u0600\u0612\u0616\u061b\u061d\u0623\u066c\u0672cy;\u4403\u803b>\u403emma\u0100;d\u05f7\u05f8\u4393;\u43dcreve;\u411e\u0180eiy\u0607\u060c\u0610dil;\u4122rc;\u411c;\u4413ot;\u4120r;\uc000\ud835\udd0a;\u62d9pf;\uc000\ud835\udd3eeater\u0300EFGLST\u0635\u0644\u064e\u0656\u065b\u0666qual\u0100;L\u063e\u063f\u6265ess;\u62dbullEqual;\u6267reater;\u6aa2ess;\u6277lantEqual;\u6a7eilde;\u6273cr;\uc000\ud835\udca2;\u626b\u0400Aacfiosu\u0685\u068b\u0696\u069b\u069e\u06aa\u06be\u06caRDcy;\u442a\u0100ct\u0690\u0694ek;\u42c7;\u405eirc;\u4124r;\u610clbertSpace;\u610b\u01f0\u06af\0\u06b2f;\u610dizontalLine;\u6500\u0100ct\u06c3\u06c5\xf2\u06a9rok;\u4126mp\u0144\u06d0\u06d8ownHum\xf0\u012fqual;\u624f\u0700EJOacdfgmnostu\u06fa\u06fe\u0703\u0707\u070e\u071a\u071e\u0721\u0728\u0744\u0778\u078b\u078f\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803b\xcd\u40cd\u0100iy\u0713\u0718rc\u803b\xce\u40ce;\u4418ot;\u4130r;\u6111rave\u803b\xcc\u40cc\u0180;ap\u0720\u072f\u073f\u0100cg\u0734\u0737r;\u412ainaryI;\u6148lie\xf3\u03dd\u01f4\u0749\0\u0762\u0100;e\u074d\u074e\u622c\u0100gr\u0753\u0758ral;\u622bsection;\u62c2isible\u0100CT\u076c\u0772omma;\u6063imes;\u6062\u0180gpt\u077f\u0783\u0788on;\u412ef;\uc000\ud835\udd40a;\u4399cr;\u6110ilde;\u4128\u01eb\u079a\0\u079ecy;\u4406l\u803b\xcf\u40cf\u0280cfosu\u07ac\u07b7\u07bc\u07c2\u07d0\u0100iy\u07b1\u07b5rc;\u4134;\u4419r;\uc000\ud835\udd0dpf;\uc000\ud835\udd41\u01e3\u07c7\0\u07ccr;\uc000\ud835\udca5rcy;\u4408kcy;\u4404\u0380HJacfos\u07e4\u07e8\u07ec\u07f1\u07fd\u0802\u0808cy;\u4425cy;\u440cppa;\u439a\u0100ey\u07f6\u07fbdil;\u4136;\u441ar;\uc000\ud835\udd0epf;\uc000\ud835\udd42cr;\uc000\ud835\udca6\u0580JTaceflmost\u0825\u0829\u082c\u0850\u0863\u09b3\u09b8\u09c7\u09cd\u0a37\u0a47cy;\u4409\u803b<\u403c\u0280cmnpr\u0837\u083c\u0841\u0844\u084dute;\u4139bda;\u439bg;\u67ealacetrf;\u6112r;\u619e\u0180aey\u0857\u085c\u0861ron;\u413ddil;\u413b;\u441b\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087e\u08a9\u08b1\u08e0\u08e6\u08fc\u092f\u095b\u0390\u096a\u0100nr\u0883\u088fgleBracket;\u67e8row\u0180;BR\u0899\u089a\u089e\u6190ar;\u61e4ightArrow;\u61c6eiling;\u6308o\u01f5\u08b7\0\u08c3bleBracket;\u67e6n\u01d4\u08c8\0\u08d2eeVector;\u6961ector\u0100;B\u08db\u08dc\u61c3ar;\u6959loor;\u630aight\u0100AV\u08ef\u08f5rrow;\u6194ector;\u694e\u0100er\u0901\u0917e\u0180;AV\u0909\u090a\u0910\u62a3rrow;\u61a4ector;\u695aiangle\u0180;BE\u0924\u0925\u0929\u62b2ar;\u69cfqual;\u62b4p\u0180DTV\u0937\u0942\u094cownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61bfar;\u6958ector\u0100;B\u0965\u0966\u61bcar;\u6952ight\xe1\u039cs\u0300EFGLST\u097e\u098b\u0995\u099d\u09a2\u09adqualGreater;\u62daullEqual;\u6266reater;\u6276ess;\u6aa1lantEqual;\u6a7dilde;\u6272r;\uc000\ud835\udd0f\u0100;e\u09bd\u09be\u62d8ftarrow;\u61daidot;\u413f\u0180npw\u09d4\u0a16\u0a1bg\u0200LRlr\u09de\u09f7\u0a02\u0a10eft\u0100AR\u09e6\u09ecrrow;\u67f5ightArrow;\u67f7ightArrow;\u67f6eft\u0100ar\u03b3\u0a0aight\xe1\u03bfight\xe1\u03caf;\uc000\ud835\udd43er\u0100LR\u0a22\u0a2ceftArrow;\u6199ightArrow;\u6198\u0180cht\u0a3e\u0a40\u0a42\xf2\u084c;\u61b0rok;\u4141;\u626a\u0400acefiosu\u0a5a\u0a5d\u0a60\u0a77\u0a7c\u0a85\u0a8b\u0a8ep;\u6905y;\u441c\u0100dl\u0a65\u0a6fiumSpace;\u605flintrf;\u6133r;\uc000\ud835\udd10nusPlus;\u6213pf;\uc000\ud835\udd44c\xf2\u0a76;\u439c\u0480Jacefostu\u0aa3\u0aa7\u0aad\u0ac0\u0b14\u0b19\u0d91\u0d97\u0d9ecy;\u440acute;\u4143\u0180aey\u0ab4\u0ab9\u0aberon;\u4147dil;\u4145;\u441d\u0180gsw\u0ac7\u0af0\u0b0eative\u0180MTV\u0ad3\u0adf\u0ae8ediumSpace;\u600bhi\u0100cn\u0ae6\u0ad8\xeb\u0ad9eryThi\xee\u0ad9ted\u0100GL\u0af8\u0b06reaterGreate\xf2\u0673essLes\xf3\u0a48Line;\u400ar;\uc000\ud835\udd11\u0200Bnpt\u0b22\u0b28\u0b37\u0b3areak;\u6060BreakingSpace;\u40a0f;\u6115\u0680;CDEGHLNPRSTV\u0b55\u0b56\u0b6a\u0b7c\u0ba1\u0beb\u0c04\u0c5e\u0c84\u0ca6\u0cd8\u0d61\u0d85\u6aec\u0100ou\u0b5b\u0b64ngruent;\u6262pCap;\u626doubleVerticalBar;\u6226\u0180lqx\u0b83\u0b8a\u0b9bement;\u6209ual\u0100;T\u0b92\u0b93\u6260ilde;\uc000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0bb6\u0bb7\u0bbd\u0bc9\u0bd3\u0bd8\u0be5\u626fqual;\u6271ullEqual;\uc000\u2267\u0338reater;\uc000\u226b\u0338ess;\u6279lantEqual;\uc000\u2a7e\u0338ilde;\u6275ump\u0144\u0bf2\u0bfdownHump;\uc000\u224e\u0338qual;\uc000\u224f\u0338e\u0100fs\u0c0a\u0c27tTriangle\u0180;BE\u0c1a\u0c1b\u0c21\u62eaar;\uc000\u29cf\u0338qual;\u62ecs\u0300;EGLST\u0c35\u0c36\u0c3c\u0c44\u0c4b\u0c58\u626equal;\u6270reater;\u6278ess;\uc000\u226a\u0338lantEqual;\uc000\u2a7d\u0338ilde;\u6274ested\u0100GL\u0c68\u0c79reaterGreater;\uc000\u2aa2\u0338essLess;\uc000\u2aa1\u0338recedes\u0180;ES\u0c92\u0c93\u0c9b\u6280qual;\uc000\u2aaf\u0338lantEqual;\u62e0\u0100ei\u0cab\u0cb9verseElement;\u620cghtTriangle\u0180;BE\u0ccb\u0ccc\u0cd2\u62ebar;\uc000\u29d0\u0338qual;\u62ed\u0100qu\u0cdd\u0d0cuareSu\u0100bp\u0ce8\u0cf9set\u0100;E\u0cf0\u0cf3\uc000\u228f\u0338qual;\u62e2erset\u0100;E\u0d03\u0d06\uc000\u2290\u0338qual;\u62e3\u0180bcp\u0d13\u0d24\u0d4eset\u0100;E\u0d1b\u0d1e\uc000\u2282\u20d2qual;\u6288ceeds\u0200;EST\u0d32\u0d33\u0d3b\u0d46\u6281qual;\uc000\u2ab0\u0338lantEqual;\u62e1ilde;\uc000\u227f\u0338erset\u0100;E\u0d58\u0d5b\uc000\u2283\u20d2qual;\u6289ilde\u0200;EFT\u0d6e\u0d6f\u0d75\u0d7f\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uc000\ud835\udca9ilde\u803b\xd1\u40d1;\u439d\u0700Eacdfgmoprstuv\u0dbd\u0dc2\u0dc9\u0dd5\u0ddb\u0de0\u0de7\u0dfc\u0e02\u0e20\u0e22\u0e32\u0e3f\u0e44lig;\u4152cute\u803b\xd3\u40d3\u0100iy\u0dce\u0dd3rc\u803b\xd4\u40d4;\u441eblac;\u4150r;\uc000\ud835\udd12rave\u803b\xd2\u40d2\u0180aei\u0dee\u0df2\u0df6cr;\u414cga;\u43a9cron;\u439fpf;\uc000\ud835\udd46enCurly\u0100DQ\u0e0e\u0e1aoubleQuote;\u601cuote;\u6018;\u6a54\u0100cl\u0e27\u0e2cr;\uc000\ud835\udcaaash\u803b\xd8\u40d8i\u016c\u0e37\u0e3cde\u803b\xd5\u40d5es;\u6a37ml\u803b\xd6\u40d6er\u0100BP\u0e4b\u0e60\u0100ar\u0e50\u0e53r;\u603eac\u0100ek\u0e5a\u0e5c;\u63deet;\u63b4arenthesis;\u63dc\u0480acfhilors\u0e7f\u0e87\u0e8a\u0e8f\u0e92\u0e94\u0e9d\u0eb0\u0efcrtialD;\u6202y;\u441fr;\uc000\ud835\udd13i;\u43a6;\u43a0usMinus;\u40b1\u0100ip\u0ea2\u0eadncareplan\xe5\u069df;\u6119\u0200;eio\u0eb9\u0eba\u0ee0\u0ee4\u6abbcedes\u0200;EST\u0ec8\u0ec9\u0ecf\u0eda\u627aqual;\u6aaflantEqual;\u627cilde;\u627eme;\u6033\u0100dp\u0ee9\u0eeeuct;\u620fortion\u0100;a\u0225\u0ef9l;\u621d\u0100ci\u0f01\u0f06r;\uc000\ud835\udcab;\u43a8\u0200Ufos\u0f11\u0f16\u0f1b\u0f1fOT\u803b"\u4022r;\uc000\ud835\udd14pf;\u611acr;\uc000\ud835\udcac\u0600BEacefhiorsu\u0f3e\u0f43\u0f47\u0f60\u0f73\u0fa7\u0faa\u0fad\u1096\u10a9\u10b4\u10bearr;\u6910G\u803b\xae\u40ae\u0180cnr\u0f4e\u0f53\u0f56ute;\u4154g;\u67ebr\u0100;t\u0f5c\u0f5d\u61a0l;\u6916\u0180aey\u0f67\u0f6c\u0f71ron;\u4158dil;\u4156;\u4420\u0100;v\u0f78\u0f79\u611cerse\u0100EU\u0f82\u0f99\u0100lq\u0f87\u0f8eement;\u620builibrium;\u61cbpEquilibrium;\u696fr\xbb\u0f79o;\u43a1ght\u0400ACDFTUVa\u0fc1\u0feb\u0ff3\u1022\u1028\u105b\u1087\u03d8\u0100nr\u0fc6\u0fd2gleBracket;\u67e9row\u0180;BL\u0fdc\u0fdd\u0fe1\u6192ar;\u61e5eftArrow;\u61c4eiling;\u6309o\u01f5\u0ff9\0\u1005bleBracket;\u67e7n\u01d4\u100a\0\u1014eeVector;\u695dector\u0100;B\u101d\u101e\u61c2ar;\u6955loor;\u630b\u0100er\u102d\u1043e\u0180;AV\u1035\u1036\u103c\u62a2rrow;\u61a6ector;\u695biangle\u0180;BE\u1050\u1051\u1055\u62b3ar;\u69d0qual;\u62b5p\u0180DTV\u1063\u106e\u1078ownVector;\u694feeVector;\u695cector\u0100;B\u1082\u1083\u61bear;\u6954ector\u0100;B\u1091\u1092\u61c0ar;\u6953\u0100pu\u109b\u109ef;\u611dndImplies;\u6970ightarrow;\u61db\u0100ch\u10b9\u10bcr;\u611b;\u61b1leDelayed;\u69f4\u0680HOacfhimoqstu\u10e4\u10f1\u10f7\u10fd\u1119\u111e\u1151\u1156\u1161\u1167\u11b5\u11bb\u11bf\u0100Cc\u10e9\u10eeHcy;\u4429y;\u4428FTcy;\u442ccute;\u415a\u0280;aeiy\u1108\u1109\u110e\u1113\u1117\u6abcron;\u4160dil;\u415erc;\u415c;\u4421r;\uc000\ud835\udd16ort\u0200DLRU\u112a\u1134\u113e\u1149ownArrow\xbb\u041eeftArrow\xbb\u089aightArrow\xbb\u0fddpArrow;\u6191gma;\u43a3allCircle;\u6218pf;\uc000\ud835\udd4a\u0272\u116d\0\0\u1170t;\u621aare\u0200;ISU\u117b\u117c\u1189\u11af\u65a1ntersection;\u6293u\u0100bp\u118f\u119eset\u0100;E\u1197\u1198\u628fqual;\u6291erset\u0100;E\u11a8\u11a9\u6290qual;\u6292nion;\u6294cr;\uc000\ud835\udcaear;\u62c6\u0200bcmp\u11c8\u11db\u1209\u120b\u0100;s\u11cd\u11ce\u62d0et\u0100;E\u11cd\u11d5qual;\u6286\u0100ch\u11e0\u1205eeds\u0200;EST\u11ed\u11ee\u11f4\u11ff\u627bqual;\u6ab0lantEqual;\u627dilde;\u627fTh\xe1\u0f8c;\u6211\u0180;es\u1212\u1213\u1223\u62d1rset\u0100;E\u121c\u121d\u6283qual;\u6287et\xbb\u1213\u0580HRSacfhiors\u123e\u1244\u1249\u1255\u125e\u1271\u1276\u129f\u12c2\u12c8\u12d1ORN\u803b\xde\u40deADE;\u6122\u0100Hc\u124e\u1252cy;\u440by;\u4426\u0100bu\u125a\u125c;\u4009;\u43a4\u0180aey\u1265\u126a\u126fron;\u4164dil;\u4162;\u4422r;\uc000\ud835\udd17\u0100ei\u127b\u1289\u01f2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128e\u1298kSpace;\uc000\u205f\u200aSpace;\u6009lde\u0200;EFT\u12ab\u12ac\u12b2\u12bc\u623cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uc000\ud835\udd4bipleDot;\u60db\u0100ct\u12d6\u12dbr;\uc000\ud835\udcafrok;\u4166\u0ae1\u12f7\u130e\u131a\u1326\0\u132c\u1331\0\0\0\0\0\u1338\u133d\u1377\u1385\0\u13ff\u1404\u140a\u1410\u0100cr\u12fb\u1301ute\u803b\xda\u40dar\u0100;o\u1307\u1308\u619fcir;\u6949r\u01e3\u1313\0\u1316y;\u440eve;\u416c\u0100iy\u131e\u1323rc\u803b\xdb\u40db;\u4423blac;\u4170r;\uc000\ud835\udd18rave\u803b\xd9\u40d9acr;\u416a\u0100di\u1341\u1369er\u0100BP\u1348\u135d\u0100ar\u134d\u1350r;\u405fac\u0100ek\u1357\u1359;\u63dfet;\u63b5arenthesis;\u63ddon\u0100;P\u1370\u1371\u62c3lus;\u628e\u0100gp\u137b\u137fon;\u4172f;\uc000\ud835\udd4c\u0400ADETadps\u1395\u13ae\u13b8\u13c4\u03e8\u13d2\u13d7\u13f3rrow\u0180;BD\u1150\u13a0\u13a4ar;\u6912ownArrow;\u61c5ownArrow;\u6195quilibrium;\u696eee\u0100;A\u13cb\u13cc\u62a5rrow;\u61a5own\xe1\u03f3er\u0100LR\u13de\u13e8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13f9\u13fa\u43d2on;\u43a5ing;\u416ecr;\uc000\ud835\udcb0ilde;\u4168ml\u803b\xdc\u40dc\u0480Dbcdefosv\u1427\u142c\u1430\u1433\u143e\u1485\u148a\u1490\u1496ash;\u62abar;\u6aeby;\u4412ash\u0100;l\u143b\u143c\u62a9;\u6ae6\u0100er\u1443\u1445;\u62c1\u0180bty\u144c\u1450\u147aar;\u6016\u0100;i\u144f\u1455cal\u0200BLST\u1461\u1465\u146a\u1474ar;\u6223ine;\u407ceparator;\u6758ilde;\u6240ThinSpace;\u600ar;\uc000\ud835\udd19pf;\uc000\ud835\udd4dcr;\uc000\ud835\udcb1dash;\u62aa\u0280cefos\u14a7\u14ac\u14b1\u14b6\u14bcirc;\u4174dge;\u62c0r;\uc000\ud835\udd1apf;\uc000\ud835\udd4ecr;\uc000\ud835\udcb2\u0200fios\u14cb\u14d0\u14d2\u14d8r;\uc000\ud835\udd1b;\u439epf;\uc000\ud835\udd4fcr;\uc000\ud835\udcb3\u0480AIUacfosu\u14f1\u14f5\u14f9\u14fd\u1504\u150f\u1514\u151a\u1520cy;\u442fcy;\u4407cy;\u442ecute\u803b\xdd\u40dd\u0100iy\u1509\u150drc;\u4176;\u442br;\uc000\ud835\udd1cpf;\uc000\ud835\udd50cr;\uc000\ud835\udcb4ml;\u4178\u0400Hacdefos\u1535\u1539\u153f\u154b\u154f\u155d\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417d;\u4417ot;\u417b\u01f2\u1554\0\u155boWidt\xe8\u0ad9a;\u4396r;\u6128pf;\u6124cr;\uc000\ud835\udcb5\u0be1\u1583\u158a\u1590\0\u15b0\u15b6\u15bf\0\0\0\0\u15c6\u15db\u15eb\u165f\u166d\0\u1695\u169b\u16b2\u16b9\0\u16becute\u803b\xe1\u40e1reve;\u4103\u0300;Ediuy\u159c\u159d\u15a1\u15a3\u15a8\u15ad\u623e;\uc000\u223e\u0333;\u623frc\u803b\xe2\u40e2te\u80bb\xb4\u0306;\u4430lig\u803b\xe6\u40e6\u0100;r\xb2\u15ba;\uc000\ud835\udd1erave\u803b\xe0\u40e0\u0100ep\u15ca\u15d6\u0100fp\u15cf\u15d4sym;\u6135\xe8\u15d3ha;\u43b1\u0100ap\u15dfc\u0100cl\u15e4\u15e7r;\u4101g;\u6a3f\u0264\u15f0\0\0\u160a\u0280;adsv\u15fa\u15fb\u15ff\u1601\u1607\u6227nd;\u6a55;\u6a5clope;\u6a58;\u6a5a\u0380;elmrsz\u1618\u1619\u161b\u161e\u163f\u164f\u1659\u6220;\u69a4e\xbb\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163a\u163c\u163e;\u69a8;\u69a9;\u69aa;\u69ab;\u69ac;\u69ad;\u69ae;\u69aft\u0100;v\u1645\u1646\u621fb\u0100;d\u164c\u164d\u62be;\u699d\u0100pt\u1654\u1657h;\u6222\xbb\xb9arr;\u637c\u0100gp\u1663\u1667on;\u4105f;\uc000\ud835\udd52\u0380;Eaeiop\u12c1\u167b\u167d\u1682\u1684\u1687\u168a;\u6a70cir;\u6a6f;\u624ad;\u624bs;\u4027rox\u0100;e\u12c1\u1692\xf1\u1683ing\u803b\xe5\u40e5\u0180cty\u16a1\u16a6\u16a8r;\uc000\ud835\udcb6;\u402amp\u0100;e\u12c1\u16af\xf1\u0288ilde\u803b\xe3\u40e3ml\u803b\xe4\u40e4\u0100ci\u16c2\u16c8onin\xf4\u0272nt;\u6a11\u0800Nabcdefiklnoprsu\u16ed\u16f1\u1730\u173c\u1743\u1748\u1778\u177d\u17e0\u17e6\u1839\u1850\u170d\u193d\u1948\u1970ot;\u6aed\u0100cr\u16f6\u171ek\u0200ceps\u1700\u1705\u170d\u1713ong;\u624cpsilon;\u43f6rime;\u6035im\u0100;e\u171a\u171b\u623dq;\u62cd\u0176\u1722\u1726ee;\u62bded\u0100;g\u172c\u172d\u6305e\xbb\u172drk\u0100;t\u135c\u1737brk;\u63b6\u0100oy\u1701\u1741;\u4431quo;\u601e\u0280cmprt\u1753\u175b\u1761\u1764\u1768aus\u0100;e\u010a\u0109ptyv;\u69b0s\xe9\u170cno\xf5\u0113\u0180ahw\u176f\u1771\u1773;\u43b2;\u6136een;\u626cr;\uc000\ud835\udd1fg\u0380costuvw\u178d\u179d\u17b3\u17c1\u17d5\u17db\u17de\u0180aiu\u1794\u1796\u179a\xf0\u0760rc;\u65efp\xbb\u1371\u0180dpt\u17a4\u17a8\u17adot;\u6a00lus;\u6a01imes;\u6a02\u0271\u17b9\0\0\u17becup;\u6a06ar;\u6605riangle\u0100du\u17cd\u17d2own;\u65bdp;\u65b3plus;\u6a04e\xe5\u1444\xe5\u14adarow;\u690d\u0180ako\u17ed\u1826\u1835\u0100cn\u17f2\u1823k\u0180lst\u17fa\u05ab\u1802ozenge;\u69ebriangle\u0200;dlr\u1812\u1813\u1818\u181d\u65b4own;\u65beeft;\u65c2ight;\u65b8k;\u6423\u01b1\u182b\0\u1833\u01b2\u182f\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183e\u184d\u0100;q\u1843\u1846\uc000=\u20e5uiv;\uc000\u2261\u20e5t;\u6310\u0200ptwx\u1859\u185e\u1867\u186cf;\uc000\ud835\udd53\u0100;t\u13cb\u1863om\xbb\u13cctie;\u62c8\u0600DHUVbdhmptuv\u1885\u1896\u18aa\u18bb\u18d7\u18db\u18ec\u18ff\u1905\u190a\u1910\u1921\u0200LRlr\u188e\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18a1\u18a2\u18a4\u18a6\u18a8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18b3\u18b5\u18b7\u18b9;\u655d;\u655a;\u655c;\u6559\u0380;HLRhlr\u18ca\u18cb\u18cd\u18cf\u18d1\u18d3\u18d5\u6551;\u656c;\u6563;\u6560;\u656b;\u6562;\u655fox;\u69c9\u0200LRlr\u18e4\u18e6\u18e8\u18ea;\u6555;\u6552;\u6510;\u650c\u0280;DUdu\u06bd\u18f7\u18f9\u18fb\u18fd;\u6565;\u6568;\u652c;\u6534inus;\u629flus;\u629eimes;\u62a0\u0200LRlr\u1919\u191b\u191d\u191f;\u655b;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193b\u6502;\u656a;\u6561;\u655e;\u653c;\u6524;\u651c\u0100ev\u0123\u1942bar\u803b\xa6\u40a6\u0200ceio\u1951\u1956\u195a\u1960r;\uc000\ud835\udcb7mi;\u604fm\u0100;e\u171a\u171cl\u0180;bh\u1968\u1969\u196b\u405c;\u69c5sub;\u67c8\u016c\u1974\u197el\u0100;e\u1979\u197a\u6022t\xbb\u197ap\u0180;Ee\u012f\u1985\u1987;\u6aae\u0100;q\u06dc\u06db\u0ce1\u19a7\0\u19e8\u1a11\u1a15\u1a32\0\u1a37\u1a50\0\0\u1ab4\0\0\u1ac1\0\0\u1b21\u1b2e\u1b4d\u1b52\0\u1bfd\0\u1c0c\u0180cpr\u19ad\u19b2\u19ddute;\u4107\u0300;abcds\u19bf\u19c0\u19c4\u19ca\u19d5\u19d9\u6229nd;\u6a44rcup;\u6a49\u0100au\u19cf\u19d2p;\u6a4bp;\u6a47ot;\u6a40;\uc000\u2229\ufe00\u0100eo\u19e2\u19e5t;\u6041\xee\u0693\u0200aeiu\u19f0\u19fb\u1a01\u1a05\u01f0\u19f5\0\u19f8s;\u6a4don;\u410ddil\u803b\xe7\u40e7rc;\u4109ps\u0100;s\u1a0c\u1a0d\u6a4cm;\u6a50ot;\u410b\u0180dmn\u1a1b\u1a20\u1a26il\u80bb\xb8\u01adptyv;\u69b2t\u8100\xa2;e\u1a2d\u1a2e\u40a2r\xe4\u01b2r;\uc000\ud835\udd20\u0180cei\u1a3d\u1a40\u1a4dy;\u4447ck\u0100;m\u1a47\u1a48\u6713ark\xbb\u1a48;\u43c7r\u0380;Ecefms\u1a5f\u1a60\u1a62\u1a6b\u1aa4\u1aaa\u1aae\u65cb;\u69c3\u0180;el\u1a69\u1a6a\u1a6d\u42c6q;\u6257e\u0261\u1a74\0\0\u1a88rrow\u0100lr\u1a7c\u1a81eft;\u61baight;\u61bb\u0280RSacd\u1a92\u1a94\u1a96\u1a9a\u1a9f\xbb\u0f47;\u64c8st;\u629birc;\u629aash;\u629dnint;\u6a10id;\u6aefcir;\u69c2ubs\u0100;u\u1abb\u1abc\u6663it\xbb\u1abc\u02ec\u1ac7\u1ad4\u1afa\0\u1b0aon\u0100;e\u1acd\u1ace\u403a\u0100;q\xc7\xc6\u026d\u1ad9\0\0\u1ae2a\u0100;t\u1ade\u1adf\u402c;\u4040\u0180;fl\u1ae8\u1ae9\u1aeb\u6201\xee\u1160e\u0100mx\u1af1\u1af6ent\xbb\u1ae9e\xf3\u024d\u01e7\u1afe\0\u1b07\u0100;d\u12bb\u1b02ot;\u6a6dn\xf4\u0246\u0180fry\u1b10\u1b14\u1b17;\uc000\ud835\udd54o\xe4\u0254\u8100\xa9;s\u0155\u1b1dr;\u6117\u0100ao\u1b25\u1b29rr;\u61b5ss;\u6717\u0100cu\u1b32\u1b37r;\uc000\ud835\udcb8\u0100bp\u1b3c\u1b44\u0100;e\u1b41\u1b42\u6acf;\u6ad1\u0100;e\u1b49\u1b4a\u6ad0;\u6ad2dot;\u62ef\u0380delprvw\u1b60\u1b6c\u1b77\u1b82\u1bac\u1bd4\u1bf9arr\u0100lr\u1b68\u1b6a;\u6938;\u6935\u0270\u1b72\0\0\u1b75r;\u62dec;\u62dfarr\u0100;p\u1b7f\u1b80\u61b6;\u693d\u0300;bcdos\u1b8f\u1b90\u1b96\u1ba1\u1ba5\u1ba8\u622arcap;\u6a48\u0100au\u1b9b\u1b9ep;\u6a46p;\u6a4aot;\u628dr;\u6a45;\uc000\u222a\ufe00\u0200alrv\u1bb5\u1bbf\u1bde\u1be3rr\u0100;m\u1bbc\u1bbd\u61b7;\u693cy\u0180evw\u1bc7\u1bd4\u1bd8q\u0270\u1bce\0\0\u1bd2re\xe3\u1b73u\xe3\u1b75ee;\u62ceedge;\u62cfen\u803b\xa4\u40a4earrow\u0100lr\u1bee\u1bf3eft\xbb\u1b80ight\xbb\u1bbde\xe4\u1bdd\u0100ci\u1c01\u1c07onin\xf4\u01f7nt;\u6231lcty;\u632d\u0980AHabcdefhijlorstuwz\u1c38\u1c3b\u1c3f\u1c5d\u1c69\u1c75\u1c8a\u1c9e\u1cac\u1cb7\u1cfb\u1cff\u1d0d\u1d7b\u1d91\u1dab\u1dbb\u1dc6\u1dcdr\xf2\u0381ar;\u6965\u0200glrs\u1c48\u1c4d\u1c52\u1c54ger;\u6020eth;\u6138\xf2\u1133h\u0100;v\u1c5a\u1c5b\u6010\xbb\u090a\u016b\u1c61\u1c67arow;\u690fa\xe3\u0315\u0100ay\u1c6e\u1c73ron;\u410f;\u4434\u0180;ao\u0332\u1c7c\u1c84\u0100gr\u02bf\u1c81r;\u61catseq;\u6a77\u0180glm\u1c91\u1c94\u1c98\u803b\xb0\u40b0ta;\u43b4ptyv;\u69b1\u0100ir\u1ca3\u1ca8sht;\u697f;\uc000\ud835\udd21ar\u0100lr\u1cb3\u1cb5\xbb\u08dc\xbb\u101e\u0280aegsv\u1cc2\u0378\u1cd6\u1cdc\u1ce0m\u0180;os\u0326\u1cca\u1cd4nd\u0100;s\u0326\u1cd1uit;\u6666amma;\u43ddin;\u62f2\u0180;io\u1ce7\u1ce8\u1cf8\u40f7de\u8100\xf7;o\u1ce7\u1cf0ntimes;\u62c7n\xf8\u1cf7cy;\u4452c\u026f\u1d06\0\0\u1d0arn;\u631eop;\u630d\u0280lptuw\u1d18\u1d1d\u1d22\u1d49\u1d55lar;\u4024f;\uc000\ud835\udd55\u0280;emps\u030b\u1d2d\u1d37\u1d3d\u1d42q\u0100;d\u0352\u1d33ot;\u6251inus;\u6238lus;\u6214quare;\u62a1blebarwedg\xe5\xfan\u0180adh\u112e\u1d5d\u1d67ownarrow\xf3\u1c83arpoon\u0100lr\u1d72\u1d76ef\xf4\u1cb4igh\xf4\u1cb6\u0162\u1d7f\u1d85karo\xf7\u0f42\u026f\u1d8a\0\0\u1d8ern;\u631fop;\u630c\u0180cot\u1d98\u1da3\u1da6\u0100ry\u1d9d\u1da1;\uc000\ud835\udcb9;\u4455l;\u69f6rok;\u4111\u0100dr\u1db0\u1db4ot;\u62f1i\u0100;f\u1dba\u1816\u65bf\u0100ah\u1dc0\u1dc3r\xf2\u0429a\xf2\u0fa6angle;\u69a6\u0100ci\u1dd2\u1dd5y;\u445fgrarr;\u67ff\u0900Dacdefglmnopqrstux\u1e01\u1e09\u1e19\u1e38\u0578\u1e3c\u1e49\u1e61\u1e7e\u1ea5\u1eaf\u1ebd\u1ee1\u1f2a\u1f37\u1f44\u1f4e\u1f5a\u0100Do\u1e06\u1d34o\xf4\u1c89\u0100cs\u1e0e\u1e14ute\u803b\xe9\u40e9ter;\u6a6e\u0200aioy\u1e22\u1e27\u1e31\u1e36ron;\u411br\u0100;c\u1e2d\u1e2e\u6256\u803b\xea\u40ealon;\u6255;\u444dot;\u4117\u0100Dr\u1e41\u1e45ot;\u6252;\uc000\ud835\udd22\u0180;rs\u1e50\u1e51\u1e57\u6a9aave\u803b\xe8\u40e8\u0100;d\u1e5c\u1e5d\u6a96ot;\u6a98\u0200;ils\u1e6a\u1e6b\u1e72\u1e74\u6a99nters;\u63e7;\u6113\u0100;d\u1e79\u1e7a\u6a95ot;\u6a97\u0180aps\u1e85\u1e89\u1e97cr;\u4113ty\u0180;sv\u1e92\u1e93\u1e95\u6205et\xbb\u1e93p\u01001;\u1e9d\u1ea4\u0133\u1ea1\u1ea3;\u6004;\u6005\u6003\u0100gs\u1eaa\u1eac;\u414bp;\u6002\u0100gp\u1eb4\u1eb8on;\u4119f;\uc000\ud835\udd56\u0180als\u1ec4\u1ece\u1ed2r\u0100;s\u1eca\u1ecb\u62d5l;\u69e3us;\u6a71i\u0180;lv\u1eda\u1edb\u1edf\u43b5on\xbb\u1edb;\u43f5\u0200csuv\u1eea\u1ef3\u1f0b\u1f23\u0100io\u1eef\u1e31rc\xbb\u1e2e\u0269\u1ef9\0\0\u1efb\xed\u0548ant\u0100gl\u1f02\u1f06tr\xbb\u1e5dess\xbb\u1e7a\u0180aei\u1f12\u1f16\u1f1als;\u403dst;\u625fv\u0100;D\u0235\u1f20D;\u6a78parsl;\u69e5\u0100Da\u1f2f\u1f33ot;\u6253rr;\u6971\u0180cdi\u1f3e\u1f41\u1ef8r;\u612fo\xf4\u0352\u0100ah\u1f49\u1f4b;\u43b7\u803b\xf0\u40f0\u0100mr\u1f53\u1f57l\u803b\xeb\u40ebo;\u60ac\u0180cip\u1f61\u1f64\u1f67l;\u4021s\xf4\u056e\u0100eo\u1f6c\u1f74ctatio\xee\u0559nential\xe5\u0579\u09e1\u1f92\0\u1f9e\0\u1fa1\u1fa7\0\0\u1fc6\u1fcc\0\u1fd3\0\u1fe6\u1fea\u2000\0\u2008\u205allingdotse\xf1\u1e44y;\u4444male;\u6640\u0180ilr\u1fad\u1fb3\u1fc1lig;\u8000\ufb03\u0269\u1fb9\0\0\u1fbdg;\u8000\ufb00ig;\u8000\ufb04;\uc000\ud835\udd23lig;\u8000\ufb01lig;\uc000fj\u0180alt\u1fd9\u1fdc\u1fe1t;\u666dig;\u8000\ufb02ns;\u65b1of;\u4192\u01f0\u1fee\0\u1ff3f;\uc000\ud835\udd57\u0100ak\u05bf\u1ff7\u0100;v\u1ffc\u1ffd\u62d4;\u6ad9artint;\u6a0d\u0100ao\u200c\u2055\u0100cs\u2011\u2052\u03b1\u201a\u2030\u2038\u2045\u2048\0\u2050\u03b2\u2022\u2025\u2027\u202a\u202c\0\u202e\u803b\xbd\u40bd;\u6153\u803b\xbc\u40bc;\u6155;\u6159;\u615b\u01b3\u2034\0\u2036;\u6154;\u6156\u02b4\u203e\u2041\0\0\u2043\u803b\xbe\u40be;\u6157;\u615c5;\u6158\u01b6\u204c\0\u204e;\u615a;\u615d8;\u615el;\u6044wn;\u6322cr;\uc000\ud835\udcbb\u0880Eabcdefgijlnorstv\u2082\u2089\u209f\u20a5\u20b0\u20b4\u20f0\u20f5\u20fa\u20ff\u2103\u2112\u2138\u0317\u213e\u2152\u219e\u0100;l\u064d\u2087;\u6a8c\u0180cmp\u2090\u2095\u209dute;\u41f5ma\u0100;d\u209c\u1cda\u43b3;\u6a86reve;\u411f\u0100iy\u20aa\u20aerc;\u411d;\u4433ot;\u4121\u0200;lqs\u063e\u0642\u20bd\u20c9\u0180;qs\u063e\u064c\u20c4lan\xf4\u0665\u0200;cdl\u0665\u20d2\u20d5\u20e5c;\u6aa9ot\u0100;o\u20dc\u20dd\u6a80\u0100;l\u20e2\u20e3\u6a82;\u6a84\u0100;e\u20ea\u20ed\uc000\u22db\ufe00s;\u6a94r;\uc000\ud835\udd24\u0100;g\u0673\u061bmel;\u6137cy;\u4453\u0200;Eaj\u065a\u210c\u210e\u2110;\u6a92;\u6aa5;\u6aa4\u0200Eaes\u211b\u211d\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6a8arox\xbb\u2124\u0100;q\u212e\u212f\u6a88\u0100;q\u212e\u211bim;\u62e7pf;\uc000\ud835\udd58\u0100ci\u2143\u2146r;\u610am\u0180;el\u066b\u214e\u2150;\u6a8e;\u6a90\u8300>;cdlqr\u05ee\u2160\u216a\u216e\u2173\u2179\u0100ci\u2165\u2167;\u6aa7r;\u6a7aot;\u62d7Par;\u6995uest;\u6a7c\u0280adels\u2184\u216a\u2190\u0656\u219b\u01f0\u2189\0\u218epro\xf8\u209er;\u6978q\u0100lq\u063f\u2196les\xf3\u2088i\xed\u066b\u0100en\u21a3\u21adrtneqq;\uc000\u2269\ufe00\xc5\u21aa\u0500Aabcefkosy\u21c4\u21c7\u21f1\u21f5\u21fa\u2218\u221d\u222f\u2268\u227dr\xf2\u03a0\u0200ilmr\u21d0\u21d4\u21d7\u21dbrs\xf0\u1484f\xbb\u2024il\xf4\u06a9\u0100dr\u21e0\u21e4cy;\u444a\u0180;cw\u08f4\u21eb\u21efir;\u6948;\u61adar;\u610firc;\u4125\u0180alr\u2201\u220e\u2213rts\u0100;u\u2209\u220a\u6665it\xbb\u220alip;\u6026con;\u62b9r;\uc000\ud835\udd25s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223a\u223e\u2243\u225e\u2263rr;\u61fftht;\u623bk\u0100lr\u2249\u2253eftarrow;\u61a9ightarrow;\u61aaf;\uc000\ud835\udd59bar;\u6015\u0180clt\u226f\u2274\u2278r;\uc000\ud835\udcbdas\xe8\u21f4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xbb\u1c5b\u0ae1\u22a3\0\u22aa\0\u22b8\u22c5\u22ce\0\u22d5\u22f3\0\0\u22f8\u2322\u2367\u2362\u237f\0\u2386\u23aa\u23b4cute\u803b\xed\u40ed\u0180;iy\u0771\u22b0\u22b5rc\u803b\xee\u40ee;\u4438\u0100cx\u22bc\u22bfy;\u4435cl\u803b\xa1\u40a1\u0100fr\u039f\u22c9;\uc000\ud835\udd26rave\u803b\xec\u40ec\u0200;ino\u073e\u22dd\u22e9\u22ee\u0100in\u22e2\u22e6nt;\u6a0ct;\u622dfin;\u69dcta;\u6129lig;\u4133\u0180aop\u22fe\u231a\u231d\u0180cgt\u2305\u2308\u2317r;\u412b\u0180elp\u071f\u230f\u2313in\xe5\u078ear\xf4\u0720h;\u4131f;\u62b7ed;\u41b5\u0280;cfot\u04f4\u232c\u2331\u233d\u2341are;\u6105in\u0100;t\u2338\u2339\u621eie;\u69dddo\xf4\u2319\u0280;celp\u0757\u234c\u2350\u235b\u2361al;\u62ba\u0100gr\u2355\u2359er\xf3\u1563\xe3\u234darhk;\u6a17rod;\u6a3c\u0200cgpt\u236f\u2372\u2376\u237by;\u4451on;\u412ff;\uc000\ud835\udd5aa;\u43b9uest\u803b\xbf\u40bf\u0100ci\u238a\u238fr;\uc000\ud835\udcben\u0280;Edsv\u04f4\u239b\u239d\u23a1\u04f3;\u62f9ot;\u62f5\u0100;v\u23a6\u23a7\u62f4;\u62f3\u0100;i\u0777\u23aelde;\u4129\u01eb\u23b8\0\u23bccy;\u4456l\u803b\xef\u40ef\u0300cfmosu\u23cc\u23d7\u23dc\u23e1\u23e7\u23f5\u0100iy\u23d1\u23d5rc;\u4135;\u4439r;\uc000\ud835\udd27ath;\u4237pf;\uc000\ud835\udd5b\u01e3\u23ec\0\u23f1r;\uc000\ud835\udcbfrcy;\u4458kcy;\u4454\u0400acfghjos\u240b\u2416\u2422\u2427\u242d\u2431\u2435\u243bppa\u0100;v\u2413\u2414\u43ba;\u43f0\u0100ey\u241b\u2420dil;\u4137;\u443ar;\uc000\ud835\udd28reen;\u4138cy;\u4445cy;\u445cpf;\uc000\ud835\udd5ccr;\uc000\ud835\udcc0\u0b80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248d\u2491\u250e\u253d\u255a\u2580\u264e\u265e\u2665\u2679\u267d\u269a\u26b2\u26d8\u275d\u2768\u278b\u27c0\u2801\u2812\u0180art\u2477\u247a\u247cr\xf2\u09c6\xf2\u0395ail;\u691barr;\u690e\u0100;g\u0994\u248b;\u6a8bar;\u6962\u0963\u24a5\0\u24aa\0\u24b1\0\0\0\0\0\u24b5\u24ba\0\u24c6\u24c8\u24cd\0\u24f9ute;\u413amptyv;\u69b4ra\xee\u084cbda;\u43bbg\u0180;dl\u088e\u24c1\u24c3;\u6991\xe5\u088e;\u6a85uo\u803b\xab\u40abr\u0400;bfhlpst\u0899\u24de\u24e6\u24e9\u24eb\u24ee\u24f1\u24f5\u0100;f\u089d\u24e3s;\u691fs;\u691d\xeb\u2252p;\u61abl;\u6939im;\u6973l;\u61a2\u0180;ae\u24ff\u2500\u2504\u6aabil;\u6919\u0100;s\u2509\u250a\u6aad;\uc000\u2aad\ufe00\u0180abr\u2515\u2519\u251drr;\u690crk;\u6772\u0100ak\u2522\u252cc\u0100ek\u2528\u252a;\u407b;\u405b\u0100es\u2531\u2533;\u698bl\u0100du\u2539\u253b;\u698f;\u698d\u0200aeuy\u2546\u254b\u2556\u2558ron;\u413e\u0100di\u2550\u2554il;\u413c\xec\u08b0\xe2\u2529;\u443b\u0200cqrs\u2563\u2566\u256d\u257da;\u6936uo\u0100;r\u0e19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694bh;\u61b2\u0280;fgqs\u258b\u258c\u0989\u25f3\u25ff\u6264t\u0280ahlrt\u2598\u25a4\u25b7\u25c2\u25e8rrow\u0100;t\u0899\u25a1a\xe9\u24f6arpoon\u0100du\u25af\u25b4own\xbb\u045ap\xbb\u0966eftarrows;\u61c7ight\u0180ahs\u25cd\u25d6\u25derrow\u0100;s\u08f4\u08a7arpoon\xf3\u0f98quigarro\xf7\u21f0hreetimes;\u62cb\u0180;qs\u258b\u0993\u25falan\xf4\u09ac\u0280;cdgs\u09ac\u260a\u260d\u261d\u2628c;\u6aa8ot\u0100;o\u2614\u2615\u6a7f\u0100;r\u261a\u261b\u6a81;\u6a83\u0100;e\u2622\u2625\uc000\u22da\ufe00s;\u6a93\u0280adegs\u2633\u2639\u263d\u2649\u264bppro\xf8\u24c6ot;\u62d6q\u0100gq\u2643\u2645\xf4\u0989gt\xf2\u248c\xf4\u099bi\xed\u09b2\u0180ilr\u2655\u08e1\u265asht;\u697c;\uc000\ud835\udd29\u0100;E\u099c\u2663;\u6a91\u0161\u2669\u2676r\u0100du\u25b2\u266e\u0100;l\u0965\u2673;\u696alk;\u6584cy;\u4459\u0280;acht\u0a48\u2688\u268b\u2691\u2696r\xf2\u25c1orne\xf2\u1d08ard;\u696bri;\u65fa\u0100io\u269f\u26a4dot;\u4140ust\u0100;a\u26ac\u26ad\u63b0che\xbb\u26ad\u0200Eaes\u26bb\u26bd\u26c9\u26d4;\u6268p\u0100;p\u26c3\u26c4\u6a89rox\xbb\u26c4\u0100;q\u26ce\u26cf\u6a87\u0100;q\u26ce\u26bbim;\u62e6\u0400abnoptwz\u26e9\u26f4\u26f7\u271a\u272f\u2741\u2747\u2750\u0100nr\u26ee\u26f1g;\u67ecr;\u61fdr\xeb\u08c1g\u0180lmr\u26ff\u270d\u2714eft\u0100ar\u09e6\u2707ight\xe1\u09f2apsto;\u67fcight\xe1\u09fdparrow\u0100lr\u2725\u2729ef\xf4\u24edight;\u61ac\u0180afl\u2736\u2739\u273dr;\u6985;\uc000\ud835\udd5dus;\u6a2dimes;\u6a34\u0161\u274b\u274fst;\u6217\xe1\u134e\u0180;ef\u2757\u2758\u1800\u65cange\xbb\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277c\u2785\u2787r\xf2\u08a8orne\xf2\u1d8car\u0100;d\u0f98\u2783;\u696d;\u600eri;\u62bf\u0300achiqt\u2798\u279d\u0a40\u27a2\u27ae\u27bbquo;\u6039r;\uc000\ud835\udcc1m\u0180;eg\u09b2\u27aa\u27ac;\u6a8d;\u6a8f\u0100bu\u252a\u27b3o\u0100;r\u0e1f\u27b9;\u601arok;\u4142\u8400<;cdhilqr\u082b\u27d2\u2639\u27dc\u27e0\u27e5\u27ea\u27f0\u0100ci\u27d7\u27d9;\u6aa6r;\u6a79re\xe5\u25f2mes;\u62c9arr;\u6976uest;\u6a7b\u0100Pi\u27f5\u27f9ar;\u6996\u0180;ef\u2800\u092d\u181b\u65c3r\u0100du\u2807\u280dshar;\u694ahar;\u6966\u0100en\u2817\u2821rtneqq;\uc000\u2268\ufe00\xc5\u281e\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288e\u2893\u28a0\u28a5\u28a8\u28da\u28e2\u28e4\u0a83\u28f3\u2902Dot;\u623a\u0200clpr\u284e\u2852\u2863\u287dr\u803b\xaf\u40af\u0100et\u2857\u2859;\u6642\u0100;e\u285e\u285f\u6720se\xbb\u285f\u0100;s\u103b\u2868to\u0200;dlu\u103b\u2873\u2877\u287bow\xee\u048cef\xf4\u090f\xf0\u13d1ker;\u65ae\u0100oy\u2887\u288cmma;\u6a29;\u443cash;\u6014asuredangle\xbb\u1626r;\uc000\ud835\udd2ao;\u6127\u0180cdn\u28af\u28b4\u28c9ro\u803b\xb5\u40b5\u0200;acd\u1464\u28bd\u28c0\u28c4s\xf4\u16a7ir;\u6af0ot\u80bb\xb7\u01b5us\u0180;bd\u28d2\u1903\u28d3\u6212\u0100;u\u1d3c\u28d8;\u6a2a\u0163\u28de\u28e1p;\u6adb\xf2\u2212\xf0\u0a81\u0100dp\u28e9\u28eeels;\u62a7f;\uc000\ud835\udd5e\u0100ct\u28f8\u28fdr;\uc000\ud835\udcc2pos\xbb\u159d\u0180;lm\u2909\u290a\u290d\u43bctimap;\u62b8\u0c00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297e\u2989\u2998\u29da\u29e9\u2a15\u2a1a\u2a58\u2a5d\u2a83\u2a95\u2aa4\u2aa8\u2b04\u2b07\u2b44\u2b7f\u2bae\u2c34\u2c67\u2c7c\u2ce9\u0100gt\u2947\u294b;\uc000\u22d9\u0338\u0100;v\u2950\u0bcf\uc000\u226b\u20d2\u0180elt\u295a\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61cdightarrow;\u61ce;\uc000\u22d8\u0338\u0100;v\u297b\u0c47\uc000\u226a\u20d2ightarrow;\u61cf\u0100Dd\u298e\u2993ash;\u62afash;\u62ae\u0280bcnpt\u29a3\u29a7\u29ac\u29b1\u29ccla\xbb\u02deute;\u4144g;\uc000\u2220\u20d2\u0280;Eiop\u0d84\u29bc\u29c0\u29c5\u29c8;\uc000\u2a70\u0338d;\uc000\u224b\u0338s;\u4149ro\xf8\u0d84ur\u0100;a\u29d3\u29d4\u666el\u0100;s\u29d3\u0b38\u01f3\u29df\0\u29e3p\u80bb\xa0\u0b37mp\u0100;e\u0bf9\u0c00\u0280aeouy\u29f4\u29fe\u2a03\u2a10\u2a13\u01f0\u29f9\0\u29fb;\u6a43on;\u4148dil;\u4146ng\u0100;d\u0d7e\u2a0aot;\uc000\u2a6d\u0338p;\u6a42;\u443dash;\u6013\u0380;Aadqsx\u0b92\u2a29\u2a2d\u2a3b\u2a41\u2a45\u2a50rr;\u61d7r\u0100hr\u2a33\u2a36k;\u6924\u0100;o\u13f2\u13f0ot;\uc000\u2250\u0338ui\xf6\u0b63\u0100ei\u2a4a\u2a4ear;\u6928\xed\u0b98ist\u0100;s\u0ba0\u0b9fr;\uc000\ud835\udd2b\u0200Eest\u0bc5\u2a66\u2a79\u2a7c\u0180;qs\u0bbc\u2a6d\u0be1\u0180;qs\u0bbc\u0bc5\u2a74lan\xf4\u0be2i\xed\u0bea\u0100;r\u0bb6\u2a81\xbb\u0bb7\u0180Aap\u2a8a\u2a8d\u2a91r\xf2\u2971rr;\u61aear;\u6af2\u0180;sv\u0f8d\u2a9c\u0f8c\u0100;d\u2aa1\u2aa2\u62fc;\u62facy;\u445a\u0380AEadest\u2ab7\u2aba\u2abe\u2ac2\u2ac5\u2af6\u2af9r\xf2\u2966;\uc000\u2266\u0338rr;\u619ar;\u6025\u0200;fqs\u0c3b\u2ace\u2ae3\u2aeft\u0100ar\u2ad4\u2ad9rro\xf7\u2ac1ightarro\xf7\u2a90\u0180;qs\u0c3b\u2aba\u2aealan\xf4\u0c55\u0100;s\u0c55\u2af4\xbb\u0c36i\xed\u0c5d\u0100;r\u0c35\u2afei\u0100;e\u0c1a\u0c25i\xe4\u0d90\u0100pt\u2b0c\u2b11f;\uc000\ud835\udd5f\u8180\xac;in\u2b19\u2b1a\u2b36\u40acn\u0200;Edv\u0b89\u2b24\u2b28\u2b2e;\uc000\u22f9\u0338ot;\uc000\u22f5\u0338\u01e1\u0b89\u2b33\u2b35;\u62f7;\u62f6i\u0100;v\u0cb8\u2b3c\u01e1\u0cb8\u2b41\u2b43;\u62fe;\u62fd\u0180aor\u2b4b\u2b63\u2b69r\u0200;ast\u0b7b\u2b55\u2b5a\u2b5flle\xec\u0b7bl;\uc000\u2afd\u20e5;\uc000\u2202\u0338lint;\u6a14\u0180;ce\u0c92\u2b70\u2b73u\xe5\u0ca5\u0100;c\u0c98\u2b78\u0100;e\u0c92\u2b7d\xf1\u0c98\u0200Aait\u2b88\u2b8b\u2b9d\u2ba7r\xf2\u2988rr\u0180;cw\u2b94\u2b95\u2b99\u619b;\uc000\u2933\u0338;\uc000\u219d\u0338ghtarrow\xbb\u2b95ri\u0100;e\u0ccb\u0cd6\u0380chimpqu\u2bbd\u2bcd\u2bd9\u2b04\u0b78\u2be4\u2bef\u0200;cer\u0d32\u2bc6\u0d37\u2bc9u\xe5\u0d45;\uc000\ud835\udcc3ort\u026d\u2b05\0\0\u2bd6ar\xe1\u2b56m\u0100;e\u0d6e\u2bdf\u0100;q\u0d74\u0d73su\u0100bp\u2beb\u2bed\xe5\u0cf8\xe5\u0d0b\u0180bcp\u2bf6\u2c11\u2c19\u0200;Ees\u2bff\u2c00\u0d22\u2c04\u6284;\uc000\u2ac5\u0338et\u0100;e\u0d1b\u2c0bq\u0100;q\u0d23\u2c00c\u0100;e\u0d32\u2c17\xf1\u0d38\u0200;Ees\u2c22\u2c23\u0d5f\u2c27\u6285;\uc000\u2ac6\u0338et\u0100;e\u0d58\u2c2eq\u0100;q\u0d60\u2c23\u0200gilr\u2c3d\u2c3f\u2c45\u2c47\xec\u0bd7lde\u803b\xf1\u40f1\xe7\u0c43iangle\u0100lr\u2c52\u2c5ceft\u0100;e\u0c1a\u2c5a\xf1\u0c26ight\u0100;e\u0ccb\u2c65\xf1\u0cd7\u0100;m\u2c6c\u2c6d\u43bd\u0180;es\u2c74\u2c75\u2c79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2c8f\u2c94\u2c99\u2c9e\u2ca3\u2cb0\u2cb6\u2cd3\u2ce3ash;\u62adarr;\u6904p;\uc000\u224d\u20d2ash;\u62ac\u0100et\u2ca8\u2cac;\uc000\u2265\u20d2;\uc000>\u20d2nfin;\u69de\u0180Aet\u2cbd\u2cc1\u2cc5rr;\u6902;\uc000\u2264\u20d2\u0100;r\u2cca\u2ccd\uc000<\u20d2ie;\uc000\u22b4\u20d2\u0100At\u2cd8\u2cdcrr;\u6903rie;\uc000\u22b5\u20d2im;\uc000\u223c\u20d2\u0180Aan\u2cf0\u2cf4\u2d02rr;\u61d6r\u0100hr\u2cfa\u2cfdk;\u6923\u0100;o\u13e7\u13e5ear;\u6927\u1253\u1a95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2d2d\0\u2d38\u2d48\u2d60\u2d65\u2d72\u2d84\u1b07\0\0\u2d8d\u2dab\0\u2dc8\u2dce\0\u2ddc\u2e19\u2e2b\u2e3e\u2e43\u0100cs\u2d31\u1a97ute\u803b\xf3\u40f3\u0100iy\u2d3c\u2d45r\u0100;c\u1a9e\u2d42\u803b\xf4\u40f4;\u443e\u0280abios\u1aa0\u2d52\u2d57\u01c8\u2d5alac;\u4151v;\u6a38old;\u69bclig;\u4153\u0100cr\u2d69\u2d6dir;\u69bf;\uc000\ud835\udd2c\u036f\u2d79\0\0\u2d7c\0\u2d82n;\u42dbave\u803b\xf2\u40f2;\u69c1\u0100bm\u2d88\u0df4ar;\u69b5\u0200acit\u2d95\u2d98\u2da5\u2da8r\xf2\u1a80\u0100ir\u2d9d\u2da0r;\u69beoss;\u69bbn\xe5\u0e52;\u69c0\u0180aei\u2db1\u2db5\u2db9cr;\u414dga;\u43c9\u0180cdn\u2dc0\u2dc5\u01cdron;\u43bf;\u69b6pf;\uc000\ud835\udd60\u0180ael\u2dd4\u2dd7\u01d2r;\u69b7rp;\u69b9\u0380;adiosv\u2dea\u2deb\u2dee\u2e08\u2e0d\u2e10\u2e16\u6228r\xf2\u1a86\u0200;efm\u2df7\u2df8\u2e02\u2e05\u6a5dr\u0100;o\u2dfe\u2dff\u6134f\xbb\u2dff\u803b\xaa\u40aa\u803b\xba\u40bagof;\u62b6r;\u6a56lope;\u6a57;\u6a5b\u0180clo\u2e1f\u2e21\u2e27\xf2\u2e01ash\u803b\xf8\u40f8l;\u6298i\u016c\u2e2f\u2e34de\u803b\xf5\u40f5es\u0100;a\u01db\u2e3as;\u6a36ml\u803b\xf6\u40f6bar;\u633d\u0ae1\u2e5e\0\u2e7d\0\u2e80\u2e9d\0\u2ea2\u2eb9\0\0\u2ecb\u0e9c\0\u2f13\0\0\u2f2b\u2fbc\0\u2fc8r\u0200;ast\u0403\u2e67\u2e72\u0e85\u8100\xb6;l\u2e6d\u2e6e\u40b6le\xec\u0403\u0269\u2e78\0\0\u2e7bm;\u6af3;\u6afdy;\u443fr\u0280cimpt\u2e8b\u2e8f\u2e93\u1865\u2e97nt;\u4025od;\u402eil;\u6030enk;\u6031r;\uc000\ud835\udd2d\u0180imo\u2ea8\u2eb0\u2eb4\u0100;v\u2ead\u2eae\u43c6;\u43d5ma\xf4\u0a76ne;\u660e\u0180;tv\u2ebf\u2ec0\u2ec8\u43c0chfork\xbb\u1ffd;\u43d6\u0100au\u2ecf\u2edfn\u0100ck\u2ed5\u2eddk\u0100;h\u21f4\u2edb;\u610e\xf6\u21f4s\u0480;abcdemst\u2ef3\u2ef4\u1908\u2ef9\u2efd\u2f04\u2f06\u2f0a\u2f0e\u402bcir;\u6a23ir;\u6a22\u0100ou\u1d40\u2f02;\u6a25;\u6a72n\u80bb\xb1\u0e9dim;\u6a26wo;\u6a27\u0180ipu\u2f19\u2f20\u2f25ntint;\u6a15f;\uc000\ud835\udd61nd\u803b\xa3\u40a3\u0500;Eaceinosu\u0ec8\u2f3f\u2f41\u2f44\u2f47\u2f81\u2f89\u2f92\u2f7e\u2fb6;\u6ab3p;\u6ab7u\xe5\u0ed9\u0100;c\u0ece\u2f4c\u0300;acens\u0ec8\u2f59\u2f5f\u2f66\u2f68\u2f7eppro\xf8\u2f43urlye\xf1\u0ed9\xf1\u0ece\u0180aes\u2f6f\u2f76\u2f7approx;\u6ab9qq;\u6ab5im;\u62e8i\xed\u0edfme\u0100;s\u2f88\u0eae\u6032\u0180Eas\u2f78\u2f90\u2f7a\xf0\u2f75\u0180dfp\u0eec\u2f99\u2faf\u0180als\u2fa0\u2fa5\u2faalar;\u632eine;\u6312urf;\u6313\u0100;t\u0efb\u2fb4\xef\u0efbrel;\u62b0\u0100ci\u2fc0\u2fc5r;\uc000\ud835\udcc5;\u43c8ncsp;\u6008\u0300fiopsu\u2fda\u22e2\u2fdf\u2fe5\u2feb\u2ff1r;\uc000\ud835\udd2epf;\uc000\ud835\udd62rime;\u6057cr;\uc000\ud835\udcc6\u0180aeo\u2ff8\u3009\u3013t\u0100ei\u2ffe\u3005rnion\xf3\u06b0nt;\u6a16st\u0100;e\u3010\u3011\u403f\xf1\u1f19\xf4\u0f14\u0a80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30e0\u310e\u312b\u3147\u3162\u3172\u318e\u3206\u3215\u3224\u3229\u3258\u326e\u3272\u3290\u32b0\u32b7\u0180art\u3047\u304a\u304cr\xf2\u10b3\xf2\u03ddail;\u691car\xf2\u1c65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307f\u308f\u3094\u30cc\u0100eu\u306d\u3071;\uc000\u223d\u0331te;\u4155i\xe3\u116emptyv;\u69b3g\u0200;del\u0fd1\u3089\u308b\u308d;\u6992;\u69a5\xe5\u0fd1uo\u803b\xbb\u40bbr\u0580;abcfhlpstw\u0fdc\u30ac\u30af\u30b7\u30b9\u30bc\u30be\u30c0\u30c3\u30c7\u30cap;\u6975\u0100;f\u0fe0\u30b4s;\u6920;\u6933s;\u691e\xeb\u225d\xf0\u272el;\u6945im;\u6974l;\u61a3;\u619d\u0100ai\u30d1\u30d5il;\u691ao\u0100;n\u30db\u30dc\u6236al\xf3\u0f1e\u0180abr\u30e7\u30ea\u30eer\xf2\u17e5rk;\u6773\u0100ak\u30f3\u30fdc\u0100ek\u30f9\u30fb;\u407d;\u405d\u0100es\u3102\u3104;\u698cl\u0100du\u310a\u310c;\u698e;\u6990\u0200aeuy\u3117\u311c\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xec\u0ff2\xe2\u30fa;\u4440\u0200clqs\u3134\u3137\u313d\u3144a;\u6937dhar;\u6969uo\u0100;r\u020e\u020dh;\u61b3\u0180acg\u314e\u315f\u0f44l\u0200;ips\u0f78\u3158\u315b\u109cn\xe5\u10bbar\xf4\u0fa9t;\u65ad\u0180ilr\u3169\u1023\u316esht;\u697d;\uc000\ud835\udd2f\u0100ao\u3177\u3186r\u0100du\u317d\u317f\xbb\u047b\u0100;l\u1091\u3184;\u696c\u0100;v\u318b\u318c\u43c1;\u43f1\u0180gns\u3195\u31f9\u31fcht\u0300ahlrst\u31a4\u31b0\u31c2\u31d8\u31e4\u31eerrow\u0100;t\u0fdc\u31ada\xe9\u30c8arpoon\u0100du\u31bb\u31bfow\xee\u317ep\xbb\u1092eft\u0100ah\u31ca\u31d0rrow\xf3\u0feaarpoon\xf3\u0551ightarrows;\u61c9quigarro\xf7\u30cbhreetimes;\u62ccg;\u42daingdotse\xf1\u1f32\u0180ahm\u320d\u3210\u3213r\xf2\u0feaa\xf2\u0551;\u600foust\u0100;a\u321e\u321f\u63b1che\xbb\u321fmid;\u6aee\u0200abpt\u3232\u323d\u3240\u3252\u0100nr\u3237\u323ag;\u67edr;\u61fer\xeb\u1003\u0180afl\u3247\u324a\u324er;\u6986;\uc000\ud835\udd63us;\u6a2eimes;\u6a35\u0100ap\u325d\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6a12ar\xf2\u31e3\u0200achq\u327b\u3280\u10bc\u3285quo;\u603ar;\uc000\ud835\udcc7\u0100bu\u30fb\u328ao\u0100;r\u0214\u0213\u0180hir\u3297\u329b\u32a0re\xe5\u31f8mes;\u62cai\u0200;efl\u32aa\u1059\u1821\u32ab\u65b9tri;\u69celuhar;\u6968;\u611e\u0d61\u32d5\u32db\u32df\u332c\u3338\u3371\0\u337a\u33a4\0\0\u33ec\u33f0\0\u3428\u3448\u345a\u34ad\u34b1\u34ca\u34f1\0\u3616\0\0\u3633cute;\u415bqu\xef\u27ba\u0500;Eaceinpsy\u11ed\u32f3\u32f5\u32ff\u3302\u330b\u330f\u331f\u3326\u3329;\u6ab4\u01f0\u32fa\0\u32fc;\u6ab8on;\u4161u\xe5\u11fe\u0100;d\u11f3\u3307il;\u415frc;\u415d\u0180Eas\u3316\u3318\u331b;\u6ab6p;\u6abaim;\u62e9olint;\u6a13i\xed\u1204;\u4441ot\u0180;be\u3334\u1d47\u3335\u62c5;\u6a66\u0380Aacmstx\u3346\u334a\u3357\u335b\u335e\u3363\u336drr;\u61d8r\u0100hr\u3350\u3352\xeb\u2228\u0100;o\u0a36\u0a34t\u803b\xa7\u40a7i;\u403bwar;\u6929m\u0100in\u3369\xf0nu\xf3\xf1t;\u6736r\u0100;o\u3376\u2055\uc000\ud835\udd30\u0200acoy\u3382\u3386\u3391\u33a0rp;\u666f\u0100hy\u338b\u338fcy;\u4449;\u4448rt\u026d\u3399\0\0\u339ci\xe4\u1464ara\xec\u2e6f\u803b\xad\u40ad\u0100gm\u33a8\u33b4ma\u0180;fv\u33b1\u33b2\u33b2\u43c3;\u43c2\u0400;deglnpr\u12ab\u33c5\u33c9\u33ce\u33d6\u33de\u33e1\u33e6ot;\u6a6a\u0100;q\u12b1\u12b0\u0100;E\u33d3\u33d4\u6a9e;\u6aa0\u0100;E\u33db\u33dc\u6a9d;\u6a9fe;\u6246lus;\u6a24arr;\u6972ar\xf2\u113d\u0200aeit\u33f8\u3408\u340f\u3417\u0100ls\u33fd\u3404lsetm\xe9\u336ahp;\u6a33parsl;\u69e4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341c\u341d\u6aaa\u0100;s\u3422\u3423\u6aac;\uc000\u2aac\ufe00\u0180flp\u342e\u3433\u3442tcy;\u444c\u0100;b\u3438\u3439\u402f\u0100;a\u343e\u343f\u69c4r;\u633ff;\uc000\ud835\udd64a\u0100dr\u344d\u0402es\u0100;u\u3454\u3455\u6660it\xbb\u3455\u0180csu\u3460\u3479\u349f\u0100au\u3465\u346fp\u0100;s\u1188\u346b;\uc000\u2293\ufe00p\u0100;s\u11b4\u3475;\uc000\u2294\ufe00u\u0100bp\u347f\u348f\u0180;es\u1197\u119c\u3486et\u0100;e\u1197\u348d\xf1\u119d\u0180;es\u11a8\u11ad\u3496et\u0100;e\u11a8\u349d\xf1\u11ae\u0180;af\u117b\u34a6\u05b0r\u0165\u34ab\u05b1\xbb\u117car\xf2\u1148\u0200cemt\u34b9\u34be\u34c2\u34c5r;\uc000\ud835\udcc8tm\xee\xf1i\xec\u3415ar\xe6\u11be\u0100ar\u34ce\u34d5r\u0100;f\u34d4\u17bf\u6606\u0100an\u34da\u34edight\u0100ep\u34e3\u34eapsilo\xee\u1ee0h\xe9\u2eafs\xbb\u2852\u0280bcmnp\u34fb\u355e\u1209\u358b\u358e\u0480;Edemnprs\u350e\u350f\u3511\u3515\u351e\u3523\u352c\u3531\u3536\u6282;\u6ac5ot;\u6abd\u0100;d\u11da\u351aot;\u6ac3ult;\u6ac1\u0100Ee\u3528\u352a;\u6acb;\u628alus;\u6abfarr;\u6979\u0180eiu\u353d\u3552\u3555t\u0180;en\u350e\u3545\u354bq\u0100;q\u11da\u350feq\u0100;q\u352b\u3528m;\u6ac7\u0100bp\u355a\u355c;\u6ad5;\u6ad3c\u0300;acens\u11ed\u356c\u3572\u3579\u357b\u3326ppro\xf8\u32faurlye\xf1\u11fe\xf1\u11f3\u0180aes\u3582\u3588\u331bppro\xf8\u331aq\xf1\u3317g;\u666a\u0680123;Edehlmnps\u35a9\u35ac\u35af\u121c\u35b2\u35b4\u35c0\u35c9\u35d5\u35da\u35df\u35e8\u35ed\u803b\xb9\u40b9\u803b\xb2\u40b2\u803b\xb3\u40b3;\u6ac6\u0100os\u35b9\u35bct;\u6abeub;\u6ad8\u0100;d\u1222\u35c5ot;\u6ac4s\u0100ou\u35cf\u35d2l;\u67c9b;\u6ad7arr;\u697bult;\u6ac2\u0100Ee\u35e4\u35e6;\u6acc;\u628blus;\u6ac0\u0180eiu\u35f4\u3609\u360ct\u0180;en\u121c\u35fc\u3602q\u0100;q\u1222\u35b2eq\u0100;q\u35e7\u35e4m;\u6ac8\u0100bp\u3611\u3613;\u6ad4;\u6ad6\u0180Aan\u361c\u3620\u362drr;\u61d9r\u0100hr\u3626\u3628\xeb\u222e\u0100;o\u0a2b\u0a29war;\u692alig\u803b\xdf\u40df\u0be1\u3651\u365d\u3660\u12ce\u3673\u3679\0\u367e\u36c2\0\0\0\0\0\u36db\u3703\0\u3709\u376c\0\0\0\u3787\u0272\u3656\0\0\u365bget;\u6316;\u43c4r\xeb\u0e5f\u0180aey\u3666\u366b\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uc000\ud835\udd31\u0200eiko\u3686\u369d\u36b5\u36bc\u01f2\u368b\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369b\u43b8ym;\u43d1\u0100cn\u36a2\u36b2k\u0100as\u36a8\u36aeppro\xf8\u12c1im\xbb\u12acs\xf0\u129e\u0100as\u36ba\u36ae\xf0\u12c1rn\u803b\xfe\u40fe\u01ec\u031f\u36c6\u22e7es\u8180\xd7;bd\u36cf\u36d0\u36d8\u40d7\u0100;a\u190f\u36d5r;\u6a31;\u6a30\u0180eps\u36e1\u36e3\u3700\xe1\u2a4d\u0200;bcf\u0486\u36ec\u36f0\u36f4ot;\u6336ir;\u6af1\u0100;o\u36f9\u36fc\uc000\ud835\udd65rk;\u6ada\xe1\u3362rime;\u6034\u0180aip\u370f\u3712\u3764d\xe5\u1248\u0380adempst\u3721\u374d\u3740\u3751\u3757\u375c\u375fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65b5own\xbb\u1dbbeft\u0100;e\u2800\u373e\xf1\u092e;\u625cight\u0100;e\u32aa\u374b\xf1\u105aot;\u65ecinus;\u6a3alus;\u6a39b;\u69cdime;\u6a3bezium;\u63e2\u0180cht\u3772\u377d\u3781\u0100ry\u3777\u377b;\uc000\ud835\udcc9;\u4446cy;\u445brok;\u4167\u0100io\u378b\u378ex\xf4\u1777head\u0100lr\u3797\u37a0eftarro\xf7\u084fightarrow\xbb\u0f5d\u0900AHabcdfghlmoprstuw\u37d0\u37d3\u37d7\u37e4\u37f0\u37fc\u380e\u381c\u3823\u3834\u3851\u385d\u386b\u38a9\u38cc\u38d2\u38ea\u38f6r\xf2\u03edar;\u6963\u0100cr\u37dc\u37e2ute\u803b\xfa\u40fa\xf2\u1150r\u01e3\u37ea\0\u37edy;\u445eve;\u416d\u0100iy\u37f5\u37farc\u803b\xfb\u40fb;\u4443\u0180abh\u3803\u3806\u380br\xf2\u13adlac;\u4171a\xf2\u13c3\u0100ir\u3813\u3818sht;\u697e;\uc000\ud835\udd32rave\u803b\xf9\u40f9\u0161\u3827\u3831r\u0100lr\u382c\u382e\xbb\u0957\xbb\u1083lk;\u6580\u0100ct\u3839\u384d\u026f\u383f\0\0\u384arn\u0100;e\u3845\u3846\u631cr\xbb\u3846op;\u630fri;\u65f8\u0100al\u3856\u385acr;\u416b\u80bb\xa8\u0349\u0100gp\u3862\u3866on;\u4173f;\uc000\ud835\udd66\u0300adhlsu\u114b\u3878\u387d\u1372\u3891\u38a0own\xe1\u13b3arpoon\u0100lr\u3888\u388cef\xf4\u382digh\xf4\u382fi\u0180;hl\u3899\u389a\u389c\u43c5\xbb\u13faon\xbb\u389aparrows;\u61c8\u0180cit\u38b0\u38c4\u38c8\u026f\u38b6\0\0\u38c1rn\u0100;e\u38bc\u38bd\u631dr\xbb\u38bdop;\u630eng;\u416fri;\u65f9cr;\uc000\ud835\udcca\u0180dir\u38d9\u38dd\u38e2ot;\u62f0lde;\u4169i\u0100;f\u3730\u38e8\xbb\u1813\u0100am\u38ef\u38f2r\xf2\u38a8l\u803b\xfc\u40fcangle;\u69a7\u0780ABDacdeflnoprsz\u391c\u391f\u3929\u392d\u39b5\u39b8\u39bd\u39df\u39e4\u39e8\u39f3\u39f9\u39fd\u3a01\u3a20r\xf2\u03f7ar\u0100;v\u3926\u3927\u6ae8;\u6ae9as\xe8\u03e1\u0100nr\u3932\u3937grt;\u699c\u0380eknprst\u34e3\u3946\u394b\u3952\u395d\u3964\u3996app\xe1\u2415othin\xe7\u1e96\u0180hir\u34eb\u2ec8\u3959op\xf4\u2fb5\u0100;h\u13b7\u3962\xef\u318d\u0100iu\u3969\u396dgm\xe1\u33b3\u0100bp\u3972\u3984setneq\u0100;q\u397d\u3980\uc000\u228a\ufe00;\uc000\u2acb\ufe00setneq\u0100;q\u398f\u3992\uc000\u228b\ufe00;\uc000\u2acc\ufe00\u0100hr\u399b\u399fet\xe1\u369ciangle\u0100lr\u39aa\u39afeft\xbb\u0925ight\xbb\u1051y;\u4432ash\xbb\u1036\u0180elr\u39c4\u39d2\u39d7\u0180;be\u2dea\u39cb\u39cfar;\u62bbq;\u625alip;\u62ee\u0100bt\u39dc\u1468a\xf2\u1469r;\uc000\ud835\udd33tr\xe9\u39aesu\u0100bp\u39ef\u39f1\xbb\u0d1c\xbb\u0d59pf;\uc000\ud835\udd67ro\xf0\u0efbtr\xe9\u39b4\u0100cu\u3a06\u3a0br;\uc000\ud835\udccb\u0100bp\u3a10\u3a18n\u0100Ee\u3980\u3a16\xbb\u397en\u0100Ee\u3992\u3a1e\xbb\u3990igzag;\u699a\u0380cefoprs\u3a36\u3a3b\u3a56\u3a5b\u3a54\u3a61\u3a6airc;\u4175\u0100di\u3a40\u3a51\u0100bg\u3a45\u3a49ar;\u6a5fe\u0100;q\u15fa\u3a4f;\u6259erp;\u6118r;\uc000\ud835\udd34pf;\uc000\ud835\udd68\u0100;e\u1479\u3a66at\xe8\u1479cr;\uc000\ud835\udccc\u0ae3\u178e\u3a87\0\u3a8b\0\u3a90\u3a9b\0\0\u3a9d\u3aa8\u3aab\u3aaf\0\0\u3ac3\u3ace\0\u3ad8\u17dc\u17dftr\xe9\u17d1r;\uc000\ud835\udd35\u0100Aa\u3a94\u3a97r\xf2\u03c3r\xf2\u09f6;\u43be\u0100Aa\u3aa1\u3aa4r\xf2\u03b8r\xf2\u09eba\xf0\u2713is;\u62fb\u0180dpt\u17a4\u3ab5\u3abe\u0100fl\u3aba\u17a9;\uc000\ud835\udd69im\xe5\u17b2\u0100Aa\u3ac7\u3acar\xf2\u03cer\xf2\u0a01\u0100cq\u3ad2\u17b8r;\uc000\ud835\udccd\u0100pt\u17d6\u3adcr\xe9\u17d4\u0400acefiosu\u3af0\u3afd\u3b08\u3b0c\u3b11\u3b15\u3b1b\u3b21c\u0100uy\u3af6\u3afbte\u803b\xfd\u40fd;\u444f\u0100iy\u3b02\u3b06rc;\u4177;\u444bn\u803b\xa5\u40a5r;\uc000\ud835\udd36cy;\u4457pf;\uc000\ud835\udd6acr;\uc000\ud835\udcce\u0100cm\u3b26\u3b29y;\u444el\u803b\xff\u40ff\u0500acdefhiosw\u3b42\u3b48\u3b54\u3b58\u3b64\u3b69\u3b6d\u3b74\u3b7a\u3b80cute;\u417a\u0100ay\u3b4d\u3b52ron;\u417e;\u4437ot;\u417c\u0100et\u3b5d\u3b61tr\xe6\u155fa;\u43b6r;\uc000\ud835\udd37cy;\u4436grarr;\u61ddpf;\uc000\ud835\udd6bcr;\uc000\ud835\udccf\u0100jn\u3b85\u3b87;\u600dj;\u600c'.split("").map((e=>e.charCodeAt(0)))),Um=new Uint16Array("\u0200aglq\t\x15\x18\x1b\u026d\x0f\0\0\x12p;\u4026os;\u4027t;\u403et;\u403cuot;\u4022".split("").map((e=>e.charCodeAt(0))));const Hm=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),Gm=null!==(jm=String.fromCodePoint)&&void 0!==jm?jm:function(e){let t="";return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t+=String.fromCharCode(e),t};var Vm,qm,Wm,Zm,$m,Ym,Km,Xm,Jm;function Qm(e){return e>=Vm.ZERO&&e<=Vm.NINE}function ef(e){return e===Vm.EQUALS||function(e){return e>=Vm.UPPER_A&&e<=Vm.UPPER_Z||e>=Vm.LOWER_A&&e<=Vm.LOWER_Z||Qm(e)}(e)}!function(e){e[e.NUM=35]="NUM",e[e.SEMI=59]="SEMI",e[e.EQUALS=61]="EQUALS",e[e.ZERO=48]="ZERO",e[e.NINE=57]="NINE",e[e.LOWER_A=97]="LOWER_A",e[e.LOWER_F=102]="LOWER_F",e[e.LOWER_X=120]="LOWER_X",e[e.LOWER_Z=122]="LOWER_Z",e[e.UPPER_A=65]="UPPER_A",e[e.UPPER_F=70]="UPPER_F",e[e.UPPER_Z=90]="UPPER_Z"}(Vm||(Vm={})),function(e){e[e.VALUE_LENGTH=49152]="VALUE_LENGTH",e[e.BRANCH_LENGTH=16256]="BRANCH_LENGTH",e[e.JUMP_TABLE=127]="JUMP_TABLE"}(qm||(qm={})),function(e){e[e.EntityStart=0]="EntityStart",e[e.NumericStart=1]="NumericStart",e[e.NumericDecimal=2]="NumericDecimal",e[e.NumericHex=3]="NumericHex",e[e.NamedEntity=4]="NamedEntity"}(Wm||(Wm={})),function(e){e[e.Legacy=0]="Legacy",e[e.Strict=1]="Strict",e[e.Attribute=2]="Attribute"}(Zm||(Zm={}));class tf{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=Wm.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Zm.Strict}startEntity(e){this.decodeMode=e,this.state=Wm.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case Wm.EntityStart:return e.charCodeAt(t)===Vm.NUM?(this.state=Wm.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=Wm.NamedEntity,this.stateNamedEntity(e,t));case Wm.NumericStart:return this.stateNumericStart(e,t);case Wm.NumericDecimal:return this.stateNumericDecimal(e,t);case Wm.NumericHex:return this.stateNumericHex(e,t);case Wm.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(32|e.charCodeAt(t))===Vm.LOWER_X?(this.state=Wm.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=Wm.NumericDecimal,this.stateNumericDecimal(e,t))}addToNumericResult(e,t,n,r){if(t!==n){const o=n-t;this.result=this.result*Math.pow(r,o)+parseInt(e.substr(t,o),r),this.consumed+=o}}stateNumericHex(e,t){const n=t;for(;t=Vm.UPPER_A&&r<=Vm.UPPER_F||r>=Vm.LOWER_A&&r<=Vm.LOWER_F)))return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(o,3);t+=1}var r;return this.addToNumericResult(e,n,t,16),-1}stateNumericDecimal(e,t){const n=t;for(;t=55296&&e<=57343||e>1114111?65533:null!==(t=Hm.get(e))&&void 0!==t?t:e}(this.result),this.consumed),this.errors&&(e!==Vm.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){const{decodeTree:n}=this;let r=n[this.treeIndex],o=(r&qm.VALUE_LENGTH)>>14;for(;t>14,0!==o){if(a===Vm.SEMI)return this.emitNamedEntityData(this.treeIndex,o,this.consumed+this.excess);this.decodeMode!==Zm.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;const{result:t,decodeTree:n}=this,r=(n[t]&qm.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),null===(e=this.errors)||void 0===e||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,t,n){const{decodeTree:r}=this;return this.emitCodePoint(1===t?r[e]&~qm.VALUE_LENGTH:r[e+1],n),3===t&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case Wm.NamedEntity:return 0===this.result||this.decodeMode===Zm.Attribute&&this.result!==this.treeIndex?0:this.emitNotTerminatedNamedEntity();case Wm.NumericDecimal:return this.emitNumericEntity(0,2);case Wm.NumericHex:return this.emitNumericEntity(0,3);case Wm.NumericStart:return null===(e=this.errors)||void 0===e||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case Wm.EntityStart:return 0}}}function nf(e){let t="";const n=new tf(e,(e=>t+=Gm(e)));return function(e,r){let o=0,a=0;for(;(a=e.indexOf("&",a))>=0;){t+=e.slice(o,a),n.startEntity(r);const i=n.write(e,a+1);if(i<0){o=a+n.end();break}o=a+i,a=0===i?o+1:o}const i=t+e.slice(o);return t="",i}}function rf(e,t,n,r){const o=(t&qm.BRANCH_LENGTH)>>7,a=t&qm.JUMP_TABLE;if(0===o)return 0!==a&&r===a?n:-1;if(a){const t=r-a;return t<0||t>=o?-1:e[n+t]-1}let i=n,s=i+o-1;for(;i<=s;){const t=i+s>>>1,n=e[t];if(nr))return e[t+o];s=t-1}}return-1}nf(zm),nf(Um),function(e){e.HTML="http://www.w3.org/1999/xhtml",e.MATHML="http://www.w3.org/1998/Math/MathML",e.SVG="http://www.w3.org/2000/svg",e.XLINK="http://www.w3.org/1999/xlink",e.XML="http://www.w3.org/XML/1998/namespace",e.XMLNS="http://www.w3.org/2000/xmlns/"}($m=$m||($m={})),function(e){e.TYPE="type",e.ACTION="action",e.ENCODING="encoding",e.PROMPT="prompt",e.NAME="name",e.COLOR="color",e.FACE="face",e.SIZE="size"}(Ym=Ym||(Ym={})),function(e){e.NO_QUIRKS="no-quirks",e.QUIRKS="quirks",e.LIMITED_QUIRKS="limited-quirks"}(Km=Km||(Km={})),function(e){e.A="a",e.ADDRESS="address",e.ANNOTATION_XML="annotation-xml",e.APPLET="applet",e.AREA="area",e.ARTICLE="article",e.ASIDE="aside",e.B="b",e.BASE="base",e.BASEFONT="basefont",e.BGSOUND="bgsound",e.BIG="big",e.BLOCKQUOTE="blockquote",e.BODY="body",e.BR="br",e.BUTTON="button",e.CAPTION="caption",e.CENTER="center",e.CODE="code",e.COL="col",e.COLGROUP="colgroup",e.DD="dd",e.DESC="desc",e.DETAILS="details",e.DIALOG="dialog",e.DIR="dir",e.DIV="div",e.DL="dl",e.DT="dt",e.EM="em",e.EMBED="embed",e.FIELDSET="fieldset",e.FIGCAPTION="figcaption",e.FIGURE="figure",e.FONT="font",e.FOOTER="footer",e.FOREIGN_OBJECT="foreignObject",e.FORM="form",e.FRAME="frame",e.FRAMESET="frameset",e.H1="h1",e.H2="h2",e.H3="h3",e.H4="h4",e.H5="h5",e.H6="h6",e.HEAD="head",e.HEADER="header",e.HGROUP="hgroup",e.HR="hr",e.HTML="html",e.I="i",e.IMG="img",e.IMAGE="image",e.INPUT="input",e.IFRAME="iframe",e.KEYGEN="keygen",e.LABEL="label",e.LI="li",e.LINK="link",e.LISTING="listing",e.MAIN="main",e.MALIGNMARK="malignmark",e.MARQUEE="marquee",e.MATH="math",e.MENU="menu",e.META="meta",e.MGLYPH="mglyph",e.MI="mi",e.MO="mo",e.MN="mn",e.MS="ms",e.MTEXT="mtext",e.NAV="nav",e.NOBR="nobr",e.NOFRAMES="noframes",e.NOEMBED="noembed",e.NOSCRIPT="noscript",e.OBJECT="object",e.OL="ol",e.OPTGROUP="optgroup",e.OPTION="option",e.P="p",e.PARAM="param",e.PLAINTEXT="plaintext",e.PRE="pre",e.RB="rb",e.RP="rp",e.RT="rt",e.RTC="rtc",e.RUBY="ruby",e.S="s",e.SCRIPT="script",e.SECTION="section",e.SELECT="select",e.SOURCE="source",e.SMALL="small",e.SPAN="span",e.STRIKE="strike",e.STRONG="strong",e.STYLE="style",e.SUB="sub",e.SUMMARY="summary",e.SUP="sup",e.TABLE="table",e.TBODY="tbody",e.TEMPLATE="template",e.TEXTAREA="textarea",e.TFOOT="tfoot",e.TD="td",e.TH="th",e.THEAD="thead",e.TITLE="title",e.TR="tr",e.TRACK="track",e.TT="tt",e.U="u",e.UL="ul",e.SVG="svg",e.VAR="var",e.WBR="wbr",e.XMP="xmp"}(Xm=Xm||(Xm={})),function(e){e[e.UNKNOWN=0]="UNKNOWN",e[e.A=1]="A",e[e.ADDRESS=2]="ADDRESS",e[e.ANNOTATION_XML=3]="ANNOTATION_XML",e[e.APPLET=4]="APPLET",e[e.AREA=5]="AREA",e[e.ARTICLE=6]="ARTICLE",e[e.ASIDE=7]="ASIDE",e[e.B=8]="B",e[e.BASE=9]="BASE",e[e.BASEFONT=10]="BASEFONT",e[e.BGSOUND=11]="BGSOUND",e[e.BIG=12]="BIG",e[e.BLOCKQUOTE=13]="BLOCKQUOTE",e[e.BODY=14]="BODY",e[e.BR=15]="BR",e[e.BUTTON=16]="BUTTON",e[e.CAPTION=17]="CAPTION",e[e.CENTER=18]="CENTER",e[e.CODE=19]="CODE",e[e.COL=20]="COL",e[e.COLGROUP=21]="COLGROUP",e[e.DD=22]="DD",e[e.DESC=23]="DESC",e[e.DETAILS=24]="DETAILS",e[e.DIALOG=25]="DIALOG",e[e.DIR=26]="DIR",e[e.DIV=27]="DIV",e[e.DL=28]="DL",e[e.DT=29]="DT",e[e.EM=30]="EM",e[e.EMBED=31]="EMBED",e[e.FIELDSET=32]="FIELDSET",e[e.FIGCAPTION=33]="FIGCAPTION",e[e.FIGURE=34]="FIGURE",e[e.FONT=35]="FONT",e[e.FOOTER=36]="FOOTER",e[e.FOREIGN_OBJECT=37]="FOREIGN_OBJECT",e[e.FORM=38]="FORM",e[e.FRAME=39]="FRAME",e[e.FRAMESET=40]="FRAMESET",e[e.H1=41]="H1",e[e.H2=42]="H2",e[e.H3=43]="H3",e[e.H4=44]="H4",e[e.H5=45]="H5",e[e.H6=46]="H6",e[e.HEAD=47]="HEAD",e[e.HEADER=48]="HEADER",e[e.HGROUP=49]="HGROUP",e[e.HR=50]="HR",e[e.HTML=51]="HTML",e[e.I=52]="I",e[e.IMG=53]="IMG",e[e.IMAGE=54]="IMAGE",e[e.INPUT=55]="INPUT",e[e.IFRAME=56]="IFRAME",e[e.KEYGEN=57]="KEYGEN",e[e.LABEL=58]="LABEL",e[e.LI=59]="LI",e[e.LINK=60]="LINK",e[e.LISTING=61]="LISTING",e[e.MAIN=62]="MAIN",e[e.MALIGNMARK=63]="MALIGNMARK",e[e.MARQUEE=64]="MARQUEE",e[e.MATH=65]="MATH",e[e.MENU=66]="MENU",e[e.META=67]="META",e[e.MGLYPH=68]="MGLYPH",e[e.MI=69]="MI",e[e.MO=70]="MO",e[e.MN=71]="MN",e[e.MS=72]="MS",e[e.MTEXT=73]="MTEXT",e[e.NAV=74]="NAV",e[e.NOBR=75]="NOBR",e[e.NOFRAMES=76]="NOFRAMES",e[e.NOEMBED=77]="NOEMBED",e[e.NOSCRIPT=78]="NOSCRIPT",e[e.OBJECT=79]="OBJECT",e[e.OL=80]="OL",e[e.OPTGROUP=81]="OPTGROUP",e[e.OPTION=82]="OPTION",e[e.P=83]="P",e[e.PARAM=84]="PARAM",e[e.PLAINTEXT=85]="PLAINTEXT",e[e.PRE=86]="PRE",e[e.RB=87]="RB",e[e.RP=88]="RP",e[e.RT=89]="RT",e[e.RTC=90]="RTC",e[e.RUBY=91]="RUBY",e[e.S=92]="S",e[e.SCRIPT=93]="SCRIPT",e[e.SECTION=94]="SECTION",e[e.SELECT=95]="SELECT",e[e.SOURCE=96]="SOURCE",e[e.SMALL=97]="SMALL",e[e.SPAN=98]="SPAN",e[e.STRIKE=99]="STRIKE",e[e.STRONG=100]="STRONG",e[e.STYLE=101]="STYLE",e[e.SUB=102]="SUB",e[e.SUMMARY=103]="SUMMARY",e[e.SUP=104]="SUP",e[e.TABLE=105]="TABLE",e[e.TBODY=106]="TBODY",e[e.TEMPLATE=107]="TEMPLATE",e[e.TEXTAREA=108]="TEXTAREA",e[e.TFOOT=109]="TFOOT",e[e.TD=110]="TD",e[e.TH=111]="TH",e[e.THEAD=112]="THEAD",e[e.TITLE=113]="TITLE",e[e.TR=114]="TR",e[e.TRACK=115]="TRACK",e[e.TT=116]="TT",e[e.U=117]="U",e[e.UL=118]="UL",e[e.SVG=119]="SVG",e[e.VAR=120]="VAR",e[e.WBR=121]="WBR",e[e.XMP=122]="XMP"}(Jm=Jm||(Jm={}));const of=new Map([[Xm.A,Jm.A],[Xm.ADDRESS,Jm.ADDRESS],[Xm.ANNOTATION_XML,Jm.ANNOTATION_XML],[Xm.APPLET,Jm.APPLET],[Xm.AREA,Jm.AREA],[Xm.ARTICLE,Jm.ARTICLE],[Xm.ASIDE,Jm.ASIDE],[Xm.B,Jm.B],[Xm.BASE,Jm.BASE],[Xm.BASEFONT,Jm.BASEFONT],[Xm.BGSOUND,Jm.BGSOUND],[Xm.BIG,Jm.BIG],[Xm.BLOCKQUOTE,Jm.BLOCKQUOTE],[Xm.BODY,Jm.BODY],[Xm.BR,Jm.BR],[Xm.BUTTON,Jm.BUTTON],[Xm.CAPTION,Jm.CAPTION],[Xm.CENTER,Jm.CENTER],[Xm.CODE,Jm.CODE],[Xm.COL,Jm.COL],[Xm.COLGROUP,Jm.COLGROUP],[Xm.DD,Jm.DD],[Xm.DESC,Jm.DESC],[Xm.DETAILS,Jm.DETAILS],[Xm.DIALOG,Jm.DIALOG],[Xm.DIR,Jm.DIR],[Xm.DIV,Jm.DIV],[Xm.DL,Jm.DL],[Xm.DT,Jm.DT],[Xm.EM,Jm.EM],[Xm.EMBED,Jm.EMBED],[Xm.FIELDSET,Jm.FIELDSET],[Xm.FIGCAPTION,Jm.FIGCAPTION],[Xm.FIGURE,Jm.FIGURE],[Xm.FONT,Jm.FONT],[Xm.FOOTER,Jm.FOOTER],[Xm.FOREIGN_OBJECT,Jm.FOREIGN_OBJECT],[Xm.FORM,Jm.FORM],[Xm.FRAME,Jm.FRAME],[Xm.FRAMESET,Jm.FRAMESET],[Xm.H1,Jm.H1],[Xm.H2,Jm.H2],[Xm.H3,Jm.H3],[Xm.H4,Jm.H4],[Xm.H5,Jm.H5],[Xm.H6,Jm.H6],[Xm.HEAD,Jm.HEAD],[Xm.HEADER,Jm.HEADER],[Xm.HGROUP,Jm.HGROUP],[Xm.HR,Jm.HR],[Xm.HTML,Jm.HTML],[Xm.I,Jm.I],[Xm.IMG,Jm.IMG],[Xm.IMAGE,Jm.IMAGE],[Xm.INPUT,Jm.INPUT],[Xm.IFRAME,Jm.IFRAME],[Xm.KEYGEN,Jm.KEYGEN],[Xm.LABEL,Jm.LABEL],[Xm.LI,Jm.LI],[Xm.LINK,Jm.LINK],[Xm.LISTING,Jm.LISTING],[Xm.MAIN,Jm.MAIN],[Xm.MALIGNMARK,Jm.MALIGNMARK],[Xm.MARQUEE,Jm.MARQUEE],[Xm.MATH,Jm.MATH],[Xm.MENU,Jm.MENU],[Xm.META,Jm.META],[Xm.MGLYPH,Jm.MGLYPH],[Xm.MI,Jm.MI],[Xm.MO,Jm.MO],[Xm.MN,Jm.MN],[Xm.MS,Jm.MS],[Xm.MTEXT,Jm.MTEXT],[Xm.NAV,Jm.NAV],[Xm.NOBR,Jm.NOBR],[Xm.NOFRAMES,Jm.NOFRAMES],[Xm.NOEMBED,Jm.NOEMBED],[Xm.NOSCRIPT,Jm.NOSCRIPT],[Xm.OBJECT,Jm.OBJECT],[Xm.OL,Jm.OL],[Xm.OPTGROUP,Jm.OPTGROUP],[Xm.OPTION,Jm.OPTION],[Xm.P,Jm.P],[Xm.PARAM,Jm.PARAM],[Xm.PLAINTEXT,Jm.PLAINTEXT],[Xm.PRE,Jm.PRE],[Xm.RB,Jm.RB],[Xm.RP,Jm.RP],[Xm.RT,Jm.RT],[Xm.RTC,Jm.RTC],[Xm.RUBY,Jm.RUBY],[Xm.S,Jm.S],[Xm.SCRIPT,Jm.SCRIPT],[Xm.SECTION,Jm.SECTION],[Xm.SELECT,Jm.SELECT],[Xm.SOURCE,Jm.SOURCE],[Xm.SMALL,Jm.SMALL],[Xm.SPAN,Jm.SPAN],[Xm.STRIKE,Jm.STRIKE],[Xm.STRONG,Jm.STRONG],[Xm.STYLE,Jm.STYLE],[Xm.SUB,Jm.SUB],[Xm.SUMMARY,Jm.SUMMARY],[Xm.SUP,Jm.SUP],[Xm.TABLE,Jm.TABLE],[Xm.TBODY,Jm.TBODY],[Xm.TEMPLATE,Jm.TEMPLATE],[Xm.TEXTAREA,Jm.TEXTAREA],[Xm.TFOOT,Jm.TFOOT],[Xm.TD,Jm.TD],[Xm.TH,Jm.TH],[Xm.THEAD,Jm.THEAD],[Xm.TITLE,Jm.TITLE],[Xm.TR,Jm.TR],[Xm.TRACK,Jm.TRACK],[Xm.TT,Jm.TT],[Xm.U,Jm.U],[Xm.UL,Jm.UL],[Xm.SVG,Jm.SVG],[Xm.VAR,Jm.VAR],[Xm.WBR,Jm.WBR],[Xm.XMP,Jm.XMP]]);function af(e){var t;return null!==(t=of.get(e))&&void 0!==t?t:Jm.UNKNOWN}const sf=Jm,lf={[$m.HTML]:new Set([sf.ADDRESS,sf.APPLET,sf.AREA,sf.ARTICLE,sf.ASIDE,sf.BASE,sf.BASEFONT,sf.BGSOUND,sf.BLOCKQUOTE,sf.BODY,sf.BR,sf.BUTTON,sf.CAPTION,sf.CENTER,sf.COL,sf.COLGROUP,sf.DD,sf.DETAILS,sf.DIR,sf.DIV,sf.DL,sf.DT,sf.EMBED,sf.FIELDSET,sf.FIGCAPTION,sf.FIGURE,sf.FOOTER,sf.FORM,sf.FRAME,sf.FRAMESET,sf.H1,sf.H2,sf.H3,sf.H4,sf.H5,sf.H6,sf.HEAD,sf.HEADER,sf.HGROUP,sf.HR,sf.HTML,sf.IFRAME,sf.IMG,sf.INPUT,sf.LI,sf.LINK,sf.LISTING,sf.MAIN,sf.MARQUEE,sf.MENU,sf.META,sf.NAV,sf.NOEMBED,sf.NOFRAMES,sf.NOSCRIPT,sf.OBJECT,sf.OL,sf.P,sf.PARAM,sf.PLAINTEXT,sf.PRE,sf.SCRIPT,sf.SECTION,sf.SELECT,sf.SOURCE,sf.STYLE,sf.SUMMARY,sf.TABLE,sf.TBODY,sf.TD,sf.TEMPLATE,sf.TEXTAREA,sf.TFOOT,sf.TH,sf.THEAD,sf.TITLE,sf.TR,sf.TRACK,sf.UL,sf.WBR,sf.XMP]),[$m.MATHML]:new Set([sf.MI,sf.MO,sf.MN,sf.MS,sf.MTEXT,sf.ANNOTATION_XML]),[$m.SVG]:new Set([sf.TITLE,sf.FOREIGN_OBJECT,sf.DESC]),[$m.XLINK]:new Set,[$m.XML]:new Set,[$m.XMLNS]:new Set};function cf(e){return e===sf.H1||e===sf.H2||e===sf.H3||e===sf.H4||e===sf.H5||e===sf.H6}new Set([Xm.STYLE,Xm.SCRIPT,Xm.XMP,Xm.IFRAME,Xm.NOEMBED,Xm.NOFRAMES,Xm.PLAINTEXT]);const uf=new Map([[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);var df;!function(e){e[e.DATA=0]="DATA",e[e.RCDATA=1]="RCDATA",e[e.RAWTEXT=2]="RAWTEXT",e[e.SCRIPT_DATA=3]="SCRIPT_DATA",e[e.PLAINTEXT=4]="PLAINTEXT",e[e.TAG_OPEN=5]="TAG_OPEN",e[e.END_TAG_OPEN=6]="END_TAG_OPEN",e[e.TAG_NAME=7]="TAG_NAME",e[e.RCDATA_LESS_THAN_SIGN=8]="RCDATA_LESS_THAN_SIGN",e[e.RCDATA_END_TAG_OPEN=9]="RCDATA_END_TAG_OPEN",e[e.RCDATA_END_TAG_NAME=10]="RCDATA_END_TAG_NAME",e[e.RAWTEXT_LESS_THAN_SIGN=11]="RAWTEXT_LESS_THAN_SIGN",e[e.RAWTEXT_END_TAG_OPEN=12]="RAWTEXT_END_TAG_OPEN",e[e.RAWTEXT_END_TAG_NAME=13]="RAWTEXT_END_TAG_NAME",e[e.SCRIPT_DATA_LESS_THAN_SIGN=14]="SCRIPT_DATA_LESS_THAN_SIGN",e[e.SCRIPT_DATA_END_TAG_OPEN=15]="SCRIPT_DATA_END_TAG_OPEN",e[e.SCRIPT_DATA_END_TAG_NAME=16]="SCRIPT_DATA_END_TAG_NAME",e[e.SCRIPT_DATA_ESCAPE_START=17]="SCRIPT_DATA_ESCAPE_START",e[e.SCRIPT_DATA_ESCAPE_START_DASH=18]="SCRIPT_DATA_ESCAPE_START_DASH",e[e.SCRIPT_DATA_ESCAPED=19]="SCRIPT_DATA_ESCAPED",e[e.SCRIPT_DATA_ESCAPED_DASH=20]="SCRIPT_DATA_ESCAPED_DASH",e[e.SCRIPT_DATA_ESCAPED_DASH_DASH=21]="SCRIPT_DATA_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN=22]="SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_OPEN=23]="SCRIPT_DATA_ESCAPED_END_TAG_OPEN",e[e.SCRIPT_DATA_ESCAPED_END_TAG_NAME=24]="SCRIPT_DATA_ESCAPED_END_TAG_NAME",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_START=25]="SCRIPT_DATA_DOUBLE_ESCAPE_START",e[e.SCRIPT_DATA_DOUBLE_ESCAPED=26]="SCRIPT_DATA_DOUBLE_ESCAPED",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH=27]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH=28]="SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH",e[e.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN=29]="SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN",e[e.SCRIPT_DATA_DOUBLE_ESCAPE_END=30]="SCRIPT_DATA_DOUBLE_ESCAPE_END",e[e.BEFORE_ATTRIBUTE_NAME=31]="BEFORE_ATTRIBUTE_NAME",e[e.ATTRIBUTE_NAME=32]="ATTRIBUTE_NAME",e[e.AFTER_ATTRIBUTE_NAME=33]="AFTER_ATTRIBUTE_NAME",e[e.BEFORE_ATTRIBUTE_VALUE=34]="BEFORE_ATTRIBUTE_VALUE",e[e.ATTRIBUTE_VALUE_DOUBLE_QUOTED=35]="ATTRIBUTE_VALUE_DOUBLE_QUOTED",e[e.ATTRIBUTE_VALUE_SINGLE_QUOTED=36]="ATTRIBUTE_VALUE_SINGLE_QUOTED",e[e.ATTRIBUTE_VALUE_UNQUOTED=37]="ATTRIBUTE_VALUE_UNQUOTED",e[e.AFTER_ATTRIBUTE_VALUE_QUOTED=38]="AFTER_ATTRIBUTE_VALUE_QUOTED",e[e.SELF_CLOSING_START_TAG=39]="SELF_CLOSING_START_TAG",e[e.BOGUS_COMMENT=40]="BOGUS_COMMENT",e[e.MARKUP_DECLARATION_OPEN=41]="MARKUP_DECLARATION_OPEN",e[e.COMMENT_START=42]="COMMENT_START",e[e.COMMENT_START_DASH=43]="COMMENT_START_DASH",e[e.COMMENT=44]="COMMENT",e[e.COMMENT_LESS_THAN_SIGN=45]="COMMENT_LESS_THAN_SIGN",e[e.COMMENT_LESS_THAN_SIGN_BANG=46]="COMMENT_LESS_THAN_SIGN_BANG",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH=47]="COMMENT_LESS_THAN_SIGN_BANG_DASH",e[e.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH=48]="COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH",e[e.COMMENT_END_DASH=49]="COMMENT_END_DASH",e[e.COMMENT_END=50]="COMMENT_END",e[e.COMMENT_END_BANG=51]="COMMENT_END_BANG",e[e.DOCTYPE=52]="DOCTYPE",e[e.BEFORE_DOCTYPE_NAME=53]="BEFORE_DOCTYPE_NAME",e[e.DOCTYPE_NAME=54]="DOCTYPE_NAME",e[e.AFTER_DOCTYPE_NAME=55]="AFTER_DOCTYPE_NAME",e[e.AFTER_DOCTYPE_PUBLIC_KEYWORD=56]="AFTER_DOCTYPE_PUBLIC_KEYWORD",e[e.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER=57]="BEFORE_DOCTYPE_PUBLIC_IDENTIFIER",e[e.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED=58]="DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED=59]="DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_PUBLIC_IDENTIFIER=60]="AFTER_DOCTYPE_PUBLIC_IDENTIFIER",e[e.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS=61]="BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS",e[e.AFTER_DOCTYPE_SYSTEM_KEYWORD=62]="AFTER_DOCTYPE_SYSTEM_KEYWORD",e[e.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER=63]="BEFORE_DOCTYPE_SYSTEM_IDENTIFIER",e[e.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED=64]="DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED",e[e.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED=65]="DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED",e[e.AFTER_DOCTYPE_SYSTEM_IDENTIFIER=66]="AFTER_DOCTYPE_SYSTEM_IDENTIFIER",e[e.BOGUS_DOCTYPE=67]="BOGUS_DOCTYPE",e[e.CDATA_SECTION=68]="CDATA_SECTION",e[e.CDATA_SECTION_BRACKET=69]="CDATA_SECTION_BRACKET",e[e.CDATA_SECTION_END=70]="CDATA_SECTION_END",e[e.CHARACTER_REFERENCE=71]="CHARACTER_REFERENCE",e[e.NAMED_CHARACTER_REFERENCE=72]="NAMED_CHARACTER_REFERENCE",e[e.AMBIGUOUS_AMPERSAND=73]="AMBIGUOUS_AMPERSAND",e[e.NUMERIC_CHARACTER_REFERENCE=74]="NUMERIC_CHARACTER_REFERENCE",e[e.HEXADEMICAL_CHARACTER_REFERENCE_START=75]="HEXADEMICAL_CHARACTER_REFERENCE_START",e[e.HEXADEMICAL_CHARACTER_REFERENCE=76]="HEXADEMICAL_CHARACTER_REFERENCE",e[e.DECIMAL_CHARACTER_REFERENCE=77]="DECIMAL_CHARACTER_REFERENCE",e[e.NUMERIC_CHARACTER_REFERENCE_END=78]="NUMERIC_CHARACTER_REFERENCE_END"}(df||(df={}));const pf={DATA:df.DATA,RCDATA:df.RCDATA,RAWTEXT:df.RAWTEXT,SCRIPT_DATA:df.SCRIPT_DATA,PLAINTEXT:df.PLAINTEXT,CDATA_SECTION:df.CDATA_SECTION};function hf(e){return e>=Im.DIGIT_0&&e<=Im.DIGIT_9}function mf(e){return e>=Im.LATIN_CAPITAL_A&&e<=Im.LATIN_CAPITAL_Z}function ff(e){return function(e){return e>=Im.LATIN_SMALL_A&&e<=Im.LATIN_SMALL_Z}(e)||mf(e)}function gf(e){return ff(e)||hf(e)}function bf(e){return e>=Im.LATIN_CAPITAL_A&&e<=Im.LATIN_CAPITAL_F}function yf(e){return e>=Im.LATIN_SMALL_A&&e<=Im.LATIN_SMALL_F}function vf(e){return e+32}function Ef(e){return e===Im.SPACE||e===Im.LINE_FEED||e===Im.TABULATION||e===Im.FORM_FEED}function wf(e){return Ef(e)||e===Im.SOLIDUS||e===Im.GREATER_THAN_SIGN}class Sf{constructor(e,t){this.options=e,this.handler=t,this.paused=!1,this.inLoop=!1,this.inForeignNode=!1,this.lastStartTagName="",this.active=!1,this.state=df.DATA,this.returnState=df.DATA,this.charRefCode=-1,this.consumedAfterSnapshot=-1,this.currentCharacterToken=null,this.currentToken=null,this.currentAttr={name:"",value:""},this.preprocessor=new Bm(t),this.currentLocation=this.getCurrentLocation(-1)}_err(e){var t,n;null===(n=(t=this.handler).onParseError)||void 0===n||n.call(t,this.preprocessor.getError(e))}getCurrentLocation(e){return this.options.sourceCodeLocationInfo?{startLine:this.preprocessor.line,startCol:this.preprocessor.col-e,startOffset:this.preprocessor.offset-e,endLine:-1,endCol:-1,endOffset:-1}:null}_runParsingLoop(){if(!this.inLoop){for(this.inLoop=!0;this.active&&!this.paused;){this.consumedAfterSnapshot=0;const e=this._consume();this._ensureHibernation()||this._callState(e)}this.inLoop=!1}}pause(){this.paused=!0}resume(e){if(!this.paused)throw new Error("Parser was already resumed");this.paused=!1,this.inLoop||(this._runParsingLoop(),this.paused||null==e||e())}write(e,t,n){this.active=!0,this.preprocessor.write(e,t),this._runParsingLoop(),this.paused||null==n||n()}insertHtmlAtCurrentPos(e){this.active=!0,this.preprocessor.insertHtmlAtCurrentPos(e),this._runParsingLoop()}_ensureHibernation(){return!!this.preprocessor.endOfChunkHit&&(this._unconsume(this.consumedAfterSnapshot),this.active=!1,!0)}_consume(){return this.consumedAfterSnapshot++,this.preprocessor.advance()}_unconsume(e){this.consumedAfterSnapshot-=e,this.preprocessor.retreat(e)}_reconsumeInState(e,t){this.state=e,this._callState(t)}_advanceBy(e){this.consumedAfterSnapshot+=e;for(let t=0;t0&&this._err(Dm.endTagWithAttributes),e.selfClosing&&this._err(Dm.endTagWithTrailingSolidus),this.handler.onEndTag(e)),this.preprocessor.dropParsedChunk()}emitCurrentComment(e){this.prepareToken(e),this.handler.onComment(e),this.preprocessor.dropParsedChunk()}emitCurrentDoctype(e){this.prepareToken(e),this.handler.onDoctype(e),this.preprocessor.dropParsedChunk()}_emitCurrentCharacterToken(e){if(this.currentCharacterToken){switch(e&&this.currentCharacterToken.location&&(this.currentCharacterToken.location.endLine=e.startLine,this.currentCharacterToken.location.endCol=e.startCol,this.currentCharacterToken.location.endOffset=e.startOffset),this.currentCharacterToken.type){case Pm.CHARACTER:this.handler.onCharacter(this.currentCharacterToken);break;case Pm.NULL_CHARACTER:this.handler.onNullCharacter(this.currentCharacterToken);break;case Pm.WHITESPACE_CHARACTER:this.handler.onWhitespaceCharacter(this.currentCharacterToken)}this.currentCharacterToken=null}}_emitEOFToken(){const e=this.getCurrentLocation(0);e&&(e.endLine=e.startLine,e.endCol=e.startCol,e.endOffset=e.startOffset),this._emitCurrentCharacterToken(e),this.handler.onEof({type:Pm.EOF,location:e}),this.active=!1}_appendCharToCurrentCharacterToken(e,t){if(this.currentCharacterToken){if(this.currentCharacterToken.type===e)return void(this.currentCharacterToken.chars+=t);this.currentLocation=this.getCurrentLocation(0),this._emitCurrentCharacterToken(this.currentLocation),this.preprocessor.dropParsedChunk()}this._createCharacterToken(e,t)}_emitCodePoint(e){const t=Ef(e)?Pm.WHITESPACE_CHARACTER:e===Im.NULL?Pm.NULL_CHARACTER:Pm.CHARACTER;this._appendCharToCurrentCharacterToken(t,String.fromCodePoint(e))}_emitChars(e){this._appendCharToCurrentCharacterToken(Pm.CHARACTER,e)}_matchNamedCharacterReference(e){let t=null,n=0,r=!1;for(let a=0,i=zm[0];a>=0&&(a=rf(zm,i,a+1,e),!(a<0));e=this._consume()){n+=1,i=zm[a];const s=i&qm.VALUE_LENGTH;if(s){const i=(s>>14)-1;if(e!==Im.SEMICOLON&&this._isCharacterReferenceInAttribute()&&((o=this.preprocessor.peek(1))===Im.EQUALS_SIGN||gf(o))?(t=[Im.AMPERSAND],a+=i):(t=0===i?[zm[a]&~qm.VALUE_LENGTH]:1===i?[zm[++a]]:[zm[++a],zm[++a]],n=0,r=e!==Im.SEMICOLON),0===i){this._consume();break}}}var o;return this._unconsume(n),r&&!this.preprocessor.endOfChunkHit&&this._err(Dm.missingSemicolonAfterCharacterReference),this._unconsume(1),t}_isCharacterReferenceInAttribute(){return this.returnState===df.ATTRIBUTE_VALUE_DOUBLE_QUOTED||this.returnState===df.ATTRIBUTE_VALUE_SINGLE_QUOTED||this.returnState===df.ATTRIBUTE_VALUE_UNQUOTED}_flushCodePointConsumedAsCharacterReference(e){this._isCharacterReferenceInAttribute()?this.currentAttr.value+=String.fromCodePoint(e):this._emitCodePoint(e)}_callState(e){switch(this.state){case df.DATA:this._stateData(e);break;case df.RCDATA:this._stateRcdata(e);break;case df.RAWTEXT:this._stateRawtext(e);break;case df.SCRIPT_DATA:this._stateScriptData(e);break;case df.PLAINTEXT:this._statePlaintext(e);break;case df.TAG_OPEN:this._stateTagOpen(e);break;case df.END_TAG_OPEN:this._stateEndTagOpen(e);break;case df.TAG_NAME:this._stateTagName(e);break;case df.RCDATA_LESS_THAN_SIGN:this._stateRcdataLessThanSign(e);break;case df.RCDATA_END_TAG_OPEN:this._stateRcdataEndTagOpen(e);break;case df.RCDATA_END_TAG_NAME:this._stateRcdataEndTagName(e);break;case df.RAWTEXT_LESS_THAN_SIGN:this._stateRawtextLessThanSign(e);break;case df.RAWTEXT_END_TAG_OPEN:this._stateRawtextEndTagOpen(e);break;case df.RAWTEXT_END_TAG_NAME:this._stateRawtextEndTagName(e);break;case df.SCRIPT_DATA_LESS_THAN_SIGN:this._stateScriptDataLessThanSign(e);break;case df.SCRIPT_DATA_END_TAG_OPEN:this._stateScriptDataEndTagOpen(e);break;case df.SCRIPT_DATA_END_TAG_NAME:this._stateScriptDataEndTagName(e);break;case df.SCRIPT_DATA_ESCAPE_START:this._stateScriptDataEscapeStart(e);break;case df.SCRIPT_DATA_ESCAPE_START_DASH:this._stateScriptDataEscapeStartDash(e);break;case df.SCRIPT_DATA_ESCAPED:this._stateScriptDataEscaped(e);break;case df.SCRIPT_DATA_ESCAPED_DASH:this._stateScriptDataEscapedDash(e);break;case df.SCRIPT_DATA_ESCAPED_DASH_DASH:this._stateScriptDataEscapedDashDash(e);break;case df.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataEscapedLessThanSign(e);break;case df.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:this._stateScriptDataEscapedEndTagOpen(e);break;case df.SCRIPT_DATA_ESCAPED_END_TAG_NAME:this._stateScriptDataEscapedEndTagName(e);break;case df.SCRIPT_DATA_DOUBLE_ESCAPE_START:this._stateScriptDataDoubleEscapeStart(e);break;case df.SCRIPT_DATA_DOUBLE_ESCAPED:this._stateScriptDataDoubleEscaped(e);break;case df.SCRIPT_DATA_DOUBLE_ESCAPED_DASH:this._stateScriptDataDoubleEscapedDash(e);break;case df.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH:this._stateScriptDataDoubleEscapedDashDash(e);break;case df.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN:this._stateScriptDataDoubleEscapedLessThanSign(e);break;case df.SCRIPT_DATA_DOUBLE_ESCAPE_END:this._stateScriptDataDoubleEscapeEnd(e);break;case df.BEFORE_ATTRIBUTE_NAME:this._stateBeforeAttributeName(e);break;case df.ATTRIBUTE_NAME:this._stateAttributeName(e);break;case df.AFTER_ATTRIBUTE_NAME:this._stateAfterAttributeName(e);break;case df.BEFORE_ATTRIBUTE_VALUE:this._stateBeforeAttributeValue(e);break;case df.ATTRIBUTE_VALUE_DOUBLE_QUOTED:this._stateAttributeValueDoubleQuoted(e);break;case df.ATTRIBUTE_VALUE_SINGLE_QUOTED:this._stateAttributeValueSingleQuoted(e);break;case df.ATTRIBUTE_VALUE_UNQUOTED:this._stateAttributeValueUnquoted(e);break;case df.AFTER_ATTRIBUTE_VALUE_QUOTED:this._stateAfterAttributeValueQuoted(e);break;case df.SELF_CLOSING_START_TAG:this._stateSelfClosingStartTag(e);break;case df.BOGUS_COMMENT:this._stateBogusComment(e);break;case df.MARKUP_DECLARATION_OPEN:this._stateMarkupDeclarationOpen(e);break;case df.COMMENT_START:this._stateCommentStart(e);break;case df.COMMENT_START_DASH:this._stateCommentStartDash(e);break;case df.COMMENT:this._stateComment(e);break;case df.COMMENT_LESS_THAN_SIGN:this._stateCommentLessThanSign(e);break;case df.COMMENT_LESS_THAN_SIGN_BANG:this._stateCommentLessThanSignBang(e);break;case df.COMMENT_LESS_THAN_SIGN_BANG_DASH:this._stateCommentLessThanSignBangDash(e);break;case df.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:this._stateCommentLessThanSignBangDashDash(e);break;case df.COMMENT_END_DASH:this._stateCommentEndDash(e);break;case df.COMMENT_END:this._stateCommentEnd(e);break;case df.COMMENT_END_BANG:this._stateCommentEndBang(e);break;case df.DOCTYPE:this._stateDoctype(e);break;case df.BEFORE_DOCTYPE_NAME:this._stateBeforeDoctypeName(e);break;case df.DOCTYPE_NAME:this._stateDoctypeName(e);break;case df.AFTER_DOCTYPE_NAME:this._stateAfterDoctypeName(e);break;case df.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._stateAfterDoctypePublicKeyword(e);break;case df.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER:this._stateBeforeDoctypePublicIdentifier(e);break;case df.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypePublicIdentifierDoubleQuoted(e);break;case df.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypePublicIdentifierSingleQuoted(e);break;case df.AFTER_DOCTYPE_PUBLIC_IDENTIFIER:this._stateAfterDoctypePublicIdentifier(e);break;case df.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS:this._stateBetweenDoctypePublicAndSystemIdentifiers(e);break;case df.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._stateAfterDoctypeSystemKeyword(e);break;case df.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER:this._stateBeforeDoctypeSystemIdentifier(e);break;case df.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED:this._stateDoctypeSystemIdentifierDoubleQuoted(e);break;case df.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED:this._stateDoctypeSystemIdentifierSingleQuoted(e);break;case df.AFTER_DOCTYPE_SYSTEM_IDENTIFIER:this._stateAfterDoctypeSystemIdentifier(e);break;case df.BOGUS_DOCTYPE:this._stateBogusDoctype(e);break;case df.CDATA_SECTION:this._stateCdataSection(e);break;case df.CDATA_SECTION_BRACKET:this._stateCdataSectionBracket(e);break;case df.CDATA_SECTION_END:this._stateCdataSectionEnd(e);break;case df.CHARACTER_REFERENCE:this._stateCharacterReference(e);break;case df.NAMED_CHARACTER_REFERENCE:this._stateNamedCharacterReference(e);break;case df.AMBIGUOUS_AMPERSAND:this._stateAmbiguousAmpersand(e);break;case df.NUMERIC_CHARACTER_REFERENCE:this._stateNumericCharacterReference(e);break;case df.HEXADEMICAL_CHARACTER_REFERENCE_START:this._stateHexademicalCharacterReferenceStart(e);break;case df.HEXADEMICAL_CHARACTER_REFERENCE:this._stateHexademicalCharacterReference(e);break;case df.DECIMAL_CHARACTER_REFERENCE:this._stateDecimalCharacterReference(e);break;case df.NUMERIC_CHARACTER_REFERENCE_END:this._stateNumericCharacterReferenceEnd(e);break;default:throw new Error("Unknown state")}}_stateData(e){switch(e){case Im.LESS_THAN_SIGN:this.state=df.TAG_OPEN;break;case Im.AMPERSAND:this.returnState=df.DATA,this.state=df.CHARACTER_REFERENCE;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this._emitCodePoint(e);break;case Im.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateRcdata(e){switch(e){case Im.AMPERSAND:this.returnState=df.RCDATA,this.state=df.CHARACTER_REFERENCE;break;case Im.LESS_THAN_SIGN:this.state=df.RCDATA_LESS_THAN_SIGN;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this._emitChars(xm);break;case Im.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateRawtext(e){switch(e){case Im.LESS_THAN_SIGN:this.state=df.RAWTEXT_LESS_THAN_SIGN;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this._emitChars(xm);break;case Im.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateScriptData(e){switch(e){case Im.LESS_THAN_SIGN:this.state=df.SCRIPT_DATA_LESS_THAN_SIGN;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this._emitChars(xm);break;case Im.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_statePlaintext(e){switch(e){case Im.NULL:this._err(Dm.unexpectedNullCharacter),this._emitChars(xm);break;case Im.EOF:this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateTagOpen(e){if(ff(e))this._createStartTagToken(),this.state=df.TAG_NAME,this._stateTagName(e);else switch(e){case Im.EXCLAMATION_MARK:this.state=df.MARKUP_DECLARATION_OPEN;break;case Im.SOLIDUS:this.state=df.END_TAG_OPEN;break;case Im.QUESTION_MARK:this._err(Dm.unexpectedQuestionMarkInsteadOfTagName),this._createCommentToken(1),this.state=df.BOGUS_COMMENT,this._stateBogusComment(e);break;case Im.EOF:this._err(Dm.eofBeforeTagName),this._emitChars("<"),this._emitEOFToken();break;default:this._err(Dm.invalidFirstCharacterOfTagName),this._emitChars("<"),this.state=df.DATA,this._stateData(e)}}_stateEndTagOpen(e){if(ff(e))this._createEndTagToken(),this.state=df.TAG_NAME,this._stateTagName(e);else switch(e){case Im.GREATER_THAN_SIGN:this._err(Dm.missingEndTagName),this.state=df.DATA;break;case Im.EOF:this._err(Dm.eofBeforeTagName),this._emitChars("");break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this.state=df.SCRIPT_DATA_ESCAPED,this._emitChars(xm);break;case Im.EOF:this._err(Dm.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=df.SCRIPT_DATA_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataEscapedLessThanSign(e){e===Im.SOLIDUS?this.state=df.SCRIPT_DATA_ESCAPED_END_TAG_OPEN:ff(e)?(this._emitChars("<"),this.state=df.SCRIPT_DATA_DOUBLE_ESCAPE_START,this._stateScriptDataDoubleEscapeStart(e)):(this._emitChars("<"),this.state=df.SCRIPT_DATA_ESCAPED,this._stateScriptDataEscaped(e))}_stateScriptDataEscapedEndTagOpen(e){ff(e)?(this.state=df.SCRIPT_DATA_ESCAPED_END_TAG_NAME,this._stateScriptDataEscapedEndTagName(e)):(this._emitChars("");break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this.state=df.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitChars(xm);break;case Im.EOF:this._err(Dm.eofInScriptHtmlCommentLikeText),this._emitEOFToken();break;default:this.state=df.SCRIPT_DATA_DOUBLE_ESCAPED,this._emitCodePoint(e)}}_stateScriptDataDoubleEscapedLessThanSign(e){e===Im.SOLIDUS?(this.state=df.SCRIPT_DATA_DOUBLE_ESCAPE_END,this._emitChars("/")):(this.state=df.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateScriptDataDoubleEscapeEnd(e){if(this.preprocessor.startsWith(Nm,!1)&&wf(this.preprocessor.peek(6))){this._emitCodePoint(e);for(let e=0;e<6;e++)this._emitCodePoint(this._consume());this.state=df.SCRIPT_DATA_ESCAPED}else this._ensureHibernation()||(this.state=df.SCRIPT_DATA_DOUBLE_ESCAPED,this._stateScriptDataDoubleEscaped(e))}_stateBeforeAttributeName(e){switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.SOLIDUS:case Im.GREATER_THAN_SIGN:case Im.EOF:this.state=df.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break;case Im.EQUALS_SIGN:this._err(Dm.unexpectedEqualsSignBeforeAttributeName),this._createAttr("="),this.state=df.ATTRIBUTE_NAME;break;default:this._createAttr(""),this.state=df.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateAttributeName(e){switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:case Im.SOLIDUS:case Im.GREATER_THAN_SIGN:case Im.EOF:this._leaveAttrName(),this.state=df.AFTER_ATTRIBUTE_NAME,this._stateAfterAttributeName(e);break;case Im.EQUALS_SIGN:this._leaveAttrName(),this.state=df.BEFORE_ATTRIBUTE_VALUE;break;case Im.QUOTATION_MARK:case Im.APOSTROPHE:case Im.LESS_THAN_SIGN:this._err(Dm.unexpectedCharacterInAttributeName),this.currentAttr.name+=String.fromCodePoint(e);break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this.currentAttr.name+=xm;break;default:this.currentAttr.name+=String.fromCodePoint(mf(e)?vf(e):e)}}_stateAfterAttributeName(e){switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.SOLIDUS:this.state=df.SELF_CLOSING_START_TAG;break;case Im.EQUALS_SIGN:this.state=df.BEFORE_ATTRIBUTE_VALUE;break;case Im.GREATER_THAN_SIGN:this.state=df.DATA,this.emitCurrentTagToken();break;case Im.EOF:this._err(Dm.eofInTag),this._emitEOFToken();break;default:this._createAttr(""),this.state=df.ATTRIBUTE_NAME,this._stateAttributeName(e)}}_stateBeforeAttributeValue(e){switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.QUOTATION_MARK:this.state=df.ATTRIBUTE_VALUE_DOUBLE_QUOTED;break;case Im.APOSTROPHE:this.state=df.ATTRIBUTE_VALUE_SINGLE_QUOTED;break;case Im.GREATER_THAN_SIGN:this._err(Dm.missingAttributeValue),this.state=df.DATA,this.emitCurrentTagToken();break;default:this.state=df.ATTRIBUTE_VALUE_UNQUOTED,this._stateAttributeValueUnquoted(e)}}_stateAttributeValueDoubleQuoted(e){switch(e){case Im.QUOTATION_MARK:this.state=df.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Im.AMPERSAND:this.returnState=df.ATTRIBUTE_VALUE_DOUBLE_QUOTED,this.state=df.CHARACTER_REFERENCE;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this.currentAttr.value+=xm;break;case Im.EOF:this._err(Dm.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueSingleQuoted(e){switch(e){case Im.APOSTROPHE:this.state=df.AFTER_ATTRIBUTE_VALUE_QUOTED;break;case Im.AMPERSAND:this.returnState=df.ATTRIBUTE_VALUE_SINGLE_QUOTED,this.state=df.CHARACTER_REFERENCE;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this.currentAttr.value+=xm;break;case Im.EOF:this._err(Dm.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAttributeValueUnquoted(e){switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:this._leaveAttrValue(),this.state=df.BEFORE_ATTRIBUTE_NAME;break;case Im.AMPERSAND:this.returnState=df.ATTRIBUTE_VALUE_UNQUOTED,this.state=df.CHARACTER_REFERENCE;break;case Im.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=df.DATA,this.emitCurrentTagToken();break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this.currentAttr.value+=xm;break;case Im.QUOTATION_MARK:case Im.APOSTROPHE:case Im.LESS_THAN_SIGN:case Im.EQUALS_SIGN:case Im.GRAVE_ACCENT:this._err(Dm.unexpectedCharacterInUnquotedAttributeValue),this.currentAttr.value+=String.fromCodePoint(e);break;case Im.EOF:this._err(Dm.eofInTag),this._emitEOFToken();break;default:this.currentAttr.value+=String.fromCodePoint(e)}}_stateAfterAttributeValueQuoted(e){switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:this._leaveAttrValue(),this.state=df.BEFORE_ATTRIBUTE_NAME;break;case Im.SOLIDUS:this._leaveAttrValue(),this.state=df.SELF_CLOSING_START_TAG;break;case Im.GREATER_THAN_SIGN:this._leaveAttrValue(),this.state=df.DATA,this.emitCurrentTagToken();break;case Im.EOF:this._err(Dm.eofInTag),this._emitEOFToken();break;default:this._err(Dm.missingWhitespaceBetweenAttributes),this.state=df.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateSelfClosingStartTag(e){switch(e){case Im.GREATER_THAN_SIGN:this.currentToken.selfClosing=!0,this.state=df.DATA,this.emitCurrentTagToken();break;case Im.EOF:this._err(Dm.eofInTag),this._emitEOFToken();break;default:this._err(Dm.unexpectedSolidusInTag),this.state=df.BEFORE_ATTRIBUTE_NAME,this._stateBeforeAttributeName(e)}}_stateBogusComment(e){const t=this.currentToken;switch(e){case Im.GREATER_THAN_SIGN:this.state=df.DATA,this.emitCurrentComment(t);break;case Im.EOF:this.emitCurrentComment(t),this._emitEOFToken();break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),t.data+=xm;break;default:t.data+=String.fromCodePoint(e)}}_stateMarkupDeclarationOpen(e){this._consumeSequenceIfMatch("--",!0)?(this._createCommentToken(3),this.state=df.COMMENT_START):this._consumeSequenceIfMatch(km,!1)?(this.currentLocation=this.getCurrentLocation(8),this.state=df.DOCTYPE):this._consumeSequenceIfMatch(Om,!0)?this.inForeignNode?this.state=df.CDATA_SECTION:(this._err(Dm.cdataInHtmlContent),this._createCommentToken(8),this.currentToken.data="[CDATA[",this.state=df.BOGUS_COMMENT):this._ensureHibernation()||(this._err(Dm.incorrectlyOpenedComment),this._createCommentToken(2),this.state=df.BOGUS_COMMENT,this._stateBogusComment(e))}_stateCommentStart(e){switch(e){case Im.HYPHEN_MINUS:this.state=df.COMMENT_START_DASH;break;case Im.GREATER_THAN_SIGN:{this._err(Dm.abruptClosingOfEmptyComment),this.state=df.DATA;const e=this.currentToken;this.emitCurrentComment(e);break}default:this.state=df.COMMENT,this._stateComment(e)}}_stateCommentStartDash(e){const t=this.currentToken;switch(e){case Im.HYPHEN_MINUS:this.state=df.COMMENT_END;break;case Im.GREATER_THAN_SIGN:this._err(Dm.abruptClosingOfEmptyComment),this.state=df.DATA,this.emitCurrentComment(t);break;case Im.EOF:this._err(Dm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="-",this.state=df.COMMENT,this._stateComment(e)}}_stateComment(e){const t=this.currentToken;switch(e){case Im.HYPHEN_MINUS:this.state=df.COMMENT_END_DASH;break;case Im.LESS_THAN_SIGN:t.data+="<",this.state=df.COMMENT_LESS_THAN_SIGN;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),t.data+=xm;break;case Im.EOF:this._err(Dm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+=String.fromCodePoint(e)}}_stateCommentLessThanSign(e){const t=this.currentToken;switch(e){case Im.EXCLAMATION_MARK:t.data+="!",this.state=df.COMMENT_LESS_THAN_SIGN_BANG;break;case Im.LESS_THAN_SIGN:t.data+="<";break;default:this.state=df.COMMENT,this._stateComment(e)}}_stateCommentLessThanSignBang(e){e===Im.HYPHEN_MINUS?this.state=df.COMMENT_LESS_THAN_SIGN_BANG_DASH:(this.state=df.COMMENT,this._stateComment(e))}_stateCommentLessThanSignBangDash(e){e===Im.HYPHEN_MINUS?this.state=df.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH:(this.state=df.COMMENT_END_DASH,this._stateCommentEndDash(e))}_stateCommentLessThanSignBangDashDash(e){e!==Im.GREATER_THAN_SIGN&&e!==Im.EOF&&this._err(Dm.nestedComment),this.state=df.COMMENT_END,this._stateCommentEnd(e)}_stateCommentEndDash(e){const t=this.currentToken;switch(e){case Im.HYPHEN_MINUS:this.state=df.COMMENT_END;break;case Im.EOF:this._err(Dm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="-",this.state=df.COMMENT,this._stateComment(e)}}_stateCommentEnd(e){const t=this.currentToken;switch(e){case Im.GREATER_THAN_SIGN:this.state=df.DATA,this.emitCurrentComment(t);break;case Im.EXCLAMATION_MARK:this.state=df.COMMENT_END_BANG;break;case Im.HYPHEN_MINUS:t.data+="-";break;case Im.EOF:this._err(Dm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="--",this.state=df.COMMENT,this._stateComment(e)}}_stateCommentEndBang(e){const t=this.currentToken;switch(e){case Im.HYPHEN_MINUS:t.data+="--!",this.state=df.COMMENT_END_DASH;break;case Im.GREATER_THAN_SIGN:this._err(Dm.incorrectlyClosedComment),this.state=df.DATA,this.emitCurrentComment(t);break;case Im.EOF:this._err(Dm.eofInComment),this.emitCurrentComment(t),this._emitEOFToken();break;default:t.data+="--!",this.state=df.COMMENT,this._stateComment(e)}}_stateDoctype(e){switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:this.state=df.BEFORE_DOCTYPE_NAME;break;case Im.GREATER_THAN_SIGN:this.state=df.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e);break;case Im.EOF:{this._err(Dm.eofInDoctype),this._createDoctypeToken(null);const e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break}default:this._err(Dm.missingWhitespaceBeforeDoctypeName),this.state=df.BEFORE_DOCTYPE_NAME,this._stateBeforeDoctypeName(e)}}_stateBeforeDoctypeName(e){if(mf(e))this._createDoctypeToken(String.fromCharCode(vf(e))),this.state=df.DOCTYPE_NAME;else switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),this._createDoctypeToken(xm),this.state=df.DOCTYPE_NAME;break;case Im.GREATER_THAN_SIGN:{this._err(Dm.missingDoctypeName),this._createDoctypeToken(null);const e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this.state=df.DATA;break}case Im.EOF:{this._err(Dm.eofInDoctype),this._createDoctypeToken(null);const e=this.currentToken;e.forceQuirks=!0,this.emitCurrentDoctype(e),this._emitEOFToken();break}default:this._createDoctypeToken(String.fromCodePoint(e)),this.state=df.DOCTYPE_NAME}}_stateDoctypeName(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:this.state=df.AFTER_DOCTYPE_NAME;break;case Im.GREATER_THAN_SIGN:this.state=df.DATA,this.emitCurrentDoctype(t);break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),t.name+=xm;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.name+=String.fromCodePoint(mf(e)?vf(e):e)}}_stateAfterDoctypeName(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.GREATER_THAN_SIGN:this.state=df.DATA,this.emitCurrentDoctype(t);break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._consumeSequenceIfMatch("public",!1)?this.state=df.AFTER_DOCTYPE_PUBLIC_KEYWORD:this._consumeSequenceIfMatch("system",!1)?this.state=df.AFTER_DOCTYPE_SYSTEM_KEYWORD:this._ensureHibernation()||(this._err(Dm.invalidCharacterSequenceAfterDoctypeName),t.forceQuirks=!0,this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e))}}_stateAfterDoctypePublicKeyword(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:this.state=df.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;break;case Im.QUOTATION_MARK:this._err(Dm.missingWhitespaceAfterDoctypePublicKeyword),t.publicId="",this.state=df.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Im.APOSTROPHE:this._err(Dm.missingWhitespaceAfterDoctypePublicKeyword),t.publicId="",this.state=df.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Im.GREATER_THAN_SIGN:this._err(Dm.missingDoctypePublicIdentifier),t.forceQuirks=!0,this.state=df.DATA,this.emitCurrentDoctype(t);break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Dm.missingQuoteBeforeDoctypePublicIdentifier),t.forceQuirks=!0,this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypePublicIdentifier(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.QUOTATION_MARK:t.publicId="",this.state=df.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;break;case Im.APOSTROPHE:t.publicId="",this.state=df.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;break;case Im.GREATER_THAN_SIGN:this._err(Dm.missingDoctypePublicIdentifier),t.forceQuirks=!0,this.state=df.DATA,this.emitCurrentDoctype(t);break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Dm.missingQuoteBeforeDoctypePublicIdentifier),t.forceQuirks=!0,this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypePublicIdentifierDoubleQuoted(e){const t=this.currentToken;switch(e){case Im.QUOTATION_MARK:this.state=df.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),t.publicId+=xm;break;case Im.GREATER_THAN_SIGN:this._err(Dm.abruptDoctypePublicIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=df.DATA;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.publicId+=String.fromCodePoint(e)}}_stateDoctypePublicIdentifierSingleQuoted(e){const t=this.currentToken;switch(e){case Im.APOSTROPHE:this.state=df.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),t.publicId+=xm;break;case Im.GREATER_THAN_SIGN:this._err(Dm.abruptDoctypePublicIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=df.DATA;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.publicId+=String.fromCodePoint(e)}}_stateAfterDoctypePublicIdentifier(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:this.state=df.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;break;case Im.GREATER_THAN_SIGN:this.state=df.DATA,this.emitCurrentDoctype(t);break;case Im.QUOTATION_MARK:this._err(Dm.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Im.APOSTROPHE:this._err(Dm.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers),t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Dm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBetweenDoctypePublicAndSystemIdentifiers(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=df.DATA;break;case Im.QUOTATION_MARK:t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Im.APOSTROPHE:t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Dm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateAfterDoctypeSystemKeyword(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:this.state=df.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;break;case Im.QUOTATION_MARK:this._err(Dm.missingWhitespaceAfterDoctypeSystemKeyword),t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Im.APOSTROPHE:this._err(Dm.missingWhitespaceAfterDoctypeSystemKeyword),t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Im.GREATER_THAN_SIGN:this._err(Dm.missingDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=df.DATA,this.emitCurrentDoctype(t);break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Dm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBeforeDoctypeSystemIdentifier(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.QUOTATION_MARK:t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;break;case Im.APOSTROPHE:t.systemId="",this.state=df.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;break;case Im.GREATER_THAN_SIGN:this._err(Dm.missingDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=df.DATA,this.emitCurrentDoctype(t);break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Dm.missingQuoteBeforeDoctypeSystemIdentifier),t.forceQuirks=!0,this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateDoctypeSystemIdentifierDoubleQuoted(e){const t=this.currentToken;switch(e){case Im.QUOTATION_MARK:this.state=df.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),t.systemId+=xm;break;case Im.GREATER_THAN_SIGN:this._err(Dm.abruptDoctypeSystemIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=df.DATA;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.systemId+=String.fromCodePoint(e)}}_stateDoctypeSystemIdentifierSingleQuoted(e){const t=this.currentToken;switch(e){case Im.APOSTROPHE:this.state=df.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter),t.systemId+=xm;break;case Im.GREATER_THAN_SIGN:this._err(Dm.abruptDoctypeSystemIdentifier),t.forceQuirks=!0,this.emitCurrentDoctype(t),this.state=df.DATA;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:t.systemId+=String.fromCodePoint(e)}}_stateAfterDoctypeSystemIdentifier(e){const t=this.currentToken;switch(e){case Im.SPACE:case Im.LINE_FEED:case Im.TABULATION:case Im.FORM_FEED:break;case Im.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=df.DATA;break;case Im.EOF:this._err(Dm.eofInDoctype),t.forceQuirks=!0,this.emitCurrentDoctype(t),this._emitEOFToken();break;default:this._err(Dm.unexpectedCharacterAfterDoctypeSystemIdentifier),this.state=df.BOGUS_DOCTYPE,this._stateBogusDoctype(e)}}_stateBogusDoctype(e){const t=this.currentToken;switch(e){case Im.GREATER_THAN_SIGN:this.emitCurrentDoctype(t),this.state=df.DATA;break;case Im.NULL:this._err(Dm.unexpectedNullCharacter);break;case Im.EOF:this.emitCurrentDoctype(t),this._emitEOFToken()}}_stateCdataSection(e){switch(e){case Im.RIGHT_SQUARE_BRACKET:this.state=df.CDATA_SECTION_BRACKET;break;case Im.EOF:this._err(Dm.eofInCdata),this._emitEOFToken();break;default:this._emitCodePoint(e)}}_stateCdataSectionBracket(e){e===Im.RIGHT_SQUARE_BRACKET?this.state=df.CDATA_SECTION_END:(this._emitChars("]"),this.state=df.CDATA_SECTION,this._stateCdataSection(e))}_stateCdataSectionEnd(e){switch(e){case Im.GREATER_THAN_SIGN:this.state=df.DATA;break;case Im.RIGHT_SQUARE_BRACKET:this._emitChars("]");break;default:this._emitChars("]]"),this.state=df.CDATA_SECTION,this._stateCdataSection(e)}}_stateCharacterReference(e){e===Im.NUMBER_SIGN?this.state=df.NUMERIC_CHARACTER_REFERENCE:gf(e)?(this.state=df.NAMED_CHARACTER_REFERENCE,this._stateNamedCharacterReference(e)):(this._flushCodePointConsumedAsCharacterReference(Im.AMPERSAND),this._reconsumeInState(this.returnState,e))}_stateNamedCharacterReference(e){const t=this._matchNamedCharacterReference(e);if(this._ensureHibernation());else if(t){for(let e=0;e1114111)this._err(Dm.characterReferenceOutsideUnicodeRange),this.charRefCode=Im.REPLACEMENT_CHARACTER;else if(Rm(this.charRefCode))this._err(Dm.surrogateCharacterReference),this.charRefCode=Im.REPLACEMENT_CHARACTER;else if(Lm(this.charRefCode))this._err(Dm.noncharacterCharacterReference);else if(Mm(this.charRefCode)||this.charRefCode===Im.CARRIAGE_RETURN){this._err(Dm.controlCharacterReference);const e=uf.get(this.charRefCode);void 0!==e&&(this.charRefCode=e)}this._flushCodePointConsumedAsCharacterReference(this.charRefCode),this._reconsumeInState(this.returnState,e)}}const Af=new Set([Jm.DD,Jm.DT,Jm.LI,Jm.OPTGROUP,Jm.OPTION,Jm.P,Jm.RB,Jm.RP,Jm.RT,Jm.RTC]),_f=new Set([...Af,Jm.CAPTION,Jm.COLGROUP,Jm.TBODY,Jm.TD,Jm.TFOOT,Jm.TH,Jm.THEAD,Jm.TR]),Tf=new Map([[Jm.APPLET,$m.HTML],[Jm.CAPTION,$m.HTML],[Jm.HTML,$m.HTML],[Jm.MARQUEE,$m.HTML],[Jm.OBJECT,$m.HTML],[Jm.TABLE,$m.HTML],[Jm.TD,$m.HTML],[Jm.TEMPLATE,$m.HTML],[Jm.TH,$m.HTML],[Jm.ANNOTATION_XML,$m.MATHML],[Jm.MI,$m.MATHML],[Jm.MN,$m.MATHML],[Jm.MO,$m.MATHML],[Jm.MS,$m.MATHML],[Jm.MTEXT,$m.MATHML],[Jm.DESC,$m.SVG],[Jm.FOREIGN_OBJECT,$m.SVG],[Jm.TITLE,$m.SVG]]),Cf=[Jm.H1,Jm.H2,Jm.H3,Jm.H4,Jm.H5,Jm.H6],xf=[Jm.TR,Jm.TEMPLATE,Jm.HTML],If=[Jm.TBODY,Jm.TFOOT,Jm.THEAD,Jm.TEMPLATE,Jm.HTML],Of=[Jm.TABLE,Jm.TEMPLATE,Jm.HTML],kf=[Jm.TD,Jm.TH];class Nf{get currentTmplContentOrNode(){return this._isInTemplate()?this.treeAdapter.getTemplateContent(this.current):this.current}constructor(e,t,n){this.treeAdapter=t,this.handler=n,this.items=[],this.tagIDs=[],this.stackTop=-1,this.tmplCount=0,this.currentTagId=Jm.UNKNOWN,this.current=e}_indexOf(e){return this.items.lastIndexOf(e,this.stackTop)}_isInTemplate(){return this.currentTagId===Jm.TEMPLATE&&this.treeAdapter.getNamespaceURI(this.current)===$m.HTML}_updateCurrentElement(){this.current=this.items[this.stackTop],this.currentTagId=this.tagIDs[this.stackTop]}push(e,t){this.stackTop++,this.items[this.stackTop]=e,this.current=e,this.tagIDs[this.stackTop]=t,this.currentTagId=t,this._isInTemplate()&&this.tmplCount++,this.handler.onItemPush(e,t,!0)}pop(){const e=this.current;this.tmplCount>0&&this._isInTemplate()&&this.tmplCount--,this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!0)}replace(e,t){const n=this._indexOf(e);this.items[n]=t,n===this.stackTop&&(this.current=t)}insertAfter(e,t,n){const r=this._indexOf(e)+1;this.items.splice(r,0,t),this.tagIDs.splice(r,0,n),this.stackTop++,r===this.stackTop&&this._updateCurrentElement(),this.handler.onItemPush(this.current,this.currentTagId,r===this.stackTop)}popUntilTagNamePopped(e){let t=this.stackTop+1;do{t=this.tagIDs.lastIndexOf(e,t-1)}while(t>0&&this.treeAdapter.getNamespaceURI(this.items[t])!==$m.HTML);this.shortenToLength(t<0?0:t)}shortenToLength(e){for(;this.stackTop>=e;){const t=this.current;this.tmplCount>0&&this._isInTemplate()&&(this.tmplCount-=1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(t,this.stackTop=0;n--)if(e.includes(this.tagIDs[n])&&this.treeAdapter.getNamespaceURI(this.items[n])===t)return n;return-1}clearBackTo(e,t){const n=this._indexOfTagNames(e,t);this.shortenToLength(n+1)}clearBackToTableContext(){this.clearBackTo(Of,$m.HTML)}clearBackToTableBodyContext(){this.clearBackTo(If,$m.HTML)}clearBackToTableRowContext(){this.clearBackTo(xf,$m.HTML)}remove(e){const t=this._indexOf(e);t>=0&&(t===this.stackTop?this.pop():(this.items.splice(t,1),this.tagIDs.splice(t,1),this.stackTop--,this._updateCurrentElement(),this.handler.onItemPop(e,!1)))}tryPeekProperlyNestedBodyElement(){return this.stackTop>=1&&this.tagIDs[1]===Jm.BODY?this.items[1]:null}contains(e){return this._indexOf(e)>-1}getCommonAncestor(e){const t=this._indexOf(e)-1;return t>=0?this.items[t]:null}isRootHtmlElementCurrent(){return 0===this.stackTop&&this.tagIDs[0]===Jm.HTML}hasInScope(e){for(let t=this.stackTop;t>=0;t--){const n=this.tagIDs[t],r=this.treeAdapter.getNamespaceURI(this.items[t]);if(n===e&&r===$m.HTML)return!0;if(Tf.get(n)===r)return!1}return!0}hasNumberedHeaderInScope(){for(let e=this.stackTop;e>=0;e--){const t=this.tagIDs[e],n=this.treeAdapter.getNamespaceURI(this.items[e]);if(cf(t)&&n===$m.HTML)return!0;if(Tf.get(t)===n)return!1}return!0}hasInListItemScope(e){for(let t=this.stackTop;t>=0;t--){const n=this.tagIDs[t],r=this.treeAdapter.getNamespaceURI(this.items[t]);if(n===e&&r===$m.HTML)return!0;if((n===Jm.UL||n===Jm.OL)&&r===$m.HTML||Tf.get(n)===r)return!1}return!0}hasInButtonScope(e){for(let t=this.stackTop;t>=0;t--){const n=this.tagIDs[t],r=this.treeAdapter.getNamespaceURI(this.items[t]);if(n===e&&r===$m.HTML)return!0;if(n===Jm.BUTTON&&r===$m.HTML||Tf.get(n)===r)return!1}return!0}hasInTableScope(e){for(let t=this.stackTop;t>=0;t--){const n=this.tagIDs[t];if(this.treeAdapter.getNamespaceURI(this.items[t])===$m.HTML){if(n===e)return!0;if(n===Jm.TABLE||n===Jm.TEMPLATE||n===Jm.HTML)return!1}}return!0}hasTableBodyContextInTableScope(){for(let e=this.stackTop;e>=0;e--){const t=this.tagIDs[e];if(this.treeAdapter.getNamespaceURI(this.items[e])===$m.HTML){if(t===Jm.TBODY||t===Jm.THEAD||t===Jm.TFOOT)return!0;if(t===Jm.TABLE||t===Jm.HTML)return!1}}return!0}hasInSelectScope(e){for(let t=this.stackTop;t>=0;t--){const n=this.tagIDs[t];if(this.treeAdapter.getNamespaceURI(this.items[t])===$m.HTML){if(n===e)return!0;if(n!==Jm.OPTION&&n!==Jm.OPTGROUP)return!1}}return!0}generateImpliedEndTags(){for(;Af.has(this.currentTagId);)this.pop()}generateImpliedEndTagsThoroughly(){for(;_f.has(this.currentTagId);)this.pop()}generateImpliedEndTagsWithExclusion(e){for(;this.currentTagId!==e&&_f.has(this.currentTagId);)this.pop()}}var Rf;!function(e){e[e.Marker=0]="Marker",e[e.Element=1]="Element"}(Rf=Rf||(Rf={}));const Mf={type:Rf.Marker};class Lf{constructor(e){this.treeAdapter=e,this.entries=[],this.bookmark=null}_getNoahArkConditionCandidates(e,t){const n=[],r=t.length,o=this.treeAdapter.getTagName(e),a=this.treeAdapter.getNamespaceURI(e);for(let i=0;i[e.name,e.value])));let o=0;for(let a=0;ar.get(e.name)===e.value))&&(o+=1,o>=3&&this.entries.splice(e.idx,1))}}insertMarker(){this.entries.unshift(Mf)}pushElement(e,t){this._ensureNoahArkCondition(e),this.entries.unshift({type:Rf.Element,element:e,token:t})}insertElementAfterBookmark(e,t){const n=this.entries.indexOf(this.bookmark);this.entries.splice(n,0,{type:Rf.Element,element:e,token:t})}removeEntry(e){const t=this.entries.indexOf(e);t>=0&&this.entries.splice(t,1)}clearToLastMarker(){const e=this.entries.indexOf(Mf);e>=0?this.entries.splice(0,e+1):this.entries.length=0}getElementEntryInScopeWithTagName(e){const t=this.entries.find((t=>t.type===Rf.Marker||this.treeAdapter.getTagName(t.element)===e));return t&&t.type===Rf.Element?t:null}getElementEntry(e){return this.entries.find((t=>t.type===Rf.Element&&t.element===e))}}function Df(e){return{nodeName:"#text",value:e,parentNode:null}}const Pf={createDocument:()=>({nodeName:"#document",mode:Km.NO_QUIRKS,childNodes:[]}),createDocumentFragment:()=>({nodeName:"#document-fragment",childNodes:[]}),createElement:(e,t,n)=>({nodeName:e,tagName:e,attrs:n,namespaceURI:t,childNodes:[],parentNode:null}),createCommentNode:e=>({nodeName:"#comment",data:e,parentNode:null}),appendChild(e,t){e.childNodes.push(t),t.parentNode=e},insertBefore(e,t,n){const r=e.childNodes.indexOf(n);e.childNodes.splice(r,0,t),t.parentNode=e},setTemplateContent(e,t){e.content=t},getTemplateContent:e=>e.content,setDocumentType(e,t,n,r){const o=e.childNodes.find((e=>"#documentType"===e.nodeName));if(o)o.name=t,o.publicId=n,o.systemId=r;else{const o={nodeName:"#documentType",name:t,publicId:n,systemId:r,parentNode:null};Pf.appendChild(e,o)}},setDocumentMode(e,t){e.mode=t},getDocumentMode:e=>e.mode,detachNode(e){if(e.parentNode){const t=e.parentNode.childNodes.indexOf(e);e.parentNode.childNodes.splice(t,1),e.parentNode=null}},insertText(e,t){if(e.childNodes.length>0){const n=e.childNodes[e.childNodes.length-1];if(Pf.isTextNode(n))return void(n.value+=t)}Pf.appendChild(e,Df(t))},insertTextBefore(e,t,n){const r=e.childNodes[e.childNodes.indexOf(n)-1];r&&Pf.isTextNode(r)?r.value+=t:Pf.insertBefore(e,Df(t),n)},adoptAttributes(e,t){const n=new Set(e.attrs.map((e=>e.name)));for(let r=0;re.childNodes[0],getChildNodes:e=>e.childNodes,getParentNode:e=>e.parentNode,getAttrList:e=>e.attrs,getTagName:e=>e.tagName,getNamespaceURI:e=>e.namespaceURI,getTextNodeContent:e=>e.value,getCommentNodeContent:e=>e.data,getDocumentTypeNodeName:e=>e.name,getDocumentTypeNodePublicId:e=>e.publicId,getDocumentTypeNodeSystemId:e=>e.systemId,isTextNode:e=>"#text"===e.nodeName,isCommentNode:e=>"#comment"===e.nodeName,isDocumentTypeNode:e=>"#documentType"===e.nodeName,isElementNode:e=>Object.prototype.hasOwnProperty.call(e,"tagName"),setNodeSourceCodeLocation(e,t){e.sourceCodeLocation=t},getNodeSourceCodeLocation:e=>e.sourceCodeLocation,updateNodeSourceCodeLocation(e,t){e.sourceCodeLocation={...e.sourceCodeLocation,...t}}},Bf="html",Ff=["+//silmaril//dtd html pro v0r11 19970101//","-//as//dtd html 3.0 aswedit + extensions//","-//advasoft ltd//dtd html 3.0 aswedit + extensions//","-//ietf//dtd html 2.0 level 1//","-//ietf//dtd html 2.0 level 2//","-//ietf//dtd html 2.0 strict level 1//","-//ietf//dtd html 2.0 strict level 2//","-//ietf//dtd html 2.0 strict//","-//ietf//dtd html 2.0//","-//ietf//dtd html 2.1e//","-//ietf//dtd html 3.0//","-//ietf//dtd html 3.2 final//","-//ietf//dtd html 3.2//","-//ietf//dtd html 3//","-//ietf//dtd html level 0//","-//ietf//dtd html level 1//","-//ietf//dtd html level 2//","-//ietf//dtd html level 3//","-//ietf//dtd html strict level 0//","-//ietf//dtd html strict level 1//","-//ietf//dtd html strict level 2//","-//ietf//dtd html strict level 3//","-//ietf//dtd html strict//","-//ietf//dtd html//","-//metrius//dtd metrius presentational//","-//microsoft//dtd internet explorer 2.0 html strict//","-//microsoft//dtd internet explorer 2.0 html//","-//microsoft//dtd internet explorer 2.0 tables//","-//microsoft//dtd internet explorer 3.0 html strict//","-//microsoft//dtd internet explorer 3.0 html//","-//microsoft//dtd internet explorer 3.0 tables//","-//netscape comm. corp.//dtd html//","-//netscape comm. corp.//dtd strict html//","-//o'reilly and associates//dtd html 2.0//","-//o'reilly and associates//dtd html extended 1.0//","-//o'reilly and associates//dtd html extended relaxed 1.0//","-//sq//dtd html 2.0 hotmetal + extensions//","-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//","-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//","-//spyglass//dtd html 2.0 extended//","-//sun microsystems corp.//dtd hotjava html//","-//sun microsystems corp.//dtd hotjava strict html//","-//w3c//dtd html 3 1995-03-24//","-//w3c//dtd html 3.2 draft//","-//w3c//dtd html 3.2 final//","-//w3c//dtd html 3.2//","-//w3c//dtd html 3.2s draft//","-//w3c//dtd html 4.0 frameset//","-//w3c//dtd html 4.0 transitional//","-//w3c//dtd html experimental 19960712//","-//w3c//dtd html experimental 970421//","-//w3c//dtd w3 html//","-//w3o//dtd w3 html 3.0//","-//webtechs//dtd mozilla html 2.0//","-//webtechs//dtd mozilla html//"],jf=[...Ff,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"],zf=new Set(["-//w3o//dtd w3 html strict 3.0//en//","-/w3c/dtd html 4.0 transitional/en","html"]),Uf=["-//w3c//dtd xhtml 1.0 frameset//","-//w3c//dtd xhtml 1.0 transitional//"],Hf=[...Uf,"-//w3c//dtd html 4.01 frameset//","-//w3c//dtd html 4.01 transitional//"];function Gf(e,t){return t.some((t=>e.startsWith(t)))}const Vf="text/html",qf="application/xhtml+xml",Wf="definitionurl",Zf="definitionURL",$f=new Map(["attributeName","attributeType","baseFrequency","baseProfile","calcMode","clipPathUnits","diffuseConstant","edgeMode","filterUnits","glyphRef","gradientTransform","gradientUnits","kernelMatrix","kernelUnitLength","keyPoints","keySplines","keyTimes","lengthAdjust","limitingConeAngle","markerHeight","markerUnits","markerWidth","maskContentUnits","maskUnits","numOctaves","pathLength","patternContentUnits","patternTransform","patternUnits","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","refX","refY","repeatCount","repeatDur","requiredExtensions","requiredFeatures","specularConstant","specularExponent","spreadMethod","startOffset","stdDeviation","stitchTiles","surfaceScale","systemLanguage","tableValues","targetX","targetY","textLength","viewBox","viewTarget","xChannelSelector","yChannelSelector","zoomAndPan"].map((e=>[e.toLowerCase(),e]))),Yf=new Map([["xlink:actuate",{prefix:"xlink",name:"actuate",namespace:$m.XLINK}],["xlink:arcrole",{prefix:"xlink",name:"arcrole",namespace:$m.XLINK}],["xlink:href",{prefix:"xlink",name:"href",namespace:$m.XLINK}],["xlink:role",{prefix:"xlink",name:"role",namespace:$m.XLINK}],["xlink:show",{prefix:"xlink",name:"show",namespace:$m.XLINK}],["xlink:title",{prefix:"xlink",name:"title",namespace:$m.XLINK}],["xlink:type",{prefix:"xlink",name:"type",namespace:$m.XLINK}],["xml:base",{prefix:"xml",name:"base",namespace:$m.XML}],["xml:lang",{prefix:"xml",name:"lang",namespace:$m.XML}],["xml:space",{prefix:"xml",name:"space",namespace:$m.XML}],["xmlns",{prefix:"",name:"xmlns",namespace:$m.XMLNS}],["xmlns:xlink",{prefix:"xmlns",name:"xlink",namespace:$m.XMLNS}]]),Kf=new Map(["altGlyph","altGlyphDef","altGlyphItem","animateColor","animateMotion","animateTransform","clipPath","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","foreignObject","glyphRef","linearGradient","radialGradient","textPath"].map((e=>[e.toLowerCase(),e]))),Xf=new Set([Jm.B,Jm.BIG,Jm.BLOCKQUOTE,Jm.BODY,Jm.BR,Jm.CENTER,Jm.CODE,Jm.DD,Jm.DIV,Jm.DL,Jm.DT,Jm.EM,Jm.EMBED,Jm.H1,Jm.H2,Jm.H3,Jm.H4,Jm.H5,Jm.H6,Jm.HEAD,Jm.HR,Jm.I,Jm.IMG,Jm.LI,Jm.LISTING,Jm.MENU,Jm.META,Jm.NOBR,Jm.OL,Jm.P,Jm.PRE,Jm.RUBY,Jm.S,Jm.SMALL,Jm.SPAN,Jm.STRONG,Jm.STRIKE,Jm.SUB,Jm.SUP,Jm.TABLE,Jm.TT,Jm.U,Jm.UL,Jm.VAR]);function Jf(e){for(let t=0;t2&&void 0!==arguments[2]?arguments[2]:null,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;this.fragmentContext=n,this.scriptHandler=r,this.currentToken=null,this.stopped=!1,this.insertionMode=og.INITIAL,this.originalInsertionMode=og.INITIAL,this.headElement=null,this.formElement=null,this.currentNotInHTML=!1,this.tmplInsertionModeStack=[],this.pendingCharacterTokens=[],this.hasNonWhitespacePendingCharacterToken=!1,this.framesetOk=!0,this.skipNextNewLine=!1,this.fosterParentingEnabled=!1,this.options={...sg,...e},this.treeAdapter=this.options.treeAdapter,this.onParseError=this.options.onParseError,this.onParseError&&(this.options.sourceCodeLocationInfo=!0),this.document=null!=t?t:this.treeAdapter.createDocument(),this.tokenizer=new Sf(this.options,this),this.activeFormattingElements=new Lf(this.treeAdapter),this.fragmentContextID=n?af(this.treeAdapter.getTagName(n)):Jm.UNKNOWN,this._setContextModes(null!=n?n:this.document,this.fragmentContextID),this.openElements=new Nf(this.document,this.treeAdapter,this)}static parse(e,t){const n=new this(t);return n.tokenizer.write(e,!0),n.document}static getFragmentParser(e,t){const n={...sg,...t};null!=e||(e=n.treeAdapter.createElement(Xm.TEMPLATE,$m.HTML,[]));const r=n.treeAdapter.createElement("documentmock",$m.HTML,[]),o=new this(n,r,e);return o.fragmentContextID===Jm.TEMPLATE&&o.tmplInsertionModeStack.unshift(og.IN_TEMPLATE),o._initTokenizerForFragmentParsing(),o._insertFakeRootElement(),o._resetInsertionMode(),o._findFormInFragmentContext(),o}getFragment(){const e=this.treeAdapter.getFirstChild(this.document),t=this.treeAdapter.createDocumentFragment();return this._adoptNodes(e,t),t}_err(e,t,n){var r;if(!this.onParseError)return;const o=null!==(r=e.location)&&void 0!==r?r:ag,a={code:t,startLine:o.startLine,startCol:o.startCol,startOffset:o.startOffset,endLine:n?o.startLine:o.endLine,endCol:n?o.startCol:o.endCol,endOffset:n?o.startOffset:o.endOffset};this.onParseError(a)}onItemPush(e,t,n){var r,o;null===(o=(r=this.treeAdapter).onItemPush)||void 0===o||o.call(r,e),n&&this.openElements.stackTop>0&&this._setContextModes(e,t)}onItemPop(e,t){var n,r;if(this.options.sourceCodeLocationInfo&&this._setEndLocation(e,this.currentToken),null===(r=(n=this.treeAdapter).onItemPop)||void 0===r||r.call(n,e,this.openElements.current),t){let e,t;0===this.openElements.stackTop&&this.fragmentContext?(e=this.fragmentContext,t=this.fragmentContextID):({current:e,currentTagId:t}=this.openElements),this._setContextModes(e,t)}}_setContextModes(e,t){const n=e===this.document||this.treeAdapter.getNamespaceURI(e)===$m.HTML;this.currentNotInHTML=!n,this.tokenizer.inForeignNode=!n&&!this._isIntegrationPoint(t,e)}_switchToTextParsing(e,t){this._insertElement(e,$m.HTML),this.tokenizer.state=t,this.originalInsertionMode=this.insertionMode,this.insertionMode=og.TEXT}switchToPlaintextParsing(){this.insertionMode=og.TEXT,this.originalInsertionMode=og.IN_BODY,this.tokenizer.state=pf.PLAINTEXT}_getAdjustedCurrentElement(){return 0===this.openElements.stackTop&&this.fragmentContext?this.fragmentContext:this.openElements.current}_findFormInFragmentContext(){let e=this.fragmentContext;for(;e;){if(this.treeAdapter.getTagName(e)===Xm.FORM){this.formElement=e;break}e=this.treeAdapter.getParentNode(e)}}_initTokenizerForFragmentParsing(){if(this.fragmentContext&&this.treeAdapter.getNamespaceURI(this.fragmentContext)===$m.HTML)switch(this.fragmentContextID){case Jm.TITLE:case Jm.TEXTAREA:this.tokenizer.state=pf.RCDATA;break;case Jm.STYLE:case Jm.XMP:case Jm.IFRAME:case Jm.NOEMBED:case Jm.NOFRAMES:case Jm.NOSCRIPT:this.tokenizer.state=pf.RAWTEXT;break;case Jm.SCRIPT:this.tokenizer.state=pf.SCRIPT_DATA;break;case Jm.PLAINTEXT:this.tokenizer.state=pf.PLAINTEXT}}_setDocumentType(e){const t=e.name||"",n=e.publicId||"",r=e.systemId||"";if(this.treeAdapter.setDocumentType(this.document,t,n,r),e.location){const t=this.treeAdapter.getChildNodes(this.document).find((e=>this.treeAdapter.isDocumentTypeNode(e)));t&&this.treeAdapter.setNodeSourceCodeLocation(t,e.location)}}_attachElementToTree(e,t){if(this.options.sourceCodeLocationInfo){const n=t&&{...t,startTag:t};this.treeAdapter.setNodeSourceCodeLocation(e,n)}if(this._shouldFosterParentOnInsertion())this._fosterParentElement(e);else{const t=this.openElements.currentTmplContentOrNode;this.treeAdapter.appendChild(t,e)}}_appendElement(e,t){const n=this.treeAdapter.createElement(e.tagName,t,e.attrs);this._attachElementToTree(n,e.location)}_insertElement(e,t){const n=this.treeAdapter.createElement(e.tagName,t,e.attrs);this._attachElementToTree(n,e.location),this.openElements.push(n,e.tagID)}_insertFakeElement(e,t){const n=this.treeAdapter.createElement(e,$m.HTML,[]);this._attachElementToTree(n,null),this.openElements.push(n,t)}_insertTemplate(e){const t=this.treeAdapter.createElement(e.tagName,$m.HTML,e.attrs),n=this.treeAdapter.createDocumentFragment();this.treeAdapter.setTemplateContent(t,n),this._attachElementToTree(t,e.location),this.openElements.push(t,e.tagID),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,null)}_insertFakeRootElement(){const e=this.treeAdapter.createElement(Xm.HTML,$m.HTML,[]);this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(e,null),this.treeAdapter.appendChild(this.openElements.current,e),this.openElements.push(e,Jm.HTML)}_appendCommentNode(e,t){const n=this.treeAdapter.createCommentNode(e.data);this.treeAdapter.appendChild(t,n),this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(n,e.location)}_insertCharacters(e){let t,n;if(this._shouldFosterParentOnInsertion()?(({parent:t,beforeElement:n}=this._findFosterParentingLocation()),n?this.treeAdapter.insertTextBefore(t,e.chars,n):this.treeAdapter.insertText(t,e.chars)):(t=this.openElements.currentTmplContentOrNode,this.treeAdapter.insertText(t,e.chars)),!e.location)return;const r=this.treeAdapter.getChildNodes(t),o=n?r.lastIndexOf(n):r.length,a=r[o-1];if(this.treeAdapter.getNodeSourceCodeLocation(a)){const{endLine:t,endCol:n,endOffset:r}=e.location;this.treeAdapter.updateNodeSourceCodeLocation(a,{endLine:t,endCol:n,endOffset:r})}else this.options.sourceCodeLocationInfo&&this.treeAdapter.setNodeSourceCodeLocation(a,e.location)}_adoptNodes(e,t){for(let n=this.treeAdapter.getFirstChild(e);n;n=this.treeAdapter.getFirstChild(e))this.treeAdapter.detachNode(n),this.treeAdapter.appendChild(t,n)}_setEndLocation(e,t){if(this.treeAdapter.getNodeSourceCodeLocation(e)&&t.location){const n=t.location,r=this.treeAdapter.getTagName(e),o=t.type===Pm.END_TAG&&r===t.tagName?{endTag:{...n},endLine:n.endLine,endCol:n.endCol,endOffset:n.endOffset}:{endLine:n.startLine,endCol:n.startCol,endOffset:n.startOffset};this.treeAdapter.updateNodeSourceCodeLocation(e,o)}}shouldProcessStartTagTokenInForeignContent(e){if(!this.currentNotInHTML)return!1;let t,n;return 0===this.openElements.stackTop&&this.fragmentContext?(t=this.fragmentContext,n=this.fragmentContextID):({current:t,currentTagId:n}=this.openElements),(e.tagID!==Jm.SVG||this.treeAdapter.getTagName(t)!==Xm.ANNOTATION_XML||this.treeAdapter.getNamespaceURI(t)!==$m.MATHML)&&(this.tokenizer.inForeignNode||(e.tagID===Jm.MGLYPH||e.tagID===Jm.MALIGNMARK)&&!this._isIntegrationPoint(n,t,$m.HTML))}_processToken(e){switch(e.type){case Pm.CHARACTER:this.onCharacter(e);break;case Pm.NULL_CHARACTER:this.onNullCharacter(e);break;case Pm.COMMENT:this.onComment(e);break;case Pm.DOCTYPE:this.onDoctype(e);break;case Pm.START_TAG:this._processStartTag(e);break;case Pm.END_TAG:this.onEndTag(e);break;case Pm.EOF:this.onEof(e);break;case Pm.WHITESPACE_CHARACTER:this.onWhitespaceCharacter(e)}}_isIntegrationPoint(e,t,n){return function(e,t,n,r){return(!r||r===$m.HTML)&&function(e,t,n){if(t===$m.MATHML&&e===Jm.ANNOTATION_XML)for(let r=0;re.type===Rf.Marker||this.openElements.contains(e.element)));for(let n=t<0?e-1:t-1;n>=0;n--){const e=this.activeFormattingElements.entries[n];this._insertElement(e.token,this.treeAdapter.getNamespaceURI(e.element)),e.element=this.openElements.current}}}_closeTableCell(){this.openElements.generateImpliedEndTags(),this.openElements.popUntilTableCellPopped(),this.activeFormattingElements.clearToLastMarker(),this.insertionMode=og.IN_ROW}_closePElement(){this.openElements.generateImpliedEndTagsWithExclusion(Jm.P),this.openElements.popUntilTagNamePopped(Jm.P)}_resetInsertionMode(){for(let e=this.openElements.stackTop;e>=0;e--)switch(0===e&&this.fragmentContext?this.fragmentContextID:this.openElements.tagIDs[e]){case Jm.TR:return void(this.insertionMode=og.IN_ROW);case Jm.TBODY:case Jm.THEAD:case Jm.TFOOT:return void(this.insertionMode=og.IN_TABLE_BODY);case Jm.CAPTION:return void(this.insertionMode=og.IN_CAPTION);case Jm.COLGROUP:return void(this.insertionMode=og.IN_COLUMN_GROUP);case Jm.TABLE:return void(this.insertionMode=og.IN_TABLE);case Jm.BODY:return void(this.insertionMode=og.IN_BODY);case Jm.FRAMESET:return void(this.insertionMode=og.IN_FRAMESET);case Jm.SELECT:return void this._resetInsertionModeForSelect(e);case Jm.TEMPLATE:return void(this.insertionMode=this.tmplInsertionModeStack[0]);case Jm.HTML:return void(this.insertionMode=this.headElement?og.AFTER_HEAD:og.BEFORE_HEAD);case Jm.TD:case Jm.TH:if(e>0)return void(this.insertionMode=og.IN_CELL);break;case Jm.HEAD:if(e>0)return void(this.insertionMode=og.IN_HEAD)}this.insertionMode=og.IN_BODY}_resetInsertionModeForSelect(e){if(e>0)for(let t=e-1;t>0;t--){const e=this.openElements.tagIDs[t];if(e===Jm.TEMPLATE)break;if(e===Jm.TABLE)return void(this.insertionMode=og.IN_SELECT_IN_TABLE)}this.insertionMode=og.IN_SELECT}_isElementCausesFosterParenting(e){return ig.has(e)}_shouldFosterParentOnInsertion(){return this.fosterParentingEnabled&&this._isElementCausesFosterParenting(this.openElements.currentTagId)}_findFosterParentingLocation(){for(let e=this.openElements.stackTop;e>=0;e--){const t=this.openElements.items[e];switch(this.openElements.tagIDs[e]){case Jm.TEMPLATE:if(this.treeAdapter.getNamespaceURI(t)===$m.HTML)return{parent:this.treeAdapter.getTemplateContent(t),beforeElement:null};break;case Jm.TABLE:{const n=this.treeAdapter.getParentNode(t);return n?{parent:n,beforeElement:t}:{parent:this.openElements.items[e-1],beforeElement:null}}}}return{parent:this.openElements.items[0],beforeElement:null}}_fosterParentElement(e){const t=this._findFosterParentingLocation();t.beforeElement?this.treeAdapter.insertBefore(t.parent,e,t.beforeElement):this.treeAdapter.appendChild(t.parent,e)}_isSpecialElement(e,t){const n=this.treeAdapter.getNamespaceURI(e);return lf[n].has(t)}onCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode)!function(e,t){e._insertCharacters(t),e.framesetOk=!1}(this,e);else switch(this.insertionMode){case og.INITIAL:yg(this,e);break;case og.BEFORE_HTML:vg(this,e);break;case og.BEFORE_HEAD:Eg(this,e);break;case og.IN_HEAD:Ag(this,e);break;case og.IN_HEAD_NO_SCRIPT:_g(this,e);break;case og.AFTER_HEAD:Tg(this,e);break;case og.IN_BODY:case og.IN_CAPTION:case og.IN_CELL:case og.IN_TEMPLATE:Ig(this,e);break;case og.TEXT:case og.IN_SELECT:case og.IN_SELECT_IN_TABLE:this._insertCharacters(e);break;case og.IN_TABLE:case og.IN_TABLE_BODY:case og.IN_ROW:Bg(this,e);break;case og.IN_TABLE_TEXT:Hg(this,e);break;case og.IN_COLUMN_GROUP:Wg(this,e);break;case og.AFTER_BODY:tb(this,e);break;case og.AFTER_AFTER_BODY:nb(this,e)}}onNullCharacter(e){if(this.skipNextNewLine=!1,this.tokenizer.inForeignNode)!function(e,t){t.chars=xm,e._insertCharacters(t)}(this,e);else switch(this.insertionMode){case og.INITIAL:yg(this,e);break;case og.BEFORE_HTML:vg(this,e);break;case og.BEFORE_HEAD:Eg(this,e);break;case og.IN_HEAD:Ag(this,e);break;case og.IN_HEAD_NO_SCRIPT:_g(this,e);break;case og.AFTER_HEAD:Tg(this,e);break;case og.TEXT:this._insertCharacters(e);break;case og.IN_TABLE:case og.IN_TABLE_BODY:case og.IN_ROW:Bg(this,e);break;case og.IN_COLUMN_GROUP:Wg(this,e);break;case og.AFTER_BODY:tb(this,e);break;case og.AFTER_AFTER_BODY:nb(this,e)}}onComment(e){if(this.skipNextNewLine=!1,this.currentNotInHTML)gg(this,e);else switch(this.insertionMode){case og.INITIAL:case og.BEFORE_HTML:case og.BEFORE_HEAD:case og.IN_HEAD:case og.IN_HEAD_NO_SCRIPT:case og.AFTER_HEAD:case og.IN_BODY:case og.IN_TABLE:case og.IN_CAPTION:case og.IN_COLUMN_GROUP:case og.IN_TABLE_BODY:case og.IN_ROW:case og.IN_CELL:case og.IN_SELECT:case og.IN_SELECT_IN_TABLE:case og.IN_TEMPLATE:case og.IN_FRAMESET:case og.AFTER_FRAMESET:gg(this,e);break;case og.IN_TABLE_TEXT:Gg(this,e);break;case og.AFTER_BODY:!function(e,t){e._appendCommentNode(t,e.openElements.items[0])}(this,e);break;case og.AFTER_AFTER_BODY:case og.AFTER_AFTER_FRAMESET:!function(e,t){e._appendCommentNode(t,e.document)}(this,e)}}onDoctype(e){switch(this.skipNextNewLine=!1,this.insertionMode){case og.INITIAL:!function(e,t){e._setDocumentType(t);const n=t.forceQuirks?Km.QUIRKS:function(e){if(e.name!==Bf)return Km.QUIRKS;const{systemId:t}=e;if(t&&"http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"===t.toLowerCase())return Km.QUIRKS;let{publicId:n}=e;if(null!==n){if(n=n.toLowerCase(),zf.has(n))return Km.QUIRKS;let e=null===t?jf:Ff;if(Gf(n,e))return Km.QUIRKS;if(e=null===t?Uf:Hf,Gf(n,e))return Km.LIMITED_QUIRKS}return Km.NO_QUIRKS}(t);(function(e){return e.name===Bf&&null===e.publicId&&(null===e.systemId||"about:legacy-compat"===e.systemId)})(t)||e._err(t,Dm.nonConformingDoctype),e.treeAdapter.setDocumentMode(e.document,n),e.insertionMode=og.BEFORE_HTML}(this,e);break;case og.BEFORE_HEAD:case og.IN_HEAD:case og.IN_HEAD_NO_SCRIPT:case og.AFTER_HEAD:this._err(e,Dm.misplacedDoctype);break;case og.IN_TABLE_TEXT:Gg(this,e)}}onStartTag(e){this.skipNextNewLine=!1,this.currentToken=e,this._processStartTag(e),e.selfClosing&&!e.ackSelfClosing&&this._err(e,Dm.nonVoidHtmlElementStartTagWithTrailingSolidus)}_processStartTag(e){this.shouldProcessStartTagTokenInForeignContent(e)?function(e,t){if(function(e){const t=e.tagID;return t===Jm.FONT&&e.attrs.some((e=>{let{name:t}=e;return t===Ym.COLOR||t===Ym.SIZE||t===Ym.FACE}))||Xf.has(t)}(t))rb(e),e._startTagOutsideForeignContent(t);else{const n=e._getAdjustedCurrentElement(),r=e.treeAdapter.getNamespaceURI(n);r===$m.MATHML?Jf(t):r===$m.SVG&&(function(e){const t=Kf.get(e.tagName);null!=t&&(e.tagName=t,e.tagID=af(e.tagName))}(t),Qf(t)),eg(t),t.selfClosing?e._appendElement(t,r):e._insertElement(t,r),t.ackSelfClosing=!0}}(this,e):this._startTagOutsideForeignContent(e)}_startTagOutsideForeignContent(e){switch(this.insertionMode){case og.INITIAL:yg(this,e);break;case og.BEFORE_HTML:!function(e,t){t.tagID===Jm.HTML?(e._insertElement(t,$m.HTML),e.insertionMode=og.BEFORE_HEAD):vg(e,t)}(this,e);break;case og.BEFORE_HEAD:!function(e,t){switch(t.tagID){case Jm.HTML:Mg(e,t);break;case Jm.HEAD:e._insertElement(t,$m.HTML),e.headElement=e.openElements.current,e.insertionMode=og.IN_HEAD;break;default:Eg(e,t)}}(this,e);break;case og.IN_HEAD:wg(this,e);break;case og.IN_HEAD_NO_SCRIPT:!function(e,t){switch(t.tagID){case Jm.HTML:Mg(e,t);break;case Jm.BASEFONT:case Jm.BGSOUND:case Jm.HEAD:case Jm.LINK:case Jm.META:case Jm.NOFRAMES:case Jm.STYLE:wg(e,t);break;case Jm.NOSCRIPT:e._err(t,Dm.nestedNoscriptInHead);break;default:_g(e,t)}}(this,e);break;case og.AFTER_HEAD:!function(e,t){switch(t.tagID){case Jm.HTML:Mg(e,t);break;case Jm.BODY:e._insertElement(t,$m.HTML),e.framesetOk=!1,e.insertionMode=og.IN_BODY;break;case Jm.FRAMESET:e._insertElement(t,$m.HTML),e.insertionMode=og.IN_FRAMESET;break;case Jm.BASE:case Jm.BASEFONT:case Jm.BGSOUND:case Jm.LINK:case Jm.META:case Jm.NOFRAMES:case Jm.SCRIPT:case Jm.STYLE:case Jm.TEMPLATE:case Jm.TITLE:e._err(t,Dm.abandonedHeadElementChild),e.openElements.push(e.headElement,Jm.HEAD),wg(e,t),e.openElements.remove(e.headElement);break;case Jm.HEAD:e._err(t,Dm.misplacedStartTagForHeadElement);break;default:Tg(e,t)}}(this,e);break;case og.IN_BODY:Mg(this,e);break;case og.IN_TABLE:Fg(this,e);break;case og.IN_TABLE_TEXT:Gg(this,e);break;case og.IN_CAPTION:!function(e,t){const n=t.tagID;Vg.has(n)?e.openElements.hasInTableScope(Jm.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(Jm.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=og.IN_TABLE,Fg(e,t)):Mg(e,t)}(this,e);break;case og.IN_COLUMN_GROUP:qg(this,e);break;case og.IN_TABLE_BODY:Zg(this,e);break;case og.IN_ROW:Yg(this,e);break;case og.IN_CELL:!function(e,t){const n=t.tagID;Vg.has(n)?(e.openElements.hasInTableScope(Jm.TD)||e.openElements.hasInTableScope(Jm.TH))&&(e._closeTableCell(),Yg(e,t)):Mg(e,t)}(this,e);break;case og.IN_SELECT:Xg(this,e);break;case og.IN_SELECT_IN_TABLE:!function(e,t){const n=t.tagID;n===Jm.CAPTION||n===Jm.TABLE||n===Jm.TBODY||n===Jm.TFOOT||n===Jm.THEAD||n===Jm.TR||n===Jm.TD||n===Jm.TH?(e.openElements.popUntilTagNamePopped(Jm.SELECT),e._resetInsertionMode(),e._processStartTag(t)):Xg(e,t)}(this,e);break;case og.IN_TEMPLATE:!function(e,t){switch(t.tagID){case Jm.BASE:case Jm.BASEFONT:case Jm.BGSOUND:case Jm.LINK:case Jm.META:case Jm.NOFRAMES:case Jm.SCRIPT:case Jm.STYLE:case Jm.TEMPLATE:case Jm.TITLE:wg(e,t);break;case Jm.CAPTION:case Jm.COLGROUP:case Jm.TBODY:case Jm.TFOOT:case Jm.THEAD:e.tmplInsertionModeStack[0]=og.IN_TABLE,e.insertionMode=og.IN_TABLE,Fg(e,t);break;case Jm.COL:e.tmplInsertionModeStack[0]=og.IN_COLUMN_GROUP,e.insertionMode=og.IN_COLUMN_GROUP,qg(e,t);break;case Jm.TR:e.tmplInsertionModeStack[0]=og.IN_TABLE_BODY,e.insertionMode=og.IN_TABLE_BODY,Zg(e,t);break;case Jm.TD:case Jm.TH:e.tmplInsertionModeStack[0]=og.IN_ROW,e.insertionMode=og.IN_ROW,Yg(e,t);break;default:e.tmplInsertionModeStack[0]=og.IN_BODY,e.insertionMode=og.IN_BODY,Mg(e,t)}}(this,e);break;case og.AFTER_BODY:!function(e,t){t.tagID===Jm.HTML?Mg(e,t):tb(e,t)}(this,e);break;case og.IN_FRAMESET:!function(e,t){switch(t.tagID){case Jm.HTML:Mg(e,t);break;case Jm.FRAMESET:e._insertElement(t,$m.HTML);break;case Jm.FRAME:e._appendElement(t,$m.HTML),t.ackSelfClosing=!0;break;case Jm.NOFRAMES:wg(e,t)}}(this,e);break;case og.AFTER_FRAMESET:!function(e,t){switch(t.tagID){case Jm.HTML:Mg(e,t);break;case Jm.NOFRAMES:wg(e,t)}}(this,e);break;case og.AFTER_AFTER_BODY:!function(e,t){t.tagID===Jm.HTML?Mg(e,t):nb(e,t)}(this,e);break;case og.AFTER_AFTER_FRAMESET:!function(e,t){switch(t.tagID){case Jm.HTML:Mg(e,t);break;case Jm.NOFRAMES:wg(e,t)}}(this,e)}}onEndTag(e){this.skipNextNewLine=!1,this.currentToken=e,this.currentNotInHTML?function(e,t){if(t.tagID===Jm.P||t.tagID===Jm.BR)return rb(e),void e._endTagOutsideForeignContent(t);for(let n=e.openElements.stackTop;n>0;n--){const r=e.openElements.items[n];if(e.treeAdapter.getNamespaceURI(r)===$m.HTML){e._endTagOutsideForeignContent(t);break}const o=e.treeAdapter.getTagName(r);if(o.toLowerCase()===t.tagName){t.tagName=o,e.openElements.shortenToLength(n);break}}}(this,e):this._endTagOutsideForeignContent(e)}_endTagOutsideForeignContent(e){switch(this.insertionMode){case og.INITIAL:yg(this,e);break;case og.BEFORE_HTML:!function(e,t){const n=t.tagID;n!==Jm.HTML&&n!==Jm.HEAD&&n!==Jm.BODY&&n!==Jm.BR||vg(e,t)}(this,e);break;case og.BEFORE_HEAD:!function(e,t){const n=t.tagID;n===Jm.HEAD||n===Jm.BODY||n===Jm.HTML||n===Jm.BR?Eg(e,t):e._err(t,Dm.endTagWithoutMatchingOpenElement)}(this,e);break;case og.IN_HEAD:!function(e,t){switch(t.tagID){case Jm.HEAD:e.openElements.pop(),e.insertionMode=og.AFTER_HEAD;break;case Jm.BODY:case Jm.BR:case Jm.HTML:Ag(e,t);break;case Jm.TEMPLATE:Sg(e,t);break;default:e._err(t,Dm.endTagWithoutMatchingOpenElement)}}(this,e);break;case og.IN_HEAD_NO_SCRIPT:!function(e,t){switch(t.tagID){case Jm.NOSCRIPT:e.openElements.pop(),e.insertionMode=og.IN_HEAD;break;case Jm.BR:_g(e,t);break;default:e._err(t,Dm.endTagWithoutMatchingOpenElement)}}(this,e);break;case og.AFTER_HEAD:!function(e,t){switch(t.tagID){case Jm.BODY:case Jm.HTML:case Jm.BR:Tg(e,t);break;case Jm.TEMPLATE:Sg(e,t);break;default:e._err(t,Dm.endTagWithoutMatchingOpenElement)}}(this,e);break;case og.IN_BODY:Dg(this,e);break;case og.TEXT:!function(e,t){var n;t.tagID===Jm.SCRIPT&&(null===(n=e.scriptHandler)||void 0===n||n.call(e,e.openElements.current)),e.openElements.pop(),e.insertionMode=e.originalInsertionMode}(this,e);break;case og.IN_TABLE:jg(this,e);break;case og.IN_TABLE_TEXT:Gg(this,e);break;case og.IN_CAPTION:!function(e,t){const n=t.tagID;switch(n){case Jm.CAPTION:case Jm.TABLE:e.openElements.hasInTableScope(Jm.CAPTION)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(Jm.CAPTION),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=og.IN_TABLE,n===Jm.TABLE&&jg(e,t));break;case Jm.BODY:case Jm.COL:case Jm.COLGROUP:case Jm.HTML:case Jm.TBODY:case Jm.TD:case Jm.TFOOT:case Jm.TH:case Jm.THEAD:case Jm.TR:break;default:Dg(e,t)}}(this,e);break;case og.IN_COLUMN_GROUP:!function(e,t){switch(t.tagID){case Jm.COLGROUP:e.openElements.currentTagId===Jm.COLGROUP&&(e.openElements.pop(),e.insertionMode=og.IN_TABLE);break;case Jm.TEMPLATE:Sg(e,t);break;case Jm.COL:break;default:Wg(e,t)}}(this,e);break;case og.IN_TABLE_BODY:$g(this,e);break;case og.IN_ROW:Kg(this,e);break;case og.IN_CELL:!function(e,t){const n=t.tagID;switch(n){case Jm.TD:case Jm.TH:e.openElements.hasInTableScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n),e.activeFormattingElements.clearToLastMarker(),e.insertionMode=og.IN_ROW);break;case Jm.TABLE:case Jm.TBODY:case Jm.TFOOT:case Jm.THEAD:case Jm.TR:e.openElements.hasInTableScope(n)&&(e._closeTableCell(),Kg(e,t));break;case Jm.BODY:case Jm.CAPTION:case Jm.COL:case Jm.COLGROUP:case Jm.HTML:break;default:Dg(e,t)}}(this,e);break;case og.IN_SELECT:Jg(this,e);break;case og.IN_SELECT_IN_TABLE:!function(e,t){const n=t.tagID;n===Jm.CAPTION||n===Jm.TABLE||n===Jm.TBODY||n===Jm.TFOOT||n===Jm.THEAD||n===Jm.TR||n===Jm.TD||n===Jm.TH?e.openElements.hasInTableScope(n)&&(e.openElements.popUntilTagNamePopped(Jm.SELECT),e._resetInsertionMode(),e.onEndTag(t)):Jg(e,t)}(this,e);break;case og.IN_TEMPLATE:!function(e,t){t.tagID===Jm.TEMPLATE&&Sg(e,t)}(this,e);break;case og.AFTER_BODY:eb(this,e);break;case og.IN_FRAMESET:!function(e,t){t.tagID!==Jm.FRAMESET||e.openElements.isRootHtmlElementCurrent()||(e.openElements.pop(),e.fragmentContext||e.openElements.currentTagId===Jm.FRAMESET||(e.insertionMode=og.AFTER_FRAMESET))}(this,e);break;case og.AFTER_FRAMESET:!function(e,t){t.tagID===Jm.HTML&&(e.insertionMode=og.AFTER_AFTER_FRAMESET)}(this,e);break;case og.AFTER_AFTER_BODY:nb(this,e)}}onEof(e){switch(this.insertionMode){case og.INITIAL:yg(this,e);break;case og.BEFORE_HTML:vg(this,e);break;case og.BEFORE_HEAD:Eg(this,e);break;case og.IN_HEAD:Ag(this,e);break;case og.IN_HEAD_NO_SCRIPT:_g(this,e);break;case og.AFTER_HEAD:Tg(this,e);break;case og.IN_BODY:case og.IN_TABLE:case og.IN_CAPTION:case og.IN_COLUMN_GROUP:case og.IN_TABLE_BODY:case og.IN_ROW:case og.IN_CELL:case og.IN_SELECT:case og.IN_SELECT_IN_TABLE:Pg(this,e);break;case og.TEXT:!function(e,t){e._err(t,Dm.eofInElementThatCanContainOnlyText),e.openElements.pop(),e.insertionMode=e.originalInsertionMode,e.onEof(t)}(this,e);break;case og.IN_TABLE_TEXT:Gg(this,e);break;case og.IN_TEMPLATE:Qg(this,e);break;case og.AFTER_BODY:case og.IN_FRAMESET:case og.AFTER_FRAMESET:case og.AFTER_AFTER_BODY:case og.AFTER_AFTER_FRAMESET:bg(this,e)}}onWhitespaceCharacter(e){if(this.skipNextNewLine&&(this.skipNextNewLine=!1,e.chars.charCodeAt(0)===Im.LINE_FEED)){if(1===e.chars.length)return;e.chars=e.chars.substr(1)}if(this.tokenizer.inForeignNode)this._insertCharacters(e);else switch(this.insertionMode){case og.IN_HEAD:case og.IN_HEAD_NO_SCRIPT:case og.AFTER_HEAD:case og.TEXT:case og.IN_COLUMN_GROUP:case og.IN_SELECT:case og.IN_SELECT_IN_TABLE:case og.IN_FRAMESET:case og.AFTER_FRAMESET:this._insertCharacters(e);break;case og.IN_BODY:case og.IN_CAPTION:case og.IN_CELL:case og.IN_TEMPLATE:case og.AFTER_BODY:case og.AFTER_AFTER_BODY:case og.AFTER_AFTER_FRAMESET:xg(this,e);break;case og.IN_TABLE:case og.IN_TABLE_BODY:case og.IN_ROW:Bg(this,e);break;case og.IN_TABLE_TEXT:Ug(this,e)}}}function cg(e,t){let n=e.activeFormattingElements.getElementEntryInScopeWithTagName(t.tagName);return n?e.openElements.contains(n.element)?e.openElements.hasInScope(t.tagID)||(n=null):(e.activeFormattingElements.removeEntry(n),n=null):Lg(e,t),n}function ug(e,t){let n=null,r=e.openElements.stackTop;for(;r>=0;r--){const o=e.openElements.items[r];if(o===t.element)break;e._isSpecialElement(o,e.openElements.tagIDs[r])&&(n=o)}return n||(e.openElements.shortenToLength(r<0?0:r),e.activeFormattingElements.removeEntry(t)),n}function dg(e,t,n){let r=t,o=e.openElements.getCommonAncestor(t);for(let a=0,i=o;i!==n;a++,i=o){o=e.openElements.getCommonAncestor(i);const n=e.activeFormattingElements.getElementEntry(i),s=n&&a>=rg;!n||s?(s&&e.activeFormattingElements.removeEntry(n),e.openElements.remove(i)):(i=pg(e,n),r===t&&(e.activeFormattingElements.bookmark=n),e.treeAdapter.detachNode(r),e.treeAdapter.appendChild(i,r),r=i)}return r}function pg(e,t){const n=e.treeAdapter.getNamespaceURI(t.element),r=e.treeAdapter.createElement(t.token.tagName,n,t.token.attrs);return e.openElements.replace(t.element,r),t.element=r,r}function hg(e,t,n){const r=af(e.treeAdapter.getTagName(t));if(e._isElementCausesFosterParenting(r))e._fosterParentElement(n);else{const o=e.treeAdapter.getNamespaceURI(t);r===Jm.TEMPLATE&&o===$m.HTML&&(t=e.treeAdapter.getTemplateContent(t)),e.treeAdapter.appendChild(t,n)}}function mg(e,t,n){const r=e.treeAdapter.getNamespaceURI(n.element),{token:o}=n,a=e.treeAdapter.createElement(o.tagName,r,o.attrs);e._adoptNodes(t,a),e.treeAdapter.appendChild(t,a),e.activeFormattingElements.insertElementAfterBookmark(a,o),e.activeFormattingElements.removeEntry(n),e.openElements.remove(n.element),e.openElements.insertAfter(t,a,o.tagID)}function fg(e,t){for(let n=0;n=n;r--)e._setEndLocation(e.openElements.items[r],t);if(!e.fragmentContext&&e.openElements.stackTop>=0){const n=e.openElements.items[0],r=e.treeAdapter.getNodeSourceCodeLocation(n);if(r&&!r.endTag&&(e._setEndLocation(n,t),e.openElements.stackTop>=1)){const n=e.openElements.items[1],r=e.treeAdapter.getNodeSourceCodeLocation(n);r&&!r.endTag&&e._setEndLocation(n,t)}}}}function yg(e,t){e._err(t,Dm.missingDoctype,!0),e.treeAdapter.setDocumentMode(e.document,Km.QUIRKS),e.insertionMode=og.BEFORE_HTML,e._processToken(t)}function vg(e,t){e._insertFakeRootElement(),e.insertionMode=og.BEFORE_HEAD,e._processToken(t)}function Eg(e,t){e._insertFakeElement(Xm.HEAD,Jm.HEAD),e.headElement=e.openElements.current,e.insertionMode=og.IN_HEAD,e._processToken(t)}function wg(e,t){switch(t.tagID){case Jm.HTML:Mg(e,t);break;case Jm.BASE:case Jm.BASEFONT:case Jm.BGSOUND:case Jm.LINK:case Jm.META:e._appendElement(t,$m.HTML),t.ackSelfClosing=!0;break;case Jm.TITLE:e._switchToTextParsing(t,pf.RCDATA);break;case Jm.NOSCRIPT:e.options.scriptingEnabled?e._switchToTextParsing(t,pf.RAWTEXT):(e._insertElement(t,$m.HTML),e.insertionMode=og.IN_HEAD_NO_SCRIPT);break;case Jm.NOFRAMES:case Jm.STYLE:e._switchToTextParsing(t,pf.RAWTEXT);break;case Jm.SCRIPT:e._switchToTextParsing(t,pf.SCRIPT_DATA);break;case Jm.TEMPLATE:e._insertTemplate(t),e.activeFormattingElements.insertMarker(),e.framesetOk=!1,e.insertionMode=og.IN_TEMPLATE,e.tmplInsertionModeStack.unshift(og.IN_TEMPLATE);break;case Jm.HEAD:e._err(t,Dm.misplacedStartTagForHeadElement);break;default:Ag(e,t)}}function Sg(e,t){e.openElements.tmplCount>0?(e.openElements.generateImpliedEndTagsThoroughly(),e.openElements.currentTagId!==Jm.TEMPLATE&&e._err(t,Dm.closingOfElementWithOpenChildElements),e.openElements.popUntilTagNamePopped(Jm.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode()):e._err(t,Dm.endTagWithoutMatchingOpenElement)}function Ag(e,t){e.openElements.pop(),e.insertionMode=og.AFTER_HEAD,e._processToken(t)}function _g(e,t){const n=t.type===Pm.EOF?Dm.openElementsLeftAfterEof:Dm.disallowedContentInNoscriptInHead;e._err(t,n),e.openElements.pop(),e.insertionMode=og.IN_HEAD,e._processToken(t)}function Tg(e,t){e._insertFakeElement(Xm.BODY,Jm.BODY),e.insertionMode=og.IN_BODY,Cg(e,t)}function Cg(e,t){switch(t.type){case Pm.CHARACTER:Ig(e,t);break;case Pm.WHITESPACE_CHARACTER:xg(e,t);break;case Pm.COMMENT:gg(e,t);break;case Pm.START_TAG:Mg(e,t);break;case Pm.END_TAG:Dg(e,t);break;case Pm.EOF:Pg(e,t)}}function xg(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t)}function Ig(e,t){e._reconstructActiveFormattingElements(),e._insertCharacters(t),e.framesetOk=!1}function Og(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,$m.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}function kg(e){const t=Fm(e,Ym.TYPE);return null!=t&&t.toLowerCase()===tg}function Ng(e,t){e._switchToTextParsing(t,pf.RAWTEXT)}function Rg(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,$m.HTML)}function Mg(e,t){switch(t.tagID){case Jm.I:case Jm.S:case Jm.B:case Jm.U:case Jm.EM:case Jm.TT:case Jm.BIG:case Jm.CODE:case Jm.FONT:case Jm.SMALL:case Jm.STRIKE:case Jm.STRONG:!function(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,$m.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t);break;case Jm.A:!function(e,t){const n=e.activeFormattingElements.getElementEntryInScopeWithTagName(Xm.A);n&&(fg(e,t),e.openElements.remove(n.element),e.activeFormattingElements.removeEntry(n)),e._reconstructActiveFormattingElements(),e._insertElement(t,$m.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t);break;case Jm.H1:case Jm.H2:case Jm.H3:case Jm.H4:case Jm.H5:case Jm.H6:!function(e,t){e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),cf(e.openElements.currentTagId)&&e.openElements.pop(),e._insertElement(t,$m.HTML)}(e,t);break;case Jm.P:case Jm.DL:case Jm.OL:case Jm.UL:case Jm.DIV:case Jm.DIR:case Jm.NAV:case Jm.MAIN:case Jm.MENU:case Jm.ASIDE:case Jm.CENTER:case Jm.FIGURE:case Jm.FOOTER:case Jm.HEADER:case Jm.HGROUP:case Jm.DIALOG:case Jm.DETAILS:case Jm.ADDRESS:case Jm.ARTICLE:case Jm.SECTION:case Jm.SUMMARY:case Jm.FIELDSET:case Jm.BLOCKQUOTE:case Jm.FIGCAPTION:!function(e,t){e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._insertElement(t,$m.HTML)}(e,t);break;case Jm.LI:case Jm.DD:case Jm.DT:!function(e,t){e.framesetOk=!1;const n=t.tagID;for(let r=e.openElements.stackTop;r>=0;r--){const t=e.openElements.tagIDs[r];if(n===Jm.LI&&t===Jm.LI||(n===Jm.DD||n===Jm.DT)&&(t===Jm.DD||t===Jm.DT)){e.openElements.generateImpliedEndTagsWithExclusion(t),e.openElements.popUntilTagNamePopped(t);break}if(t!==Jm.ADDRESS&&t!==Jm.DIV&&t!==Jm.P&&e._isSpecialElement(e.openElements.items[r],t))break}e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._insertElement(t,$m.HTML)}(e,t);break;case Jm.BR:case Jm.IMG:case Jm.WBR:case Jm.AREA:case Jm.EMBED:case Jm.KEYGEN:Og(e,t);break;case Jm.HR:!function(e,t){e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._appendElement(t,$m.HTML),e.framesetOk=!1,t.ackSelfClosing=!0}(e,t);break;case Jm.RB:case Jm.RTC:!function(e,t){e.openElements.hasInScope(Jm.RUBY)&&e.openElements.generateImpliedEndTags(),e._insertElement(t,$m.HTML)}(e,t);break;case Jm.RT:case Jm.RP:!function(e,t){e.openElements.hasInScope(Jm.RUBY)&&e.openElements.generateImpliedEndTagsWithExclusion(Jm.RTC),e._insertElement(t,$m.HTML)}(e,t);break;case Jm.PRE:case Jm.LISTING:!function(e,t){e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._insertElement(t,$m.HTML),e.skipNextNewLine=!0,e.framesetOk=!1}(e,t);break;case Jm.XMP:!function(e,t){e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._reconstructActiveFormattingElements(),e.framesetOk=!1,e._switchToTextParsing(t,pf.RAWTEXT)}(e,t);break;case Jm.SVG:!function(e,t){e._reconstructActiveFormattingElements(),Qf(t),eg(t),t.selfClosing?e._appendElement(t,$m.SVG):e._insertElement(t,$m.SVG),t.ackSelfClosing=!0}(e,t);break;case Jm.HTML:!function(e,t){0===e.openElements.tmplCount&&e.treeAdapter.adoptAttributes(e.openElements.items[0],t.attrs)}(e,t);break;case Jm.BASE:case Jm.LINK:case Jm.META:case Jm.STYLE:case Jm.TITLE:case Jm.SCRIPT:case Jm.BGSOUND:case Jm.BASEFONT:case Jm.TEMPLATE:wg(e,t);break;case Jm.BODY:!function(e,t){const n=e.openElements.tryPeekProperlyNestedBodyElement();n&&0===e.openElements.tmplCount&&(e.framesetOk=!1,e.treeAdapter.adoptAttributes(n,t.attrs))}(e,t);break;case Jm.FORM:!function(e,t){const n=e.openElements.tmplCount>0;e.formElement&&!n||(e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._insertElement(t,$m.HTML),n||(e.formElement=e.openElements.current))}(e,t);break;case Jm.NOBR:!function(e,t){e._reconstructActiveFormattingElements(),e.openElements.hasInScope(Jm.NOBR)&&(fg(e,t),e._reconstructActiveFormattingElements()),e._insertElement(t,$m.HTML),e.activeFormattingElements.pushElement(e.openElements.current,t)}(e,t);break;case Jm.MATH:!function(e,t){e._reconstructActiveFormattingElements(),Jf(t),eg(t),t.selfClosing?e._appendElement(t,$m.MATHML):e._insertElement(t,$m.MATHML),t.ackSelfClosing=!0}(e,t);break;case Jm.TABLE:!function(e,t){e.treeAdapter.getDocumentMode(e.document)!==Km.QUIRKS&&e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._insertElement(t,$m.HTML),e.framesetOk=!1,e.insertionMode=og.IN_TABLE}(e,t);break;case Jm.INPUT:!function(e,t){e._reconstructActiveFormattingElements(),e._appendElement(t,$m.HTML),kg(t)||(e.framesetOk=!1),t.ackSelfClosing=!0}(e,t);break;case Jm.PARAM:case Jm.TRACK:case Jm.SOURCE:!function(e,t){e._appendElement(t,$m.HTML),t.ackSelfClosing=!0}(e,t);break;case Jm.IMAGE:!function(e,t){t.tagName=Xm.IMG,t.tagID=Jm.IMG,Og(e,t)}(e,t);break;case Jm.BUTTON:!function(e,t){e.openElements.hasInScope(Jm.BUTTON)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(Jm.BUTTON)),e._reconstructActiveFormattingElements(),e._insertElement(t,$m.HTML),e.framesetOk=!1}(e,t);break;case Jm.APPLET:case Jm.OBJECT:case Jm.MARQUEE:!function(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,$m.HTML),e.activeFormattingElements.insertMarker(),e.framesetOk=!1}(e,t);break;case Jm.IFRAME:!function(e,t){e.framesetOk=!1,e._switchToTextParsing(t,pf.RAWTEXT)}(e,t);break;case Jm.SELECT:!function(e,t){e._reconstructActiveFormattingElements(),e._insertElement(t,$m.HTML),e.framesetOk=!1,e.insertionMode=e.insertionMode===og.IN_TABLE||e.insertionMode===og.IN_CAPTION||e.insertionMode===og.IN_TABLE_BODY||e.insertionMode===og.IN_ROW||e.insertionMode===og.IN_CELL?og.IN_SELECT_IN_TABLE:og.IN_SELECT}(e,t);break;case Jm.OPTION:case Jm.OPTGROUP:!function(e,t){e.openElements.currentTagId===Jm.OPTION&&e.openElements.pop(),e._reconstructActiveFormattingElements(),e._insertElement(t,$m.HTML)}(e,t);break;case Jm.NOEMBED:Ng(e,t);break;case Jm.FRAMESET:!function(e,t){const n=e.openElements.tryPeekProperlyNestedBodyElement();e.framesetOk&&n&&(e.treeAdapter.detachNode(n),e.openElements.popAllUpToHtmlElement(),e._insertElement(t,$m.HTML),e.insertionMode=og.IN_FRAMESET)}(e,t);break;case Jm.TEXTAREA:!function(e,t){e._insertElement(t,$m.HTML),e.skipNextNewLine=!0,e.tokenizer.state=pf.RCDATA,e.originalInsertionMode=e.insertionMode,e.framesetOk=!1,e.insertionMode=og.TEXT}(e,t);break;case Jm.NOSCRIPT:e.options.scriptingEnabled?Ng(e,t):Rg(e,t);break;case Jm.PLAINTEXT:!function(e,t){e.openElements.hasInButtonScope(Jm.P)&&e._closePElement(),e._insertElement(t,$m.HTML),e.tokenizer.state=pf.PLAINTEXT}(e,t);break;case Jm.COL:case Jm.TH:case Jm.TD:case Jm.TR:case Jm.HEAD:case Jm.FRAME:case Jm.TBODY:case Jm.TFOOT:case Jm.THEAD:case Jm.CAPTION:case Jm.COLGROUP:break;default:Rg(e,t)}}function Lg(e,t){const n=t.tagName,r=t.tagID;for(let o=e.openElements.stackTop;o>0;o--){const t=e.openElements.items[o],a=e.openElements.tagIDs[o];if(r===a&&(r!==Jm.UNKNOWN||e.treeAdapter.getTagName(t)===n)){e.openElements.generateImpliedEndTagsWithExclusion(r),e.openElements.stackTop>=o&&e.openElements.shortenToLength(o);break}if(e._isSpecialElement(t,a))break}}function Dg(e,t){switch(t.tagID){case Jm.A:case Jm.B:case Jm.I:case Jm.S:case Jm.U:case Jm.EM:case Jm.TT:case Jm.BIG:case Jm.CODE:case Jm.FONT:case Jm.NOBR:case Jm.SMALL:case Jm.STRIKE:case Jm.STRONG:fg(e,t);break;case Jm.P:!function(e){e.openElements.hasInButtonScope(Jm.P)||e._insertFakeElement(Xm.P,Jm.P),e._closePElement()}(e);break;case Jm.DL:case Jm.UL:case Jm.OL:case Jm.DIR:case Jm.DIV:case Jm.NAV:case Jm.PRE:case Jm.MAIN:case Jm.MENU:case Jm.ASIDE:case Jm.BUTTON:case Jm.CENTER:case Jm.FIGURE:case Jm.FOOTER:case Jm.HEADER:case Jm.HGROUP:case Jm.DIALOG:case Jm.ADDRESS:case Jm.ARTICLE:case Jm.DETAILS:case Jm.SECTION:case Jm.SUMMARY:case Jm.LISTING:case Jm.FIELDSET:case Jm.BLOCKQUOTE:case Jm.FIGCAPTION:!function(e,t){const n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n))}(e,t);break;case Jm.LI:!function(e){e.openElements.hasInListItemScope(Jm.LI)&&(e.openElements.generateImpliedEndTagsWithExclusion(Jm.LI),e.openElements.popUntilTagNamePopped(Jm.LI))}(e);break;case Jm.DD:case Jm.DT:!function(e,t){const n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTagsWithExclusion(n),e.openElements.popUntilTagNamePopped(n))}(e,t);break;case Jm.H1:case Jm.H2:case Jm.H3:case Jm.H4:case Jm.H5:case Jm.H6:!function(e){e.openElements.hasNumberedHeaderInScope()&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilNumberedHeaderPopped())}(e);break;case Jm.BR:!function(e){e._reconstructActiveFormattingElements(),e._insertFakeElement(Xm.BR,Jm.BR),e.openElements.pop(),e.framesetOk=!1}(e);break;case Jm.BODY:!function(e,t){if(e.openElements.hasInScope(Jm.BODY)&&(e.insertionMode=og.AFTER_BODY,e.options.sourceCodeLocationInfo)){const n=e.openElements.tryPeekProperlyNestedBodyElement();n&&e._setEndLocation(n,t)}}(e,t);break;case Jm.HTML:!function(e,t){e.openElements.hasInScope(Jm.BODY)&&(e.insertionMode=og.AFTER_BODY,eb(e,t))}(e,t);break;case Jm.FORM:!function(e){const t=e.openElements.tmplCount>0,{formElement:n}=e;t||(e.formElement=null),(n||t)&&e.openElements.hasInScope(Jm.FORM)&&(e.openElements.generateImpliedEndTags(),t?e.openElements.popUntilTagNamePopped(Jm.FORM):n&&e.openElements.remove(n))}(e);break;case Jm.APPLET:case Jm.OBJECT:case Jm.MARQUEE:!function(e,t){const n=t.tagID;e.openElements.hasInScope(n)&&(e.openElements.generateImpliedEndTags(),e.openElements.popUntilTagNamePopped(n),e.activeFormattingElements.clearToLastMarker())}(e,t);break;case Jm.TEMPLATE:Sg(e,t);break;default:Lg(e,t)}}function Pg(e,t){e.tmplInsertionModeStack.length>0?Qg(e,t):bg(e,t)}function Bg(e,t){if(ig.has(e.openElements.currentTagId))switch(e.pendingCharacterTokens.length=0,e.hasNonWhitespacePendingCharacterToken=!1,e.originalInsertionMode=e.insertionMode,e.insertionMode=og.IN_TABLE_TEXT,t.type){case Pm.CHARACTER:Hg(e,t);break;case Pm.WHITESPACE_CHARACTER:Ug(e,t)}else zg(e,t)}function Fg(e,t){switch(t.tagID){case Jm.TD:case Jm.TH:case Jm.TR:!function(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(Xm.TBODY,Jm.TBODY),e.insertionMode=og.IN_TABLE_BODY,Zg(e,t)}(e,t);break;case Jm.STYLE:case Jm.SCRIPT:case Jm.TEMPLATE:wg(e,t);break;case Jm.COL:!function(e,t){e.openElements.clearBackToTableContext(),e._insertFakeElement(Xm.COLGROUP,Jm.COLGROUP),e.insertionMode=og.IN_COLUMN_GROUP,qg(e,t)}(e,t);break;case Jm.FORM:!function(e,t){e.formElement||0!==e.openElements.tmplCount||(e._insertElement(t,$m.HTML),e.formElement=e.openElements.current,e.openElements.pop())}(e,t);break;case Jm.TABLE:!function(e,t){e.openElements.hasInTableScope(Jm.TABLE)&&(e.openElements.popUntilTagNamePopped(Jm.TABLE),e._resetInsertionMode(),e._processStartTag(t))}(e,t);break;case Jm.TBODY:case Jm.TFOOT:case Jm.THEAD:!function(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,$m.HTML),e.insertionMode=og.IN_TABLE_BODY}(e,t);break;case Jm.INPUT:!function(e,t){kg(t)?e._appendElement(t,$m.HTML):zg(e,t),t.ackSelfClosing=!0}(e,t);break;case Jm.CAPTION:!function(e,t){e.openElements.clearBackToTableContext(),e.activeFormattingElements.insertMarker(),e._insertElement(t,$m.HTML),e.insertionMode=og.IN_CAPTION}(e,t);break;case Jm.COLGROUP:!function(e,t){e.openElements.clearBackToTableContext(),e._insertElement(t,$m.HTML),e.insertionMode=og.IN_COLUMN_GROUP}(e,t);break;default:zg(e,t)}}function jg(e,t){switch(t.tagID){case Jm.TABLE:e.openElements.hasInTableScope(Jm.TABLE)&&(e.openElements.popUntilTagNamePopped(Jm.TABLE),e._resetInsertionMode());break;case Jm.TEMPLATE:Sg(e,t);break;case Jm.BODY:case Jm.CAPTION:case Jm.COL:case Jm.COLGROUP:case Jm.HTML:case Jm.TBODY:case Jm.TD:case Jm.TFOOT:case Jm.TH:case Jm.THEAD:case Jm.TR:break;default:zg(e,t)}}function zg(e,t){const n=e.fosterParentingEnabled;e.fosterParentingEnabled=!0,Cg(e,t),e.fosterParentingEnabled=n}function Ug(e,t){e.pendingCharacterTokens.push(t)}function Hg(e,t){e.pendingCharacterTokens.push(t),e.hasNonWhitespacePendingCharacterToken=!0}function Gg(e,t){let n=0;if(e.hasNonWhitespacePendingCharacterToken)for(;n0&&e.openElements.currentTagId===Jm.OPTION&&e.openElements.tagIDs[e.openElements.stackTop-1]===Jm.OPTGROUP&&e.openElements.pop(),e.openElements.currentTagId===Jm.OPTGROUP&&e.openElements.pop();break;case Jm.OPTION:e.openElements.currentTagId===Jm.OPTION&&e.openElements.pop();break;case Jm.SELECT:e.openElements.hasInSelectScope(Jm.SELECT)&&(e.openElements.popUntilTagNamePopped(Jm.SELECT),e._resetInsertionMode());break;case Jm.TEMPLATE:Sg(e,t)}}function Qg(e,t){e.openElements.tmplCount>0?(e.openElements.popUntilTagNamePopped(Jm.TEMPLATE),e.activeFormattingElements.clearToLastMarker(),e.tmplInsertionModeStack.shift(),e._resetInsertionMode(),e.onEof(t)):bg(e,t)}function eb(e,t){var n;if(t.tagID===Jm.HTML){if(e.fragmentContext||(e.insertionMode=og.AFTER_AFTER_BODY),e.options.sourceCodeLocationInfo&&e.openElements.tagIDs[0]===Jm.HTML){e._setEndLocation(e.openElements.items[0],t);const r=e.openElements.items[1];r&&!(null===(n=e.treeAdapter.getNodeSourceCodeLocation(r))||void 0===n?void 0:n.endTag)&&e._setEndLocation(r,t)}}else tb(e,t)}function tb(e,t){e.insertionMode=og.IN_BODY,Cg(e,t)}function nb(e,t){e.insertionMode=og.IN_BODY,Cg(e,t)}function rb(e){for(;e.treeAdapter.getNamespaceURI(e.openElements.current)!==$m.HTML&&!e._isIntegrationPoint(e.openElements.currentTagId,e.openElements.current);)e.openElements.pop()}function ob(e,t){return lg.parse(e,t)}function ab(e,t,n){"string"==typeof e&&(n=t,t=e,e=null);const r=lg.getFragmentParser(e,n);return r.tokenizer.write(t,!0),r.getFragment()}function ib(e){return lb(e&&e.line)+":"+lb(e&&e.column)}function sb(e){return ib(e&&e.start)+"-"+ib(e&&e.end)}function lb(e){return e&&"number"==typeof e?e:1}new Set([Xm.AREA,Xm.BASE,Xm.BASEFONT,Xm.BGSOUND,Xm.BR,Xm.COL,Xm.EMBED,Xm.FRAME,Xm.HR,Xm.IMG,Xm.INPUT,Xm.KEYGEN,Xm.LINK,Xm.META,Xm.PARAM,Xm.SOURCE,Xm.TRACK,Xm.WBR]);class cb extends Error{constructor(e,t,n){super(),"string"==typeof t&&(n=t,t=void 0);let r="",o={},a=!1;if(t&&(o="line"in t&&"column"in t||"start"in t&&"end"in t?{place:t}:"type"in t?{ancestors:[t],place:t.position}:{...t}),"string"==typeof e?r=e:!o.cause&&e&&(a=!0,r=e.message,o.cause=e),!o.ruleId&&!o.source&&"string"==typeof n){const e=n.indexOf(":");-1===e?o.ruleId=n:(o.source=n.slice(0,e),o.ruleId=n.slice(e+1))}if(!o.place&&o.ancestors&&o.ancestors){const e=o.ancestors[o.ancestors.length-1];e&&(o.place=e.position)}const i=o.place&&"start"in o.place?o.place.start:o.place;var s;this.ancestors=o.ancestors||void 0,this.cause=o.cause||void 0,this.column=i?i.column:void 0,this.fatal=void 0,this.file,this.message=r,this.line=i?i.line:void 0,this.name=((s=o.place)&&"object"==typeof s?"position"in s||"type"in s?sb(s.position):"start"in s||"end"in s?sb(s):"line"in s||"column"in s?ib(s):"":"")||"1:1",this.place=o.place||void 0,this.reason=this.message,this.ruleId=o.ruleId||void 0,this.source=o.source||void 0,this.stack=a&&o.cause&&"string"==typeof o.cause.stack?o.cause.stack:"",this.actual,this.expected,this.note,this.url}}cb.prototype.file="",cb.prototype.name="",cb.prototype.reason="",cb.prototype.message="",cb.prototype.stack="",cb.prototype.column=void 0,cb.prototype.line=void 0,cb.prototype.ancestors=void 0,cb.prototype.cause=void 0,cb.prototype.fatal=void 0,cb.prototype.place=void 0,cb.prototype.ruleId=void 0,cb.prototype.source=void 0;const ub=function(e,t){if(void 0!==t&&"string"!=typeof t)throw new TypeError('"ext" argument must be a string');fb(e);let n,r=0,o=-1,a=e.length;if(void 0===t||0===t.length||t.length>e.length){for(;a--;)if(47===e.codePointAt(a)){if(n){r=a+1;break}}else o<0&&(n=!0,o=a+1);return o<0?"":e.slice(r,o)}if(t===e)return"";let i=-1,s=t.length-1;for(;a--;)if(47===e.codePointAt(a)){if(n){r=a+1;break}}else i<0&&(n=!0,i=a+1),s>-1&&(e.codePointAt(a)===t.codePointAt(s--)?s<0&&(o=a):(s=-1,o=i));return r===o?o=i:o<0&&(o=e.length),e.slice(r,o)},db=function(e){if(fb(e),0===e.length)return".";let t,n=-1,r=e.length;for(;--r;)if(47===e.codePointAt(r)){if(t){n=r;break}}else t||(t=!0);return n<0?47===e.codePointAt(0)?"/":".":1===n&&47===e.codePointAt(0)?"//":e.slice(0,n)},pb=function(e){fb(e);let t,n=e.length,r=-1,o=0,a=-1,i=0;for(;n--;){const s=e.codePointAt(n);if(47!==s)r<0&&(t=!0,r=n+1),46===s?a<0?a=n:1!==i&&(i=1):a>-1&&(i=-1);else if(t){o=n+1;break}}return a<0||r<0||0===i||1===i&&a===r-1&&a===o+1?"":e.slice(a,r)},hb=function(){let e,t=-1;for(var n=arguments.length,r=new Array(n),o=0;o2){if(r=o.lastIndexOf("/"),r!==o.length-1){r<0?(o="",a=0):(o=o.slice(0,r),a=o.length-1-o.lastIndexOf("/")),i=l,s=0;continue}}else if(o.length>0){o="",a=0,i=l,s=0;continue}t&&(o=o.length>0?o+"/..":"..",a=2)}else o.length>0?o+="/"+e.slice(i+1,l):o=e.slice(i+1,l),a=l-i-1;i=l,s=0}else 46===n&&s>-1?s++:s=-1}return o}(e,!t);return 0!==n.length||t||(n="."),n.length>0&&47===e.codePointAt(e.length-1)&&(n+="/"),t?"/"+n:n}(e)},mb="/";function fb(e){if("string"!=typeof e)throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const gb=function(){return"/"};function bb(e){return Boolean(null!==e&&"object"==typeof e&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&void 0===e.auth)}const yb=["history","path","basename","stem","extname","dirname"];class vb{constructor(e){let t;t=e?bb(e)?{path:e}:"string"==typeof e||function(e){return Boolean(e&&"object"==typeof e&&"byteLength"in e&&"byteOffset"in e)}(e)?{value:e}:e:{},this.cwd="cwd"in t?"":gb(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let n,r=-1;for(;++r`",url:!1},abruptClosingOfEmptyComment:{reason:"Unexpected abruptly closed empty comment",description:"Unexpected `>` or `->`. Expected `--\x3e` to close comments"},abruptDoctypePublicIdentifier:{reason:"Unexpected abruptly closed public identifier",description:"Unexpected `>`. Expected a closing `\"` or `'` after the public identifier"},abruptDoctypeSystemIdentifier:{reason:"Unexpected abruptly closed system identifier",description:"Unexpected `>`. Expected a closing `\"` or `'` after the identifier identifier"},absenceOfDigitsInNumericCharacterReference:{reason:"Unexpected non-digit at start of numeric character reference",description:"Unexpected `%c`. Expected `[0-9]` for decimal references or `[0-9a-fA-F]` for hexadecimal references"},cdataInHtmlContent:{reason:"Unexpected CDATA section in HTML",description:"Unexpected `` in ``",description:"Unexpected text character `%c`. Only use text in `